ES中相關性簡介及相關行評分標準

2021-09-29 13:30:26 字數 1575 閱讀 2918

每個文件都有相關性評分,用乙個相對的浮點數字段_score來表示 –_score的評分越高,相關性越高。

elasticsearch的相似度演算法被定義為 tf/idf,即檢索詞頻率/反向文件頻率,包括一下內容:

理解評分標準

當除錯一條複雜的查詢語句時,想要理解相關性評分_score是比較困難的。elasticsearch 在 每個查詢語句中都有乙個explain引數,將explain設為true就可以得到更詳細的資訊。

get /_search?explain <1>

}}

explain引數可以讓返回結果新增乙個_score評分的得來依據。

增加乙個explain引數會為每個匹配到的文件產生一大堆額外內容,但是花時間去理解它是很有意義的。 如果現在看不明白也沒關係 – 等你需要的時候再來回顧這一節就行。下面我們來一點點的了解這塊知識點。

首先,我們看一下普通查詢返回的元資料:

, }
這裡加入了該文件來自於哪個節點哪個分片上的資訊,這對我們是比較有幫助的,因為詞頻率和 文件頻率是在每個分片中計算出來的,而不是每個索引中:

"_shard" : 1, "_node" : "mzivycsqswcg_m_zffss9q",
然後返回值中的_explanation會包含在每乙個入口,告訴你採用了哪種計算方式,並讓你知道計算的結果以及其他詳情:

"_explanation":  ] }, ,  ] } ] }
honeymoon相關性評分計算的總結 檢索詞頻率 反向文件頻率 字段長度準則

重要

輸出explain結果代價是十分昂貴的,它只能用作除錯工具

提示

json形式的explain描述是難以閱讀的

但是轉成 yaml 會好很多,只需要在引數中加上format=yaml

文件是如何被匹配到的 當explain選項加到某一文件上時,它會告訴你為何這個文件會被匹配,以及乙個文件為何沒有被匹配。 請求路徑為/index/type/id/_explain

如下所示:

get /us/tweet/12/_explain }, "query" : } } } }
除了上面我們看到的完整描述外,我們還可以看到這樣的描述: ```

"failure to match filter: cache(user_id:[2 to 2])"
也就是說我們的user_id過濾子句使該文件不能匹配到。

理解相關濾波類中的相關性計算

在基於相關濾波類的跟蹤演算法中,均用到了相關性計算。但是,這裡的相關性計算與一般的卷積運算是有區別。在訊號處理中,卷積就是把其中乙個訊號 一般很短,在卷積中稱為卷積核 反褶以後的相關。如果乙個卷積核是對稱的,卷積運算和相關運算得到的結果是一樣的,比如高斯核。卷積的定義 變數替換後 上述兩式等價。卷積...

R語言相關性分析及步驟

記錄一下r語言學習過程,對於r的基礎就是基本資料型別 向量,矩陣,資料框,字串等等 庫的呼叫以及函式自定義,還需要多加學習!進入主題,今天主題是相關性分析 以下為 y c 170,175,180 定義向量 y1 c 20,25,30 y cor.test y,y1,method spearman 呼...

GSEA檔案準備及表達相關性分析(R語言)

setwd f geo geo晶元資料 load gse35896 eset.rdata a gset 1 取出第乙個元素賦值給乙個物件a dat exprs a a現在是乙個物件,取a這個物件通過看說明書知道要用exprs這個函式,該函式得到表達矩陣 現在 得到的dat就是乙個表達矩陣,只不過基因...