Ranking Relevance小結

Ranking Relevance是搜索排序算法的各個影響因子中至關重要的一個部分。對於Ranking Relevance的計算,過去的技術每每分爲兩個大的方向:Click BehaviorText Matchhtml

1. Click Behavior類的feature

主要是利用用戶的點擊行爲來計算query-doc relevance,直觀上,點擊越多的query-doc pair,relevance也越高,固然Click Behavior類的feature還包括:是不是首次點擊,是不是最後一次點擊,是不是惟一點擊,等等。算法

可是Click Behavior類的feature的缺點也顯而易見:spa

1)Sparsity。只有「有過點擊」的query-doc pair,咱們才能夠計算它們的relevance,而對那些歷史上根本沒有過點擊的query-doc pair,每每一籌莫展。debug

2)Noisy。另一個更常見的問題是,對於長尾的query-doc pair,展示數和點擊數過少,因此獲得的query-doc的展示CTR等數據噪音較大,雖然也能夠經過貝葉斯平滑的方式來緩解(詳見博客:http://www.cnblogs.com/bentuwuying/p/6389222.html,和http://www.cnblogs.com/bentuwuying/p/6498370.html)。htm

總結來看,Click Behavior類的feature,對於Top的query-doc pair(即展示次數&點擊次數較多)比較可靠,對於長尾的,甚至是沒出現過的query-doc pair,則不太可靠。blog

 

2. Text Match類的feature

包括Term Match(term級別的匹配),和Topic Match(語義級別的匹配)。Text Match並不受到query-doc的展示次數和點擊次數的多少的影響,即當query和doc肯定後,這類feature的值就肯定了(固然前提是採用相同的模型計算的),並不會隨着時間的推移而改變,是一種靜態的relevance關係。排序

2-1. Term Match

包括:直接根據query和doc的term進行各類匹配,各類計算獲得,好比,詞頻(term frequency),TF-IDF,布爾模型,空間向量模型(將query和doc各自分詞後的term組成一個共享的詞典vector,而後各自表示成相同維度的vector,計算類似度),BM25,query與doc各個field的term級別重疊比例(重疊term個數佔query term個數的比例,重疊term個數佔doc各個field的term個數的比例,query-doc的N-gram重疊比例,query能覆蓋doc的N-gram prefix的比例,query-doc是否perfect match)等。get

Term Match的缺點在於:博客

1) 沒法解決近義詞的問題,因爲是term級別的匹配,那麼近義詞雖然表達的意思近似,可是卻沒法匹配,或者說在向量空間上距離很遠,即沒法表達近義詞。it

2)query和doc上的term的語法表達的區別,例如query中的「how much」與doc中的「price」,意思雖然近似,可是存在語法語義上的區別。

2-2. Topic Match

包括:通常是將query和doc都映射到一個隱含層空間向量上(隱語義空間),而後基於這個隱含層空間上的vector計算類似度,通常能夠用pLSA,或者LDA等NLP模型來處理)

Topic Match的缺點在於,解釋性較差,不一樣於Term Match中咱們把query和doc切分到term級別,解釋性較強,而在Topic Match中,映射到隱語義空間上時,vector每一個維度表達的意思並不知道,不利於驗證和debug。

 

版權聲明:

   本文由笨兔勿應全部,發佈於http://www.cnblogs.com/bentuwuying。若是轉載,請註明出處,在未經做者贊成下將本文用於商業用途,將追究其法律責任。

相關文章
相關標籤/搜索