概念
TF-IDF(term frequency–inverse document frequency)是一種用于資訊檢索與資訊探勘的常用加權(quán)技術(shù)。TF-IDF是一種統(tǒng)計(jì)方法涯竟,用以評(píng)估一字詞對(duì)于一個(gè)文件集或一個(gè)語(yǔ)料庫(kù)中的其中一份文件的重要程度。字詞的重要性隨著它在文件中出現(xiàn)的次數(shù)成正比增加恩伺,但同時(shí)會(huì)隨著它在語(yǔ)料庫(kù)中出現(xiàn)的頻率成反比下降徙瓶。TF-IDF加權(quán)的各種形式常被搜尋引擎應(yīng)用,作為文件與用戶查詢之間相關(guān)程度的度量或評(píng)級(jí)烹困。除了TF-IDF以外玄妈,因特網(wǎng)上的搜尋引擎還會(huì)使用基于連結(jié)分析的評(píng)級(jí)方法,以確定文件在搜尋結(jié)果中出現(xiàn)的順序髓梅。
原理
在一份給定的文件里拟蜻,**詞頻 (term frequency, TF)** 指的是某一個(gè)給定的詞語(yǔ)在該文件中出現(xiàn)的次數(shù)。這個(gè)數(shù)字通常會(huì)被歸一化(分子一般小于分母 區(qū)別于IDF)枯饿,以防止它偏向長(zhǎng)的文件酝锅。(同一個(gè)詞語(yǔ)在長(zhǎng)文件里可能會(huì)比短文件有更高的詞頻,而不管該詞語(yǔ)重要與否奢方。)
逆向文件頻率 (inverse document frequency, IDF) 是一個(gè)詞語(yǔ)普遍重要性的度量搔扁。某一特定詞語(yǔ)的IDF,可以由總文件數(shù)目除以包含該詞語(yǔ)之文件的數(shù)目蟋字,再將得到的商取對(duì)數(shù)得到稿蹲。
某一特定文件內(nèi)的高詞語(yǔ)頻率,以及該詞語(yǔ)在整個(gè)文件集合中的低文件頻率,可以產(chǎn)生出高權(quán)重的TF-IDF。因此驾讲,TF-IDF傾向于過濾掉常見的詞語(yǔ)巫击,保留重要的詞語(yǔ)。
**TFIDF的主要思想是**:如果某個(gè)詞或短語(yǔ)在一篇文章中出現(xiàn)的頻率TF高屠凶,并且在其他文章中很少出現(xiàn),則認(rèn)為此詞或者短語(yǔ)具有很好的類別區(qū)分能力,適合用來分類熬拒。TFIDF實(shí)際上是:TF * IDF,TF詞頻(Term Frequency)垫竞,IDF反文檔頻率(Inverse Document Frequency)澎粟。**TF**表示詞條在文檔d中出現(xiàn)的頻率(另一說:**TF詞頻(Term Frequency)指**的是某一個(gè)給定的詞語(yǔ)在該文件中出現(xiàn)的次數(shù))蛀序。IDF的主要思想是:如果包含詞條t的文檔越少,也就是n越小活烙,IDF越大(見后續(xù)公式)徐裸,則說明詞條t具有很好的類別區(qū)分能力。如果某一類文檔C中包含詞條t的文檔數(shù)為m啸盏,而其它類包含t的文檔總數(shù)為k重贺,顯然所有包含t的文檔數(shù)n=m+k,當(dāng)m大的時(shí)候回懦,n也大气笙,按照IDF公式得到的IDF的值會(huì)小,就說明該詞條t類別區(qū)分能力不強(qiáng)怯晕。(另一說:**IDF反文檔頻率(Inverse Document Frequency)**是指果包含詞條的文檔越少潜圃,IDF越大,則說明詞條具有很好的類別區(qū)分能力舟茶。)但是實(shí)際上谭期,有時(shí)候,如果一個(gè)詞條在一個(gè)類的文檔中頻繁出現(xiàn)稚晚,則說明該詞條能夠很好代表這個(gè)類的文本的特征崇堵,這樣的詞條應(yīng)該給它們賦予較高的權(quán)重,并選來作為該類文本的特征詞以區(qū)別與其它類文檔客燕。這就是IDF的不足之處.
在一份給定的文件里鸳劳,**詞頻**(term frequency,TF)指的是某一個(gè)給定的詞語(yǔ)在該文件中出現(xiàn)的頻率也搓。這個(gè)數(shù)字是對(duì)**詞數(shù)**(term count)的歸一化赏廓,以防止它偏向長(zhǎng)的文件。(同一個(gè)詞語(yǔ)在長(zhǎng)文件里可能會(huì)比短文件有更高的詞數(shù)傍妒,而不管該詞語(yǔ)重要與否幔摸。)對(duì)于在某一特定文件里的詞語(yǔ) ![t_{i}](http://upload-images.jianshu.io/upload_images/10000468-6bc40f3731d4368d..png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
來說,它的重要性可表示為:
以上式子中 ![n_{i,j}](http://upload-images.jianshu.io/upload_images/10000468-063fc681d1483297..png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
是該詞中所有字詞的出現(xiàn)次數(shù)之和既忆。
** 逆向文件頻率**(inverse document frequency,IDF)是一個(gè)詞語(yǔ)普遍重要性的度量嗦玖。某一特定詞語(yǔ)的IDF患雇,可以由總文件數(shù)目除以包含該詞語(yǔ)之文件的數(shù)目,再將得到的商取對(duì)數(shù)得到:
<dl style="margin: 24px; padding: 0px; font-weight: 400; box-sizing: border-box; list-style: none;">
<dd style="margin: 0px 0px 8px 180px; padding: 0px; font-weight: 400; box-sizing: border-box; list-style: none;"></dd>
</dl>
其中
|D|:語(yǔ)料庫(kù)中的文件總數(shù)
-
的文件數(shù)目)如果該詞語(yǔ)不在語(yǔ)料庫(kù)中宇挫,就會(huì)導(dǎo)致被除數(shù)為零苛吱,因此一般情況下使用
然后
<dl style="margin: 24px; padding: 0px; font-weight: 400; box-sizing: border-box; list-style: none;">
<dd style="margin: 0px 0px 8px 40px; padding: 0px; font-weight: 400; box-sizing: border-box; list-style: none;"></dd>
</dl>
某一特定文件內(nèi)的高詞語(yǔ)頻率,以及該詞語(yǔ)在整個(gè)文件集合中的低文件頻率器瘪,可以產(chǎn)生出高權(quán)重的TF-IDF翠储。因此绘雁,TF-IDF傾向于過濾掉常見的詞語(yǔ),保留重要的詞語(yǔ)援所。
示例
一:有很多不同的數(shù)學(xué)公式可以用來計(jì)算TF-IDF庐舟。這邊的例子以上述的數(shù)學(xué)公式來計(jì)算。詞頻 (TF) 是一詞語(yǔ)出現(xiàn)的次數(shù)除以該文件的總詞語(yǔ)數(shù)任斋。假如一篇文件的總詞語(yǔ)數(shù)是100個(gè)继阻,而詞語(yǔ)“母牛”出現(xiàn)了3次废酷,那么“母牛”一詞在該文件中的詞頻就是3/100=0.03抹缕。一個(gè)計(jì)算文件頻率 (DF) 的方法是測(cè)定有多少份文件出現(xiàn)過“母懦后。”一詞,然后除以文件集里包含的文件總數(shù)卓研。所以趴俘,如果“母牛”一詞在1,000份文件出現(xiàn)過奏赘,而文件總數(shù)是10,000,000份的話寥闪,其逆向文件頻率就是 log(10,000,000 / 1,000)=4。最后的TF-IDF的分?jǐn)?shù)為0.03 * 4=0.12磨淌。
二:根據(jù)關(guān)鍵字k1,k2,k3進(jìn)行搜索結(jié)果的相關(guān)性就變成TF1IDF1 + TF2IDF2 + TF3IDF3疲憋。比如document1的term總量為1000,k1,k2,k3在document1出現(xiàn)的次數(shù)是100梁只,200缚柳,50。包含了 k1, k2, k3的docuement總量分別是 1000搪锣, 10000秋忙,5000。document set的總量為10000构舟。 TF1 = 100/1000 = 0.1 TF2 = 200/1000 = 0.2 TF3 = 50/1000 = 0.05 IDF1 = log(10000/1000) = log(10) = 2.3 IDF2 = log(10000/100000) = log(1) = 0; IDF3 = log(10000/5000) = log(2) = 0.69 這樣關(guān)鍵字k1,k2,k3與docuement1的相關(guān)性= 0.12.3 + 0.20 + 0.050.69 = 0.2645 其中k1比k3的比重在document1要大灰追,k2的比重是0.
三:在某個(gè)一共有一千詞的網(wǎng)頁(yè)中“原子能”、“的”和“應(yīng)用”分別出現(xiàn)了 2 次狗超、35 次 和 5 次弹澎,那么它們的詞頻就分別是 0.002、0.035 和 0.005抡谐。 我們將這三個(gè)數(shù)相加裁奇,其和 0.042 就是相應(yīng)網(wǎng)頁(yè)和查詢“原子能的應(yīng)用” 相關(guān)性的一個(gè)簡(jiǎn)單的度量。概括地講麦撵,如果一個(gè)查詢包含關(guān)鍵詞 w1,w2,...,wN, 它們?cè)谝黄囟ňW(wǎng)頁(yè)中的詞頻分別是: TF1, TF2, ..., TFN刽肠。 (TF: term frequency)溃肪。 那么,這個(gè)查詢和該網(wǎng)頁(yè)的相關(guān)性就是:TF1 + TF2 + ... + TFN音五。
讀者可能已經(jīng)發(fā)現(xiàn)了又一個(gè)漏洞惫撰。在上面的例子中,詞“的”站了總詞頻的 80% 以上躺涝,而它對(duì)確定網(wǎng)頁(yè)的主題幾乎沒有用厨钻。我們稱這種詞叫“應(yīng)刪除詞”(Stopwords),也就是說在度量相關(guān)性是不應(yīng)考慮它們的頻率坚嗜。在漢語(yǔ)中夯膀,應(yīng)刪除詞還有“是”、“和”苍蔬、“中”诱建、“地”、“得”等等幾十個(gè)碟绑。忽略這些應(yīng)刪除詞后俺猿,上述網(wǎng)頁(yè)的相似度就變成了0.007,其中“原子能”貢獻(xiàn)了 0.002格仲,“應(yīng)用”貢獻(xiàn)了 0.005押袍。細(xì)心的讀者可能還會(huì)發(fā)現(xiàn)另一個(gè)小的漏洞。在漢語(yǔ)中凯肋,“應(yīng)用”是個(gè)很通用的詞谊惭,而“原子能”是個(gè)很專業(yè)的詞,后者在相關(guān)性排名中比前者重要否过。因此我們需要給漢語(yǔ)中的每一個(gè)詞給一個(gè)權(quán)重午笛,這個(gè)權(quán)重的設(shè)定必須滿足下面兩個(gè)條件:
1. 一個(gè)詞預(yù)測(cè)主題能力越強(qiáng),權(quán)重就越大苗桂,反之药磺,權(quán)重就越小。我們?cè)诰W(wǎng)頁(yè)中看到“原子能”這個(gè)詞煤伟,或多或少地能了解網(wǎng)頁(yè)的主題癌佩。我們看到“應(yīng)用”一次,對(duì)主題基本上還是一無所知便锨。因此围辙,“原子能“的權(quán)重就應(yīng)該比應(yīng)用大。
2. 應(yīng)刪除詞的權(quán)重應(yīng)該是零放案。
我們很容易發(fā)現(xiàn)姚建,如果一個(gè)關(guān)鍵詞只在很少的網(wǎng)頁(yè)中出現(xiàn),我們通過它就容易鎖定搜索目標(biāo)吱殉,它的權(quán)重也就應(yīng)該大掸冤。反之如果一個(gè)詞在大量網(wǎng)頁(yè)中出現(xiàn)厘托,我們看到它仍然不很清楚要找什么內(nèi)容,因此它應(yīng)該小稿湿。概括地講铅匹,假定一個(gè)關(guān)鍵詞 w 在 Dw 個(gè)網(wǎng)頁(yè)中出現(xiàn)過,那么 Dw 越大饺藤,w的權(quán)重越小包斑,反之亦然。在信息檢索中涕俗,使用最多的權(quán)重是“逆文本頻率指數(shù)” (Inverse document frequency 縮寫為IDF)罗丰,它的公式為log(D/Dw)其中D是全部網(wǎng)頁(yè)數(shù)。比如再姑,我們假定中文網(wǎng)頁(yè)數(shù)是D=10億丸卷,應(yīng)刪除詞“的”在所有的網(wǎng)頁(yè)中都出現(xiàn),即Dw=10億询刹,那么它的IDF=log(10億/10億)= log (1) = 0。假如專用詞“原子能”在兩百萬個(gè)網(wǎng)頁(yè)中出現(xiàn)萎坷,即Dw=200萬凹联,則它的權(quán)重IDF=log(500) =6.2。又假定通用詞“應(yīng)用”哆档,出現(xiàn)在五億個(gè)網(wǎng)頁(yè)中蔽挠,它的權(quán)重IDF = log(2)則只有 0.7。也就只說瓜浸,在網(wǎng)頁(yè)中找到一個(gè)“原子能”的比配相當(dāng)于找到九個(gè)“應(yīng)用”的匹配澳淑。利用 IDF,上述相關(guān)性計(jì)算個(gè)公式就由詞頻的簡(jiǎn)單求和變成了加權(quán)求和插佛,即 TF1IDF1 + TF2IDF2 +... + TFN*IDFN杠巡。在上面的例子中,該網(wǎng)頁(yè)和“原子能的應(yīng)用”的相關(guān)性為 0.0161雇寇,其中“原子能”貢獻(xiàn)了 0.0126氢拥,而“應(yīng)用”只貢獻(xiàn)了0.0035。這個(gè)比例和我們的直覺比較一致了锨侯。
轉(zhuǎn)載自:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/17/2595249.html