1. 程式人生 > >分類和迴歸(五)-樸素貝葉斯

分類和迴歸(五)-樸素貝葉斯

樸素貝葉斯 1  介紹 樸素貝葉斯是一種構建分類器的簡單方法。該分類器模型會給問題例項分配用特徵值表示的類標籤,類標籤取自有限集合。它不是訓練這種分類器的單一演算法,而是一系列基於相同原理的演算法:所有樸素貝葉斯分類器都假定樣本每個特徵與其他特徵都不相關。 舉個例子,如果一種水果其具有紅,圓,直徑大概3英寸等特徵,該水果可以被判定為是蘋果。儘管這些特徵相互依賴或者有些特徵由其他特徵決定,然而樸素貝葉斯分類器認為這些屬性在判定該水果是否為蘋果的概率分佈上獨立的。 對於某些型別的概率模型,在有監督學習的樣本集中能獲取得非常好的分類效果。在許多實際應用中,樸素貝葉斯模型引數估計使用最大似然估計方法
;換言之,在不用貝葉斯概率或者任何貝葉斯模型的情況下,樸素貝葉斯模型也能奏效。
儘管是帶著這些樸素思想和過於簡單化的假設,但樸素貝葉斯分類器在很多複雜的現實情形中仍能夠取得相當好的效果。儘管如此,有論文證明更新的方法(如提升樹和隨機森林)的效能超過了貝葉斯分類器。 樸素貝葉斯分類器的一個優勢在於只需要根據少量的訓練資料估計出必要的引數(變數的均值和方差)。由於變數獨立假設,只需要估計各個變數,而不需要確定整個協方差矩陣。 1.1  樸素貝葉斯的優缺點
  • 優點:學習和預測效率高,易於實現;在資料較少的情況下仍然有效,可以處理多類問題
  • 缺點:分類效果不一定很高,特徵獨立性假設會使樸素貝葉斯變得簡單,但是會犧牲一定的分類準確率
2   樸素貝葉斯概率模型 理論上,概率模型分類器是一個條件概率模型 獨立的類別變數C有若干類別,條件依賴於若干特徵變數F_1,F_2,...,F_n。但問題在於如果特徵數量n較大或者每個特徵能取大量值時,基於概率模型列出概率表變得不現實。所以我們修改這個模型使之變得可行。 貝葉斯定理有以下式子: 實際中,我們只關心分式中的分子部分,因為分母不依賴於C而且特徵F_i的值是給定的,於是分母可以認為是一個常數。這樣分子就等價於聯合分佈模型。 重複使用鏈式法則,可將該式寫成條件概率的形式,如下所示: 現在“樸素”的條件獨立假設開始發揮作用:假設每個特徵F_i對於其他特徵F_j是條件獨立的。這就意味著
所以聯合分佈模型可以表達為 這意味著上述假設下,類變數C的條件分佈可以表達為:
其中Z是一個只依賴與F_1,...,F_n等的縮放因子,當特徵變數的值已知時是一個常數。 從概率模型中構造分類器 討論至此為止我們匯出了獨立分佈特徵模型,也就是樸素貝葉斯概率模型。樸素貝葉斯分類器包括了這種模型和相應的決策規則。一個普通的規則就是選出最有可能的那個:這就是大家熟知的最大後驗概率(MAP)決策準則。相應的分類器便是如下定義的公式: 3   引數估計

所有的模型引數都可以通過訓練集的相關頻率來估計。常用方法是概率的最大似然估計。類的先驗概率P(C)可以通過假設各類等概率來計算(先驗概率 = 1 / (類的數量)),或者通過訓練集的各類樣本出現的次數來估計(A類先驗概率=(A類樣本的數量)/(樣本總數))

對於類條件概率P(X|c)來說,直接根據樣本出現的頻率來估計會很困難。在現實應用中樣本空間的取值往往遠遠大於訓練樣本數,也就是說,很多樣本取值在訓練集中根本沒有出現,直接使用頻率來估計P(x|c)不可行,因為"未被觀察到"和"出現概率為零"是不同的。 為了估計特徵的分佈引數,我們要先假設訓練集資料滿足某種分佈或者非引數模型。

這種假設稱為樸素貝葉斯分類器的事件模型(event model)。對於離散的特徵資料(例如文字分類中使用的特徵),多元分佈和伯努利分佈比較流行。

3.1  高斯樸素貝葉斯