Elasticsearch學習之相關度評分TF&IDF
阿新 • • 發佈:2017-06-26
doc ont core 文檔 color ood req oda 匹配
relevance score算法,簡單來說,就是計算出,一個索引中的文本,與搜索文本,他們之間的關聯匹配程度
Elasticsearch使用的是 term frequency/inverse document frequency算法,簡稱為TF/IDF算法
Term frequency(TF):搜索文本中的各個詞條在field文本中出現了多少次,出現次數越多,就越相關
Inverse document frequency(IDF):搜索文本中的各個詞條在整個索引的所有文檔中出現了多少次,出現的次數越多,就越不相關
示例:
搜索請求:hello world
doc1:hello, today is very good
doc2:hi world, how are you
比如說,在index中有1萬條document,hello這個單詞在所有的document中,一共出現了1000次;world這個單詞在所有的document中,一共出現了100次
doc2更相關
Field-length norm:field長度,field越長,相關度越弱
doc1:{ "title": "hello article", "content": "babaaba 1萬個單詞" } doc2:{ "title": "my article", "content": "blablabala 1萬個單詞,hi world" } hello world 在整個index中出現的次數是一樣多的 doc1 更相關,title field更短
分析一個document是如何被匹配上的
GET /test_index/test_type/6/_explain { "query": { "match": { "test_field": "test hello" } } }
Elasticsearch學習之相關度評分TF&IDF