貝葉斯學習小結
朴素貝葉斯和貝葉斯信念網絡學習,知識點以及個人一些理解的小結。
概率論只不過是把常識用數學公式表達了出來。 ——拉普拉斯
1.本文思路分析
(1)基本概率公式:條件概率,全概率,貝葉斯定理
(2)朴素貝葉斯算法:極大似然估計,判定准則,拉普拉斯平滑
(3)半朴素貝葉斯
(4)貝葉斯信念網絡:結構學習,參數學習
2 基本概率公式
(1)條件概率:百度百科:條件概率
(2)聯合概率:表示兩個事件共同發生的概率;
邊緣概率:某個事件發生的概率,與其他事件無關。
(3)全概率公式:若事件B1,B2,…構成一個完備事件組且都有正概率,則對任意一個事件A,有如下公式成立:$$P(A)=P(AB_1)+P(AB_2)+\cdots+P(AB_n)$$
(4)貝葉斯公式:設B1,B2,…Bn…是一完備事件組,則對任一事件A,P(A)>0,有
3朴素貝葉斯算法
(1)極大似然估計:參考:極大似然估計詳解;朴素貝葉斯算法的參數的最大似然估計
(2)朴素貝葉斯:參考:從貝葉斯方法談到貝葉斯網絡 ;帶你搞懂朴素貝葉斯分類算法 ;深入理解朴素貝葉斯(Naive Bayes)
貝葉斯公式:$$P(類別|特征) = \frac{P(特征|類別)P(類別)}{P(特征)} $$
朴素思想:屬性條件獨立性假設——假設每個屬性獨立地對分類結果發生影響。
朴素貝葉斯算法優點:算法邏輯簡單,易於實現;分類過程中時空開銷小
缺點:朴素假設,在屬性個數比較多或者屬性之間相關性較大時,分類效果不好。
\(P(x)\)的計算取對數計算:防止數值連乘過小,取對數計算時,可以防止向下溢出;
(3)拉普拉斯平滑:處理零概率問題。參考貝葉斯網絡、拉普拉斯平滑
正則化:本質是將約束條件添加到目標函數中(拉格朗日乘子法),對優化參數的限制,目的是防止過擬合問題。參考談談自己對正則化的一些理解~
在計算概率時,若某個屬性在樣本中沒有出現,則\(P(x_i)\)為零,由於連乘關系,會清除其他屬性的信息,解決辦法就是拉普拉斯平滑。
具體來說,令N表示訓練集D中可能的類別數,\(N_i\)表示第i個屬性可能的取值數,則
如此,拉普拉斯修正(平滑)可以避免因訓練樣本不充分而導致概率估計為零的問題。
4半朴素貝葉斯
基本思想:考慮部分屬性間的相互依賴信息——既不需要進行完全聯合概率計算,有不至於徹底忽略所有的屬性依賴關系,朴素貝葉斯和貝葉斯信念網絡的折中。
(1)ODE:one-dependent estimator,獨依賴估計, 假設每個屬性在類別之外最多僅依賴於其他一個屬性。
(2)SPODE:super-parent ODE,假設所有屬性都依賴於同一個屬性,可通過交叉驗證的方法來確定超父屬性。
(3)TAN:tree Augmented naive bayes,在最大帶權生成樹算法的基礎上,計算任意兩個屬性之間的條件互信息,以屬性為節點構建完全圖,並構建此完全圖的最大帶權生成樹,挑選根變量,將邊置為有向邊,,,實質上是僅保留了強相關屬性之間的依賴關系。
(4)AODE: Averaged One-Dependent Estimator,基於集成學習更為強大的獨依賴分類器,ADOE嘗試將每個屬性作為超父構建SPODE,然后選取足夠訓練數據支撐的SPOED集成起來,作為最終結果。
(5)高階依賴:從屬性相互獨立假設到獨依賴估計,可以提升泛化性能,思考將獨依賴轉化成多依賴,即高階依賴。需要更多樣本來准確估計概率\(P(x_i|y,Pa_i)\),若是有限樣本,高階聯合概率求解問題會很麻煩。
5貝葉斯信念網絡:結構學習,參數學習
(1)參考1:從貝葉斯方法談到貝葉斯網絡
參考2:貝葉斯網絡、拉普拉斯平滑
(2)基本思想:借助有向無環圖來刻畫屬性之間的依賴關系,並使用條件概率來描述屬性的聯合概率分布,也能有效地表達屬性件的條件獨立性。
貝葉斯網B由結構G和參數\(\Theta\)構成,每個節點對應於一個屬性,每條邊表示兩個屬性間有依賴關系,參數\(\Theta\)定量描述其依賴關系。 $$B = <G,\Theta>$$
(3)貝葉斯網中,三個變量之間的典型依賴關系:同父結構,V型結構,順序結構。分析網中變量間的條件獨立性,使用"moral graph":找出有向圖中的V型結構,在兩個父節點之間加一條無向邊,再將所有有向邊改成無向邊。
(4)評分函數:評估貝葉斯網與訓練數據的契合程度,找出結構最恰當的貝葉斯網絡。根據信息論准則,以最短長度編碼描述訓練數據模型,包括描述模型自身所需的字節長度和使用該模型描述數據所需的字節長度,選擇綜合編碼長度(描述網絡和編碼數據)最短的貝葉斯網(剃刀原則,選取最簡單的模型),最小描述准則。
(5)貝葉斯網訓練好后,理想情況是字節根據貝葉斯網定義的聯合概率分布來精確計算后驗概率,但是在網絡節點較多時,難以精確計算,通過降低要求,在有限時間內求得近似解。常使用吉布斯采樣。
(6)吉布斯采樣:先隨機產生初始點,后在子空間中隨機漫步(random work),形成馬爾科夫鏈,最后收斂於一個平穩分布。
吉布斯采樣缺點:馬爾科夫鏈需要長時間才能平穩,故吉布斯采樣算法的收斂速度較慢;貝葉斯網中存在0和1的極端概率,不能保證馬爾科夫鏈存在平穩分布,此時吉布斯采樣會給出錯誤的估計結果。