貝葉斯
1. 貝葉斯簡(jiǎn)介
- 貝葉斯Thomas Bayes,英國(guó)數(shù)學(xué)家
- 貝葉斯方法源于他生前為解決一個(gè)“逆概”問(wèn)題寫的一篇文章橙喘。
- 貝葉斯要解決的問(wèn)題:
- 正向概率:假設(shè)袋子里面有N個(gè)白球易稠,M個(gè)黑球筋搏,你伸手進(jìn)去摸一把,摸出黑球的概率有多大糖权?
- 黑球數(shù)量/總球數(shù)量
- 逆向概率:如果我們事先不知道袋子里黑白球的比例堵腹,而是閉著眼睛摸出一個(gè)(好幾個(gè))球,觀察這些取出來(lái)的球的顏色之后星澳,那么我們可以就此對(duì)袋子里面的黑白球的比例作出什么樣的推測(cè)疚顷。
- 正向概率:假設(shè)袋子里面有N個(gè)白球易稠,M個(gè)黑球筋搏,你伸手進(jìn)去摸一把,摸出黑球的概率有多大糖权?
- 為什么使用貝葉斯?
- 現(xiàn)實(shí)世界本身就是不確定的禁偎,人類的觀察能力是有局限性的
- 我們?nèi)粘K^察到的只是事物表面上的結(jié)果腿堤,因此我們需要提供一個(gè)猜測(cè)。
2. 貝葉斯推導(dǎo)實(shí)例
有個(gè)學(xué)校如暖,男生占60%笆檀,女生占40%。男生總是穿長(zhǎng)褲装处,女生一半穿長(zhǎng)褲一半穿褲子误债。
- 正向概率:隨機(jī)選擇一個(gè)學(xué)生浸船,他(她)穿長(zhǎng)褲的概率和穿裙子的概率是多大
- 逆向概率:迎面走來(lái)一個(gè)學(xué)生妄迁,你能夠看的見他(她)穿的是否是長(zhǎng)褲,而無(wú)法確定性別李命,你能夠推斷出他(她)是女生的概率是多大登淘?
- 求解穿長(zhǎng)褲的人里面有多少女生
- 假設(shè)學(xué)校里面總?cè)藬?shù)是U個(gè)
- 穿長(zhǎng)褲的男生:U * P(Boy) * P(Pants|Boy)
- P(Boy)是男生的概率=60%
- P(Pants|Boy)是條件概率,即在Boy這個(gè)條件下穿長(zhǎng)褲的概率是多大封字,這里是100%黔州,因?yàn)樗心猩即╅L(zhǎng)褲尿招。
- 穿長(zhǎng)褲的女生:U * P(Girl) * P(Pants|Girl)
- 穿長(zhǎng)褲總數(shù):U * P(Boy) * P(Pants|Boy) + U * P(Girl) * P(Pants|Girl)
- P(Girl|Pants) = U * P(Girl) * P(Pants|Girl)/穿長(zhǎng)褲總數(shù)
- 化簡(jiǎn)后: P(Girl|Pants) = P(Girl) * P(Pants|Girl)/P(Boy) * P(Pants|Boy) + P(Girl) * P(Pants|Girl)
- 化簡(jiǎn)后發(fā)現(xiàn)與校園內(nèi)的總數(shù)無(wú)關(guān)捶惜,可以消去。
- 分母其實(shí)就是P(Pants)
- 分子其實(shí)就是P(Pants,Girl)
-
貝葉斯公式:
3. 拼寫糾正實(shí)例
問(wèn)題是我們看到用戶輸入了一個(gè)不在字典中的單詞,我們需要去擦測(cè)用戶真正想輸入的單詞是什么弓坞?
- P(我們擦測(cè)它輸入的單詞|他實(shí)際輸入的單詞)
- 用戶實(shí)際輸入的單詞記為D
猜測(cè)1:P(h1|D),猜測(cè)2:P(h2|D)纺蛆,猜測(cè)3:P(h3|D)...統(tǒng)一為:P(h|D)
-
P(h|D)=P(h)*P(D|h)/P(D)
- P(h):代表猜測(cè)的詞在字典中出現(xiàn)的概率算利,比如語(yǔ)料庫(kù)中有10000個(gè)詞(有重復(fù)),the出現(xiàn)5000次证薇,那么P(the)=5000/10000度苔。P(h)其實(shí)是一個(gè)先驗(yàn)概率,拿到數(shù)據(jù)之后浑度,可以事先統(tǒng)計(jì)好寇窑。
- P(D|h):想輸一個(gè)詞,輸錯(cuò)的概率箩张。比如甩骏,D:tha,h:the,P(D|h)表示想輸入the,輸?shù)氖莟ha的概率有多大先慷。
對(duì)于具體的不同的猜測(cè)h1,h2,h3...横漏,P(D)都是一樣的,所以在比較P(h1|D)和P(h2|D)的時(shí)候我們可以忽略這個(gè)常數(shù)
-
P(h|D) 正比于 P(h)*P(D|h)
對(duì)于給定的觀測(cè)數(shù)據(jù)熟掂,一個(gè)猜測(cè)的是好是壞取決于“這個(gè)猜測(cè)先驗(yàn)概率的大小”和“這個(gè)猜測(cè)生成我們觀測(cè)到的數(shù)據(jù)的可能性大卸薪健(the寫成tha的概率大小)”赴肚。
- 貝葉斯方法計(jì)算:P(h)*P(D|h),P(h)是特定猜測(cè)的先驗(yàn)概率
- 比如用戶輸入tlp,那到底是top還是tip呢素跺?這個(gè)時(shí)候,當(dāng)最大似然估計(jì)不能做出判斷時(shí)誉券,先驗(yàn)概率就可以插手進(jìn)來(lái)給出指示——top出現(xiàn)的程度要高許多指厌,所以更可能輸入的是top。
4. 垃圾郵件過(guò)濾實(shí)例
問(wèn)題:給定一封郵件踊跟,判定它是否屬于垃圾郵件踩验,D表示這封郵件,D由N個(gè)單詞組成商玫。用h+來(lái)表示垃圾郵件箕憾,h-表示正常郵件。
- P(h+|D)=P(h+) * P(D|h+)/P(D)
- P(h-|D)=P(h-) * P(D|h-)/P(D)
- P(h+)和P(h-)這兩個(gè)先驗(yàn)概率都是很容易求出來(lái)的拳昌,要計(jì)算一個(gè)郵件庫(kù)里面垃圾郵件和正常郵件的比例就行了袭异。
- D里面含有N個(gè)單詞d1,d2,d3...,P(D|h+)=P(d1,d2,...,dn|h+)
- P(d1,d2,...,dn|h+)就是說(shuō)在垃圾郵件當(dāng)中出現(xiàn)跟我們這封郵件一模一樣的一封郵件的概率是多大炬藤!(可想而知御铃,一模一樣的概率會(huì)非常小碴里,但是我們判定為垃圾郵件不一定要一模一樣,大致相同就認(rèn)為是垃圾郵件了上真。)
- P(d1,d2,...,dn|h+)擴(kuò)展為:P(d1|h+) * P(d2|d1,h+) * P(d3|d2,d1,h+) * ...
- 把原始貝葉斯轉(zhuǎn)換為樸素貝葉斯咬腋。假設(shè)di與di-1是完全條件無(wú)關(guān)的(樸素貝葉斯假設(shè)特征之間是獨(dú)立的,互不影響睡互。)
- 簡(jiǎn)化為:P(d1|h+) * P(d2|h+) * P(d3|h+) * ...
- 對(duì)于P(d1|h+) * P(d2|h+) * P(d3|h+) * ... 只要統(tǒng)計(jì)di這個(gè)單詞在垃圾郵件中出現(xiàn)的頻率即可帝火。