我在Wordnet中搜索一大串单词的同义词。按照我的做法,当某个单词有多个同义词时,结果会按字母顺序返回。我需要的是让他们按照发生的概率排序,我只取前1的同义词。
我使用prolog数据库和Syns2Index将其转换为Lucene类型索引,以查询同义词。有没有办法让他们按照自己的概率来排序,还是我应该用另一种方法?
速度不重要,这个同义词查找不会在网上完成。
发布于 2010-07-27 21:01:23
如果有人无意中发现了这条线索,这就是我要走的路(至少是我需要的):
tagCount方法为每个单词提供最有可能的synset组。同样的问题是,同步器与高概率的同步又会有几个单词。但我想没有机会避免这件事
发布于 2010-07-13 07:53:32
我认为你应该再走一步(只要速度不重要)。
在Lucene索引中,您应该构建另一个字典,其中每个单词都映射到一个小对象,该对象包含它的唯一同义词,该同义词的出现概率、词义和出现概率都较高。也就是说,考虑到这个密码:
class Synonym {
public:
String name;
double probability;
String meaning;
}
Map<String, Synonym> m = new HashMap<String, Synonym>();..。你只需要用Lucene指数来填充它。
https://stackoverflow.com/questions/3234371
复制相似问题