什么是配置Zend Lucene使搜索结果更相关的最佳实践?Zend Lucene搜索相关性
我有以下字段和文档类型
productname (Text)
description (Text)
category (Keyword)
请给出一些示例代码。
什么是配置Zend Lucene使搜索结果更相关的最佳实践?Zend Lucene搜索相关性
我有以下字段和文档类型
productname (Text)
description (Text)
category (Keyword)
请给出一些示例代码。
从任何搜索引擎获取相关结果都很困难。 随着您指定的详细程度,很难给您任何具体的建议。 我建议你从this paper开始。
有两个概念让我想起你的问题,但并不确定你在找什么。
得分:指示文档与搜索查询匹配程度的评分。从manual:
Zend_Search_Lucene使用相同 评分算法和Java Lucene。搜索结果中的所有 结果按默认值排序为 。
$hits = $index->find($query);
foreach ($hits as $hit) {
echo $hit->id;
echo $hit->score;
}
的分数是在默认情况下检索并应用到从多到少排序的相关结果,因此必须假设你需要别的东西。
Term Boosting:用于影响查询中各个词的相关性。引用一次的manual:
推进允许你通过提高 各个方面来控制文档的 相关性。例如,如果您 正在寻找
PHP framework
和你想要的术语“PHP”是使用^符号 与增强因子一起更 相关升压旁边 术语。您可以键入:
PHP^4 framework
这将使文件与PHP出现更多的相关术语 。您还可以 升压短语搜索项和子作为 的例子:
"PHP framework"^4 "Zend Framework"
这是否帮助呢?
请指定“更相关”的含义。 lucene是否不返回您期望的文档? – ZeissS 2010-05-28 07:41:12
是的,结果看起来非常不相关。有比返回的结果更多的相关产品 – 2010-06-30 08:57:05