




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)學(xué)之美番外篇:平凡而又神奇的貝葉斯方法概率論只不過是把常識用數(shù)學(xué)公式表達(dá)了出來。拉普拉斯記得讀本科的時(shí)候,最喜歡到城里的計(jì)算機(jī)書店里面去閑逛,一逛就是好幾個(gè)小時(shí);有一次,在書店看到一本書,名叫貝葉斯方法。當(dāng)時(shí)數(shù)學(xué)系的課程還沒有學(xué)到概率統(tǒng)計(jì)。我心想,一個(gè)方法能夠?qū)iT寫出一本書來,肯定很牛逼。后來,我發(fā)現(xiàn)當(dāng)初的那個(gè)樸素歸納推理成立了這果然是個(gè)牛逼的方法。題記目錄0. 前言 1. 歷史 1.1 一個(gè)例子:自然語言的二義性 1.2 貝葉斯公式 2. 拼寫糾正 3. 模型比較與貝葉斯奧卡姆剃刀 3.1 再訪拼寫糾正 3.2 模型比較理論(Model Comparasion)與貝葉斯奧卡姆剃刀(Baye
2、sian Occams Razor) 3.3 最小描述長度原則 3.4 最優(yōu)貝葉斯推理 4. 無處不在的貝葉斯 4.1 中文分詞 4.2 統(tǒng)計(jì)機(jī)器翻譯 4.3 貝葉斯圖像識別,Analysis by Synthesis 4.4 EM 算法與基于模型的聚類 4.5 最大似然與最小二乘 5. 樸素貝葉斯方法(又名“愚蠢者的貝葉斯(idiots bayes)”) 5.1 垃圾郵件過濾器 5.2 為什么樸素貝葉斯方法令人詫異地好一個(gè)理論解釋 6. 層級貝葉斯模型 6.1 隱馬可夫模型(HMM) 7. 貝葉斯網(wǎng)絡(luò)0. 前言這是一篇關(guān)于貝葉斯方法的科普文,我會盡量少用公式,多用平白的語言敘述,多舉實(shí)際例子
3、。更嚴(yán)格的公式和計(jì)算我會在相應(yīng)的地方注明參考資料。貝葉斯方法被證明是非常 general 且強(qiáng)大的推理框架,文中你會看到很多有趣的應(yīng)用。 1. 歷史托馬斯貝葉斯(Thomas Bayes)同學(xué)的詳細(xì)生平在這里。以下摘一段 wikipedia 上的簡介:所謂的貝葉斯方法源于他生前為解決一個(gè)“逆概”問題寫的一篇文章,而這篇文章是在他死后才由他的一位朋友發(fā)表出來的。在貝葉斯寫這篇文章之前,人們已經(jīng)能夠計(jì)算“正向概率”,如“假設(shè)袋子里面有N個(gè)白球,M個(gè)黑球,你伸手進(jìn)去摸一把,摸出黑球的概率是多大”。而一個(gè)自然而然的問題是反過來:“如果我們事先并不知道袋子里面黑白球的比例,而是閉著眼睛摸出一個(gè)(或好幾個(gè)
4、)球,觀察這些取出來的球的顏色之后,那么我們可以就此對袋子里面的黑白球的比例作出什么樣的推測”。這個(gè)問題,就是所謂的逆概問題。實(shí)際上,貝葉斯當(dāng)時(shí)的論文只是對這個(gè)問題的一個(gè)直接的求解嘗試,并不清楚他當(dāng)時(shí)是不是已經(jīng)意識到這里面包含著的深刻的思想。然而后來,貝葉斯方法席卷了概率論,并將應(yīng)用延伸到各個(gè)問題領(lǐng)域,所有需要作出概率預(yù)測的地方都可以見到貝葉斯方法的影子,特別地,貝葉斯是機(jī)器學(xué)習(xí)的核心方法之一。這背后的深刻原因在于,現(xiàn)實(shí)世界本身就是不確定的,人類的觀察能力是有局限性的(否則有很大一部分科學(xué)就沒有必要做了設(shè)想我們能夠直接觀察到電子的運(yùn)行,還需要對原子模型爭吵不休嗎?),我們?nèi)粘K^察到的只是事物
5、表面上的結(jié)果,沿用剛才那個(gè)袋子里面取球的比方,我們往往只能知道從里面取出來的球是什么顏色,而并不能直接看到袋子里面實(shí)際的情況。這個(gè)時(shí)候,我們就需要提供一個(gè)猜測(hypothesis,更為嚴(yán)格的說法是“假設(shè)”,這里用“猜測”更通俗易懂一點(diǎn)),所謂猜測,當(dāng)然就是不確定的(很可能有好多種乃至無數(shù)種猜測都能滿足目前的觀測),但也絕對不是兩眼一抹黑瞎蒙具體地說,我們需要做兩件事情:1. 算出各種不同猜測的可能性大小。2. 算出最靠譜的猜測是什么。第一個(gè)就是計(jì)算特定猜測的后驗(yàn)概率,對于連續(xù)的猜測空間則是計(jì)算猜測的概率密度函數(shù)。第二個(gè)則是所謂的模型比較,模型比較如果不考慮先驗(yàn)概率的話就是最大似然方法。1.1
6、 一個(gè)例子:自然語言的二義性下面舉一個(gè)自然語言的不確定性的例子。當(dāng)你看到這句話:The girl saw the boy with a telescope.你對這句話的含義有什么猜測?平常人肯定會說:那個(gè)女孩拿望遠(yuǎn)鏡看見了那個(gè)男孩(即你對這個(gè)句子背后的實(shí)際語法結(jié)構(gòu)的猜測是:The girl saw-with-a-telescope the boy )。然而,仔細(xì)一想,你會發(fā)現(xiàn)這個(gè)句子完全可以解釋成:那個(gè)女孩看見了那個(gè)拿著望遠(yuǎn)鏡的男孩(即:The girl saw the-boy-with-a-telescope )。那為什么平常生活中我們每個(gè)人都能夠迅速地對這種二義性進(jìn)行消解呢?這背后到底隱藏
7、著什么樣的思維法則?我們留到后面解釋。1.2 貝葉斯公式貝葉斯公式是怎么來的?我們還是使用 wikipedia 上的一個(gè)例子:一所學(xué)校里面有 60% 的男生,40% 的女生。男生總是穿長褲,女生則一半穿長褲一半穿裙子。有了這些信息之后我們可以容易地計(jì)算“隨機(jī)選取一個(gè)學(xué)生,他(她)穿長褲的概率和穿裙子的概率是多大”,這個(gè)就是前面說的“正向概率”的計(jì)算。然而,假設(shè)你走在校園中,迎面走來一個(gè)穿長褲的學(xué)生(很不幸的是你高度近似,你只看得見他(她)穿的是否長褲,而無法確定他(她)的性別),你能夠推斷出他(她)是男生的概率是多大嗎?一些認(rèn)知科學(xué)的研究表明(決策與判斷以及Rationality for Mo
8、rtals第12章:小孩也可以解決貝葉斯問題),我們對形式化的貝葉斯問題不擅長,但對于以頻率形式呈現(xiàn)的等價(jià)問題卻很擅長。在這里,我們不妨把問題重新敘述成:你在校園里面隨機(jī)游走,遇到了 N 個(gè)穿長褲的人(仍然假設(shè)你無法直接觀察到他們的性別),問這 N 個(gè)人里面有多少個(gè)女生多少個(gè)男生。你說,這還不簡單:算出學(xué)校里面有多少穿長褲的,然后在這些人里面再算出有多少女生,不就行了?我們來算一算:假設(shè)學(xué)校里面人的總數(shù)是 U 個(gè)。60% 的男生都穿長褲,于是我們得到了 U * P(Boy) * P(Pants|Boy) 個(gè)穿長褲的(男生)(其中 P(Boy) 是男生的概率 = 60%,這里可以簡單的理解為男生
9、的比例;P(Pants|Boy) 是條件概率,即在 Boy 這個(gè)條件下穿長褲的概率是多大,這里是 100% ,因?yàn)樗心猩即╅L褲)。40% 的女生里面又有一半(50%)是穿長褲的,于是我們又得到了 U * P(Girl) * P(Pants|Girl) 個(gè)穿長褲的(女生)。加起來一共是 U * P(Boy) * P(Pants|Boy) + U * P(Girl) * P(Pants|Girl) 個(gè)穿長褲的,其中有 U * P(Girl) * P(Pants|Girl) 個(gè)女生。兩者一比就是你要求的答案。下面我們把這個(gè)答案形式化一下:我們要求的是 P(Girl|Pants) (穿長褲的人里面
10、有多少女生),我們計(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ù)是無關(guān)的,可以消去。于是得到P(Girl|Pants) = P(Girl) * P(Pants|Girl) / P(Boy) * P(Pants|Boy) + P(Girl) * P(Pants|Girl)注意,如果把上式收縮起來,分母其實(shí)就是 P(Pants) ,分子其實(shí)就是 P(Pants, Girl) 。而這個(gè)比例很自然地就讀作:在穿長褲的人( P(Pants
11、) )里面有多少(穿長褲)的女孩( P(Pants, Girl) )。上式中的 Pants 和 Boy/Girl 可以指代一切東西,所以其一般形式就是:P(B|A) = P(A|B) * P(B) / P(A|B) * P(B) + P(A|B) * P(B) 收縮起來就是:P(B|A) = P(AB) / P(A)其實(shí)這個(gè)就等于:P(B|A) * P(A) = P(AB)難怪拉普拉斯說概率論只是把常識用數(shù)學(xué)公式表達(dá)了出來。然而,后面我們會逐漸發(fā)現(xiàn),看似這么平凡的貝葉斯公式,背后卻隱含著非常深刻的原理。2. 拼寫糾正經(jīng)典著作人工智能:現(xiàn)代方法的作者之一 Peter Norvig 曾經(jīng)寫過一篇介
12、紹如何寫一個(gè)拼寫檢查/糾正器的文章(原文在這里,徐宥的翻譯版在這里,這篇文章很深入淺出,強(qiáng)烈建議讀一讀),里面用到的就是貝葉斯方法,這里我們不打算復(fù)述他寫的文章,而是簡要地將其核心思想介紹一下。首先,我們需要詢問的是:“問題是什么?”問題是我們看到用戶輸入了一個(gè)不在字典中的單詞,我們需要去猜測:“這個(gè)家伙到底真正想輸入的單詞是什么呢?”用剛才我們形式化的語言來敘述就是,我們需要求:P(我們猜測他想輸入的單詞 | 他實(shí)際輸入的單詞)這個(gè)概率。并找出那個(gè)使得這個(gè)概率最大的猜測單詞。顯然,我們的猜測未必是唯一的,就像前面舉的那個(gè)自然語言的歧義性的例子一樣;這里,比如用戶輸入: thew ,那么他到底
13、是想輸入 the ,還是想輸入 thaw ?到底哪個(gè)猜測可能性更大呢?幸運(yùn)的是我們可以用貝葉斯公式來直接出它們各自的概率,我們不妨將我們的多個(gè)猜測記為 h1 h2 . ( h 代表 hypothesis),它們都屬于一個(gè)有限且離散的猜測空間 H (單詞總共就那么多而已),將用戶實(shí)際輸入的單詞記為 D ( D 代表 Data ,即觀測數(shù)據(jù)),于是P(我們的猜測1 | 他實(shí)際輸入的單詞)可以抽象地記為:P(h1 | D)類似地,對于我們的猜測2,則是 P(h2 | D)。不妨統(tǒng)一記為:P(h | D)運(yùn)用一次貝葉斯公式,我們得到:P(h | D) = P(h) * P(D | h) / P(D)對
14、于不同的具體猜測 h1 h2 h3 . ,P(D) 都是一樣的,所以在比較 P(h1 | D) 和 P(h2 | D) 的時(shí)候我們可以忽略這個(gè)常數(shù)。即我們只需要知道:P(h | D) P(h) * P(D | h) (注:那個(gè)符號的意思是“正比例于”,不是無窮大,注意符號右端是有一個(gè)小缺口的。)這個(gè)式子的抽象含義是:對于給定觀測數(shù)據(jù),一個(gè)猜測是好是壞,取決于“這個(gè)猜測本身獨(dú)立的可能性大小(先驗(yàn)概率,Prior )”和“這個(gè)猜測生成我們觀測到的數(shù)據(jù)的可能性大小”(似然,Likelihood )的乘積。具體到我們的那個(gè) thew 例子上,含義就是,用戶實(shí)際是想輸入 the 的可能性大小取決于 th
15、e 本身在詞匯表中被使用的可能性(頻繁程度)大小(先驗(yàn)概率)和 想打 the 卻打成 thew 的可能性大?。ㄋ迫唬┑某朔e。下面的事情就很簡單了,對于我們猜測為可能的每個(gè)單詞計(jì)算一下 P(h) * P(D | h) 這個(gè)值,然后取最大的,得到的就是最靠譜的猜測。一點(diǎn)注記:Norvig 的拼寫糾正器里面只提取了編輯距離為 2 以內(nèi)的所有已知單詞。這是為了避免去遍歷字典中每個(gè)單詞計(jì)算它們的 P(h) * P(D | h) ,但這種做法為了節(jié)省時(shí)間帶來了一些誤差。但話說回來難道我們?nèi)祟愓娴幕厝ケ闅v每個(gè)可能的單詞來計(jì)算他們的后驗(yàn)概率嗎?不可能。實(shí)際上,根據(jù)認(rèn)知神經(jīng)科學(xué)的觀點(diǎn),我們首先根據(jù)錯(cuò)誤的單詞做一
16、個(gè) bottom-up 的關(guān)聯(lián)提取,提取出有可能是實(shí)際單詞的那些候選單詞,這個(gè)提取過程就是所謂的基于內(nèi)容的提取,可以根據(jù)錯(cuò)誤單詞的一些模式片段提取出有限的一組候選,非??斓乜s小的搜索空間(比如我輸入 explaination ,單詞里面就有充分的信息使得我們的大腦在常數(shù)時(shí)間內(nèi)把可能性 narrow down 到 explanation 這個(gè)單詞上,至于具體是根據(jù)哪些線索如音節(jié)來提取,又是如何在生物神經(jīng)網(wǎng)絡(luò)中實(shí)現(xiàn)這個(gè)提取機(jī)制的,目前還是一個(gè)沒有弄清的領(lǐng)域)。然后,我們對這有限的幾個(gè)猜測做一個(gè) top-down 的預(yù)測,看看到底哪個(gè)對于觀測數(shù)據(jù)(即錯(cuò)誤單詞)的預(yù)測效力最好,而如何衡量預(yù)測效率則就是
17、用貝葉斯公式里面的那個(gè) P(h) * P(D | h) 了雖然我們很可能使用了一些啟發(fā)法來簡化計(jì)算。后面我們還會提到這樣的 bottom-up 的關(guān)聯(lián)提取。3. 模型比較與奧卡姆剃刀3.1 再訪拼寫糾正介紹了貝葉斯拼寫糾正之后,接下來的一個(gè)自然而然的問題就來了:“為什么?”為什么要用貝葉斯公式?為什么貝葉斯公式在這里可以用?我們可以很容易地領(lǐng)會為什么貝葉斯公式用在前面介紹的那個(gè)男生女生長褲裙子的問題里是正確的。但為什么這里?為了回答這個(gè)問題,一個(gè)常見的思路就是想想:非得這樣嗎?因?yàn)槿绻阆氲搅肆硪环N做法并且證明了它也是靠譜的,那么將它與現(xiàn)在這個(gè)一比較,也許就能得出很有價(jià)值的信息。那么對于拼寫糾
18、錯(cuò)問題你能想到其他方案嗎?不管怎樣,一個(gè)最常見的替代方案就是,選擇離 thew 的編輯距離最近的。然而 the 和 thaw 離 thew 的編輯距離都是 1 。這可咋辦捏?你說,不慌,那還是好辦。我們就看到底哪個(gè)更可能被錯(cuò)打?yàn)?thew 就是了。我們注意到字母 e 和字母 w 在鍵盤上離得很緊,無名指一抽筋就不小心多打出一個(gè) w 來,the 就變成 thew 了。而另一方面 thaw 被錯(cuò)打成 thew 的可能性就相對小一點(diǎn),因?yàn)?e 和 a 離得較遠(yuǎn)而且使用的指頭相差一個(gè)指頭(一個(gè)是中指一個(gè)是小指,不像 e 和 w 使用的指頭靠在一塊神經(jīng)科學(xué)的證據(jù)表明緊鄰的身體設(shè)施之間容易串位)。OK,很
19、好,因?yàn)槟悻F(xiàn)在已經(jīng)是在用最大似然方法了,或者直白一點(diǎn),你就是在計(jì)算那個(gè)使得 P(D | h) 最大的 h 。而貝葉斯方法計(jì)算的是什么?是 P(h) * P(D | h) 。多出來了一個(gè) P(h) 。我們剛才說了,這個(gè)多出來的 P(h) 是特定猜測的先驗(yàn)概率。為什么要摻和進(jìn)一個(gè)先驗(yàn)概率?剛才說的那個(gè)最大似然不是挺好么?很雄辯地指出了 the 是更靠譜的猜測。有什么問題呢?既然這樣,我們就從給最大似然找茬開始吧我們假設(shè)兩者的似然程度是一樣或非常相近,這樣不就難以區(qū)分哪個(gè)猜測更靠譜了嗎?比如用戶輸入tlp ,那到底是 top 還是 tip ?(這個(gè)例子不怎么好,因?yàn)?top 和 tip 的詞頻可能仍
20、然是接近的,但一時(shí)想不到好的英文單詞的例子,我們不妨就假設(shè) top 比 tip 常見許多吧,這個(gè)假設(shè)并不影響問題的本質(zhì)。)這個(gè)時(shí)候,當(dāng)最大似然不能作出決定性的判斷時(shí),先驗(yàn)概率就可以插手進(jìn)來給出指示“既然你無法決定,那么我告訴你,一般來說 top 出現(xiàn)的程度要高許多,所以更可能他想打的是 top ”)。以上只是最大似然的一個(gè)問題,即并不能提供決策的全部信息。最大似然還有另一個(gè)問題:即便一個(gè)猜測與數(shù)據(jù)非常符合,也并不代表這個(gè)猜測就是更好的猜測,因?yàn)檫@個(gè)猜測本身的可能性也許就非常低。比如 MacKay 在Information Theory : Inference and Learning Algo
21、rithms里面就舉了一個(gè)很好的例子:-1 3 7 11 你說是等差數(shù)列更有可能呢?還是 -X3 / 11 + 9/11*X2 + 23/11 每項(xiàng)把前項(xiàng)作為 X 帶入后計(jì)算得到的數(shù)列?此外曲線擬合也是,平面上 N 個(gè)點(diǎn)總是可以用 N-1 階多項(xiàng)式來完全擬合,當(dāng) N 個(gè)點(diǎn)近似但不精確共線的時(shí)候,用 N-1 階多項(xiàng)式來擬合能夠精確通過每一個(gè)點(diǎn),然而用直線來做擬合/線性回歸的時(shí)候卻會使得某些點(diǎn)不能位于直線上。你說到底哪個(gè)好呢?多項(xiàng)式?還是直線?一般地說肯定是越低階的多項(xiàng)式越靠譜(當(dāng)然前提是也不能忽視“似然”P(D | h) ,明擺著一個(gè)多項(xiàng)式分布您愣是去拿直線擬合也是不靠譜的,這就是為什么要把它們
22、兩者乘起來考慮。),原因之一就是低階多項(xiàng)式更常見,先驗(yàn)概率( P(h) )較大(原因之二則隱藏在 P(D | h) 里面),這就是為什么我們要用樣條來插值,而不是直接搞一個(gè) N-1 階多項(xiàng)式來通過任意 N 個(gè)點(diǎn)的原因。以上分析當(dāng)中隱含的哲學(xué)是,觀測數(shù)據(jù)總是會有各種各樣的誤差,比如觀測誤差(比如你觀測的時(shí)候一個(gè) MM 經(jīng)過你一不留神,手一抖就是一個(gè)誤差出現(xiàn)了),所以如果過分去尋求能夠完美解釋觀測數(shù)據(jù)的模型,就會落入所謂的數(shù)據(jù)過配(overfitting)的境地,一個(gè)過配的模型試圖連誤差(噪音)都去解釋(而實(shí)際上噪音又是不需要解釋的),顯然就過猶不及了。所以 P(D | h) 大不代表你的 h (
23、猜測)就是更好的 h。還要看 P(h) 是怎樣的。所謂奧卡姆剃刀精神就是說:如果兩個(gè)理論具有相似的解釋力度,那么優(yōu)先選擇那個(gè)更簡單的(往往也正是更平凡的,更少繁復(fù)的,更常見的)。過分匹配的另一個(gè)原因在于當(dāng)觀測的結(jié)果并不是因?yàn)檎`差而顯得“不精確”而是因?yàn)檎鎸?shí)世界中對數(shù)據(jù)的結(jié)果產(chǎn)生貢獻(xiàn)的因素太多太多,跟噪音不同,這些偏差是一些另外的因素集體貢獻(xiàn)的結(jié)果,不是你的模型所能解釋的噪音那是不需要解釋一個(gè)現(xiàn)實(shí)的模型往往只提取出幾個(gè)與結(jié)果相關(guān)度很高,很重要的因素(cause)。這個(gè)時(shí)候觀察數(shù)據(jù)會傾向于圍繞你的有限模型的預(yù)測結(jié)果呈正態(tài)分布,于是你實(shí)際觀察到的結(jié)果就是這個(gè)正態(tài)分布的隨機(jī)取樣,這個(gè)取樣很可能受到其余
24、因素的影響偏離你的模型所預(yù)測的中心,這個(gè)時(shí)候便不能貪心不足地試圖通過改變模型來“完美”匹配數(shù)據(jù),因?yàn)槟切┦菇Y(jié)果偏離你的預(yù)測的貢獻(xiàn)因素不是你這個(gè)有限模型里面含有的因素所能概括的,硬要打腫臉充胖子只能導(dǎo)致不實(shí)際的模型,舉個(gè)教科書例子:身高和體重的實(shí)際關(guān)系近似于一個(gè)二階多項(xiàng)式的關(guān)系,但大家都知道并不是只有身高才會對體重產(chǎn)生影響,物理世界影響體重的因素太多太多了,有人身材高大卻瘦得跟稻草,有人卻是橫長豎不長。但不可否認(rèn)的是總體上來說,那些特殊情況越是特殊就越是稀少,呈圍繞最普遍情況(胖瘦適中)的正態(tài)分布,這個(gè)分布就保證了我們的身高體重相關(guān)模型能夠在大多數(shù)情況下做出靠譜的預(yù)測。但是剛才說了,特例是存在的
25、,就算不是特例,人有胖瘦,密度也有大小,所以完美符合身高體重的某個(gè)假想的二階多項(xiàng)式關(guān)系的人是不存在的,我們又不是歐幾里德幾何世界當(dāng)中的理想多面體,所以,當(dāng)我們對人群隨機(jī)抽取了 N 個(gè)樣本(數(shù)據(jù)點(diǎn))試圖對這 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),你可能會整出一個(gè) N-1 階多項(xiàng)式來設(shè)想身高和體重的關(guān)系是 5 階多項(xiàng)式看看?3.2 模型比較理論(Model Comparasion)與貝葉斯奧卡姆剃刀(B
26、ayesian Occams Razor)實(shí)際上,模型比較就是去比較哪個(gè)模型(猜測)更可能隱藏在觀察數(shù)據(jù)的背后。其基本思想前面已經(jīng)用拼寫糾正的例子來說明了。我們對用戶實(shí)際想輸入的單詞的猜測就是模型,用戶輸錯(cuò)的單詞就是觀測數(shù)據(jù)。我們通過:P(h | D) P(h) * P(D | h)來比較哪個(gè)模型最為靠譜。前面提到,光靠 P(D | h) (即“似然”)是不夠的,有時(shí)候還需要引入 P(h) 這個(gè)先驗(yàn)概率。奧卡姆剃刀就是說 P(h) 較大的模型有較大的優(yōu)勢,而最大似然則是說最符合觀測數(shù)據(jù)的(即 P(D | h) 最大的)最有優(yōu)勢。整個(gè)模型比較就是這兩方力量的拉鋸。我們不妨再舉一個(gè)簡單的例子來說明
27、這一精神:你隨便找枚硬幣,擲一下,觀察一下結(jié)果。好,你觀察到的結(jié)果要么是“正”,要么是“反”(不,不是少林足球那枚硬幣:P ),不妨假設(shè)你觀察到的是“正”?,F(xiàn)在你要去根據(jù)這個(gè)觀測數(shù)據(jù)推斷這枚硬幣擲出“正”的概率是多大。根據(jù)最大似然估計(jì)的精神,我們應(yīng)該猜測這枚硬幣擲出“正”的概率是 1 ,因?yàn)檫@個(gè)才是能最大化 P(D | h) 的那個(gè)猜測。然而每個(gè)人都會大搖其頭很顯然,你隨機(jī)摸出一枚硬幣這枚硬幣居然沒有反面的概率是“不存在的”,我們對一枚隨機(jī)硬幣是否一枚有偏硬幣,偏了多少,是有著一個(gè)先驗(yàn)的認(rèn)識的,這個(gè)認(rèn)識就是絕大多數(shù)硬幣都是基本公平的,偏得越多的硬幣越少見(可以用一個(gè) beta 分布來表達(dá)這一先
28、驗(yàn)概率)。將這個(gè)先驗(yàn)正態(tài)分布 p() (其中 表示硬幣擲出正面的比例,小寫的 p 代表這是概率密度函數(shù))結(jié)合到我們的問題中,我們便不是去最大化 P(D | h) ,而是去最大化 P(D | ) * p() ,顯然 = 1 是不行的,因?yàn)?P(=1) 為 0 ,導(dǎo)致整個(gè)乘積也為 0 。實(shí)際上,只要對這個(gè)式子求一個(gè)導(dǎo)數(shù)就可以得到最值點(diǎn)。以上說的是當(dāng)我們知道先驗(yàn)概率 P(h) 的時(shí)候,光用最大似然是不靠譜的,因?yàn)樽畲笏迫坏牟聹y可能先驗(yàn)概率非常小。然而,有些時(shí)候,我們對于先驗(yàn)概率一無所知,只能假設(shè)每種猜測的先驗(yàn)概率是均等的,這個(gè)時(shí)候就只有用最大似然了。實(shí)際上,統(tǒng)計(jì)學(xué)家和貝葉斯學(xué)家有一個(gè)有趣的爭論,統(tǒng)計(jì)
29、學(xué)家說:我們讓數(shù)據(jù)自己說話。言下之意就是要摒棄先驗(yàn)概率。而貝葉斯支持者則說:數(shù)據(jù)會有各種各樣的偏差,而一個(gè)靠譜的先驗(yàn)概率則可以對這些隨機(jī)噪音做到健壯。事實(shí)證明貝葉斯派勝利了,勝利的關(guān)鍵在于所謂先驗(yàn)概率其實(shí)也是經(jīng)驗(yàn)統(tǒng)計(jì)的結(jié)果,譬如為什么我們會認(rèn)為絕大多數(shù)硬幣是基本公平的?為什么我們認(rèn)為大多數(shù)人的肥胖適中?為什么我們認(rèn)為膚色是種族相關(guān)的,而體重則與種族無關(guān)?先驗(yàn)概率里面的“先驗(yàn)”并不是指先于一切經(jīng)驗(yàn),而是僅指先于我們“當(dāng)前”給出的觀測數(shù)據(jù)而已,在硬幣的例子中先驗(yàn)指的只是先于我們知道投擲的結(jié)果這個(gè)經(jīng)驗(yàn),而并非“先天”。然而,話說回來,有時(shí)候我們必須得承認(rèn),就算是基于以往的經(jīng)驗(yàn),我們手頭的“先驗(yàn)”概率
30、還是均勻分布,這個(gè)時(shí)候就必須依賴用最大似然,我們用前面留下的一個(gè)自然語言二義性問題來說明這一點(diǎn):The girl saw the boy with a telescope.到底是 The girl saw-with-a-telescope the boy 這一語法結(jié)構(gòu),還是 The girl saw the-boy-with-a-telescope 呢?兩種語法結(jié)構(gòu)的常見程度都差不多(你可能會覺得后一種語法結(jié)構(gòu)的常見程度較低,這是事后偏見,你只需想想 The girl saw the boy with a book 就知道了。當(dāng)然,實(shí)際上從大規(guī)模語料統(tǒng)計(jì)結(jié)果來看后一種語法結(jié)構(gòu)的確稍稍不常見一丁
31、點(diǎn),但是絕對不足以解釋我們對第一種結(jié)構(gòu)的強(qiáng)烈傾向)。那么到底為什么呢?我們不妨先來看看 MacKay 在書中舉的一個(gè)漂亮的例子:圖中有多少個(gè)箱子?特別地,那棵書后面是一個(gè)箱子?還是兩個(gè)箱子?還是三個(gè)箱子?還是. 你可能會覺得樹后面肯定是一個(gè)箱子,但為什么不是兩個(gè)呢?如下圖:很簡單,你會說:要是真的有兩個(gè)箱子那才怪了,怎么就那么巧這兩個(gè)箱子剛剛好顏色相同,高度相同呢?用概率論的語言來說,你剛才的話就翻譯為:猜測 h 不成立,因?yàn)?P(D | h) 太?。ㄌ珊希┝?。我們的直覺是:巧合(小概率)事件不會發(fā)生。所以當(dāng)一個(gè)猜測(假設(shè))使得我們的觀測結(jié)果成為小概率事件的時(shí)候,我們就說“才怪呢,哪能那么巧
32、捏?!”現(xiàn)在我們可以回到那個(gè)自然語言二義性的例子,并給出一個(gè)完美的解釋了:如果語法結(jié)構(gòu)是 The girl saw the-boy-with-a-telecope 的話,怎么那個(gè)男孩偏偏手里拿的就是望遠(yuǎn)鏡一個(gè)可以被用來 saw-with 的東東捏?這也忒小概率了吧。他咋就不會拿本書呢?拿什么都好。怎么偏偏就拿了望遠(yuǎn)鏡?所以唯一的解釋是,這個(gè)“巧合”背后肯定有它的必然性,這個(gè)必然性就是,如果我們將語法結(jié)構(gòu)解釋為 The girl saw-with-a-telescope the boy 的話,就跟數(shù)據(jù)完美吻合了既然那個(gè)女孩是用某個(gè)東西去看這個(gè)男孩的,那么這個(gè)東西是一個(gè)望遠(yuǎn)鏡就完全可以解釋了(不再
33、是小概率事件了)。自然語言二義性很常見,譬如上文中的一句話:參見決策與判斷以及Rationality for Mortals第12章:小孩也可以解決貝葉斯問題就有二義性:到底是參見這兩本書的第 12 章,還是僅僅是第二本書的第 12 章呢?如果是這兩本書的第 12 章那就是咄咄怪事了,怎么恰好兩本書都有第 12 章,都是講同一個(gè)問題,更詭異的是,標(biāo)題還相同呢?注意,以上做的是似然估計(jì)(即只看 P(D | h) 的大?。?,不含先驗(yàn)概率。通過這兩個(gè)例子,尤其是那個(gè)樹后面的箱子的例子我們可以看到,似然估計(jì)里面也蘊(yùn)含著奧卡姆剃刀:樹后面的箱子數(shù)目越多,這個(gè)模型就越復(fù)雜。單個(gè)箱子的模型是最簡單的。似然估
34、計(jì)選擇了更簡單的模型。這個(gè)就是所謂的貝葉斯奧卡姆剃刀(Bayesian Occams Razor),因?yàn)檫@個(gè)剃刀工作在貝葉斯公式的似然(P(D | h) )上,而不是模型本身( P(h) )的先驗(yàn)概率上,后者是傳統(tǒng)的奧卡姆剃刀。關(guān)于貝葉斯奧卡姆剃刀我們再來看一個(gè)前面說到的曲線擬合的例子:如果平面上有 N 個(gè)點(diǎn),近似構(gòu)成一條直線,但絕不精確地位于一條直線上。這時(shí)我們既可以用直線來擬合(模型1),也可以用二階多項(xiàng)式(模型2)擬合,也可以用三階多項(xiàng)式(模型3),. ,特別地,用 N-1 階多項(xiàng)式便能夠保證肯定能完美通過 N 個(gè)數(shù)據(jù)點(diǎn)。那么,這些可能的模型之中到底哪個(gè)是最靠譜的呢?前面提到,一個(gè)衡量的
35、依據(jù)是奧卡姆剃刀:越是高階的多項(xiàng)式越是繁復(fù)和不常見。然而,我們其實(shí)并不需要依賴于這個(gè)先驗(yàn)的奧卡姆剃刀,因?yàn)橛腥丝赡軙庌q說:你怎么就能說越高階的多項(xiàng)式越不常見呢?我偏偏覺得所有階多項(xiàng)式都是等可能的。好吧,既然如此那我們不妨就扔掉 P(h) 項(xiàng),看看 P(D | h) 能告訴我們什么。我們注意到越是高階的多項(xiàng)式,它的軌跡彎曲程度越是大,到了八九階簡直就是直上直下,于是我們不僅要問:一個(gè)比如說八階多項(xiàng)式在平面上隨機(jī)生成的一堆 N 個(gè)點(diǎn)偏偏恰好近似構(gòu)成一條直線的概率(即 P(D | h) )有多大?太小太小了。反之,如果背后的模型是一條直線,那么根據(jù)該模型生成一堆近似構(gòu)成直線的點(diǎn)的概率就大得多了。這
36、就是貝葉斯奧卡姆剃刀。這里只是提供一個(gè)關(guān)于貝葉斯奧卡姆剃刀的科普,強(qiáng)調(diào)直觀解釋,更多理論公式請參考 MacKay 的著作 Information Theory : Inference and Learning Algorithms第 28 章。3.3 最小描述長度原則貝葉斯模型比較理論與信息論有一個(gè)有趣的關(guān)聯(lián):P(h | D) P(h) * P(D | h)兩邊求對數(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) 則可以解釋為模型(或者
37、稱“假設(shè)”、“猜測”)h 的編碼長度加上在該模型下數(shù)據(jù) D 的編碼長度。使這個(gè)和最小的模型就是最佳模型。而究竟如何定義一個(gè)模型的編碼長度,以及數(shù)據(jù)在模型下的編碼長度則是一個(gè)問題。更多可參考 Mitchell 的 Machine Learning的 6.6 節(jié),或 Mackay 的 28.3 節(jié))3.4 最優(yōu)貝葉斯推理所謂的推理,分為兩個(gè)過程,第一步是對觀測數(shù)據(jù)建立一個(gè)模型。第二步則是使用這個(gè)模型來推測未知現(xiàn)象發(fā)生的概率。我們前面都是講的對于觀測數(shù)據(jù)給出最靠譜的那個(gè)模型。然而很多時(shí)候,雖然某個(gè)模型是所有模型里面最靠譜的,但是別的模型也并不是一點(diǎn)機(jī)會都沒有。譬如第一個(gè)模型在觀測數(shù)據(jù)下的概率是 0.
38、5 。第二個(gè)模型是 0.4 ,第三個(gè)是 0.1 。如果我們只想知道對于觀測數(shù)據(jù)哪個(gè)模型最可能,那么只要取第一個(gè)就行了,故事到此結(jié)束。然而很多時(shí)候我們建立模型是為了推測未知的事情的發(fā)生概率,這個(gè)時(shí)候,三個(gè)模型對未知的事情發(fā)生的概率都會有自己的預(yù)測,僅僅因?yàn)槟骋粋€(gè)模型概率稍大一點(diǎn)就只聽他一個(gè)人的就太不民主了。所謂的最優(yōu)貝葉斯推理就是將三個(gè)模型對于未知數(shù)據(jù)的預(yù)測結(jié)論加權(quán)平均起來(權(quán)值就是模型相應(yīng)的概率)。顯然,這個(gè)推理是理論上的制高點(diǎn),無法再優(yōu)了,因?yàn)樗呀?jīng)把所有可能性都考慮進(jìn)去了。只不過實(shí)際上我們是基本不會使用這個(gè)框架的,因?yàn)橛?jì)算模型可能非常費(fèi)時(shí)間,二來模型空間可能是連續(xù)的,即有無窮多個(gè)模型(這個(gè)
39、時(shí)候需要計(jì)算模型的概率分布)。結(jié)果還是非常費(fèi)時(shí)間。所以這個(gè)被看作是一個(gè)理論基準(zhǔn)。4. 無處不在的貝葉斯以下我們再舉一些實(shí)際例子來說明貝葉斯方法被運(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ì)請參考吳軍的文章(這里)。分詞問題的描述為:給定一個(gè)句子(字串),如:南京市長江大橋如何對這個(gè)句子進(jìn)行分詞(詞串)才是最靠譜的。例如:1. 南京市/長江大橋2. 南京/市長/江
40、大橋這兩個(gè)分詞,到底哪個(gè)更靠譜呢?我們用貝葉斯公式來形式化地描述這個(gè)問題,令 X 為字串(句子),Y 為詞串(一種特定的分詞假設(shè))。我們就是需要尋找使得 P(Y|X) 最大的 Y ,使用一次貝葉斯可得:P(Y|X) P(Y)*P(X|Y)用自然語言來說就是 這種分詞方式(詞串)的可能性 乘以 這個(gè)詞串生成我們的句子的可能性。我們進(jìn)一步容易看到:可以近似地將 P(X|Y) 看作是恒等于 1 的,因?yàn)槿我饧傧氲囊环N分詞方式之下生成我們的句子總是精準(zhǔn)地生成的(只需把分詞之間的分界符號扔掉即可)。于是,我們就變成了去最大化 P(Y) ,也就是尋找一種分詞使得這個(gè)詞串(句子)的概率最大化。而如何計(jì)算一個(gè)
41、詞串:W1, W2, W3, W4 .的可能性呢?我們知道,根據(jù)聯(lián)合概率的公式展開:P(W1, W2, W3, W4 .) = P(W1) * P(W2|W1) * P(W3|W2, W1) * P(W4|W1,W2,W3) * . 于是我們可以通過一系列的條件概率(右式)的乘積來求整個(gè)聯(lián)合概率。然而不幸的是隨著條件數(shù)目的增加(P(Wn|Wn-1,Wn-2,.,W1) 的條件有 n-1 個(gè)),數(shù)據(jù)稀疏問題也會越來越嚴(yán)重,即便語料庫再大也無法統(tǒng)計(jì)出一個(gè)靠譜的 P(Wn|Wn-1,Wn-2,.,W1) 來。為了緩解這個(gè)問題,計(jì)算機(jī)科學(xué)家們一如既往地使用了“天真”假設(shè):我們假設(shè)句子中一個(gè)詞的出現(xiàn)概率
42、只依賴于它前面的有限的 k 個(gè)詞(k 一般不超過 3,如果只依賴于前面的一個(gè)詞,就是2元語言模型(2-gram),同理有 3-gram 、 4-gram 等),這個(gè)就是所謂的“有限地平線”假設(shè)。雖然這個(gè)假設(shè)很傻很天真,但結(jié)果卻表明它的結(jié)果往往是很好很強(qiáng)大的,后面要提到的樸素貝葉斯方法使用的假設(shè)跟這個(gè)精神上是完全一致的,我們會解釋為什么像這樣一個(gè)天真的假設(shè)能夠得到強(qiáng)大的結(jié)果。目前我們只要知道,有了這個(gè)假設(shè),剛才那個(gè)乘積就可以改寫成: P(W1) * P(W2|W1) * P(W3|W2) * P(W4|W3) . (假設(shè)每個(gè)詞只依賴于它前面的一個(gè)詞)。而統(tǒng)計(jì) P(W2|W1) 就不再受到數(shù)據(jù)稀疏
43、問題的困擾了。對于我們上面提到的例子“南京市長江大橋”,如果按照自左到右的貪婪方法分詞的話,結(jié)果就成了“南京市長/江大橋”。但如果按照貝葉斯分詞的話(假設(shè)使用 3-gram),由于“南京市長”和“江大橋”在語料庫中一起出現(xiàn)的頻率為 0 ,這個(gè)整句的概率便會被判定為 0 。 從而使得“南京市/長江大橋”這一分詞方式勝出。一點(diǎn)注記:有人可能會疑惑,難道我們?nèi)祟愐彩腔谶@些天真的假設(shè)來進(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é)
44、習(xí)的角度來說,特征(feature)就越多,成百上千維度都是可能的。特征一多,好了,高維詛咒就產(chǎn)生了,數(shù)據(jù)就稀疏得要命,不夠用了。而我們?nèi)祟惖挠^察水平顯然比機(jī)器學(xué)習(xí)的觀察水平要更深入一些,為了避免數(shù)據(jù)稀疏我們不斷地發(fā)明各種裝置(最典型就是顯微鏡),來幫助我們直接深入到更深層的事物層面去觀察更本質(zhì)的聯(lián)系,而不是在淺層對表面現(xiàn)象作統(tǒng)計(jì)歸納。舉一個(gè)簡單的例子,通過對大規(guī)模語料庫的統(tǒng)計(jì),機(jī)器學(xué)習(xí)可能會發(fā)現(xiàn)這樣一個(gè)規(guī)律:所有的“他”都是不會穿 bra 的,所有的“她”則都是穿的。然而,作為一個(gè)男人,卻完全無需進(jìn)行任何統(tǒng)計(jì)學(xué)習(xí),因?yàn)樯顚拥囊?guī)律就決定了我們根本不會去穿 bra 。至于機(jī)器學(xué)習(xí)能不能完成后者(
45、像人類那樣的)這個(gè)推理,則是人工智能領(lǐng)域的經(jīng)典問題。至少在那之前,聲稱統(tǒng)計(jì)學(xué)習(xí)方法能夠終結(jié)科學(xué)研究(原文)的說法是純粹外行人說的話。4.2 統(tǒng)計(jì)機(jī)器翻譯統(tǒng)計(jì)機(jī)器翻譯因?yàn)槠浜唵?,自動(無需手動添加規(guī)則),迅速成為了機(jī)器翻譯的事實(shí)標(biāo)準(zhǔn)。而統(tǒng)計(jì)機(jī)器翻譯的核心算法也是使用的貝葉斯方法。問題是什么?統(tǒng)計(jì)機(jī)器翻譯的問題可以描述為:給定一個(gè)句子 e ,它的可能的外文翻譯 f 中哪個(gè)是最靠譜的。即我們需要計(jì)算:P(f|e) 。一旦出現(xiàn)條件概率貝葉斯總是挺身而出:P(f|e) P(f) * P(e|f)這個(gè)式子的右端很容易解釋:那些先驗(yàn)概率較高,并且更可能生成句子 e 的外文句子 f 將會勝出。我們只需簡單統(tǒng)計(jì)
46、(結(jié)合上面提到的 N-Gram 語言模型)就可以統(tǒng)計(jì)任意一個(gè)外文句子 f 的出現(xiàn)概率。然而 P(e|f) 卻不是那么好求的,給定一個(gè)候選的外文局子 f ,它生成(或?qū)?yīng))句子 e 的概率是多大呢?我們需要定義什么叫 “對應(yīng)”,這里需要用到一個(gè)分詞對齊的平行語料庫,有興趣的可以參考 Foundations of Statistical Natural Language Processing第 13 章,這里摘選其中的一個(gè)例子:假設(shè) e 為:John loves Mary 。我們需要考察的首選 f 是:Jean aime Marie (法文)。我們需要求出 P(e|f) 是多大,為此我們考慮 e
47、和 f 有多少種對齊的可能性,如:John (Jean) loves (aime) Marie (Mary) 就是其中的一種(最靠譜的)對齊,為什么要對齊,是因?yàn)橐坏R了之后,就可以容易地計(jì)算在這個(gè)對齊之下的 P(e|f) 是多大,只需計(jì)算:P(John|Jean) * P(loves|aime) * P(Marie|Mary)即可。然后我們遍歷所有的對齊方式,并將每種對齊方式之下的翻譯概率 求和。便可以獲得整個(gè)的 P(e|f) 是多大。一點(diǎn)注記:還是那個(gè)問題:難道我們?nèi)祟愓娴氖怯眠@種方式進(jìn)行翻譯的?highly unlikely 。這種計(jì)算復(fù)雜性非常高的東西連三位數(shù)乘法都搞不定的我們才不會
48、笨到去使用呢。根據(jù)認(rèn)知神經(jīng)科學(xué)的認(rèn)識,很可能我們是先從句子到語義(一個(gè)逐層往上(bottom-up)抽象的 folding 過程),然后從語義根據(jù)另一門語言的語法展開為另一門語言(一個(gè)逐層往下(top-down)的具體化 unfolding 過程)。如何可計(jì)算地實(shí)現(xiàn)這個(gè)過程,目前仍然是個(gè)難題。(我們看到很多地方都有 bottom-up/top-down 這樣一個(gè)對稱的過程,實(shí)際上有人猜測這正是生物神經(jīng)網(wǎng)絡(luò)原則上的運(yùn)作方式,對視覺神經(jīng)系統(tǒng)的研究尤其證明了這一點(diǎn),Hawkins 在 On Intelligence 里面提出了一種 HTM (Hierarchical Temporal Memory)
49、模型正是使用了這個(gè)原則。)4.3 貝葉斯圖像識別,Analysis by Synthesis貝葉斯方法是一個(gè)非常 general 的推理框架。其核心理念可以描述成:Analysis by Synthesis (通過合成來分析)。06 年的認(rèn)知科學(xué)新進(jìn)展上有一篇 paper 就是講用貝葉斯推理來解釋視覺識別的,一圖勝千言,下圖就是摘自這篇 paper :首先是視覺系統(tǒng)提取圖形的邊角特征,然后使用這些特征自底向上地激活高層的抽象概念(比如是 E 還是 F 還是等號),然后使用一個(gè)自頂向下的驗(yàn)證來比較到底哪個(gè)概念最佳地解釋了觀察到的圖像。4.4 EM 算法與基于模型的聚類聚類是一種無指導(dǎo)的機(jī)器學(xué)習(xí)問
50、題,問題描述:給你一堆數(shù)據(jù)點(diǎn),讓你將它們最靠譜地分成一堆一堆的。聚類算法很多,不同的算法適應(yīng)于不同的問題,這里僅介紹一個(gè)基于模型的聚類,該聚類算法對數(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)。我們的聚類算法就是需要根據(jù)給出來的那些點(diǎn),算出這兩個(gè)正態(tài)分布的核心在什么位置,以及分布的參數(shù)是多少。這很明顯又是一個(gè)貝葉斯問題,但這次不同的是,答案是連續(xù)的且有無窮多種可能性,更糟的是,只有當(dāng)我們知道了哪些點(diǎn)屬于同一個(gè)正態(tài)
51、分布圈的時(shí)候才能夠?qū)@個(gè)分布的參數(shù)作出靠譜的預(yù)測,現(xiàn)在兩堆點(diǎn)混在一塊我們又不知道哪些點(diǎn)屬于第一個(gè)正態(tài)分布,哪些屬于第二個(gè)。反過來,只有當(dāng)我們對分布的參數(shù)作出了靠譜的預(yù)測時(shí)候,才能知道到底哪些點(diǎn)屬于第一個(gè)分布,那些點(diǎn)屬于第二個(gè)分布。這就成了一個(gè)先有雞還是先有蛋的問題了。為了解決這個(gè)循環(huán)依賴,總有一方要先打破僵局,說,不管了,我先隨便整一個(gè)值出來,看你怎么變,然后我再根據(jù)你的變化調(diào)整我的變化,然后如此迭代著不斷互相推導(dǎo),最終收斂到一個(gè)解。這就是 EM 算法。EM 的意思是“Expectation-Maximazation”,在這個(gè)聚類問題里面,我們是先隨便猜一下這兩個(gè)正態(tài)分布的參數(shù):如核心在什么地
52、方,方差是多少。然后計(jì)算出每個(gè)數(shù)據(jù)點(diǎn)更可能屬于第一個(gè)還是第二個(gè)正態(tài)分布圈,這個(gè)是屬于 Expectation 一步。有了每個(gè)數(shù)據(jù)點(diǎn)的歸屬,我們就可以根據(jù)屬于第一個(gè)分布的數(shù)據(jù)點(diǎn)來重新評估第一個(gè)分布的參數(shù)(從蛋再回到雞),這個(gè)是 Maximazation 。如此往復(fù),直到參數(shù)基本不再發(fā)生變化為止。這個(gè)迭代收斂過程中的貝葉斯方法在第二步,根據(jù)數(shù)據(jù)點(diǎn)求分布的參數(shù)上面。4.5 最大似然與最小二乘學(xué)過線性代數(shù)的大概都知道經(jīng)典的最小二乘方法來做線性回歸。問題描述是:給定平面上 N 個(gè)點(diǎn),(這里不妨假設(shè)我們想用一條直線來擬合這些點(diǎn)回歸可以看作是擬合的特例,即允許誤差的擬合),找出一條最佳描述了這些點(diǎn)的直線。一
53、個(gè)接踵而來的問題就是,我們?nèi)绾味x最佳?我們設(shè)每個(gè)點(diǎn)的坐標(biāo)為 (Xi, Yi) 。如果直線為 y = f(x) 。那么 (Xi, Yi) 跟直線對這個(gè)點(diǎn)的“預(yù)測”:(Xi, f(Xi) 就相差了一個(gè) Yi = |Yi f(Xi)| 。最小二乘就是說尋找直線使得 (Y1)2 + (Y2)2 + . (即誤差的平方和)最小,至于為什么是誤差的平方和而不是誤差的絕對值和,統(tǒng)計(jì)學(xué)上也沒有什么好的解釋。然而貝葉斯方法卻能對此提供一個(gè)完美的解釋。我們假設(shè)直線對于坐標(biāo) Xi 給出的預(yù)測 f(Xi) 是最靠譜的預(yù)測,所有縱坐標(biāo)偏離 f(Xi) 的那些數(shù)據(jù)點(diǎn)都含有噪音,是噪音使得它們偏離了完美的一條直線,一個(gè)合
54、理的假設(shè)就是偏離路線越遠(yuǎn)的概率越小,具體小多少,可以用一個(gè)正態(tài)分布曲線來模擬,這個(gè)分布曲線以直線對 Xi 給出的預(yù)測 f(Xi) 為中心,實(shí)際縱坐標(biāo)為 Yi 的點(diǎn) (Xi, Yi) 發(fā)生的概率就正比于 EXP-(Yi)2。(EXP(.) 代表以常數(shù) e 為底的多少次方)。現(xiàn)在我們回到問題的貝葉斯方面,我們要想最大化的后驗(yàn)概率是:P(h|D) P(h) * P(D|h)又見貝葉斯!這里 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
55、(D|h) 這一項(xiàng),這一項(xiàng)是指這條直線生成這些數(shù)據(jù)點(diǎn)的概率,剛才說過了,生成數(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è)概率乘起來。于是生成 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è)很特別的方法,所以值
56、得介紹一下。我們用樸素貝葉斯在垃圾郵件過濾中的應(yīng)用來舉例說明。5.1 貝葉斯垃圾郵件過濾器問題是什么?問題是,給定一封郵件,判定它是否屬于垃圾郵件。按照先例,我們還是用 D 來表示這封郵件,注意 D 由 N 個(gè)單詞組成。我們用 h+ 來表示垃圾郵件,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)概率都是很容易求出來的,只需要計(jì)算一個(gè)郵件庫里面垃圾郵件和正常郵件的比例就行了。然而 P(D|h+) 卻不容易求,因?yàn)?D 里面含有
57、 N 個(gè)單詞 d1, d2, d3, . ,所以P(D|h+) = P(d1,d2,.,dn|h+) 。我們又一次遇到了數(shù)據(jù)稀疏性,為什么這么說呢?P(d1,d2,.,dn|h+) 就是說在垃圾郵件當(dāng)中出現(xiàn)跟我們目前這封郵件一模一樣的一封郵件的概率是多大!開玩笑,每封郵件都是不同的,世界上有無窮多封郵件。瞧,這就是數(shù)據(jù)稀疏性,因?yàn)榭梢钥隙ǖ卣f,你收集的訓(xùn)練數(shù)據(jù)庫不管里面含了多少封郵件,也不可能找出一封跟目前這封一模一樣的。結(jié)果呢?我們又該如何來計(jì)算 P(d1,d2,.,dn|h+) 呢?我們將 P(d1,d2,.,dn|h+) 擴(kuò)展為: P(d1|h+) * P(d2|d1, h+) * P(
58、d3|d2,d1, h+) * . 。熟悉這個(gè)式子嗎?這里我們會使用一個(gè)更激進(jìn)的假設(shè),我們假設(shè) di 與 di-1 是完全條件無關(guān)的,于是式子就簡化為 P(d1|h+) * P(d2|h+) * P(d3|h+) * . 。這個(gè)就是所謂的條件獨(dú)立假設(shè),也正是樸素貝葉斯方法的樸素之處。而計(jì)算 P(d1|h+) * P(d2|h+) * P(d3|h+) * . 就太簡單了,只要統(tǒng)計(jì) di 這個(gè)單詞在垃圾郵件中出現(xiàn)的頻率即可。關(guān)于貝葉斯垃圾郵件過濾更多的內(nèi)容可以參考這個(gè)條目,注意其中提到的其他資料。一點(diǎn)注記:這里,為什么有這個(gè)數(shù)據(jù)稀疏問題,還是因?yàn)榻y(tǒng)計(jì)學(xué)習(xí)方法工作在淺層面,世界上的單詞就算不再變多也是非常之多的,單詞之間組成的句
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國橡膠正壓風(fēng)筒市場調(diào)查研究報(bào)告
- 2025年中國易拉門市場調(diào)查研究報(bào)告
- 2025年中國數(shù)字電話機(jī)市場調(diào)查研究報(bào)告
- 2025年中國開叉釘機(jī)市場調(diào)查研究報(bào)告
- 三方聯(lián)營合同協(xié)議
- 2025年中國啞膜罩光油市場調(diào)查研究報(bào)告
- 工作服定做合同協(xié)議
- 夫妻離婚財(cái)產(chǎn)協(xié)議合同
- 短期活動用人合同協(xié)議
- 香梨售賣合同協(xié)議
- 中小學(xué)校保安服務(wù)方案(技術(shù)方案)
- 蘇教版高中數(shù)學(xué)必修第一冊第1章1.1第2課時(shí)集合的表示【授課課件】
- 2024年上海市公安機(jī)關(guān)文職輔警、公安機(jī)關(guān)勤務(wù)輔警、檢察系統(tǒng)輔助文員招聘筆試參考題庫含答案解析
- 2024年四川省南充市中考生物試卷真題(含官方答案)
- 勞動教育智慧樹知到期末考試答案章節(jié)答案2024年華中師范大學(xué)
- 成人高尿酸血癥與痛風(fēng)食養(yǎng)指南(2024年版)
- 2024年首都機(jī)場集團(tuán)招聘筆試參考題庫附帶答案詳解
- 2023年山東省專升本考試高等數(shù)學(xué)Ⅲ試題和答案
- 抗血栓藥物臨床應(yīng)用與案例分析課件
- 吉林省地方教材家鄉(xiāng)小學(xué)二年級下冊家鄉(xiāng)教案
- 兒童長期臥床的護(hù)理
評論
0/150
提交評論