關(guān)鍵字:貝葉斯、概率、貝葉斯分類算法、應(yīng)用
本文收集整理的相關(guān)知識點(diǎn)大多來自網(wǎng)絡(luò),如有不恰當(dāng)之處,還望指正。
什么是概率?
什么是概率這個(gè)問題似乎人人都覺得自己知道,卻有很難說明白。比如說我問你 擲一枚硬幣為正面的概率為多少?,大部分人第一反應(yīng)就是50%的幾率為正。不好意思,首先這個(gè)答案就不正確,只有當(dāng)材質(zhì)均勻時(shí)硬幣為正面的幾率才是50%(所以不要覺得打麻將的時(shí)候那個(gè)骰子每面的幾率是相等的,萬一被做了手腳呢)。
好,那現(xiàn)在假設(shè)硬幣的材質(zhì)是均勻的,那么為什么正面的幾率就是50%呢?有人會(huì)說是因?yàn)槲覕S了1000次硬幣,大概有492次是正面,508次是反面,所以近似認(rèn)為是50%,說得很好(擲了1000次我也是服你)。
擲硬幣的例子說明了古典統(tǒng)計(jì)學(xué)的思想,就是概率是基于大量實(shí)驗(yàn)的,也就是 大數(shù)定理。那么現(xiàn)在再問你,有些事件,例如:明天下雨的概率是30%;A地會(huì)發(fā)生地震的概率是5%;一個(gè)人得心臟病的概率是40%…… 這些概率怎么解釋呢?難道是A地真的100次的機(jī)會(huì)里,地震了5次嗎?肯定不是這樣,所以古典統(tǒng)計(jì)學(xué)就無法解釋了。再回到擲硬幣的例子中,如果你沒有機(jī)會(huì)擲1000次這么多次,而是只擲了3次,可這3次又都是正面,那該怎么辦?難道這個(gè)正面的概率就是100%了嗎?這也是古典統(tǒng)計(jì)學(xué)的弊端。
什么是獨(dú)立概率?
事件A的發(fā)生對事件B發(fā)生的概率沒有影響,這樣的兩個(gè)事件叫做相互獨(dú)立事件
獨(dú)立:扔骰子的每一次投擲試驗(yàn),扔硬幣的每一次投擲試驗(yàn)
不獨(dú)立:天氣形勢變化,紅綠燈的變化和車輛行駛狀態(tài)
什么是貝葉斯定理?
通常,事件A在事件B的條件下的概率,與事件B在事件A的條件下的概率是不一樣的;然而,這兩者是有確定的關(guān)系,貝葉斯法則就是這種關(guān)系的陳述。
貝葉斯法則又被稱為貝葉斯定理、貝葉斯規(guī)則,是指概率統(tǒng)計(jì)中的應(yīng)用所觀察到的現(xiàn)象對有關(guān)概率分布的主觀判斷(即先驗(yàn)概率)進(jìn)行修正的標(biāo)準(zhǔn)方法。當(dāng)分析樣本大到接近總體數(shù)時(shí),樣本中事件發(fā)生的概率將接近于總體中事件發(fā)生的概率。
我們將一枚硬幣拋向空中,落地時(shí)正面和反面的概率都是50%,這是常識。但如果我們拋100次,正面和反面的次數(shù)并不會(huì)都是50,有可能正面40次,反面60次。那拋1000次,10000次呢,正面反面的次數(shù)有可能還不會(huì)是五五開。只有將拋硬幣無數(shù)次,正面和反面出現(xiàn)的次數(shù)才會(huì)趨向于相等。也就是說,正面和反面出現(xiàn)的概率50%是一個(gè)極限、客觀的概率,并不會(huì)隨著拋擲次數(shù)的增減而變化。
但是貝葉斯定理與這個(gè)精確客觀的概率不同,它要求當(dāng)事人估計(jì)一個(gè)主觀的先驗(yàn)概率,再根據(jù)隨后觀察到的事實(shí)進(jìn)行調(diào)整,隨著調(diào)整次數(shù)的增加,結(jié)果將會(huì)越來越精確。這里有一個(gè)問題,數(shù)學(xué)不是講究客觀嗎?這里怎么冒出一個(gè)主觀概率出來?這也是當(dāng)時(shí)的學(xué)者質(zhì)疑貝葉斯的問題。事實(shí)上,貝葉斯定理在17世紀(jì)提出后,一直受到冷落,直到20世紀(jì)30年代電子計(jì)算機(jī)出現(xiàn)后才得到廣泛應(yīng)用。如今我們每天都在和貝葉斯定理打交道:你上搜索引擎搜尋問題,背后的算法中就有貝葉斯公式的身影;你郵箱里的垃圾郵件,很有可能就是運(yùn)用貝葉斯定理幫你攔截的。
為什么會(huì)出現(xiàn)這種情況?因?yàn)樨惾~斯定理符合人類認(rèn)知事物的自然規(guī)律。我們并非生而知之,大多數(shù)時(shí)候,面對的是信息不充分、情況不確定,這個(gè)時(shí)候我們只能在有限資源的情況下,作出決定,再根據(jù)后續(xù)的發(fā)展進(jìn)行修正。實(shí)際上,這也是科學(xué)研究的步驟。
說的專業(yè)一點(diǎn)就是這樣解釋的:
作為一個(gè)規(guī)范的原理,貝葉斯法則對于所有概率的解釋是有效的;然而,頻率主義者和貝葉斯主義者對于在應(yīng)用中概率如何被賦值有著不同的看法:頻率主義者根據(jù)隨機(jī)事件發(fā)生的頻率,或者總體樣本里面的個(gè)數(shù)來賦值概率;貝葉斯主義者要根據(jù)未知的命題來賦值概率。
貝葉斯統(tǒng)計(jì)中的兩個(gè)基本概念是先驗(yàn)分布和后驗(yàn)分布:
1、先驗(yàn)分布。總體分布參數(shù)θ的一個(gè)概率分布。貝葉斯學(xué)派的根本觀點(diǎn),是認(rèn)為在關(guān)于總體分布參數(shù)θ的任何統(tǒng)計(jì)推斷問題中,除了使用樣本所提供的信息外,還必須規(guī)定一個(gè)先驗(yàn)分布,它是在進(jìn)行統(tǒng)計(jì)推斷時(shí)不可缺少的一個(gè)要素。他們認(rèn)為先驗(yàn)分布不必有客觀的依據(jù),可以部分地或完全地基于主觀信念。
2、后驗(yàn)分布。根據(jù)樣本分布和未知參數(shù)的先驗(yàn)分布,用概率論中求條件概率分布的方法,求出的在樣本已知下,未知參數(shù)的條件分布。因?yàn)檫@個(gè)分布是在抽樣以后才得到的,故稱為后驗(yàn)分布。貝葉斯推斷方法的關(guān)鍵是任何推斷都必須且只須根據(jù)后驗(yàn)分布,而不能再涉及樣本分布。
下面我們來引出貝葉斯公式
首先通過面的韋恩圖,我們理解的似然(Likelihood)是指兩個(gè)相關(guān)的條件概率之比,即給定B的情況下A發(fā)生的幾率(就是AB重疊的部分)和A的整體幾率之比。
根據(jù)韋恩圖,我們可以得知:
P(A|B)=P(AB)/P(B)=P(B|A)*P(A)/P(B)
1、P(A)是A的先驗(yàn)概率或邊緣概率,稱作"先驗(yàn)"是因?yàn)樗豢紤]B因素,是根據(jù)以往經(jīng)驗(yàn)和分析得到的概率。可以通過頻率來估計(jì)。
2、P(A|B)是已知B發(fā)生后A的條件概率,也稱作A的后驗(yàn)概率。
3、P(B|A)是已知A發(fā)生后B的條件概率,也稱作B的后驗(yàn)概率,這里稱作似然度。涉及到所以關(guān)于B所有屬性的聯(lián)合概率。
4、P(B)是B的先驗(yàn)概率或邊緣概率,這里稱作標(biāo)準(zhǔn)化常量。
5、P(B|A)/P(B)稱作標(biāo)準(zhǔn)似然度。
貝葉斯法則又可表述為:
后驗(yàn)概率=(似然度*先驗(yàn)概率)/標(biāo)準(zhǔn)化常量=標(biāo)準(zhǔn)似然度*先驗(yàn)概率
可以翻譯為p(類別|特征) = p(特征|類別)p(類別) / p(特征)
如果要確定某個(gè)樣本歸屬于哪一類,則需要計(jì)算出歸屬不同類的概率,再從中挑選出最大的概率,也就是選出概率最大值來定義為所屬于的類別
MAX(P(Ai|B))=MAX(P(B|Ai)*P(Ai)/P(B))
下面我們舉個(gè)栗子來說明下:
某種病發(fā)病率約為0.1%,即1000人中有一個(gè)人是陽性,現(xiàn)在的檢測手段很成熟,準(zhǔn)確率高達(dá)99%,但是有5%的誤報(bào)率。如果一個(gè)人的檢測結(jié)果呈陽性,那么這個(gè)人真的感染這種病的概率有多大?
使用貝葉斯定理分析,假設(shè)A為得病,B為檢測呈陽性。可知:P(A)=0.001 #發(fā)病率
P(B丨A)=0.99 #發(fā)病檢測為陽性的概率
P(B)=P(B丨A) P(A)+P(B丨A')P(A')=0.99x0.001+0.05x0.999=0.05094 # 檢測陽性的概率等于
得病且檢測為陽性概率 加上 未得病且檢測出陽性的概率
P(A丨B)=P(A)*P(B丨A)/P(B)=0.001x0.99/0.05094=0.019
是不是很驚訝,哪怕準(zhǔn)確率這么高,檢測結(jié)果呈陽性的可信度只有2%。如果一種病的發(fā)病率很低,對于檢測結(jié)果呈陽性,我們不用過多擔(dān)憂。
PS:計(jì)算P(B)的時(shí)候,P(B丨A) P(A)我們稱之為聯(lián)合概率
什么是樸素貝葉斯(Naive Bayes)?
樸素貝葉斯是一種簡單但是非常強(qiáng)大的線性分類器。它在垃圾郵件分類,疾病診斷中都取得了很大的成功。它只所以稱為樸素,是因?yàn)樗僭O(shè)特征之間是相互獨(dú)立的,但是在現(xiàn)實(shí)生活中,這種假設(shè)基本上是不成立的。那么即使是在假設(shè)不成立的條件下,它依然表現(xiàn)的很好,尤其是在小規(guī)模樣本的情況下。但是,如果每個(gè)特征之間有很強(qiáng)的關(guān)聯(lián)性和非線性的分類問題會(huì)導(dǎo)致樸素貝葉斯模型有很差的分類效果。
根據(jù)變量的分布不同,NB也分為以下3類:
- 樸素貝葉斯的高斯模型(特征是連續(xù)變量,符合高斯分布)
- 樸素貝葉斯的多項(xiàng)式模型(特征是離散變量,符合多項(xiàng)分布),在文本分類的情境中,特征是詞的出現(xiàn)次數(shù)
- 樸素貝葉斯的伯努利模型(特征是布爾變量,符合01分布),在文本分類的情境中,特征是詞是否出現(xiàn)
圖片內(nèi)容來源:《機(jī)器學(xué)習(xí)-周志華》P151
其中x代表樣本,c代表類標(biāo)記
求得概率P(c|x)最大,P(x)在樣本給定下,是一個(gè)歸一化的常量,所以也就是計(jì)算分子的最大值也就是下面圖的解釋。
下面繼續(xù)使用周志華老師書上的例子:
下面圖中計(jì)算的是公式的分子部分,先驗(yàn)概率乘以似然度(條件概率),其中是好瓜,并且敲聲清脆的測試?yán)龥]有,得出的概率值為0,這樣帶入連乘式計(jì)算的結(jié)果將是0,這顯然不太合理
下面使用到了拉普拉斯修正 N代表類別數(shù)。重新計(jì)算先驗(yàn)概率和條件概率。
實(shí)際項(xiàng)目中,概率P往往是值很小的小數(shù),連續(xù)的小數(shù)相乘容易造成下溢出使乘積為0或者得不到正確答案。一種解決辦法就是對乘積取自然對數(shù),將連乘變?yōu)檫B加
算法特性及優(yōu)缺點(diǎn)
- 優(yōu)點(diǎn):算法簡單、所需估計(jì)參數(shù)很少、對缺失數(shù)據(jù)不太敏感。另外樸素貝葉斯的計(jì)算過程類條件概率等計(jì)算彼此是獨(dú)立的,因此特別適于分布式計(jì)算。樸素貝葉斯屬于生成式模型,收斂速度將快于判別模型(如邏輯回歸);天然可以處理多分類問題
- 缺點(diǎn):因?yàn)闃闼刎惾~斯分類假設(shè)樣本各個(gè)特征之間相互獨(dú)立,這個(gè)假設(shè)在實(shí)際應(yīng)用中往往是不成立的,從而影響分類正確性;不能學(xué)習(xí)特征間的相互作用;對輸入數(shù)據(jù)的表達(dá)形式很敏感。
樸素貝葉斯應(yīng)用
文本分類 ; 垃圾文本過濾 ; 情感判別 ; 用于基于內(nèi)容的推薦生成模型