http://mindhacks.cn/2008/09/21/the-magical-bayesian-method/
數(shù)學(xué)之美番外篇:平凡而又神奇的貝葉斯方法
概率論只不過(guò)是把常識(shí)用數(shù)學(xué)公式表達(dá)了出來(lái)息堂。
——拉普拉斯
目錄
0. 前言?
1. 歷史?
1.1 一個(gè)例子:自然語(yǔ)言的二義性?
1.2 貝葉斯公式?
2. 拼寫(xiě)糾正?
3. 模型比較與貝葉斯奧卡姆剃刀?
3.1 再訪拼寫(xiě)糾正?
3.2 模型比較理論(Model Comparasion)與貝葉斯奧卡姆剃刀(Bayesian Occam’s Razor)?
3.3 最小描述長(zhǎng)度原則?
3.4 最優(yōu)貝葉斯推理?
4. 無(wú)處不在的貝葉斯?
4.1 中文分詞?
4.2 統(tǒng)計(jì)機(jī)器翻譯?
4.3 貝葉斯圖像識(shí)別蔓腐,Analysis by Synthesis?
4.4 EM 算法與基于模型的聚類(lèi)?
4.5 最大似然與最小二乘?
5. 樸素貝葉斯方法(又名“愚蠢者的貝葉斯(idiot’s bayes)”)?
5.1 垃圾郵件過(guò)濾器?
5.2 為什么樸素貝葉斯方法令人詫異地好——一個(gè)理論解釋?
6. 層級(jí)貝葉斯模型?
6.1 隱馬可夫模型(HMM)?
7. 貝葉斯網(wǎng)絡(luò)
0.?前言
這是一篇關(guān)于貝葉斯方法的科普文打却,我會(huì)盡量少用公式久脯,多用平白的語(yǔ)言敘述,多舉實(shí)際例子族淮。更嚴(yán)格的公式和計(jì)算我會(huì)在相應(yīng)的地方注明參考資料嫌蚤。貝葉斯方法被證明是非常 general 且強(qiáng)大的推理框架摊灭,文中你會(huì)看到很多有趣的應(yīng)用怕轿。
1.?歷史
托馬斯·貝葉斯(Thomas Bayes)同學(xué)的詳細(xì)生平在這里偷崩。以下摘一段 wikipedia 上的簡(jiǎn)介:
所謂的貝葉斯方法源于他生前為解決一個(gè)“逆概”問(wèn)題寫(xiě)的一篇文章,而這篇文章是在他死后才由他的一位朋友發(fā)表出來(lái)的撞羽。在貝葉斯寫(xiě)這篇文章之前阐斜,人們已經(jīng)能夠計(jì)算“正向概率”,如“假設(shè)袋子里面有N個(gè)白球诀紊,M個(gè)黑球谒出,你伸手進(jìn)去摸一把,摸出黑球的概率是多大”渡紫。而一個(gè)自然而然的問(wèn)題是反過(guò)來(lái):“如果我們事先并不知道袋子里面黑白球的比例到推,而是閉著眼睛摸出一個(gè)(或好幾個(gè))球考赛,觀察這些取出來(lái)的球的顏色之后惕澎,那么我們可以就此對(duì)袋子里面的黑白球的比例作出什么樣的推測(cè)”。這個(gè)問(wèn)題颜骤,就是所謂的逆概問(wèn)題唧喉。
實(shí)際上,貝葉斯當(dāng)時(shí)的論文只是對(duì)這個(gè)問(wèn)題的一個(gè)直接的求解嘗試忍抽,并不清楚他當(dāng)時(shí)是不是已經(jīng)意識(shí)到這里面包含著的深刻的思想八孝。然而后來(lái),貝葉斯方法席卷了概率論鸠项,并將應(yīng)用延伸到各個(gè)問(wèn)題領(lǐng)域干跛,所有需要作出概率預(yù)測(cè)的地方都可以見(jiàn)到貝葉斯方法的影子,特別地祟绊,貝葉斯是機(jī)器學(xué)習(xí)的核心方法之一楼入。這背后的深刻原因在于哥捕,現(xiàn)實(shí)世界本身就是不確定的,人類(lèi)的觀察能力是有局限性的(否則有很大一部分科學(xué)就沒(méi)有必要做了——設(shè)想我們能夠直接觀察到電子的運(yùn)行嘉熊,還需要對(duì)原子模型爭(zhēng)吵不休嗎遥赚?),我們?nèi)粘K^察到的只是事物表面上的結(jié)果阐肤,沿用剛才那個(gè)袋子里面取球的比方凫佛,我們往往只能知道從里面取出來(lái)的球是什么顏色,而并不能直接看到袋子里面實(shí)際的情況孕惜。這個(gè)時(shí)候愧薛,我們就需要提供一個(gè)猜測(cè)(hypothesis,更為嚴(yán)格的說(shuō)法是“假設(shè)”衫画,這里用“猜測(cè)”更通俗易懂一點(diǎn))厚满,所謂猜測(cè),當(dāng)然就是不確定的(很可能有好多種乃至無(wú)數(shù)種猜測(cè)都能滿(mǎn)足目前的觀測(cè))碧磅,但也絕對(duì)不是兩眼一抹黑瞎蒙——具體地說(shuō)碘箍,我們需要做兩件事情:1. 算出各種不同猜測(cè)的可能性大小。2. 算出最靠譜的猜測(cè)是什么鲸郊。第一個(gè)就是計(jì)算特定猜測(cè)的后驗(yàn)概率丰榴,對(duì)于連續(xù)的猜測(cè)空間則是計(jì)算猜測(cè)的概率密度函數(shù)。第二個(gè)則是所謂的模型比較秆撮,模型比較如果不考慮先驗(yàn)概率的話就是最大似然方法四濒。
1.1?一個(gè)例子:自然語(yǔ)言的二義性
下面舉一個(gè)自然語(yǔ)言的不確定性的例子。當(dāng)你看到這句話:
The girl saw the boy with a telescope.
你對(duì)這句話的含義有什么猜測(cè)职辨?平常人肯定會(huì)說(shuō):那個(gè)女孩拿望遠(yuǎn)鏡看見(jiàn)了那個(gè)男孩(即你對(duì)這個(gè)句子背后的實(shí)際語(yǔ)法結(jié)構(gòu)的猜測(cè)是:The girl saw-with-a-telescope the boy )盗蟆。然而,仔細(xì)一想舒裤,你會(huì)發(fā)現(xiàn)這個(gè)句子完全可以解釋成:那個(gè)女孩看見(jiàn)了那個(gè)拿著望遠(yuǎn)鏡的男孩(即:The girl saw the-boy-with-a-telescope )喳资。那為什么平常生活中我們每個(gè)人都能夠迅速地對(duì)這種二義性進(jìn)行消解呢?這背后到底隱藏著什么樣的思維法則腾供?我們留到后面解釋仆邓。
1.2?貝葉斯公式
貝葉斯公式是怎么來(lái)的?
我們還是使用 wikipedia 上的一個(gè)例子:
一所學(xué)校里面有 60% 的男生伴鳖,40% 的女生节值。男生總是穿長(zhǎng)褲,女生則一半穿長(zhǎng)褲一半穿裙子榜聂。有了這些信息之后我們可以容易地計(jì)算“隨機(jī)選取一個(gè)學(xué)生搞疗,他(她)穿長(zhǎng)褲的概率和穿裙子的概率是多大”,這個(gè)就是前面說(shuō)的“正向概率”的計(jì)算须肆。然而匿乃,假設(shè)你走在校園中脐往,迎面走來(lái)一個(gè)穿長(zhǎng)褲的學(xué)生(很不幸的是你高度近似,你只看得見(jiàn)他(她)穿的是否長(zhǎng)褲扳埂,而無(wú)法確定他(她)的性別)业簿,你能夠推斷出他(她)是男生的概率是多大嗎?
一些認(rèn)知科學(xué)的研究表明(《決策與判斷》以及《Rationality for Mortals》第12章:小孩也可以解決貝葉斯問(wèn)題)阳懂,我們對(duì)形式化的貝葉斯問(wèn)題不擅長(zhǎng)梅尤,但對(duì)于以頻率形式呈現(xiàn)的等價(jià)問(wèn)題卻很擅長(zhǎng)。在這里岩调,我們不妨把問(wèn)題重新敘述成:你在校園里面隨機(jī)游走巷燥,遇到了 N 個(gè)穿長(zhǎng)褲的人(仍然假設(shè)你無(wú)法直接觀察到他們的性別),問(wèn)這 N 個(gè)人里面有多少個(gè)女生多少個(gè)男生号枕。
你說(shuō)缰揪,這還不簡(jiǎn)單:算出學(xué)校里面有多少穿長(zhǎng)褲的,然后在這些人里面再算出有多少女生葱淳,不就行了钝腺?
我們來(lái)算一算:假設(shè)學(xué)校里面人的總數(shù)是 U 個(gè)。60% 的男生都穿長(zhǎng)褲赞厕,于是我們得到了 U * P(Boy) * P(Pants|Boy) 個(gè)穿長(zhǎng)褲的(男生)(其中 P(Boy) 是男生的概率 = 60%艳狐,這里可以簡(jiǎn)單的理解為男生的比例;P(Pants|Boy) 是條件概率皿桑,即在 Boy 這個(gè)條件下穿長(zhǎng)褲的概率是多大毫目,這里是 100% ,因?yàn)樗心猩即╅L(zhǎng)褲)诲侮。40% 的女生里面又有一半(50%)是穿長(zhǎng)褲的镀虐,于是我們又得到了 U * P(Girl) * P(Pants|Girl) 個(gè)穿長(zhǎng)褲的(女生)。加起來(lái)一共是 U * P(Boy) * P(Pants|Boy) + U * P(Girl) * P(Pants|Girl) 個(gè)穿長(zhǎng)褲的沟绪,其中有 U * P(Girl) * P(Pants|Girl) 個(gè)女生刮便。兩者一比就是你要求的答案。
下面我們把這個(gè)答案形式化一下:我們要求的是 P(Girl|Pants) (穿長(zhǎng)褲的人里面有多少女生)近零,我們計(jì)算的結(jié)果是 U * P(Girl) * P(Pants|Girl) / [U * P(Boy) * P(Pants|Boy) + U * P(Girl) * P(Pants|Girl)] 诺核。容易發(fā)現(xiàn)這里校園內(nèi)人的總數(shù)是無(wú)關(guān)的,可以消去久信。于是得到
P(Girl|Pants) = P(Girl) * P(Pants|Girl) / [P(Boy) * P(Pants|Boy) + P(Girl) * P(Pants|Girl)]
注意,如果把上式收縮起來(lái)漓摩,分母其實(shí)就是 P(Pants) 裙士,分子其實(shí)就是 P(Pants, Girl) 。而這個(gè)比例很自然地就讀作:在穿長(zhǎng)褲的人( P(Pants) )里面有多少(穿長(zhǎng)褲)的女孩( P(Pants, Girl) )管毙。
上式中的 Pants 和 Boy/Girl 可以指代一切東西腿椎,所以其一般形式就是:
P(B|A) = P(A|B) * P(B) / [P(A|B) * P(B) + P(A|~B) * P(~B) ]
收縮起來(lái)就是:
P(B|A) = P(AB) / P(A)
其實(shí)這個(gè)就等于:
P(B|A) * P(A) = P(AB)
難怪拉普拉斯說(shuō)概率論只是把常識(shí)用數(shù)學(xué)公式表達(dá)了出來(lái)桌硫。
然而,后面我們會(huì)逐漸發(fā)現(xiàn)啃炸,看似這么平凡的貝葉斯公式铆隘,背后卻隱含著非常深刻的原理。
2.?拼寫(xiě)糾正
經(jīng)典著作《人工智能:現(xiàn)代方法》的作者之一 Peter Norvig 曾經(jīng)寫(xiě)過(guò)一篇介紹如何寫(xiě)一個(gè)拼寫(xiě)檢查/糾正器的文章(原文在這里南用,徐宥的翻譯版在這里膀钠,這篇文章很深入淺出,強(qiáng)烈建議讀一讀)裹虫,里面用到的就是貝葉斯方法肿嘲,這里我們不打算復(fù)述他寫(xiě)的文章,而是簡(jiǎn)要地將其核心思想介紹一下筑公。
首先雳窟,我們需要詢(xún)問(wèn)的是:“問(wèn)題是什么?”
問(wèn)題是我們看到用戶(hù)輸入了一個(gè)不在字典中的單詞匣屡,我們需要去猜測(cè):“這個(gè)家伙到底真正想輸入的單詞是什么呢封救?”用剛才我們形式化的語(yǔ)言來(lái)敘述就是,我們需要求:
P(我們猜測(cè)他想輸入的單詞 | 他實(shí)際輸入的單詞)
這個(gè)概率捣作。并找出那個(gè)使得這個(gè)概率最大的猜測(cè)單詞兴泥。顯然,我們的猜測(cè)未必是唯一的虾宇,就像前面舉的那個(gè)自然語(yǔ)言的歧義性的例子一樣搓彻;這里,比如用戶(hù)輸入: thew 嘱朽,那么他到底是想輸入 the 旭贬,還是想輸入 thaw ?到底哪個(gè)猜測(cè)可能性更大呢搪泳?幸運(yùn)的是我們可以用貝葉斯公式來(lái)直接出它們各自的概率稀轨,我們不妨將我們的多個(gè)猜測(cè)記為 h1 h2 .. ( h 代表 hypothesis),它們都屬于一個(gè)有限且離散的猜測(cè)空間 H (單詞總共就那么多而已)岸军,將用戶(hù)實(shí)際輸入的單詞記為 D ( D 代表 Data 奋刽,即觀測(cè)數(shù)據(jù)),于是
P(我們的猜測(cè)1 | 他實(shí)際輸入的單詞)
可以抽象地記為:
P(h1 | D)
類(lèi)似地艰赞,對(duì)于我們的猜測(cè)2佣谐,則是 P(h2 | D)。不妨統(tǒng)一記為:
P(h | D)
運(yùn)用一次貝葉斯公式方妖,我們得到:
P(h | D) = P(h) * P(D | h) / P(D)
對(duì)于不同的具體猜測(cè) h1 h2 h3 .. 狭魂,P(D) 都是一樣的,所以在比較 P(h1 | D) 和 P(h2 | D) 的時(shí)候我們可以忽略這個(gè)常數(shù)。即我們只需要知道:
P(h | D) ∝ P(h) * P(D | h) (注:那個(gè)符號(hào)的意思是“正比例于”雌澄,不是無(wú)窮大斋泄,注意符號(hào)右端是有一個(gè)小缺口的。)
這個(gè)式子的抽象含義是:對(duì)于給定觀測(cè)數(shù)據(jù)镐牺,一個(gè)猜測(cè)是好是壞炫掐,取決于“這個(gè)猜測(cè)本身獨(dú)立的可能性大小(先驗(yàn)概率睬涧,Prior )”和“這個(gè)猜測(cè)生成我們觀測(cè)到的數(shù)據(jù)的可能性大小”(似然募胃,Likelihood )的乘積。具體到我們的那個(gè) thew 例子上宙地,含義就是摔认,用戶(hù)實(shí)際是想輸入 the 的可能性大小取決于 the 本身在詞匯表中被使用的可能性(頻繁程度)大小(先驗(yàn)概率)和 想打 the 卻打成 thew 的可能性大姓唷(似然)的乘積参袱。
下面的事情就很簡(jiǎn)單了,對(duì)于我們猜測(cè)為可能的每個(gè)單詞計(jì)算一下 P(h) * P(D | h) 這個(gè)值秽梅,然后取最大的抹蚀,得到的就是最靠譜的猜測(cè)。
一點(diǎn)注記:Norvig 的拼寫(xiě)糾正器里面只提取了編輯距離為 2 以?xún)?nèi)的所有已知單詞企垦。這是為了避免去遍歷字典中每個(gè)單詞計(jì)算它們的 P(h) * P(D | h) 环壤,但這種做法為了節(jié)省時(shí)間帶來(lái)了一些誤差。但話說(shuō)回來(lái)難道我們?nèi)祟?lèi)真的回去遍歷每個(gè)可能的單詞來(lái)計(jì)算他們的后驗(yàn)概率嗎钞诡?不可能郑现。實(shí)際上,根據(jù)認(rèn)知神經(jīng)科學(xué)的觀點(diǎn)荧降,我們首先根據(jù)錯(cuò)誤的單詞做一個(gè) bottom-up 的關(guān)聯(lián)提取接箫,提取出有可能是實(shí)際單詞的那些候選單詞,這個(gè)提取過(guò)程就是所謂的基于內(nèi)容的提取朵诫,可以根據(jù)錯(cuò)誤單詞的一些模式片段提取出有限的一組候選辛友,非常快地縮小的搜索空間(比如我輸入 explaination 剪返,單詞里面就有充分的信息使得我們的大腦在常數(shù)時(shí)間內(nèi)把可能性 narrow down 到 explanation 這個(gè)單詞上废累,至于具體是根據(jù)哪些線索——如音節(jié)——來(lái)提取,又是如何在生物神經(jīng)網(wǎng)絡(luò)中實(shí)現(xiàn)這個(gè)提取機(jī)制的脱盲,目前還是一個(gè)沒(méi)有弄清的領(lǐng)域)邑滨。然后,我們對(duì)這有限的幾個(gè)猜測(cè)做一個(gè) top-down 的預(yù)測(cè)宾毒,看看到底哪個(gè)對(duì)于觀測(cè)數(shù)據(jù)(即錯(cuò)誤單詞)的預(yù)測(cè)效力最好驼修,而如何衡量預(yù)測(cè)效率則就是用貝葉斯公式里面的那個(gè) P(h) * P(D | h) 了——雖然我們很可能使用了一些啟發(fā)法來(lái)簡(jiǎn)化計(jì)算殿遂。后面我們還會(huì)提到這樣的 bottom-up 的關(guān)聯(lián)提取诈铛。
3.?模型比較與奧卡姆剃刀
3.1?再訪拼寫(xiě)糾正
介紹了貝葉斯拼寫(xiě)糾正之后乙各,接下來(lái)的一個(gè)自然而然的問(wèn)題就來(lái)了:“為什么?”為什么要用貝葉斯公式幢竹?為什么貝葉斯公式在這里可以用耳峦?我們可以很容易地領(lǐng)會(huì)為什么貝葉斯公式用在前面介紹的那個(gè)男生女生長(zhǎng)褲裙子的問(wèn)題里是正確的。但為什么這里焕毫?
為了回答這個(gè)問(wèn)題蹲坷,一個(gè)常見(jiàn)的思路就是想想:非得這樣嗎?因?yàn)槿绻阆氲搅肆硪环N做法并且證明了它也是靠譜的邑飒,那么將它與現(xiàn)在這個(gè)一比較循签,也許就能得出很有價(jià)值的信息。那么對(duì)于拼寫(xiě)糾錯(cuò)問(wèn)題你能想到其他方案嗎疙咸?
不管怎樣县匠,一個(gè)最常見(jiàn)的替代方案就是,選擇離 thew 的編輯距離最近的撒轮。然而 the 和 thaw 離 thew 的編輯距離都是 1 乞旦。這可咋辦捏?你說(shuō)题山,不慌兰粉,那還是好辦。我們就看到底哪個(gè)更可能被錯(cuò)打?yàn)?thew 就是了顶瞳。我們注意到字母 e 和字母 w 在鍵盤(pán)上離得很緊玖姑,無(wú)名指一抽筋就不小心多打出一個(gè) w 來(lái),the 就變成 thew 了慨菱。而另一方面 thaw 被錯(cuò)打成 thew 的可能性就相對(duì)小一點(diǎn)焰络,因?yàn)?e 和 a 離得較遠(yuǎn)而且使用的指頭相差一個(gè)指頭(一個(gè)是中指一個(gè)是小指,不像 e 和 w 使用的指頭靠在一塊——神經(jīng)科學(xué)的證據(jù)表明緊鄰的身體設(shè)施之間容易串位)抡柿。OK舔琅,很好,因?yàn)槟悻F(xiàn)在已經(jīng)是在用最大似然方法了洲劣,或者直白一點(diǎn)备蚓,你就是在計(jì)算那個(gè)使得 P(D | h) 最大的 h 。
而貝葉斯方法計(jì)算的是什么囱稽?是 P(h) * P(D | h) 郊尝。多出來(lái)了一個(gè) P(h) 。我們剛才說(shuō)了战惊,這個(gè)多出來(lái)的 P(h) 是特定猜測(cè)的先驗(yàn)概率流昏。為什么要摻和進(jìn)一個(gè)先驗(yàn)概率?剛才說(shuō)的那個(gè)最大似然不是挺好么?很雄辯地指出了 the 是更靠譜的猜測(cè)况凉。有什么問(wèn)題呢谚鄙?既然這樣,我們就從給最大似然找茬開(kāi)始吧——我們假設(shè)兩者的似然程度是一樣或非常相近刁绒,這樣不就難以區(qū)分哪個(gè)猜測(cè)更靠譜了嗎闷营?比如用戶(hù)輸入tlp ,那到底是 top 還是 tip 知市?(這個(gè)例子不怎么好傻盟,因?yàn)?top 和 tip 的詞頻可能仍然是接近的麻敌,但一時(shí)想不到好的英文單詞的例子趋急,我們不妨就假設(shè) top 比 tip 常見(jiàn)許多吧,這個(gè)假設(shè)并不影響問(wèn)題的本質(zhì)询兴。)這個(gè)時(shí)候跟啤,當(dāng)最大似然不能作出決定性的判斷時(shí)诽表,先驗(yàn)概率就可以插手進(jìn)來(lái)給出指示——“既然你無(wú)法決定,那么我告訴你腥光,一般來(lái)說(shuō) top 出現(xiàn)的程度要高許多关顷,所以更可能他想打的是 top ”)。
以上只是最大似然的一個(gè)問(wèn)題武福,即并不能提供決策的全部信息议双。
最大似然還有另一個(gè)問(wèn)題:即便一個(gè)猜測(cè)與數(shù)據(jù)非常符合,也并不代表這個(gè)猜測(cè)就是更好的猜測(cè)捉片,因?yàn)檫@個(gè)猜測(cè)本身的可能性也許就非常低平痰。比如 MacKay 在《Information Theory : Inference and Learning Algorithms》里面就舉了一個(gè)很好的例子:-1 3 7 11 你說(shuō)是等差數(shù)列更有可能呢?還是 -X^3 / 11 + 9/11*X^2 + 23/11 每項(xiàng)把前項(xiàng)作為 X 帶入后計(jì)算得到的數(shù)列伍纫?此外曲線擬合也是宗雇,平面上 N 個(gè)點(diǎn)總是可以用 N-1 階多項(xiàng)式來(lái)完全擬合莹规,當(dāng) N 個(gè)點(diǎn)近似但不精確共線的時(shí)候,用 N-1 階多項(xiàng)式來(lái)擬合能夠精確通過(guò)每一個(gè)點(diǎn)舞虱,然而用直線來(lái)做擬合/線性回歸的時(shí)候卻會(huì)使得某些點(diǎn)不能位于直線上椅寺。你說(shuō)到底哪個(gè)好呢返帕?多項(xiàng)式桐玻?還是直線?一般地說(shuō)肯定是越低階的多項(xiàng)式越靠譜(當(dāng)然前提是也不能忽視“似然”P(pán)(D | h) 溉旋,明擺著一個(gè)多項(xiàng)式分布您愣是去拿直線擬合也是不靠譜的畸冲,這就是為什么要把它們兩者乘起來(lái)考慮嫉髓。)观腊,原因之一就是低階多項(xiàng)式更常見(jiàn),先驗(yàn)概率( P(h) )較大(原因之二則隱藏在 P(D | h) 里面)算行,這就是為什么我們要用樣條來(lái)插值梧油,而不是直接搞一個(gè) N-1 階多項(xiàng)式來(lái)通過(guò)任意 N 個(gè)點(diǎn)的原因。
以上分析當(dāng)中隱含的哲學(xué)是州邢,觀測(cè)數(shù)據(jù)總是會(huì)有各種各樣的誤差儡陨,比如觀測(cè)誤差(比如你觀測(cè)的時(shí)候一個(gè) MM 經(jīng)過(guò)你一不留神,手一抖就是一個(gè)誤差出現(xiàn)了)量淌,所以如果過(guò)分去尋求能夠完美解釋觀測(cè)數(shù)據(jù)的模型骗村,就會(huì)落入所謂的數(shù)據(jù)過(guò)配(overfitting)的境地,一個(gè)過(guò)配的模型試圖連誤差(噪音)都去解釋?zhuān)ǘ鴮?shí)際上噪音又是不需要解釋的)呀枢,顯然就過(guò)猶不及了胚股。所以 P(D | h) 大不代表你的 h (猜測(cè))就是更好的 h。還要看 P(h) 是怎樣的裙秋。所謂奧卡姆剃刀精神就是說(shuō):如果兩個(gè)理論具有相似的解釋力度琅拌,那么優(yōu)先選擇那個(gè)更簡(jiǎn)單的(往往也正是更平凡的,更少繁復(fù)的摘刑,更常見(jiàn)的)进宝。
過(guò)分匹配的另一個(gè)原因在于當(dāng)觀測(cè)的結(jié)果并不是因?yàn)檎`差而顯得“不精確”而是因?yàn)檎鎸?shí)世界中對(duì)數(shù)據(jù)的結(jié)果產(chǎn)生貢獻(xiàn)的因素太多太多,跟噪音不同枷恕,這些偏差是一些另外的因素集體貢獻(xiàn)的結(jié)果党晋,不是你的模型所能解釋的——噪音那是不需要解釋——一個(gè)現(xiàn)實(shí)的模型往往只提取出幾個(gè)與結(jié)果相關(guān)度很高,很重要的因素(cause)徐块。這個(gè)時(shí)候觀察數(shù)據(jù)會(huì)傾向于圍繞你的有限模型的預(yù)測(cè)結(jié)果呈正態(tài)分布未玻,于是你實(shí)際觀察到的結(jié)果就是這個(gè)正態(tài)分布的隨機(jī)取樣,這個(gè)取樣很可能受到其余因素的影響偏離你的模型所預(yù)測(cè)的中心蛹锰,這個(gè)時(shí)候便不能貪心不足地試圖通過(guò)改變模型來(lái)“完美”匹配數(shù)據(jù)深胳,因?yàn)槟切┦菇Y(jié)果偏離你的預(yù)測(cè)的貢獻(xiàn)因素不是你這個(gè)有限模型里面含有的因素所能概括的,硬要打腫臉充胖子只能導(dǎo)致不實(shí)際的模型铜犬,舉個(gè)教科書(shū)例子:身高和體重的實(shí)際關(guān)系近似于一個(gè)二階多項(xiàng)式的關(guān)系舞终,但大家都知道并不是只有身高才會(huì)對(duì)體重產(chǎn)生影響轻庆,物理世界影響體重的因素太多太多了,有人身材高大卻瘦得跟稻草敛劝,有人卻是橫長(zhǎng)豎不長(zhǎng)余爆。但不可否認(rèn)的是總體上來(lái)說(shuō),那些特殊情況越是特殊就越是稀少夸盟,呈圍繞最普遍情況(胖瘦適中)的正態(tài)分布蛾方,這個(gè)分布就保證了我們的身高——體重相關(guān)模型能夠在大多數(shù)情況下做出靠譜的預(yù)測(cè)。但是——?jiǎng)偛耪f(shuō)了上陕,特例是存在的桩砰,就算不是特例,人有胖瘦释簿,密度也有大小亚隅,所以完美符合身高——體重的某個(gè)假想的二階多項(xiàng)式關(guān)系的人是不存在的,我們又不是歐幾里德幾何世界當(dāng)中的理想多面體庶溶,所以煮纵,當(dāng)我們對(duì)人群隨機(jī)抽取了 N 個(gè)樣本(數(shù)據(jù)點(diǎn))試圖對(duì)這 N 個(gè)數(shù)據(jù)點(diǎn)擬合出一個(gè)多項(xiàng)式的話就得注意,它肯定得是二階多項(xiàng)式偏螺,我們要做的只是去根據(jù)數(shù)據(jù)點(diǎn)計(jì)算出多項(xiàng)式各項(xiàng)的參數(shù)(一個(gè)典型的方法就是最小二乘)行疏;它肯定不是直線(我們又不是稻草),也不是三階多項(xiàng)式四階多項(xiàng)式.. 如果硬要完美擬合 N 個(gè)點(diǎn)套像,你可能會(huì)整出一個(gè) N-1 階多項(xiàng)式來(lái)——設(shè)想身高和體重的關(guān)系是 5 階多項(xiàng)式看看酿联?
3.2?模型比較理論(Model Comparasion)與貝葉斯奧卡姆剃刀(Bayesian Occam’s Razor)
實(shí)際上,模型比較就是去比較哪個(gè)模型(猜測(cè))更可能隱藏在觀察數(shù)據(jù)的背后凉夯。其基本思想前面已經(jīng)用拼寫(xiě)糾正的例子來(lái)說(shuō)明了货葬。我們對(duì)用戶(hù)實(shí)際想輸入的單詞的猜測(cè)就是模型,用戶(hù)輸錯(cuò)的單詞就是觀測(cè)數(shù)據(jù)劲够。我們通過(guò):
P(h | D) ∝ P(h) * P(D | h)
來(lái)比較哪個(gè)模型最為靠譜震桶。前面提到,光靠 P(D | h) (即“似然”)是不夠的征绎,有時(shí)候還需要引入 P(h) 這個(gè)先驗(yàn)概率蹲姐。奧卡姆剃刀就是說(shuō) P(h) 較大的模型有較大的優(yōu)勢(shì),而最大似然則是說(shuō)最符合觀測(cè)數(shù)據(jù)的(即 P(D | h) 最大的)最有優(yōu)勢(shì)人柿。整個(gè)模型比較就是這兩方力量的拉鋸柴墩。我們不妨再舉一個(gè)簡(jiǎn)單的例子來(lái)說(shuō)明這一精神:你隨便找枚硬幣,擲一下凫岖,觀察一下結(jié)果江咳。好,你觀察到的結(jié)果要么是“正”哥放,要么是“反”(不歼指,不是少林足球那枚硬幣:P )爹土,不妨假設(shè)你觀察到的是“正”。現(xiàn)在你要去根據(jù)這個(gè)觀測(cè)數(shù)據(jù)推斷這枚硬幣擲出“正”的概率是多大踩身。根據(jù)最大似然估計(jì)的精神胀茵,我們應(yīng)該猜測(cè)這枚硬幣擲出“正”的概率是 1 ,因?yàn)檫@個(gè)才是能最大化 P(D | h) 的那個(gè)猜測(cè)挟阻。然而每個(gè)人都會(huì)大搖其頭——很顯然琼娘,你隨機(jī)摸出一枚硬幣這枚硬幣居然沒(méi)有反面的概率是“不存在的”,我們對(duì)一枚隨機(jī)硬幣是否一枚有偏硬幣附鸽,偏了多少脱拼,是有著一個(gè)先驗(yàn)的認(rèn)識(shí)的,這個(gè)認(rèn)識(shí)就是絕大多數(shù)硬幣都是基本公平的拒炎,偏得越多的硬幣越少見(jiàn)(可以用一個(gè)?beta 分布來(lái)表達(dá)這一先驗(yàn)概率)挪拟。將這個(gè)先驗(yàn)正態(tài)分布 p(θ) (其中 θ 表示硬幣擲出正面的比例,小寫(xiě)的 p 代表這是概率密度函數(shù))結(jié)合到我們的問(wèn)題中击你,我們便不是去最大化 P(D | h) ,而是去最大化 P(D | θ) * p(θ) 谎柄,顯然 θ = 1 是不行的丁侄,因?yàn)?P(θ=1) 為 0 ,導(dǎo)致整個(gè)乘積也為 0 朝巫。實(shí)際上鸿摇,只要對(duì)這個(gè)式子求一個(gè)導(dǎo)數(shù)就可以得到最值點(diǎn)。
以上說(shuō)的是當(dāng)我們知道先驗(yàn)概率 P(h) 的時(shí)候劈猿,光用最大似然是不靠譜的拙吉,因?yàn)樽畲笏迫坏牟聹y(cè)可能先驗(yàn)概率非常小。然而揪荣,有些時(shí)候筷黔,我們對(duì)于先驗(yàn)概率一無(wú)所知,只能假設(shè)每種猜測(cè)的先驗(yàn)概率是均等的仗颈,這個(gè)時(shí)候就只有用最大似然了佛舱。實(shí)際上,統(tǒng)計(jì)學(xué)家和貝葉斯學(xué)家有一個(gè)有趣的爭(zhēng)論挨决,統(tǒng)計(jì)學(xué)家說(shuō):我們讓數(shù)據(jù)自己說(shuō)話请祖。言下之意就是要摒棄先驗(yàn)概率。而貝葉斯支持者則說(shuō):數(shù)據(jù)會(huì)有各種各樣的偏差脖祈,而一個(gè)靠譜的先驗(yàn)概率則可以對(duì)這些隨機(jī)噪音做到健壯肆捕。事實(shí)證明貝葉斯派勝利了,勝利的關(guān)鍵在于所謂先驗(yàn)概率其實(shí)也是經(jīng)驗(yàn)統(tǒng)計(jì)的結(jié)果盖高,譬如為什么我們會(huì)認(rèn)為絕大多數(shù)硬幣是基本公平的慎陵?為什么我們認(rèn)為大多數(shù)人的肥胖適中掏秩?為什么我們認(rèn)為膚色是種族相關(guān)的,而體重則與種族無(wú)關(guān)荆姆?先驗(yàn)概率里面的“先驗(yàn)”并不是指先于一切經(jīng)驗(yàn)蒙幻,而是僅指先于我們“當(dāng)前”給出的觀測(cè)數(shù)據(jù)而已,在硬幣的例子中先驗(yàn)指的只是先于我們知道投擲的結(jié)果這個(gè)經(jīng)驗(yàn)胆筒,而并非“先天”邮破。
然而,話說(shuō)回來(lái)仆救,有時(shí)候我們必須得承認(rèn)抒和,就算是基于以往的經(jīng)驗(yàn),我們手頭的“先驗(yàn)”概率還是均勻分布彤蔽,這個(gè)時(shí)候就必須依賴(lài)用最大似然摧莽,我們用前面留下的一個(gè)自然語(yǔ)言二義性問(wèn)題來(lái)說(shuō)明這一點(diǎn):
The girl saw the boy with a telescope.
到底是 The girl saw-with-a-telescope the boy 這一語(yǔ)法結(jié)構(gòu),還是 The girl saw the-boy-with-a-telescope 呢顿痪??jī)煞N語(yǔ)法結(jié)構(gòu)的常見(jiàn)程度都差不多(你可能會(huì)覺(jué)得后一種語(yǔ)法結(jié)構(gòu)的常見(jiàn)程度較低镊辕,這是事后偏見(jiàn),你只需想想 The girl saw the boy with a book 就知道了蚁袭。當(dāng)然征懈,實(shí)際上從大規(guī)模語(yǔ)料統(tǒng)計(jì)結(jié)果來(lái)看后一種語(yǔ)法結(jié)構(gòu)的確稍稍不常見(jiàn)一丁點(diǎn),但是絕對(duì)不足以解釋我們對(duì)第一種結(jié)構(gòu)的強(qiáng)烈傾向)揩悄。那么到底為什么呢卖哎?
我們不妨先來(lái)看看 MacKay 在書(shū)中舉的一個(gè)漂亮的例子:
圖中有多少個(gè)箱子?特別地删性,那棵書(shū)后面是一個(gè)箱子亏娜?還是兩個(gè)箱子?還是三個(gè)箱子蹬挺?還是.. 你可能會(huì)覺(jué)得樹(shù)后面肯定是一個(gè)箱子维贺,但為什么不是兩個(gè)呢?如下圖:
很簡(jiǎn)單汗侵,你會(huì)說(shuō):要是真的有兩個(gè)箱子那才怪了幸缕,怎么就那么巧這兩個(gè)箱子剛剛好顏色相同,高度相同呢晰韵?
用概率論的語(yǔ)言來(lái)說(shuō)发乔,你剛才的話就翻譯為:猜測(cè) h 不成立,因?yàn)?P(D | h) 太醒┲怼(太巧合)了栏尚。我們的直覺(jué)是:巧合(小概率)事件不會(huì)發(fā)生。所以當(dāng)一個(gè)猜測(cè)(假設(shè))使得我們的觀測(cè)結(jié)果成為小概率事件的時(shí)候只恨,我們就說(shuō)“才怪呢译仗,哪能那么巧捏抬虽?!”
現(xiàn)在我們可以回到那個(gè)自然語(yǔ)言二義性的例子纵菌,并給出一個(gè)完美的解釋了:如果語(yǔ)法結(jié)構(gòu)是 The girl saw the-boy-with-a-telecope 的話阐污,怎么那個(gè)男孩偏偏手里拿的就是望遠(yuǎn)鏡——一個(gè)可以被用來(lái) saw-with 的東東捏?這也忒小概率了吧咱圆。他咋就不會(huì)拿本書(shū)呢笛辟?拿什么都好。怎么偏偏就拿了望遠(yuǎn)鏡序苏?所以唯一的解釋是手幢,這個(gè)“巧合”背后肯定有它的必然性,這個(gè)必然性就是忱详,如果我們將語(yǔ)法結(jié)構(gòu)解釋為 The girl saw-with-a-telescope the boy 的話围来,就跟數(shù)據(jù)完美吻合了——既然那個(gè)女孩是用某個(gè)東西去看這個(gè)男孩的,那么這個(gè)東西是一個(gè)望遠(yuǎn)鏡就完全可以解釋了(不再是小概率事件了)匈睁。
自然語(yǔ)言二義性很常見(jiàn)监透,譬如上文中的一句話:
參見(jiàn)《決策與判斷》以及《Rationality for Mortals》第12章:小孩也可以解決貝葉斯問(wèn)題
就有二義性:到底是參見(jiàn)這兩本書(shū)的第 12 章,還是僅僅是第二本書(shū)的第 12 章呢软舌?如果是這兩本書(shū)的第 12 章那就是咄咄怪事了才漆,怎么恰好兩本書(shū)都有第 12 章,都是講同一個(gè)問(wèn)題佛点,更詭異的是,標(biāo)題還相同呢黎比?
注意超营,以上做的是似然估計(jì)(即只看 P(D | h) 的大小)阅虫,不含先驗(yàn)概率演闭。通過(guò)這兩個(gè)例子,尤其是那個(gè)樹(shù)后面的箱子的例子我們可以看到颓帝,似然估計(jì)里面也蘊(yùn)含著奧卡姆剃刀:樹(shù)后面的箱子數(shù)目越多米碰,這個(gè)模型就越復(fù)雜。單個(gè)箱子的模型是最簡(jiǎn)單的购城。似然估計(jì)選擇了更簡(jiǎn)單的模型吕座。
這個(gè)就是所謂的貝葉斯奧卡姆剃刀(Bayesian Occam’s Razor),因?yàn)檫@個(gè)剃刀工作在貝葉斯公式的似然(P(D | h) )上瘪板,而不是模型本身( P(h) )的先驗(yàn)概率上吴趴,后者是傳統(tǒng)的奧卡姆剃刀。關(guān)于貝葉斯奧卡姆剃刀我們?cè)賮?lái)看一個(gè)前面說(shuō)到的曲線擬合的例子:如果平面上有 N 個(gè)點(diǎn)侮攀,近似構(gòu)成一條直線锣枝,但絕不精確地位于一條直線上厢拭。這時(shí)我們既可以用直線來(lái)擬合(模型1),也可以用二階多項(xiàng)式(模型2)擬合撇叁,也可以用三階多項(xiàng)式(模型3)供鸠,.. ,特別地陨闹,用 N-1 階多項(xiàng)式便能夠保證肯定能完美通過(guò) N 個(gè)數(shù)據(jù)點(diǎn)楞捂。那么,這些可能的模型之中到底哪個(gè)是最靠譜的呢正林?前面提到泡一,一個(gè)衡量的依據(jù)是奧卡姆剃刀:越是高階的多項(xiàng)式越是繁復(fù)和不常見(jiàn)。然而觅廓,我們其實(shí)并不需要依賴(lài)于這個(gè)先驗(yàn)的奧卡姆剃刀鼻忠,因?yàn)橛腥丝赡軙?huì)爭(zhēng)辯說(shuō):你怎么就能說(shuō)越高階的多項(xiàng)式越不常見(jiàn)呢?我偏偏覺(jué)得所有階多項(xiàng)式都是等可能的杈绸。好吧帖蔓,既然如此那我們不妨就扔掉 P(h) 項(xiàng),看看 P(D | h) 能告訴我們什么瞳脓。我們注意到越是高階的多項(xiàng)式塑娇,它的軌跡彎曲程度越是大,到了八九階簡(jiǎn)直就是直上直下劫侧,于是我們不僅要問(wèn):一個(gè)比如說(shuō)八階多項(xiàng)式在平面上隨機(jī)生成的一堆 N 個(gè)點(diǎn)偏偏恰好近似構(gòu)成一條直線的概率(即 P(D | h) )有多大埋酬?太小太小了。反之烧栋,如果背后的模型是一條直線写妥,那么根據(jù)該模型生成一堆近似構(gòu)成直線的點(diǎn)的概率就大得多了。這就是貝葉斯奧卡姆剃刀审姓。
這里只是提供一個(gè)關(guān)于貝葉斯奧卡姆剃刀的科普珍特,強(qiáng)調(diào)直觀解釋?zhuān)嗬碚摴秸?qǐng)參考 MacKay 的著作 《Information Theory : Inference and Learning Algorithms》第 28 章。
3.3?最小描述長(zhǎng)度原則
貝葉斯模型比較理論與信息論有一個(gè)有趣的關(guān)聯(lián):
P(h | D) ∝ P(h) * P(D | h)
兩邊求對(duì)數(shù)魔吐,將右式的乘積變成相加:
ln P(h | D) ∝ ln P(h) + ln P(D | h)
顯然扎筒,最大化 P(h | D) 也就是最大化 ln P(h | D)。而 ln P(h) + ln P(D | h) 則可以解釋為模型(或者稱(chēng)“假設(shè)”酬姆、“猜測(cè)”)h 的編碼長(zhǎng)度加上在該模型下數(shù)據(jù) D 的編碼長(zhǎng)度嗜桌。使這個(gè)和最小的模型就是最佳模型。
而究竟如何定義一個(gè)模型的編碼長(zhǎng)度轴踱,以及數(shù)據(jù)在模型下的編碼長(zhǎng)度則是一個(gè)問(wèn)題症脂。更多可參考 Mitchell 的 《Machine Learning》的 6.6 節(jié),或 Mackay 的 28.3 節(jié))
3.4?最優(yōu)貝葉斯推理
所謂的推理,分為兩個(gè)過(guò)程诱篷,第一步是對(duì)觀測(cè)數(shù)據(jù)建立一個(gè)模型壶唤。第二步則是使用這個(gè)模型來(lái)推測(cè)未知現(xiàn)象發(fā)生的概率。我們前面都是講的對(duì)于觀測(cè)數(shù)據(jù)給出最靠譜的那個(gè)模型棕所。然而很多時(shí)候闸盔,雖然某個(gè)模型是所有模型里面最靠譜的,但是別的模型也并不是一點(diǎn)機(jī)會(huì)都沒(méi)有琳省。譬如第一個(gè)模型在觀測(cè)數(shù)據(jù)下的概率是 0.5 迎吵。第二個(gè)模型是 0.4 ,第三個(gè)是 0.1 针贬。如果我們只想知道對(duì)于觀測(cè)數(shù)據(jù)哪個(gè)模型最可能击费,那么只要取第一個(gè)就行了,故事到此結(jié)束桦他。然而很多時(shí)候我們建立模型是為了推測(cè)未知的事情的發(fā)生概率蔫巩,這個(gè)時(shí)候,三個(gè)模型對(duì)未知的事情發(fā)生的概率都會(huì)有自己的預(yù)測(cè)快压,僅僅因?yàn)槟骋粋€(gè)模型概率稍大一點(diǎn)就只聽(tīng)他一個(gè)人的就太不民主了圆仔。所謂的最優(yōu)貝葉斯推理就是將三個(gè)模型對(duì)于未知數(shù)據(jù)的預(yù)測(cè)結(jié)論加權(quán)平均起來(lái)(權(quán)值就是模型相應(yīng)的概率)。顯然蔫劣,這個(gè)推理是理論上的制高點(diǎn)坪郭,無(wú)法再優(yōu)了,因?yàn)樗呀?jīng)把所有可能性都考慮進(jìn)去了脉幢。
只不過(guò)實(shí)際上我們是基本不會(huì)使用這個(gè)框架的歪沃,因?yàn)橛?jì)算模型可能非常費(fèi)時(shí)間,二來(lái)模型空間可能是連續(xù)的嫌松,即有無(wú)窮多個(gè)模型(這個(gè)時(shí)候需要計(jì)算模型的概率分布)绸罗。結(jié)果還是非常費(fèi)時(shí)間。所以這個(gè)被看作是一個(gè)理論基準(zhǔn)豆瘫。
4.?無(wú)處不在的貝葉斯
以下我們?cè)倥e一些實(shí)際例子來(lái)說(shuō)明貝葉斯方法被運(yùn)用的普遍性,這里主要集中在機(jī)器學(xué)習(xí)方面菊值,因?yàn)槲也皇菍W(xué)經(jīng)濟(jì)的外驱,否則還可以找到一堆經(jīng)濟(jì)學(xué)的例子。
4.1?中文分詞
貝葉斯是機(jī)器學(xué)習(xí)的核心方法之一腻窒。比如中文分詞領(lǐng)域就用到了貝葉斯昵宇。Google 研究員吳軍在《數(shù)學(xué)之美》系列中就有一篇是介紹中文分詞的,這里只介紹一下核心的思想儿子,不做贅述瓦哎,詳細(xì)請(qǐng)參考吳軍的文章(這里)。
分詞問(wèn)題的描述為:給定一個(gè)句子(字串),如:
南京市長(zhǎng)江大橋
如何對(duì)這個(gè)句子進(jìn)行分詞(詞串)才是最靠譜的蒋譬。例如:
1. 南京市/長(zhǎng)江大橋
2. 南京/市長(zhǎng)/江大橋
這兩個(gè)分詞割岛,到底哪個(gè)更靠譜呢?
我們用貝葉斯公式來(lái)形式化地描述這個(gè)問(wèn)題犯助,令 X 為字串(句子)癣漆,Y 為詞串(一種特定的分詞假設(shè))。我們就是需要尋找使得 P(Y|X) 最大的 Y 剂买,使用一次貝葉斯可得:
P(Y|X) ∝ P(Y)*P(X|Y)
用自然語(yǔ)言來(lái)說(shuō)就是 這種分詞方式(詞串)的可能性 乘以 這個(gè)詞串生成我們的句子的可能性惠爽。我們進(jìn)一步容易看到:可以近似地將 P(X|Y) 看作是恒等于 1 的,因?yàn)槿我饧傧氲囊环N分詞方式之下生成我們的句子總是精準(zhǔn)地生成的(只需把分詞之間的分界符號(hào)扔掉即可)瞬哼。于是婚肆,我們就變成了去最大化 P(Y) ,也就是尋找一種分詞使得這個(gè)詞串(句子)的概率最大化坐慰。而如何計(jì)算一個(gè)詞串:
W1, W2, W3, W4 ..
的可能性呢较性?我們知道,根據(jù)聯(lián)合概率的公式展開(kāi):P(W1, W2, W3, W4 ..) = P(W1) * P(W2|W1) * P(W3|W2, W1) * P(W4|W1,W2,W3) * .. 于是我們可以通過(guò)一系列的條件概率(右式)的乘積來(lái)求整個(gè)聯(lián)合概率讨越。然而不幸的是隨著條件數(shù)目的增加(P(Wn|Wn-1,Wn-2,..,W1) 的條件有 n-1 個(gè))两残,數(shù)據(jù)稀疏問(wèn)題也會(huì)越來(lái)越嚴(yán)重,即便語(yǔ)料庫(kù)再大也無(wú)法統(tǒng)計(jì)出一個(gè)靠譜的 P(Wn|Wn-1,Wn-2,..,W1) 來(lái)把跨。為了緩解這個(gè)問(wèn)題人弓,計(jì)算機(jī)科學(xué)家們一如既往地使用了“天真”假設(shè):我們假設(shè)句子中一個(gè)詞的出現(xiàn)概率只依賴(lài)于它前面的有限的 k 個(gè)詞(k 一般不超過(guò) 3,如果只依賴(lài)于前面的一個(gè)詞着逐,就是2元語(yǔ)言模型(2-gram)崔赌,同理有 3-gram 、 4-gram 等)耸别,這個(gè)就是所謂的“有限地平線”假設(shè)健芭。雖然這個(gè)假設(shè)很傻很天真,但結(jié)果卻表明它的結(jié)果往往是很好很強(qiáng)大的秀姐,后面要提到的樸素貝葉斯方法使用的假設(shè)跟這個(gè)精神上是完全一致的慈迈,我們會(huì)解釋為什么像這樣一個(gè)天真的假設(shè)能夠得到強(qiáng)大的結(jié)果。目前我們只要知道省有,有了這個(gè)假設(shè)痒留,剛才那個(gè)乘積就可以改寫(xiě)成: P(W1) * P(W2|W1) * P(W3|W2) * P(W4|W3) .. (假設(shè)每個(gè)詞只依賴(lài)于它前面的一個(gè)詞)。而統(tǒng)計(jì) P(W2|W1) 就不再受到數(shù)據(jù)稀疏問(wèn)題的困擾了蠢沿。對(duì)于我們上面提到的例子“南京市長(zhǎng)江大橋”伸头,如果按照自左到右的貪婪方法分詞的話,結(jié)果就成了“南京市長(zhǎng)/江大橋”舷蟀。但如果按照貝葉斯分詞的話(假設(shè)使用 3-gram)恤磷,由于“南京市長(zhǎng)”和“江大橋”在語(yǔ)料庫(kù)中一起出現(xiàn)的頻率為 0 面哼,這個(gè)整句的概率便會(huì)被判定為 0 。 從而使得“南京市/長(zhǎng)江大橋”這一分詞方式勝出扫步。
一點(diǎn)注記:有人可能會(huì)疑惑魔策,難道我們?nèi)祟?lèi)也是基于這些天真的假設(shè)來(lái)進(jìn)行推理的?不是的锌妻。事實(shí)上代乃,統(tǒng)計(jì)機(jī)器學(xué)習(xí)方法所統(tǒng)計(jì)的東西往往處于相當(dāng)表層(shallow)的層面,在這個(gè)層面機(jī)器學(xué)習(xí)只能看到一些非常表面的現(xiàn)象仿粹,有一點(diǎn)科學(xué)研究的理念的人都知道:越是往表層去搁吓,世界就越是繁復(fù)多變。從機(jī)器學(xué)習(xí)的角度來(lái)說(shuō)吭历,特征(feature)就越多堕仔,成百上千維度都是可能的。特征一多晌区,好了摩骨,高維詛咒就產(chǎn)生了,數(shù)據(jù)就稀疏得要命朗若,不夠用了恼五。而我們?nèi)祟?lèi)的觀察水平顯然比機(jī)器學(xué)習(xí)的觀察水平要更深入一些,為了避免數(shù)據(jù)稀疏我們不斷地發(fā)明各種裝置(最典型就是顯微鏡)哭懈,來(lái)幫助我們直接深入到更深層的事物層面去觀察更本質(zhì)的聯(lián)系灾馒,而不是在淺層對(duì)表面現(xiàn)象作統(tǒng)計(jì)歸納。舉一個(gè)簡(jiǎn)單的例子遣总,通過(guò)對(duì)大規(guī)模語(yǔ)料庫(kù)的統(tǒng)計(jì)睬罗,機(jī)器學(xué)習(xí)可能會(huì)發(fā)現(xiàn)這樣一個(gè)規(guī)律:所有的“他”都是不會(huì)穿 bra 的,所有的“她”則都是穿的旭斥。然而容达,作為一個(gè)男人,卻完全無(wú)需進(jìn)行任何統(tǒng)計(jì)學(xué)習(xí)垂券,因?yàn)樯顚拥囊?guī)律就決定了我們根本不會(huì)去穿 bra 花盐。至于機(jī)器學(xué)習(xí)能不能完成后者(像人類(lèi)那樣的)這個(gè)推理,則是人工智能領(lǐng)域的經(jīng)典問(wèn)題菇爪。至少在那之前卒暂,聲稱(chēng)統(tǒng)計(jì)學(xué)習(xí)方法能夠終結(jié)科學(xué)研究(原文)的說(shuō)法是純粹外行人說(shuō)的話。
4.2?統(tǒng)計(jì)機(jī)器翻譯
統(tǒng)計(jì)機(jī)器翻譯因?yàn)槠浜?jiǎn)單娄帖,自動(dòng)(無(wú)需手動(dòng)添加規(guī)則),迅速成為了機(jī)器翻譯的事實(shí)標(biāo)準(zhǔn)昙楚。而統(tǒng)計(jì)機(jī)器翻譯的核心算法也是使用的貝葉斯方法近速。
問(wèn)題是什么?統(tǒng)計(jì)機(jī)器翻譯的問(wèn)題可以描述為:給定一個(gè)句子 e ,它的可能的外文翻譯 f 中哪個(gè)是最靠譜的削葱。即我們需要計(jì)算:P(f|e) 奖亚。一旦出現(xiàn)條件概率貝葉斯總是挺身而出:
P(f|e) ∝ P(f) * P(e|f)
這個(gè)式子的右端很容易解釋?zhuān)耗切┫闰?yàn)概率較高,并且更可能生成句子 e 的外文句子 f 將會(huì)勝出析砸。我們只需簡(jiǎn)單統(tǒng)計(jì)(結(jié)合上面提到的 N-Gram 語(yǔ)言模型)就可以統(tǒng)計(jì)任意一個(gè)外文句子 f 的出現(xiàn)概率昔字。然而 P(e|f) 卻不是那么好求的,給定一個(gè)候選的外文局子 f 首繁,它生成(或?qū)?yīng))句子 e 的概率是多大呢作郭?我們需要定義什么叫 “對(duì)應(yīng)”,這里需要用到一個(gè)分詞對(duì)齊的平行語(yǔ)料庫(kù)弦疮,有興趣的可以參考 《Foundations of Statistical Natural Language Processing》第 13 章夹攒,這里摘選其中的一個(gè)例子:假設(shè) e 為:John loves Mary 。我們需要考察的首選 f 是:Jean aime Marie (法文)胁塞。我們需要求出 P(e|f) 是多大咏尝,為此我們考慮 e 和 f 有多少種對(duì)齊的可能性,如:
John (Jean) loves (aime) Marie (Mary)
就是其中的一種(最靠譜的)對(duì)齊啸罢,為什么要對(duì)齊编检,是因?yàn)橐坏?duì)齊了之后,就可以容易地計(jì)算在這個(gè)對(duì)齊之下的 P(e|f) 是多大扰才,只需計(jì)算:
P(John|Jean) * P(loves|aime) * P(Marie|Mary)
即可允懂。
然后我們遍歷所有的對(duì)齊方式,并將每種對(duì)齊方式之下的翻譯概率 ∑ 求和训桶。便可以獲得整個(gè)的 P(e|f) 是多大累驮。
一點(diǎn)注記:還是那個(gè)問(wèn)題:難道我們?nèi)祟?lèi)真的是用這種方式進(jìn)行翻譯的?highly unlikely 舵揭。這種計(jì)算復(fù)雜性非常高的東西連三位數(shù)乘法都搞不定的我們才不會(huì)笨到去使用呢谤专。根據(jù)認(rèn)知神經(jīng)科學(xué)的認(rèn)識(shí),很可能我們是先從句子到語(yǔ)義(一個(gè)逐層往上(bottom-up)抽象的 folding 過(guò)程)午绳,然后從語(yǔ)義根據(jù)另一門(mén)語(yǔ)言的語(yǔ)法展開(kāi)為另一門(mén)語(yǔ)言(一個(gè)逐層往下(top-down)的具體化 unfolding 過(guò)程)置侍。如何可計(jì)算地實(shí)現(xiàn)這個(gè)過(guò)程,目前仍然是個(gè)難題拦焚。(我們看到很多地方都有 bottom-up/top-down 這樣一個(gè)對(duì)稱(chēng)的過(guò)程蜡坊,實(shí)際上有人猜測(cè)這正是生物神經(jīng)網(wǎng)絡(luò)原則上的運(yùn)作方式,對(duì)視覺(jué)神經(jīng)系統(tǒng)的研究尤其證明了這一點(diǎn)赎败,Hawkins 在 《On Intelligence》 里面提出了一種?HTM(Hierarchical Temporal Memory)模型正是使用了這個(gè)原則秕衙。)
4.3?貝葉斯圖像識(shí)別,Analysis by Synthesis
貝葉斯方法是一個(gè)非常 general 的推理框架僵刮。其核心理念可以描述成:Analysis by Synthesis (通過(guò)合成來(lái)分析)据忘。06 年的認(rèn)知科學(xué)新進(jìn)展上有一篇 paper 就是講用貝葉斯推理來(lái)解釋視覺(jué)識(shí)別的鹦牛,一圖勝千言,下圖就是摘自這篇 paper :
首先是視覺(jué)系統(tǒng)提取圖形的邊角特征勇吊,然后使用這些特征自底向上地激活高層的抽象概念(比如是 E 還是 F 還是等號(hào))曼追,然后使用一個(gè)自頂向下的驗(yàn)證來(lái)比較到底哪個(gè)概念最佳地解釋了觀察到的圖像。
4.4? EM?算法與基于模型的聚類(lèi)
聚類(lèi)是一種無(wú)指導(dǎo)的機(jī)器學(xué)習(xí)問(wèn)題汉规,問(wèn)題描述:給你一堆數(shù)據(jù)點(diǎn)礼殊,讓你將它們最靠譜地分成一堆一堆的。聚類(lèi)算法很多针史,不同的算法適應(yīng)于不同的問(wèn)題晶伦,這里僅介紹一個(gè)基于模型的聚類(lèi),該聚類(lèi)算法對(duì)數(shù)據(jù)點(diǎn)的假設(shè)是悟民,這些數(shù)據(jù)點(diǎn)分別是圍繞 K 個(gè)核心的 K 個(gè)正態(tài)分布源所隨機(jī)生成的坝辫,使用 Han JiaWei 的《Data Ming: Concepts and Techniques》中的圖:
圖中有兩個(gè)正態(tài)分布核心,生成了大致兩堆點(diǎn)射亏。我們的聚類(lèi)算法就是需要根據(jù)給出來(lái)的那些點(diǎn)近忙,算出這兩個(gè)正態(tài)分布的核心在什么位置,以及分布的參數(shù)是多少智润。這很明顯又是一個(gè)貝葉斯問(wèn)題及舍,但這次不同的是,答案是連續(xù)的且有無(wú)窮多種可能性窟绷,更糟的是锯玛,只有當(dāng)我們知道了哪些點(diǎn)屬于同一個(gè)正態(tài)分布圈的時(shí)候才能夠?qū)@個(gè)分布的參數(shù)作出靠譜的預(yù)測(cè),現(xiàn)在兩堆點(diǎn)混在一塊我們又不知道哪些點(diǎn)屬于第一個(gè)正態(tài)分布兼蜈,哪些屬于第二個(gè)攘残。反過(guò)來(lái),只有當(dāng)我們對(duì)分布的參數(shù)作出了靠譜的預(yù)測(cè)時(shí)候为狸,才能知道到底哪些點(diǎn)屬于第一個(gè)分布歼郭,那些點(diǎn)屬于第二個(gè)分布。這就成了一個(gè)先有雞還是先有蛋的問(wèn)題了辐棒。為了解決這個(gè)循環(huán)依賴(lài)病曾,總有一方要先打破僵局,說(shuō)漾根,不管了泰涂,我先隨便整一個(gè)值出來(lái)凰浮,看你怎么變赡茸,然后我再根據(jù)你的變化調(diào)整我的變化,然后如此迭代著不斷互相推導(dǎo)吓坚,最終收斂到一個(gè)解寄疏。這就是 EM 算法其做。
EM 的意思是“Expectation-Maximazation”顶考,在這個(gè)聚類(lèi)問(wèn)題里面,我們是先隨便猜一下這兩個(gè)正態(tài)分布的參數(shù):如核心在什么地方妖泄,方差是多少。然后計(jì)算出每個(gè)數(shù)據(jù)點(diǎn)更可能屬于第一個(gè)還是第二個(gè)正態(tài)分布圈艘策,這個(gè)是屬于 Expectation 一步蹈胡。有了每個(gè)數(shù)據(jù)點(diǎn)的歸屬,我們就可以根據(jù)屬于第一個(gè)分布的數(shù)據(jù)點(diǎn)來(lái)重新評(píng)估第一個(gè)分布的參數(shù)(從蛋再回到雞)朋蔫,這個(gè)是 Maximazation 罚渐。如此往復(fù),直到參數(shù)基本不再發(fā)生變化為止驯妄。這個(gè)迭代收斂過(guò)程中的貝葉斯方法在第二步荷并,根據(jù)數(shù)據(jù)點(diǎn)求分布的參數(shù)上面。
4.5?最大似然與最小二乘
學(xué)過(guò)線性代數(shù)的大概都知道經(jīng)典的最小二乘方法來(lái)做線性回歸青扔。問(wèn)題描述是:給定平面上 N 個(gè)點(diǎn)源织,(這里不妨假設(shè)我們想用一條直線來(lái)擬合這些點(diǎn)——回歸可以看作是擬合的特例,即允許誤差的擬合)微猖,找出一條最佳描述了這些點(diǎn)的直線谈息。
一個(gè)接踵而來(lái)的問(wèn)題就是,我們?nèi)绾味x最佳凛剥?我們?cè)O(shè)每個(gè)點(diǎn)的坐標(biāo)為 (Xi, Yi) 侠仇。如果直線為 y = f(x) 。那么 (Xi, Yi) 跟直線對(duì)這個(gè)點(diǎn)的“預(yù)測(cè)”:(Xi, f(Xi)) 就相差了一個(gè) ΔYi = |Yi – f(Xi)| 犁珠。最小二乘就是說(shuō)尋找直線使得 (ΔY1)^2 + (ΔY2)^2 + .. (即誤差的平方和)最小逻炊,至于為什么是誤差的平方和而不是誤差的絕對(duì)值和,統(tǒng)計(jì)學(xué)上也沒(méi)有什么好的解釋犁享。然而貝葉斯方法卻能對(duì)此提供一個(gè)完美的解釋余素。
我們假設(shè)直線對(duì)于坐標(biāo) Xi 給出的預(yù)測(cè) f(Xi) 是最靠譜的預(yù)測(cè),所有縱坐標(biāo)偏離 f(Xi) 的那些數(shù)據(jù)點(diǎn)都含有噪音饼疙,是噪音使得它們偏離了完美的一條直線溺森,一個(gè)合理的假設(shè)就是偏離路線越遠(yuǎn)的概率越小,具體小多少窑眯,可以用一個(gè)正態(tài)分布曲線來(lái)模擬屏积,這個(gè)分布曲線以直線對(duì) Xi 給出的預(yù)測(cè) f(Xi) 為中心,實(shí)際縱坐標(biāo)為 Yi 的點(diǎn) (Xi, Yi) 發(fā)生的概率就正比于 EXP[-(ΔYi)^2]磅甩。(EXP(..) 代表以常數(shù) e 為底的多少次方)炊林。
現(xiàn)在我們回到問(wèn)題的貝葉斯方面,我們要想最大化的后驗(yàn)概率是:
P(h|D) ∝ P(h) * P(D|h)
又見(jiàn)貝葉斯卷要!這里 h 就是指一條特定的直線渣聚,D 就是指這 N 個(gè)數(shù)據(jù)點(diǎn)独榴。我們需要尋找一條直線 h 使得 P(h) * P(D|h) 最大。很顯然奕枝,P(h) 這個(gè)先驗(yàn)概率是均勻的棺榔,因?yàn)槟臈l直線也不比另一條更優(yōu)越。所以我們只需要看 P(D|h) 這一項(xiàng)隘道,這一項(xiàng)是指這條直線生成這些數(shù)據(jù)點(diǎn)的概率症歇,剛才說(shuō)過(guò)了,生成數(shù)據(jù)點(diǎn) (Xi, Yi) 的概率為 EXP[-(ΔYi)^2] 乘以一個(gè)常數(shù)谭梗。而 P(D|h) = P(d1|h) * P(d2|h) * .. 即假設(shè)各個(gè)數(shù)據(jù)點(diǎn)是獨(dú)立生成的忘晤,所以可以把每個(gè)概率乘起來(lái)。于是生成 N 個(gè)數(shù)據(jù)點(diǎn)的概率為 EXP[-(ΔY1)^2] * EXP[-(ΔY2)^2] * EXP[-(ΔY3)^2] * .. = EXP{-[(ΔY1)^2 + (ΔY2)^2 + (ΔY3)^2 + ..]} 最大化這個(gè)概率就是要最小化 (ΔY1)^2 + (ΔY2)^2 + (ΔY3)^2 + .. 激捏。 熟悉這個(gè)式子嗎设塔?
5.?樸素貝葉斯方法
樸素貝葉斯方法是一個(gè)很特別的方法,所以值得介紹一下远舅。我們用樸素貝葉斯在垃圾郵件過(guò)濾中的應(yīng)用來(lái)舉例說(shuō)明闰蛔。
5.1?貝葉斯垃圾郵件過(guò)濾器
問(wèn)題是什么?問(wèn)題是表谊,給定一封郵件钞护,判定它是否屬于垃圾郵件。按照先例爆办,我們還是用 D 來(lái)表示這封郵件难咕,注意 D 由 N 個(gè)單詞組成。我們用 h+ 來(lái)表示垃圾郵件距辆,h- 表示正常郵件余佃。問(wèn)題可以形式化地描述為求:
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ù)里面垃圾郵件和正常郵件的比例就行了跨算。然而 P(D|h+) 卻不容易求爆土,因?yàn)?D 里面含有 N 個(gè)單詞 d1, d2, d3, .. ,所以P(D|h+) = P(d1,d2,..,dn|h+) 诸蚕。我們又一次遇到了數(shù)據(jù)稀疏性步势,為什么這么說(shuō)呢?P(d1,d2,..,dn|h+) 就是說(shuō)在垃圾郵件當(dāng)中出現(xiàn)跟我們目前這封郵件一模一樣的一封郵件的概率是多大背犯!開(kāi)玩笑坏瘩,每封郵件都是不同的,世界上有無(wú)窮多封郵件漠魏。瞧倔矾,這就是數(shù)據(jù)稀疏性,因?yàn)榭梢钥隙ǖ卣f(shuō),你收集的訓(xùn)練數(shù)據(jù)庫(kù)不管里面含了多少封郵件哪自,也不可能找出一封跟目前這封一模一樣的丰包。結(jié)果呢?我們又該如何來(lái)計(jì)算 P(d1,d2,..,dn|h+) 呢壤巷?
我們將 P(d1,d2,..,dn|h+)? 擴(kuò)展為: P(d1|h+) * P(d2|d1, h+) * P(d3|d2,d1, h+) * .. 邑彪。熟悉這個(gè)式子嗎?這里我們會(huì)使用一個(gè)更激進(jìn)的假設(shè)胧华,我們假設(shè) di 與 di-1 是完全條件無(wú)關(guān)的锌蓄,于是式子就簡(jiǎn)化為 P(d1|h+) * P(d2|h+) * P(d3|h+) * .. 。這個(gè)就是所謂的條件獨(dú)立假設(shè)撑柔,也正是樸素貝葉斯方法的樸素之處。而計(jì)算 P(d1|h+) * P(d2|h+) * P(d3|h+) * .. 就太簡(jiǎn)單了您访,只要統(tǒng)計(jì) di 這個(gè)單詞在垃圾郵件中出現(xiàn)的頻率即可铅忿。關(guān)于貝葉斯垃圾郵件過(guò)濾更多的內(nèi)容可以參考這個(gè)條目,注意其中提到的其他資料灵汪。
一點(diǎn)注記:這里檀训,為什么有這個(gè)數(shù)據(jù)稀疏問(wèn)題,還是因?yàn)榻y(tǒng)計(jì)學(xué)習(xí)方法工作在淺層面享言,世界上的單詞就算不再變多也是非常之多的峻凫,單詞之間組成的句子也是變化多端,更不用說(shuō)一篇文章了览露,文章數(shù)目則是無(wú)窮的荧琼,所以在這個(gè)層面作統(tǒng)計(jì),肯定要被數(shù)據(jù)稀疏性困擾差牛。我們要注意命锄,雖然句子和文章的數(shù)目是無(wú)限的,然而就拿郵件來(lái)說(shuō)偏化,如果我們只關(guān)心郵件中句子的語(yǔ)義(進(jìn)而更高抽象層面的“意圖”(語(yǔ)義脐恩,意圖如何可計(jì)算地定義出來(lái)是一個(gè)人工智能問(wèn)題),在這個(gè)層面上可能性便大大縮減了侦讨,我們關(guān)心的抽象層面越高驶冒,可能性越小。單詞集合和句子的對(duì)應(yīng)是多對(duì)一的韵卤,句子和語(yǔ)義的對(duì)應(yīng)又是多對(duì)一的骗污,語(yǔ)義和意圖的對(duì)應(yīng)還是多對(duì)一的,這是個(gè)層級(jí)體系怜俐。神經(jīng)科學(xué)的發(fā)現(xiàn)也表明大腦的皮層大致有一種層級(jí)結(jié)構(gòu)身堡,對(duì)應(yīng)著越來(lái)越抽象的各個(gè)層面,至于如何具體實(shí)現(xiàn)一個(gè)可放在計(jì)算機(jī)內(nèi)的大腦皮層拍鲤,仍然是一個(gè)未解決問(wèn)題贴谎,以上只是一個(gè)原則(principle)上的認(rèn)識(shí)汞扎,只有當(dāng) computational 的 cortex 模型被建立起來(lái)了之后才可能將其放入電腦。
5.2?為什么樸素貝葉斯方法令人詫異地好——一個(gè)理論解釋
樸素貝葉斯方法的條件獨(dú)立假設(shè)看上去很傻很天真擅这,為什么結(jié)果卻很好很強(qiáng)大呢澈魄?就拿一個(gè)句子來(lái)說(shuō),我們?cè)趺茨荇斆У芈暦Q(chēng)其中任意一個(gè)單詞出現(xiàn)的概率只受到它前面的 3 個(gè)或 4 個(gè)單詞的影響呢仲翎?別說(shuō) 3 個(gè)痹扇,有時(shí)候一個(gè)單詞的概率受到上一句話的影響都是絕對(duì)可能的。那么為什么這個(gè)假設(shè)在實(shí)際中的表現(xiàn)卻不比決策樹(shù)差呢溯香?有人對(duì)此提出了一個(gè)理論解釋?zhuān)⑶医⒘耸裁磿r(shí)候樸素貝葉斯的效果能夠等價(jià)于非樸素貝葉斯的充要條件鲫构,這個(gè)解釋的核心就是:有些獨(dú)立假設(shè)在各個(gè)分類(lèi)之間的分布都是均勻的所以對(duì)于似然的相對(duì)大小不產(chǎn)生影響;即便不是如此玫坛,也有很大的可能性各個(gè)獨(dú)立假設(shè)所產(chǎn)生的消極影響或積極影響互相抵消结笨,最終導(dǎo)致結(jié)果受到的影響不大。具體的數(shù)學(xué)公式請(qǐng)參考這篇 paper?湿镀。
6.?層級(jí)貝葉斯模型
層級(jí)貝葉斯模型是現(xiàn)代貝葉斯方法的標(biāo)志性建筑之一炕吸。前面講的貝葉斯,都是在同一個(gè)事物層次上的各個(gè)因素之間進(jìn)行統(tǒng)計(jì)推理勉痴,然而層次貝葉斯模型在哲學(xué)上更深入了一層赫模,將這些因素背后的因素(原因的原因,原因的原因蒸矛,以此類(lèi)推)囊括進(jìn)來(lái)瀑罗。一個(gè)教科書(shū)例子是:如果你手頭有 N 枚硬幣,它們是同一個(gè)工廠鑄出來(lái)的莉钙,你把每一枚硬幣擲出一個(gè)結(jié)果廓脆,然后基于這 N 個(gè)結(jié)果對(duì)這 N 個(gè)硬幣的 θ (出現(xiàn)正面的比例)進(jìn)行推理。如果根據(jù)最大似然磁玉,每個(gè)硬幣的 θ 不是 1 就是 0 (這個(gè)前面提到過(guò)的)停忿,然而我們又知道每個(gè)硬幣的 p(θ) 是有一個(gè)先驗(yàn)概率的,也許是一個(gè) beta 分布蚊伞。也就是說(shuō)席赂,每個(gè)硬幣的實(shí)際投擲結(jié)果 Xi 服從以 θ 為中心的正態(tài)分布,而 θ 又服從另一個(gè)以 Ψ 為中心的 beta 分布时迫。層層因果關(guān)系就體現(xiàn)出來(lái)了颅停。進(jìn)而 Ψ 還可能依賴(lài)于因果鏈上更上層的因素,以此類(lèi)推掠拳。
6.1?隱馬可夫模型(HMM)
吳軍在數(shù)學(xué)之美系列里面介紹的隱馬可夫模型(HMM)就是一個(gè)簡(jiǎn)單的層級(jí)貝葉斯模型:
那么怎么根據(jù)接收到的信息來(lái)推測(cè)說(shuō)話者想表達(dá)的意思呢癞揉?我們可以利用叫做“隱含馬爾可夫模型”(Hidden Markov Model)來(lái)解決這些問(wèn)題。以語(yǔ)音識(shí)別為例,當(dāng)我們觀測(cè)到語(yǔ)音信號(hào) o1,o2,o3 時(shí)喊熟,我們要根據(jù)這組信號(hào)推測(cè)出發(fā)送的句子 s1,s2,s3柏肪。顯然,我們應(yīng)該在所有可能的句子中找最有可能性的一個(gè)芥牌。用數(shù)學(xué)語(yǔ)言來(lái)描述烦味,就是在已知 o1,o2,o3,…的情況下,求使得條件概率 P (s1,s2,s3,…|o1,o2,o3….) 達(dá)到最大值的那個(gè)句子 s1,s2,s3,…
吳軍的文章中這里省掉沒(méi)說(shuō)的是壁拉,s1, s2, s3, .. 這個(gè)句子的生成概率同時(shí)又取決于一組參數(shù)谬俄,這組參數(shù)決定了 s1, s2, s3, .. 這個(gè)馬可夫鏈的先驗(yàn)生成概率。如果我們將這組參數(shù)記為 λ 弃理,我們實(shí)際上要求的是:P(S|O, λ) (其中 O 表示 o1,o2,o3,.. 溃论,S表示 s1,s2,s3,..)
當(dāng)然,上面的概率不容易直接求出痘昌,于是我們可以間接地計(jì)算它蔬芥。利用貝葉斯公式并且省掉一個(gè)常數(shù)項(xiàng),可以把上述公式等價(jià)變換成
P(o1,o2,o3,…|s1,s2,s3….) * P(s1,s2,s3,…)
其中
P(o1,o2,o3,…|s1,s2,s3….) 表示某句話 s1,s2,s3…被讀成 o1,o2,o3,…的可能性, 而 P(s1,s2,s3,…) 表示字串 s1,s2,s3,…本身能夠成為一個(gè)合乎情理的句子的可能性控汉,所以這個(gè)公式的意義是用發(fā)送信號(hào)為 s1,s2,s3…這個(gè)數(shù)列的可能性乘以 s1,s2,s3.. 本身可以一個(gè)句子的可能性,得出概率返吻。
這里姑子,s1,s2,s3…本身可以一個(gè)句子的可能性其實(shí)就取決于參數(shù) λ ,也就是語(yǔ)言模型测僵。所以簡(jiǎn)而言之就是發(fā)出的語(yǔ)音信號(hào)取決于背后實(shí)際想發(fā)出的句子街佑,而背后實(shí)際想發(fā)出的句子本身的獨(dú)立先驗(yàn)概率又取決于語(yǔ)言模型。
7.?貝葉斯網(wǎng)絡(luò)
吳軍已經(jīng)對(duì)貝葉斯網(wǎng)絡(luò)作了科普捍靠,請(qǐng)直接跳轉(zhuǎn)到這里沐旨。更詳細(xì)的理論參考所有機(jī)器學(xué)習(xí)的書(shū)上都有。
參考資料
部分書(shū)籍參考《機(jī)器學(xué)習(xí)與人工智能資源導(dǎo)引》榨婆。
我的公號(hào):