TF-IDF 是什麼,如何計算與解讀?
TF-IDF 是衡量詞語對特定文件重要性的統計方法,算法是將詞頻(TF)乘以逆文件頻率(IDF)。它不只看一個詞在文章裡出現多少次,也看這個詞在整個文件集合中有多普遍:在單篇文件中經常出現、卻較少見於其他文件的詞,通常會得到較高權重。不過,高分只代表這套計算下的相對重要性,不表示 TF-IDF 真正理解了文章內容。
為什麼不能只數詞語出現幾次?
只看出現次數,無法判斷某個詞是這篇文件的特色,還是在許多文件中都很常見。TF-IDF 結合兩種資訊,協助辨認較能代表文件的詞語:
- TF 看單篇文件:某詞出現次數占文件總詞數的比例。
- IDF 看文件集合:包含某詞的文件越少,依此公式算出的 IDF 越高;越普遍的詞,IDF 越低。
因此,詞語在單篇文件中出現得多,不保證最後分數就高,還要考慮它在集合中的普遍程度。這也是 TF-IDF 能區分常見詞與罕見詞的原因。
TF-IDF 怎麼算?拆成三步
以下採用來源中的相對詞頻定義,並使用以 10 為底的對數,讓計算結果與來源範例一致。
- 計算 TF:詞語出現次數 ÷ 文件總詞數。若一篇文件有 10,000 個詞,某詞出現 25 次,TF=25 ÷ 10,000=0.0025。
- 計算 IDF:log₁₀(文件總數 ÷ 包含該詞的文件數)。若集合有 10,000 篇文件,其中 500 篇包含該詞,IDF=log₁₀(20)≈1.30。
- 兩者相乘:TF-IDF≈0.0025 × 1.30=0.00325。
注意兩個分母不同:TF 除以的是單篇文件的總詞數;IDF 比較的是文件數,不是把該詞在所有文件中的出現次數加總。
高分怎麼解讀,又有哪些盲點?
依這套方法,分數越高,表示詞語與該文件的相關性越高;分數越低,相關性也越低。不過,解讀分數時,必須考慮所選的文件集合與計算方式,不能只憑一個數字判定詞語是否重要。
來源也提醒,極罕見的詞可能因 IDF 很高而被高估。TF-IDF 不理解詞義或上下文,也不考慮詞序,因此不能僅靠分數讀懂片語或文章意思。它容易計算,適合作為辨識重要詞語與進一步分析的起點,但不能取代對內容的理解。
TF-IDF 常見問答:網路觀點整理
一個詞出現在所有文件中,TF-IDF 會是多少?
依本文採用的公式,TF-IDF 為 0。因為每篇文件都包含這個詞,文件總數除以包含該詞的文件數等於 1,所以 IDF=log₁₀(1)=0。即使它在某篇文件中出現多次,TF 乘以 0 後,TF-IDF 仍為 0。這只表示在這套算法下,該詞無法用來區分集合中的文件,不代表它在語意上不重要。
罕見詞的 TF-IDF 高,就一定是文章關鍵詞嗎?
不一定。TF-IDF 能協助辨認重要詞語,但在整個文件集合中極少出現的詞,可能因 IDF 很高而顯得比實際更重要。解讀時應留意這個詞在文件中如何使用,而非只按分數排序。
TF-IDF 能判斷同義詞或片語的意思嗎?
不能只靠 TF-IDF 完成這件事。它根據詞語在文件及文件集合中的出現情況計算權重,不理解詞義或上下文,也不考慮詞序,因此處理同義詞、相似詞及片語時有困難。它可以作為找出重要詞語和進一步分析的起點,但不能取代語意判讀。
參考資料
- An Introduction to TF-IDF: What It Is & How to Use Itwww.semrush.com · 2024-02-28T12:28:00Z — 討論:一個詞出現在所有文件中,TF-IDF 會是多少?;罕見詞的 TF-IDF 高,就一定是文章關鍵詞嗎?


一起討論 0 則留言
你遇到什麼狀況?留下問題或實作經驗,一起找到下一步。
目前還沒有留言,歡迎開始第一個討論。