matlab朴素贝叶斯工具箱,朴素贝叶斯分类matlab实现.doc
樸素貝葉斯分類matlab實現
實驗二 樸素貝葉斯分類
一、實驗目的
通過實驗,加深對統計判決與概率密度估計基本思想、方法的認識,了解影響Bayes分類器性能的因素,掌握基于Bayes決策理論的隨機模式分類的原理和方法。
二、實驗內容
設計Bayes決策理論的隨機模式分類器,用matlab實現。
三、方法手段
Bayes分類器的基本思想是依據類的概率、概密,按照某種準則使分類結果從統計上講是最佳的。換言之,根據類的概率、概密將模式空間劃分成若干個子空間,在此基礎上形成模式分類的判決規則。準則函數不同,所導出的判決規則就不同,分類結果也不同。使用哪種準則或方法應根據具體問題來確定。
四、Bayes算法
樸素貝葉斯分類或簡單貝葉斯分類的工作過程如下:
(1)每個數據樣本用一個n維特征向量表示,分別描述對n個屬性A1,A2,…An樣本的n個度量。
(2)假定有m個類C1,C2,…Cm。給定一個未知的數據樣本X(即沒有類標號),分類法將預測X屬于具有最高后驗概率(條件X下)的類。即是說,樸素貝葉斯分類將未知的樣本分配給類Ci,當且僅當
(2.1)
這樣,最大化。其最大的類Ci稱為最大后驗假定。根據貝葉斯定理,
(2.2)
(3)由于P(X)對于所有類為常數,只需要最大即可。如果類的先驗概率未知,則通常假定這些類是等概率的,即P(C1)=P(C2)=…=P(Cm)。并據此只對最大化。否則,最大化。注意,類的先驗概率可以用計算其中
si是類Ci中的訓練樣本數,而s是訓練樣本總數。
(4)給定具有許多屬性的數據集,計算的開銷可能非常大。為降低計算的開銷,可以做類條件獨立的樸素假定。給定樣本的類標號,假定屬性值相互條件獨立,即在屬性間,不存在依賴關系。這樣,
(2.3)
概率,,…可以由訓練樣本估值,其中
1)如果Ak是分類屬性,則,其中sik是在屬性Ak上具有值xk的類Ci的樣本數,而si是Ci中的訓練樣本數。
2)如果Ak是連續值屬性,則通常假定該屬性服從高斯分布,因而,
(2.4)
其中,給定類Ci的訓練樣本屬性Ak的值,是屬性Ak的高斯密度函數,而分別為平均值和標準差。
(5)為對未知樣本X分類,對每個類Ci,計算。樣本X被指派到類Ci,當且僅當
換言之,X被指派到其最大的類Ci。
例 使用樸素貝葉斯分類預測類標號:
RIDAgeIncomeStudentCredit_ratingClass:buys_computer1<=30HighNoFairNo2<=30HighNoExcellentNo331…40HighNoFairYes4>40MediumNoFairYes5>40LowYesFairYes6>40LowYesExcellentNo731…40LowYesExcellentYes8<=30MediumNoFairNo9<=30LowYesFairYes10>40MediumYesFairYes11<=30MediumYesExcellentYes1231…40MediumNoExcellentYes1331…40HighYesFairYes14>40MediumNoExcellentNo給定與判定樹歸納相同的訓練數據,我們希望使用樸素貝葉斯分類預測一個未知樣本的類標號。訓練數據在表7.1中。數據樣本用屬性age,income,student和credit_rating描述。類標號屬性buys_computer具有兩個不同值(即(yes,no))。設C1對應于類buys_computer=“yes”,而C2對應于類buys_computer=“no”。我們希望分類的樣本為
我們需要最大化,i=1,2。每個類的先驗概率P(Ci)可以根據訓練樣本計算:
P(buys_computer=”yes”)=9/14=0.643
P(buys_computer=”no”)=5/14=0.357
為計算,i=1,2,我們計算下面的條件概率:
P(age=”<30”|buys_computer=”yes”) =2/9=0.222
P(age=”<30”|buys_computer=”no”) =3/5=0.222
P(income=”medium”|buys_computer=”yes”) =4/9=0.444
P(income=”medium”|buys_computer=”no”) =2/5=0.400
P(student=”yes”|buys_co
總結
以上是生活随笔為你收集整理的matlab朴素贝叶斯工具箱,朴素贝叶斯分类matlab实现.doc的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java数据库视频教程下载,【No147
- 下一篇: matlab7.0调节视图,新手求救啊!