理論問題
樸素貝葉斯文字分類模型分為兩種:
* 文件型
* 詞頻型
都是使用下式計算進行分類:
cnb=arg max( p(cj) * ∏1c p(xi|cj) )
其中,p(cj)為類別j的先驗概率,p(xi|cj)為特徵量 xi在類別cj的類條件概率
上次的分類模型屬於文件型的,正確率約為50%左右,理論上樸素貝葉斯分類的正確率可以達到80%以上。文件型的正確率很低,主要原因是訓練庫的以分文字質量低下。目前我們已經在著手自己收集訓練資料了,提高訓練庫的質量。
先驗概率計算
先驗概率計算方式有兩種:
* 文件型 不考慮詞頻在各分類下的出現次數,僅考慮各分類下文件的數目。如下式計算:
p(cj)=n(c=cj)/n
其中,n(c=cj)表示類別cj中的訓練文字數量; n表示訓練文字集總數量。
* 詞頻型 考慮單詞在各分類文件中出現的頻次,如下式計算:
p(cj)=v∑k=1tf(x=xk, c=cj)/w∑m=1v∑ k=1tf(x=xk, c=cm)
其中,v表示特徵詞表中總單詞(屬性)數,tf(x=xi, c=cj) 表示屬性xi在類cj中出現次數之和,w表示總類別數目。
注意:類條件概率的計算方式必須與先驗概率的計算方式匹配,如果先驗概率是用文件型 計算的,那麼類條件概率也必須使用文件型計算方式,反之亦然。
類條件概率
類條件概率的計算有兩種方式:
* 文件型 不考慮單詞在文件中的出現頻次,僅考慮單詞在文件中是否出現。 0表示未出現,1表示出現。 如下式計算:
p(xj|cj)=( n(x=xi, c=cj )+1 ) / ( n(c=cj)+v )
其中,n(x=xi, c=cj)表示類別cj中包含屬性x i的訓練文字數量;n(c=cj)表示類別cj中的訓練文字數量;v表示類別的總數。
* 詞頻型 考慮單詞在文件中出現的頻次,如下式計算:
p(xj|cj)=( tf(x=xi, c=cj)+1) / ( v+v∑k=1tf(x=xk, c=cj) )
其中,v表示特徵詞表中總單詞(屬性)數,tf(x=xi, c=cj) 表示屬性xi在類cj中出現次數之和。
注意:* 類條件概率的計算方式必須與先驗概率的計算方式匹配,如果先驗概率是用文件型 計算的,那麼類條件概率也必須使用文件型計算方式,反之亦然
* 為避免類條件概率結果為0,採用了拉普拉斯概率估計
關於訓練庫的預處理
為了提高分類的效率和準確率,必須對訓練庫進行預處理。主要預處理步驟如下:
1. 讀取某一分類下的所有訓練文字
2. 對這些文字進行分詞處理
3. 通過詞性、詞長過濾無用詞
4. 將剩下的詞作為這一分類的特徵結果並儲存成文字
目前實現的訓練庫預處理器主要是針對詞頻分類模型的。
全概率公式與Bayes公式
全概率公式 利用全概率公式可以把複雜的事件的概率化為互斥的簡單事件的概率來計算.定理1對任一事件 a,若有互不相容的事件bi i 1,2,n 滿足p bi 0,i 1,2,n 且a的概率可用下式計算 此概率稱為全概率公式.引例 某專業有甲乙兩班,人數分別是 60人與 50人,他們都參加了英語考試,甲...
樸素貝葉斯分類器
p a b frac 類別 結果 a出現在特徵b樣本裡的概率 frac 假設乙個學校裡有60 男生和40 女生。女生穿褲子的人數和穿裙子的人數相等,所有男生穿褲子。隨機看到了乙個穿褲子的學生,那麼這個學生是女生的概率是多少?begin 特徵 穿褲子 類別 女生 p 女生 穿褲子 frac frac ...
樸素貝葉斯分類器
樸素貝葉斯分類器是用來做分類的乙個簡便方法。在貝葉斯公式的基礎上,引人條件獨立的假設,使得貝葉斯分類器具有簡單易行的優點和假設時常與實際不符的缺點。下面簡單介紹一下樸素貝葉斯分類器。首先規定一下資料格式 輸入的每乙個樣本為 其中 i 為樣本編號,x 為樣本的特徵,是乙個 n 維向量,x cdots ...