TF-IDF(詞頻—逆文件頻率)是一條經典的數學公式,用來判斷「某個字,對某一篇文章到底有多重要」。它的核心直覺很單純:一個字在這篇文章裡出現得越多、但在其他文章裡越少見,就越可能是這篇的關鍵字。
這篇文章會用新手角度說明:TF-IDF 是什麼、它怎麼算、實際上被拿來做什麼、跟 SEO 有什麼關係、有哪些常見迷思,以及 AI 時代裡,它的接班人 BM25 為什麼還活得好好的。
TF-IDF 是什麼?
TF-IDF 是資訊檢索(Information Retrieval)與自然語言處理(NLP)裡的一種「權重」演算法,用來衡量一個詞彙對「單篇文件」的重要程度,同時參考這個詞在「整堆文件」(語料庫,corpus)裡有多普遍。它源自 1970 年代的資訊檢索研究,是這個領域最經典的基本功之一。
顧名思義,它由兩個部分相乘而成:
- 詞頻(Term Frequency,TF):一個詞在「這一篇」文章裡出現的頻率,算法是「該詞出現次數 ÷ 文章總詞數」。出現越多,代表它對這篇可能越重要。
- 逆文件頻率(Inverse Document Frequency,IDF):一個詞在「整堆」文件裡有多稀有,算法是把「總文件數 ÷ 含這個詞的文件數」取對數(log)。一個詞出現在越多文件裡,IDF 就越低;越罕見,IDF 就越高。
把兩者相乘——TF-IDF = TF × IDF——就得到一個分數。分數越高,代表這個詞「在這篇出現得夠多,又剛好在別處很少見」,於是被判斷為越能代表這篇文章的關鍵字。
用白話文怎麼說?
你可以把 TF-IDF 想成一支「會自動畫重點的螢光筆」。
假設你經營一個美食部落格。「的、是、我」這種字,幾乎每篇文章都塞滿了——出現次數(TF)很高,但因為「每一篇」都有它,它沒辦法幫你區分這篇在講什麼,IDF 趨近於零,螢光筆自動跳過。
反過來,「拉麵」這個詞在你的「拉麵評比」那篇出現很多次(高 TF),又只出現在你少數幾篇文章裡(高 IDF),兩個條件都滿足,TF-IDF 分數就衝高——螢光筆「唰」地把它畫起來,告訴你:這就是這篇的主角。
你可以這樣記:TF-IDF 不看「字面意思」,它只是很聰明地用「出現多不多」加上「常不常見」,幫每個字打一個重要性分數。
TF-IDF 實際上要做什麼?
TF-IDF 最常被用在三個地方:
搜尋排序:站內搜尋或搜尋引擎拿它替「查詢字」和「文件」算相關度,分數高的排前面。關鍵字萃取:自動從一篇長文裡,抓出最有代表性的幾個詞,當作標籤或摘要。文本分類與分群:把文章轉成一串數字(向量),讓機器能比較、歸類大量文件。
舉個具體例子。假設你的部落格共有 100 篇文章,現在要分析「拉麵評比」這一篇,看看哪個詞最能代表它:
| 詞彙 | 在這篇的出現次數 | 含這個詞的文章數(共 100 篇) | TF-IDF 結果 |
|---|---|---|---|
| 的 | 很多 | 100 篇都有 | 分數趨近 0,沒有辨識度 |
| 美食 | 中等 | 60 篇有 | 分數普通,太常見 |
| 拉麵 | 很多 | 只有 3 篇 | 分數很高,是這篇的關鍵字 |
至於跟 SEO 的關係:有些內容優化工具會用 TF-IDF 的思路,去比對「排在前面的競爭對手文章,常用了哪些相關詞,而你漏掉了」。這比較像在做「主題涵蓋度」的健檢——提醒你有沒有把一個主題講完整,而不是叫你硬把某個字塞到固定次數。這個區別很重要,下一段會解釋。
關於 TF-IDF 的常見迷思
迷思一:TF-IDF 是 Google 的排名公式
不是。針對 TF-IDF 是不是排名因素,Google 的 John Mueller 曾表示,這是一個相當舊的指標、這些年已經演變很多,而且還有很多其他指標。意思是:Google 早就用上更複雜、更進階的一整套系統,TF-IDF 頂多是早期資訊檢索的概念之一,不該被當成決定排名的魔法公式。
迷思二:把某個字的 TF-IDF「衝高」就能贏
不會。TF-IDF 沒有一個「最佳數值」可以瞄準,刻意去堆高某個詞的密度,反而容易變成關鍵字填充,破壞閱讀體驗。把它當成內容是否完整的「參考」可以,當成要硬湊的指標就走偏了。
迷思三:TF-IDF 看得懂文章在說什麼
沒有。TF-IDF 純粹是統計,它只會數數字、不懂語意。對它來說「番茄」「蕃茄」「tomato」是三個完全無關的字串,也分不出一詞多義。要真正理解「意思」,靠的是後來的詞向量(embeddings)那套技術,不是 TF-IDF。
迷思四:都 AI 時代了,TF-IDF 早就沒用
剛好相反。它的改良版 BM25 到現在依然是搜尋與 AI 檢索的主力之一,下一段會說明。把 TF-IDF 當成「過時」,其實是小看了它——它是很多現代技術的地基。
總結
一句話記住:TF-IDF(詞頻—逆文件頻率),就是用「在這篇出現得多不多」乘上「在別處常不常見」,幫每個字打一個重要性分數。
新手抓住三件事就夠了:第一,它是統計工具,不懂語意,也不是 Google 的排名公式;第二,別想著去「衝高」某個字的分數,那只會變成關鍵字填充;第三,它的改良版 BM25 在現在的 AI 檢索裡活得很好,把內容主題寫完整、用詞精準,就是對這套技術最好的配合。



