Wordnet ws4j混淆风险值,遍历所有同义词集



这可能是完全正常的,但是我有Java的ws4j,我似乎得到像"1.7345…"这样的数字,用于两个单词之间的长度(当我使用演示代码时),但是在演示网站http://ws4jdemo.appspot.com/?mode=w&s1=&w1=solve&s2=&w2=determine

是一个整数,如"57"。我似乎找不到这样做的原因,但我对编程也很陌生。

我想写一些东西,它接受一个word1并迭代其余的单词,只返回Lesk测量值(与word1相比)高于某个值的单词。这给我带来了一个相关的问题,在Python中,我可以用

遍历所有的synset
for x in wn.all_synsets():

但是我不知道如何用ws4j做同样的事情?

为什么需要遍历所有的同义词集,而只需要Lesk值?试试这个-

private static ILexicalDatabase db = new NictWordNet();
private static RelatednessCalculator[] rcs = { new Lesk(db) };
private static double run(String word1, String word2) {
    WS4JConfiguration.getInstance().setMFS(true);
    double s = 0;
    for (RelatednessCalculator rc : rcs) {
        s = rc.calcRelatednessOfWords(word1, word2);
    }
    if (s > your_value)
    return s;
}

最新更新