1. 程式人生 > 其它 >4、統計學習方法--樸素貝葉斯

4、統計學習方法--樸素貝葉斯

樸素貝葉斯

  • 是基於貝葉斯定理與特徵條件獨立假設的分類方法。
  • 這個假設是這個方法可以實際操作的前提

1、經典案例

  • P(B|A) A發生的的情況下B發生的概率:A就是抽中紅豆 那麼B一定就是綠豆 所以P(B|A)=1
  • P(A) 抽中紅豆的概率 1/3
  • P(B) 路人抽中綠豆的概率 1 ----因為已經知道路人抽中綠豆 所以是1

條件概率

變換推導

  • P(AB)=P(A|B)P(B)=P(B|A)P(A)

==>P(A|B)=P(AB)/P(B)
==>由於 P(AB)=P(B|A)P(A)

  • 所以 P(A|B)=P(B|A)P(A)/P(B)

直觀理解

統計學習方法|樸素貝葉斯原理剖析及實現(基本原理講的比較好)

  • 網頁地址
    https://www.pkudodo.com/2018/11/21/1-3/
  • 本地html地址
    file:///Users/glin/000life/%E5%AD%A6%E4%B9%A0/%E6%8A%80%E6%9C%AF%E8%B5%84%E6%96%99/%E7%AE%97%E6%B3%95%E7%9B%B8%E5%85%B3%E7%9A%84html/%E7%BB%9F%E8%AE%A1%E5%AD%A6%E4%B9%A0%E6%96%B9%E6%B3%95-%E6%9C%B4%E7%B4%A0%E8%B4%9D%E5%8F%B6%E6%96%AF%E5%8E%9F%E7%90%86%E5%89%96%E6%9E%90%E5%8F%8A%E5%AE%9E%E7%8E%B0.html

圖中箭頭為什麼得到下邊的結果?
P(X=x) 代表 X在整個樣本空間發生的概率,改成下邊的格式以後表示將整個樣本空間分成ck份,每份上的概率累加與原來的概率是一樣的

####另一種解釋方式

  • 注意:其中紅框部分是X和Y的聯合概率 Y=Ck是每個類別的概率 對所有類別求和的話結果就是1

以上是對一個樣本來說的 如果擴充套件到每個樣本 則有

假設:
如果a,b相互獨立:
P(a,b)=P(a).P(b)
P(a,b|c)=P(a|c).P(b|c)

和上圖的式子進行比對,其實就是把P(X=x|Y=Ck)這一項變成了連乘,至於為什麼能連乘,下圖有詳細說明:

為什麼可以把裡面的直接拆開來連乘?概率老師不是說過只有相互獨立才能直接拆嗎?是的,樸素貝葉斯分類器對條件概率分佈做出了條件獨立性的假設。為啥?因為這樣能算,就這麼簡單,如果條件都不獨立,後面咋整?讀者:那你這不嚴謹啊。emmm….事實上是這樣,向量的特徵之間大概率是不獨立地,如果我們獨立了,會無法避免地拋棄一些前後連貫的資訊(比方說我說“三人成_”,後面大概率就是個”虎“,這個虎明顯依賴於前面的三個字)。在建立模型時如果這些都考慮進去,會讓模型變得很複雜,後來前人說那我們試試不管它們,強行獨立。誒發現效果還不錯誒,那就這麼用吧。這就是電腦科學家和數學家的分歧所在。

上圖中P(X=x|Y=Ck)轉換成能求的式子了以後,那麼就是比較Y為不同Ck的情況下哪個概率最大,那就表示屬於哪個類的可能性最大。所以前頭式子前頭加上一個argmax,表示求讓後式值最大的Ck。

然後由於下圖中圈出來這一項是在Y為不同Ck情況下的連乘,所以不管k為多少,所有Ck連乘結果肯定是一致的,在比較誰的值最大時,式子裡面的常數無法對結果的大小造成影響,可以去掉。

就變成了下面這樣:

這一步開始沒明白

其實分母 也就是紅色的部分 第一項 P=(Y=Ck) 在整個像本空間累加的時候結果就是1
後邊的乘的式子 在整個樣本空間中 Y=Ck 一定發生所以是1 前邊x在整個特徵為j的樣本空間的所有x的概率和也是1 所以可以直接省去分母 得到後邊的公式。

統計學習方法-樸素貝葉斯原理剖析及實現

樸素貝葉斯完整推導過程

實際應用中是使用極大釋然估計進行處理的

極大釋然估計改進---貝葉斯估計

例題

  • 計算步驟:

  • 例題解析: