Query詞權重方法(3) - 基於有監督學習

本文繼續介紹一種基於有監督學習的詞權重計算方法。有監督學習相比於無監督學習的效果一般會更好,但也存在需要大量標註樣本、模型難以更新,結果難以debug的等問題。有監督學習一般有樣本構造、特徵表示、模型訓練、模型評估四部分。


1)樣本構造

樣本構造之前需要定義任務的形式。如果把詞權重看成分類任務,則可以按二分類(term重要為1,不重要0)或者多分類(term的重要等級)進行標註;如果是排序任務,則可以按pair-wise去標註樣本,即標註兩個term間那個term更重要;如果是迴歸任務,則需要標註每個term的權重。但是人工標註需要大量的時間,並且可能存在模稜兩可的情況,因此可以採用自動的方法去構建樣本。這裡介紹一種基於百度元搜的迴歸方法,去擬合query中的詞在搜索結果裡的term recall weight,


Query詞權重方法(3) - 基於有監督學習


#doc(query)指搜索結果中doc數目,#doc(query,term)是搜索結果中包含term的doc數目。


2)特徵表示

特徵表示現在比較流行的是embedding表示,在該任務中,可以分為把query和term表示低維embedding向量,然後用query embedding和term embedding的距離表示成向量,如下圖,term和query距離比較近,則表示該term比較重要,相反比較遠,則沒有那麼重要。


fea(term,query) = embedding(term) - embedding(query)


Query詞權重方法(3) - 基於有監督學習


3)模型訓練

因為是迴歸任務,這裡可以採用linear regression或者GBRT,不過不同的模型對效果的影響並不大,因為任務的瓶頸還是在於樣本構造和特徵表示。


4)模型評估

模型評估一般分為直接評估和間接評估。直接評估採用模型本身的準確率或者人工評測,間接評估通常把詞權重作為一種中間結果用於某個任務裡面,通過任務的評價指標來反應詞權重的質量。


原文轉自:https://mp.weixin.qq.com/s?__biz=MzU2OTQyOTMxOQ==&mid=2247483914&idx=1&sn=6d9a63f367d023a8729f8eb3e350bc14&chksm=fcff9e22cb881734b807858e8165103df4712fd8bf0e1421fb63120839a041061662a7d4f9b9&scene=21#wechat_redirect


分享到:


相關文章: