樸素貝葉斯(Naive Bayes)算法是經典的機器學習算法之一,本篇博文主要用於記錄學習該算法從零入門的筆記,如果有錯誤的地方也請大家指正。
算法的基本原理
樸素貝葉斯分類器(NBC)發源於古典數學理論,有着堅實的數學基礎以及穩定的分類效率,是一種基於概率論的分類算法。
- 樸素:指的是假設特徵條件獨立
- 貝葉斯:說明算法基於貝葉斯定理
貝葉斯定理
首先介紹一下條件概率,條件概率描述事件A在另一個事件B已經發生的條件下發生的概率,記爲P(A∣B),A和B可能是相互獨立的事件,也可能不是,條件概率公式
P(A∣B)=P(B)P(AB)
全概率公式:
P(B)=P(AB+AcB)=P(A)P(B∣A)+P(Ac)P(B∣Ac)
將全概率公式帶入到條件概率公式裏可以得到:
P(A∣B)=P(B)P(AB)=P(B)P(B∣A)×P(A)=P(B∣A)×P(A)+P(B∣Ac)×P(Ac)P(B∣A)×P(A)
其中Ac指的是A的補集
更一般地有,對於事件Ak和事件B:(其中A1、A2…An是樣本空間的一個劃分)
如何用貝葉斯定理分類
那麼對於一個具體的分類問題,根據貝葉斯定理,在給定樣本特徵X的情況下,該樣本屬於類別Y的概率
P(Y∣X)=P(X)P(X∣Y)×P(Y)
翻譯成比較容易理解的狀態
P(類別∣特徵)=P(特徵)P(特徵∣類別)P(類別)
那麼對於一個分類問題,我們就可以通過先驗概率P(類別)和似然估計P(特徵)P(特徵∣類別)來求出後驗概率P(類別∣特徵)
- 先驗概率指的就是某個事件(類別)發生的概率
- 後驗概率即爲在另一個事件(特徵)發生之後,我們對先前的事件(類別)發生的概率進行的重新評估
- 似然估計就是一個調整因子,就是在另一個事件(特徵)發生後,對還未發生的事件(類別)的發生概率的影響
如果似然估計P(特徵)P(特徵∣類別)>1那麼說明特徵提高了事件類別的發生概率,反之,如果小於1,那麼就是降低了事件的發生概率
參考:
https://www.jianshu.com/p/5953923f43f0
https://www.cnblogs.com/lliuye/p/9178090.html
以及我的收藏夾
ps:會更新的(咕),根據全概率公式展開X(咕)那一點實在是(咕)看不懂,看懂了就更新(咕)