分類算法之朴素貝葉斯分類(Naive Bayesian Classification)


1、什么是分類

     分類是一種重要的數據分析形式,它提取刻畫重要數據類的模型。這種模型稱為分類器,預測分類的(離散的,無序的)類標號。例如醫生對病人進行診斷是一個典型的分類過程,醫生不是一眼就看出病人得了哪種病,而是要根據病人的症狀和化驗單結果診斷病人得了哪種病,采用哪種治療方案。再比如,零售業中的銷售經理需要分析客戶數據,以便幫助他猜測具有某些特征的客戶會購買某種商品。

2、如何進行分類

     數據分類是一個兩階段過程,包括學習階段(構建分類模型)和分類階段(使用模型預測給定數據的類標號)

3、貝葉斯分類的基本概念

     貝葉斯分類法是統計學分類方法,它可以預測類隸屬關系的概率,如一個給定元組屬於一個特定類的概率。貝葉斯分類基於貝葉斯定理。朴素貝葉斯分類法假定一個屬性值在給定類上的概率獨立於其他屬性的值,這一假定稱為類條件獨立性。

4、貝葉斯定理

     貝葉斯定理特別好用,但並不復雜,它解決了生活中經常碰到的問題:已知某條件下的概率,如何得到兩條件交換后的概率,也就是在已知P(A|B)的情況下如何求得P(B|A)的概率。P(A|B)是后驗概率(posterior probability),也就是我們常說的條件概率,即在條件B下,事件A發生的概率。相反P(A)或P(B)稱為先驗概率(prior probability·)。貝葉斯定理之所以有用,是因為我們在生活中經常遇到這種情況:我們可以很容易直接得出P(A|B),P(B|A)則很難直接得出,但我們更關心P(B|A),貝葉斯定理就為我們打通從P(A|B)獲得P(B|A)的道路。

      下面不加證明地直接給出貝葉斯定理:

     

5、朴素貝葉斯分類的思想和工作過程。

      朴素貝葉斯分類的思想真的很朴素,它的思想基礎是這樣的:對於給出的待分類項,求解此項出現的條件下各個類別出現的概率,哪個最大,就認為此待分類屬於哪個類別。

  朴素貝葉斯分類的工作過程如下:

  (1)、設D是訓練元組和它們相關聯的類標號的集合。每個元組用一個n維屬性向量X={x1,x2,...,xn}表示。

  (2)、假定有m個類C1 ,C2,...Cm。給定元組X,分類法將預測X屬於具有最高后驗概率的類。也就是說,朴素貝葉斯分類法預測X屬於類Ci,當且僅當

          P(Ci|X)>P(Cj|X)     1≤j≤m, j≠i

         這樣,P(Ci|X)最大的類C1稱為最大后驗概率。根據貝葉斯定理

    

  (3)、由於P(X)對所有類為常數,所以只需要P(Ci|X)P(Ci)最大即可。若類的先驗概率未知,則通常假定這些類是等概率的,即P(C1)=P(C2)=...=P(Cm),並據此對P(Ci|X)最大化,否則最大化P(Ci|X)P(Ci)

  (4)、給定具有很多屬性的數據集,計算P(Ci|X)的開銷非常大。為了降低計算開銷,可以做類條件獨立的朴素假定。給定元組的類標號,假定屬性值有條件地相互獨立。因此,

    

        考察該屬性是分類的還是連續值的,例如為了計算P(X|Ci),考慮如下兩種情況:

    (a)、如果Ak是分類屬性,則P(xk|Ci)是D中屬性Ak的值為xk的Ci類的元組數除以D中Ci類的元組數|Ci,D|

    (b)、如果Ak是連續值屬性,則假定連續值屬性服從均值為η、標准差為σ的高斯分布,由下式定義:

    

    即P(xk |Ci)=g(xkcici)

  (5)、為了預測X得類標號,對每個類Ci,計算P(Ci|X)P(Ci)。該分類法預測輸入元組X的類為Ci,當且僅當,P(X|Ci)P(Ci)>P(X|Cj)P(Cj), 1≤j≤m, j≠i。即是,被預測的類標號是使P(X|Ci)P(Ci)最大的類Ci

6、拉普拉斯校准(laplace)

  當P(xk|Ci)=0怎么辦,當某個類別下某個特征項沒有出現時就出現這種現象,這時會出現的情況是:盡管沒有這個零概率,仍然可能得到一個表明X屬於Ci類的高概率。有一個簡單的技巧來避免該問題,可以假定訓練數據庫D很大,以至於對每個計數加1造成的估計概率的變化可以忽略不計。但可以方便地避免概率值為0.這種概率估計計數稱為拉普拉斯校准或拉普拉斯估計法。

7、朴素貝葉斯分類的流程

  

  可以看到,整個朴素貝葉斯分類分為三個階段:

      第一階段——准備工作階段,這個階段的任務是為朴素貝葉斯分類做必要的准備,主要工作是根據具體情況確定特征屬性,並對每個特征屬性進行適當划分,然后由人工對一部分待分類項進行分類,形成訓練樣本集合。這一階段的輸入是所有待分類數據,輸出是特征屬性和訓練樣本。這一階段是整個朴素貝葉斯分類中唯一需要人工完成的階段,其質量對整個過程將有重要影響,分類器的質量很大程度上由特征屬性、特征屬性划分及訓練樣本質量決定。

      第二階段——分類器訓練階段,這個階段的任務就是生成分類器,主要工作是計算每個類別在訓練樣本中的出現頻率及每個特征屬性划分對每個類別的條件概率估計,並將結果記錄。其輸入是特征屬性和訓練樣本,輸出是分類器。這一階段是機械性階段,根據前面討論的公式可以由程序自動計算完成。

      第三階段——應用階段。這個階段的任務是使用分類器對待分類項進行分類,其輸入是分類器和待分類項,輸出是待分類項與類別的映射關系。這一階段也是機械性階段,由程序完成。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM