1. 程式人生 > >VSM模型與TF-IDF權重

VSM模型與TF-IDF權重

VSM模型

向量空間模型(VSM,Vector Space Model)由Gerard Salton和McGill等在1969年提出。該模型將文字內容轉換為易於數學處理的向量形式,並表示為多維空間中的一個點,把對文字內容的處理簡化為向量空間中向量運算,使問題的複雜度大為降低使得各種相似計算和排序成為可能。

在向量空間模型中,文字空間被看作是由一組正交詞條向量所組成的向量空問,每篇文字 d  表示為其中的一個範化向量 V(d)=(t1  ,  w1(d)  ,…, tn  ,  wn(d)),其中ti  為詞條項,wi(d) 表示詞條ti  在文字d  中的權值,用於顯示向量 ti  在文字 d  

中的重要程度。可以將文字 d  中出現的所有詞條作為 ti,也可以要求 ti  是 d  中出現的所有短語,從而提高內容特徵表示的準確性。wi(d)  一般被定義為詞條ti   在文字d   中的出現頻率 tfi(d)   的函式,wi=f(tfi(d)),常用的 f  函式有布林函式、平方根函式、對數函式、TF-IDF函式等。

文字經過分詞程式後,首先去除停用詞,合併數字和人名等詞彙,然後統計詞頻,最終表示為一個向量。

TF-IDF函式

TF-IDF函式用來表示特徵項的重要程度,與特徵項的重要性相關的兩個重要因素是詞頻 TF(文字內頻率)和逆文字頻數 IDF(inverse documentfrequency)。

(1)詞頻(TF):即一個特徵項在某一文件中出現的次數,反映了某一個特徵項對該文字的重要性,其定義如下所示:

                       TFij =freqij= 特徵詞 ti  在文件dj  中的頻率

可利用對數降低詞頻對TF取值的影響,從而減少了少數高頻詞對特徵權重計算的影響,如下所示:

                      TFij= log( freqij ) + 1

(2)倒文件頻度(IDF):這一分量反映了某一特徵項區別於其他文件的程度,是一個關鍵詞在整個資料全域性中重要性的全域性性統計特徵,稱為倒文件頻度。如果一個詞在整個資料全集中出現的頻度很小,則它應該是反映包含該類詞的文件內容的重要詞彙。因此,一個關鍵詞的權重應該與該詞所在的文件的總數成反比或近似反比的關係。

                        IDFi=log( n/n) =log(全集中文件的總數/含關鍵詞i的文件總數)

其中:為全部訓練樣本數,ni  為出現特徵詞 ti  的訓練樣本數。它反映了某一特徵項在分類過程中對某一類的區分度。

TF-IDF  公式認為對區別文件最有意義的特徵項應該是那些在一類文件中出現頻率足夠高,而在文件集合的其他文件中出現頻率足夠小的詞語,所以引入了逆文字頻度 IDF 的概念,並以 TF 和 IDF 的乘積作為特徵空間座標系的取值測度。設TFij  為特徵詞 ti  在文件 dj  中的頻度;n  為全部訓練樣本數,ni  為出現特徵詞 ti  的訓練樣本數,TF-IDF 公式如下所示:

                         weight(Tij) =TFij  xIDFi=freqij  xlog(n/ni)

TF-IDF主要基於以下兩個理論依據:

(1)在一個文字中出現次數很多的單詞,在另一個同類文字中出現的也會很多,反之亦然,所以將 TF(詞頻)作為測度;

(2)一個詞條出現的文字頻數越小,它區別不同類別的能力就越大,故引入了 IDF(逆文字頻數)的概念。

下圖為各單詞的TF權重:


下圖為各單詞的TF-IDF權重:


參考資料: