我在Eclipse中使用Java,&斯坦福CoreNLP。我想知道如何使用Stanford CoreNLP生成的POS标签,从WordNet中检索标记词的同义词。 (我在POS标记前对句子进行了标记)
由于WordNet具有POS标记的同义词,我假设可以完成。我也查了几个教程,但没有什么帮助。
答案 0 :(得分:0)
以下代码获取searchWord + POS标签的所有同义词,然后从它们打印出它们的光泽。你可以改变POS.NOUN来搜索其他形式的搜索词:
public int stackoverflow(String searchWord) throws IOException {
String s = null;
IDictionary dict = dicitionaryFactory();
try {
IIndexWord idxWord = dict.getIndexWord(searchWord, POS.NOUN);
for (int i = 0; i < idxWord.getWordIDs().size(); i++) {
IWordID wordID = idxWord.getWordIDs().get(i); // ist meaning
edu.mit.jwi.item.IWord word = dict.getWord(wordID);
edu.mit.jwi.item.ISynset synset = word.getSynset();
List<edu.mit.jwi.item.IWord> words;
System.out.println(synset.getGloss());
}
return -1;
} catch (Exception e) {
return -2;
}
}