首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >像这样模糊的和像这样模糊的区别?

问像这样模糊的和像这样模糊的区别?
EN

Stack Overflow用户
提问于 2013-10-14 16:25:34
回答 1查看 3.7K关注 0票数 4

Lucene的MoreLikeThis (mlt)和FuzzyQuery (flt)有什么区别?

我正在通过Elasticsearch (ES)评估这两种查询类型,我发现它们在概念上非常相似:

  • mlt:将现有文档字段与其他文档字段vs进行比较
  • flt:将字符串与其他文档的字段进行比较

但是,flt性能似乎比mlt查询慢一个数量级。

我正在使用最新的ES,这反过来又使用Lucene 4.5。

来自像这样模糊文档:

模糊化所有作为字符串提供的术语,然后选择最佳的n个区分项。实际上,这混合了FuzzyQuery和MoreLikeThis的行为,但特别考虑了模糊评分因素。这通常对查询产生良好的效果,用户可以在多个字段中提供详细信息,并且不了解布尔查询语法,还需要一定程度的模糊匹配和快速查询。 对于每个源项,模糊变量保存在没有coord因子的BooleanQuery中(因为我们在任何一个文档中都不寻找多个变量的匹配)。此外,专门化的TermQuery用于变体,而不使用该变体的is,因为这将有利于更少见的术语,例如拼写错误。相反,所有变体都使用相同的以色列国防军排名(源查询术语的排序),这将被考虑到变量的boost中。如果索引中不存在源查询项,则使用变体的平均IDF。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-17 08:47:53

您正在比较更像这个查询和像这个查询一样模糊。尽管后者为“更像此”的查询增加了一些模糊性,但它与下面使用的模糊查询不一样。

“更像这样”允许您指定一个like_text和一个fields列表。因此,将返回在指定字段中包含该文本的文档。您可以调整术语的频率,以控制文档何时返回或被忽略,这样您就可以获得类似的、感兴趣的文档,这取决于您的需求。

“这样的模糊”具有类似的结构,实际上更像这个查询,它也使用内部的模糊查询来查找相似的文档。这意味着返回的文档不仅包含您在like_text中请求的条款,而且还包含类似的术语,对它们应用了一些模糊性。它速度慢的原因实际上是模糊查询,虽然它在Lucene 4.x中有了很大的改进,但是它的代价更高。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19364756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档