ML 算法之TF-IDF

TF-IDF直觀來說就是來確定一個詞對某一篇文檔的重要性,而這個重要性的核定還用基於一個語料庫

  • 由於TF-IDF這樣的一個功能,它就可以被用來提取一個文檔中的關鍵字
  • 當我們有了關鍵字之後,關鍵字就又可以代表一個文檔,並用其來計算文檔之間的相似度

TF-IDF的解釋

  • TF(term frequency)的計算:這個文檔中的每個詞出現的頻率
  • IDF(inverse document frequency):逆文檔頻率
    本來每個詞出現的次數越多那麼說明這個詞越重要(當然像‘的’,‘了’等這些詞不算),但是遇到另一個問題,當我們遇到幾個詞它們的TF是一樣的,那我們應該怎麼決定誰是最重要的呢?

  • 有一種情況,當一個詞一般情況下被使用的比較少,但是在這篇文檔中突然的多了起來,說明這個詞對於這篇文章很重要

  • 另一種情況,雖然一個詞不是一個停用詞但是它也是會經常用的到,說明這個詞對於這篇文章相對於第一種情況來說沒有那麼重要。
    這就需要我們來平衡他們的重要性,可以採取權重的方式,這就是IDF,它是在整個語料庫上來衡量一個詞的使用情況。

TF-IDF計算方式

  • TF( term frequency ):這個詞在這篇文檔中出現的次數
    • 它的計算方式不一定,TF=最簡單的就是頻次
      當一個文檔很長的時候我們可以考慮進行標準化:
    • 例如是 TF=這個詞在這篇文檔中出現的次數/這篇文檔的詞的個數
    • 或者是 TF=這個詞在這個文檔中出現的次數/這篇文檔中頻率最高的那個詞的頻次等等。
  • IDF(inverse document frequency):出現在這個詞語的文檔數與整個語料庫的文檔數的比例關係。
    • IDF=log(出現這個詞的文檔的個數/(整個語料庫的文檔數+1))

最後,TF-IDF=TF*IDF

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章