2010-05-28 145 views
0

什麼是配置Zend Lucene使搜索結果更相關的最佳實踐?Zend Lucene搜索相關性

我有以下字段和文檔類型

productname (Text) 
description (Text) 
category (Keyword) 

請給出一些示例代碼。

+0

請指定「更相關」的含義。 lucene是否不返回您期望的文檔? – ZeissS 2010-05-28 07:41:12

+0

是的,結果看起來非常不相關。有比返回的結果更多的相關產品 – 2010-06-30 08:57:05

回答

0

從任何搜索引擎獲取相關結果都很困難。 隨着您指定的詳細程度,很難給您任何具體的建議。 我建議你從this paper開始。

2

有兩個概念讓我想起你的問題,但並不確定你在找什麼。

得分:指示文檔與搜索查詢匹配程度的評分。從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" 

這是否幫助呢?