【特徵工程系列3】Zipf定律及其特徵化

(1). Zipf定律描述

1932年,哈佛大學的語言學專家Zipf在研究英文單詞出現的頻率時,發現如果把單詞出現的頻率按由大到小的順序排列,則每個單詞出現的頻率與它的名次的常數次冪存在簡單的反比關係(如圖1),這種分佈就稱爲Zipf定律。其公式爲:

P(r)=C/r^a

這裏,r表示一個單詞的出現頻率的排名,P(r)表示排名爲的單詞的出現頻率。單詞頻率分佈中C約等於0.1, a約等於1。需要注意的是,不同的內容,不同的場景,這兩個參數是需要調整的,具體可以通過對原分佈直方圖取對數來獲得斜率和截距。


圖1 zipf分佈實例

這個分佈是一個統計型的經驗規律。它表明在英語單詞中,只有極少數的詞被經常使用,而絕大多數詞很少被使用。如果按照出現頻率排序,則第二常見的單詞出現頻率是第一常見單詞出現頻率的1/2,第三常見單詞爲第一常見單詞出現頻率的1/3,第三常見單詞爲第一常見單詞出現頻率的1/n。這樣延伸出來,就是常見的“80/20法則”。80%的資源掌握在20%的人手裏。前20%的單詞出現頻率佔所有單詞的80%。Zipf定律是文獻計量學的重要定律之一,它和洛特卡定律、布拉德福定律一起被並稱爲文獻計量學的三大定律。


實際上,包括漢語在內的許多國家的語言都有這種特點。這個定律後來在很多領域得到了同樣的驗證,包括網站的訪問者數量、城鎮的大小和每個國家公司的數量。


(2). Zipf定律的特徵化

結合該定律的原理,我們可以針對異常檢測等應用獲得Zipf特徵,具體步驟如下:

Step1:統計訓練數據中各種情況出現的次數,從大到小排列,獲得分佈直方圖(如圖1);

Step2:對原始直方圖的橫、縱座標取對數,由變換後的直線斜率得到參數a的值,截距得到參數C的值;

Step3:根據概率分佈需要歸一化的性質,將T*C/r^a對r從(0,+無窮)積分(累加),並令其等於1,得到歸一化常數T;

Step4:對於每個(新)樣本,首先確定其對應的r,然後再計算其zipf特徵,即出現該情況r的概率:T*C/r^a。


Note:

1. 關於Zipf定律的成因,可以參考:胡海波,王林《冪律分佈研究簡史》,2005.

發佈了25 篇原創文章 · 獲贊 18 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章