1. 程式人生 > >《從Lucene到Elasticsearch:全文檢索實戰》學習筆記五

《從Lucene到Elasticsearch:全文檢索實戰》學習筆記五

今天我給大家講講tf-idf權重計算

tf-idf權重計算:

       tf-idf(中文詞頻-逆文件概率)是表示計算詞項對於一個文件集或語料庫中的一份檔案的重要程度。詞項的重要性隨著它在文件中出現的次數成正比,會隨著它在文件集中出現的頻率成反比。如果一個詞項在一遍文件中出現的頻率非常高,說明其比較重要,如果這個詞項在其他文件中出現的頻率也高,那麼說明這個詞有可能是比較通用的。

      tf代表詞項頻率,如果要計算指定詞項的詞頻,統計該詞在整篇文件中出現的次數就可以了。如果一篇3000字的文件中詞語“足球”出現了3次,我很難判定這片文章和足球相關,但是一篇100字但微博中通用出現三次“足球”。基本可以斷定微博內容和足球有關,為了削弱文件長度但影響,需要將詞頻標準化,計算公式如下    

     另外,詞頻標準化的方法不止一種,Lucene中採用了另外一種詞頻標準化方法:

  

 

     文件頻率df表示包含指定詞的所有文件數目。df通常比較大,把它對映到一個較小的取值範圍,用逆文件頻率(idf)來表示‘:

     

從上面公式中可以看出分母越大,說明該詞越常見,逆文件頻率越小。分母中文件數加1是進行平滑處理,防止所有文件都不包括某個詞時分母為0的情況發生。詞項的權重用TF-IDF來表示,計算公式如下:

   

通過tf-idf可以把文件表示成n維的詞項權重向量

       

   

                 


作者:柯之夢
來源:CSDN
原文:https://blog.csdn.net/yin4302008/article/details/86104662
版權宣告:本文為博主原創文章,轉載請附上博文連結!