朴素貝葉斯(Naive Bayes)
特點:基於貝葉斯定義和特征條件(屬性)獨立假設的分類器方法
優點:模型所需估計的參數很少,對缺失數據不太敏感,算法也比較簡單,具有很好的模型的可解釋性。 朴素貝葉斯模型與其他分類方法相比具有最小的理論誤差率。
缺點:屬性之間相互獨立,這個假設在實際應用中往往是不成立的,在屬性個數比較多或者屬性之間相關性較大時,分類效果不好。
應用:朴素貝葉斯算法一般應用在文本分類,垃圾郵件的分類,信用評估,釣魚網站檢測等。
模型:
當涉及到多個條件時,朴素貝葉斯有一個提前的假設,我們稱之為 條件獨立性假設(或者 簡單假設:Naive),公式如下:
而對這里來說,假設X=[x1,x2,...,xn]:
為了選擇后驗概率最大的結果,進行概率的比較,由於分母一致,這里直接去掉分母,得到最后的計算公式:
改進:屬性直接完全獨立的條件太強,對於這一點,有半朴素貝葉斯之類的算法通過考慮部分關聯性適度改進,例如為了計算量不至於太大,我們假定每個屬性只依賴另外的一個屬性。解決特征之間的相關性,我們還可以使用數據降維(PCA)的方法,去除特征相關性,再進行朴素貝葉斯計算。
sklearn庫:
# 連續屬性 from sklearn.naive_bayes import GaussianNB # 離散屬性 from sklearn.naive_bayes import CategoricalNB