【发布时间】:2023-12-28 16:04:01
【问题描述】:
我想查找 wordNet 中最*的同义词集(*别)是什么,我该如何找到它们?我怎么知道每个*同义词下面有多少个 dauhter 同义词?通常我们使用hyp关系来做,我试着写:
hyp(I, J), %[I would like to write here, be sure that there is no parent for I].
你能帮我解决一下吗?
【问题讨论】:
我想查找 wordNet 中最*的同义词集(*别)是什么,我该如何找到它们?我怎么知道每个*同义词下面有多少个 dauhter 同义词?通常我们使用hyp关系来做,我试着写:
hyp(I, J), %[I would like to write here, be sure that there is no parent for I].
你能帮我解决一下吗?
【问题讨论】:
所有*事实:
root_hyp(H) :- hyp(H, _), \+ hyp(_, H).
叶子没有孩子:
leaf_hyp(L) :- hyp(_, L), \+ hyp(L, _).
如果你的 Prolog 没有库(聚合),你可以用这个 sn-p 计算元素
count_synset_daughters(S, N) :-
s(S,_,_,_,_,_),
setof(D, hyp(S,D), L),
length(L, N).
然后简单地组合(加入)它们:
?- root_hyp(R), count_synset_daughters(R, N).
【讨论】: