【发布时间】:2013-06-17 14:35:03
【问题描述】:
我正在使用 Solr 的 facet 功能来检索我的文档中最常见的索引,我想知道是否可以将相似术语的频率“合并”在一起(例如,借助 levenshtein 距离)。
举个例子: “通讯技能”出现200次,“通讯技能”出现100次,是否可以带Solr返回“通讯技能:300次”?
感谢您的帮助!
【问题讨论】:
我正在使用 Solr 的 facet 功能来检索我的文档中最常见的索引,我想知道是否可以将相似术语的频率“合并”在一起(例如,借助 levenshtein 距离)。
举个例子: “通讯技能”出现200次,“通讯技能”出现100次,是否可以带Solr返回“通讯技能:300次”?
感谢您的帮助!
【问题讨论】:
Solr 在您插入的内容上创建构面。所以如果你插入Communication skills和Communicating skills,它就不会知道要不要合并。
但是,您可以使用SynonymFilterFactory,您必须在文件中定义Communication skills 是Communicating skills 的同义词,并且Solr 会将Communicating skills 替换为Communication skills。
编辑
您也可以使用PorterStemFilterFactory 来阻止单词,但是,这适用于单个标记,因此这意味着分解为标记,然后进行词干,然后再将它们连接回来。这也会因为词干而产生不利影响。
【讨论】: