樸素貝葉斯分類
貝葉斯分類是機器學習中一個重要的分類算法,由於其簡單高效,所以在實戰中非常受歡迎。
本文將介紹貝葉斯分類中兩個比較典型的算法——樸素貝葉斯與貝葉斯信念網絡。
基礎知識
在開始介紹算法之前,我們先溫習幾個概率論上幾個基礎知識。
1.條件概率:P(A|B)
表示在B發生的情況下A發生的概率。
例如:在一堆棋子中有方形和圓形兩種,方形有紅色和白色,圓形有黃色和綠色。問,在已知一顆棋子是方形的情況下該棋子是紅色的概率是多少。
那麼這個問題就可以表示成——P(棋子是紅色|方形棋子)
2.先驗概率
是在獲得某些信息或者依據前,對 P 的不確定性進行猜測。
例如:下雨之前會颳風,那麼在沒有觀察是否颳風之前求下雨的概率就是先驗概率。
3.後驗概率
“後驗”在這裏意思是,考慮相關事件已經被檢視並且能夠得到一些信息。比如在判斷到颳風的情況下再預測下雨的概率。
後驗概率包含了先驗信息以及觀測樣本數據提供的後驗信息,對先驗概率進行了修正,更接近真實情況。
貝葉斯定理
其中P(A|B)是在B發生的情況下A發生的可能性。
在貝葉斯定理中,每個名詞都有約定俗成的名稱:
• P(A|B)是已知B發生後A的條件概率,也由於得自B的取值而被稱作A的後驗概率。
• P(B|A)是已知A發生後B的條件概率,也由於得自A的取值而被稱作B的後驗概率。
• P(A)是A的先驗概率(或邊緣概率)。之所以稱爲"先驗"是因爲它不考慮任何B方面的因素。
• P(B)是B的先驗概率或邊緣概率。
按這些術語,貝葉斯定理可表述爲:
後驗概率 = (相似度*先驗概率)/標準化常量
也就是說,後驗概率與先驗概率和相似度的乘積成正比。
另外,比例P(B|A)/P(B)也有時被稱作標準相似度(standardised likelihood),貝葉斯定理可表述爲:
後驗概率 = 標準相似度*先驗概率
樸素貝葉斯
在實際應用中,特徵值可能會包含多個。比如,給定一個人的身高、體重、膚色……等等特徵,求這個人是女生的概率。
那麼,概率表達式可以表示爲:
那麼根據貝葉斯定理,這個概率表達式就可以表示成:
由於P(女生)和P(F)的概率都是常數,所以我們只需要關注:
要計算上面這個條件概率,成本是非常高的。爲了簡化計算,我們有了一個”樸素”的假設——特徵F向量的所有屬性彼此獨立。(所以該算法才被稱爲樸素貝葉斯)
有了樸素的假設,就有了以下等式:
所以我們只需要挨個計算”在已知是女生情況下出現特徵
最後要說明的是,我們在處理連續型特徵時,我們一般會假設該屬性服從高斯分佈。
我們可以使用高斯分佈函數去計算條件概率的值。
到這裏,關於樸素貝葉斯的內容就已經講完了。但樸素貝葉斯也有其不足的地方,那就是”樸素”。
在實際的應用中,所有特徵值不太可能完全獨立,所以樸素貝葉斯在很多時候表現並不是太好。
所以,在特徵選項存在明顯依賴關係時,我們使用貝葉斯分類的效果往往不太理想,所以我將在下一章介紹基於特徵依賴的貝葉斯分類——貝葉斯信念網絡。