1. 程式人生 > >貝葉斯思想(二)

貝葉斯思想(二)

再訪拼寫糾正
介紹了貝葉斯拼寫糾正之後,接下來的一個自然而然的問題就來了:“為什麼?”為什麼要用貝葉斯公式?為什麼貝葉斯公式在這裡可以用?我們可以很容易地領會為什麼貝葉斯公式用在前面介紹的那個男生女生長褲裙子的問題裡是正確的。但為什麼這裡?

為了回答這個問題,一個常見的思路就是想想:非得這樣嗎?因為如果你想到了另一種做法並且證明了它也是靠譜的,那麼將它與現在這個一比較,也許就能得出很有價值的資訊。那麼對於拼寫糾錯問題你能想到其他方案嗎?

不管怎樣,一個最常見的替代方案就是,選擇離 thew 的編輯距離最近的。然而 the 和 thaw 離 thew 的編輯距離都是 1 。這可咋辦捏?你說,不慌,那還是好辦。我們就看到底哪個更可能被錯打為 thew 就是了。我們注意到字母 e 和字母 w 在鍵盤上離得很緊,無名指一抽筋就不小心多打出一個 w 來,the 就變成 thew 了。而另一方面 thaw 被錯打成 thew 的可能性就相對小一點,因為 e 和 a 離得較遠而且使用的指頭相差一個指頭(一個是中指一個是小指,不像 e 和 w 使用的指頭靠在一塊——神經科學的證據表明緊鄰的身體設施之間容易串位)。OK,很好,因為你現在已經是在用最大似然方法了,或者直白一點,你就是在計算那個使得 P(D | h) 最大的 h 。

而貝葉斯方法計算的是什麼?是 P(h) * P(D | h) 。多出來了一個 P(h) 。我們剛才說了,這個多出來的 P(h) 是特定猜測的先驗概率。為什麼要摻和進一個先驗概率?剛才說的那個最大似然不是挺好麼?很雄辯地指出了 the 是更靠譜的猜測。有什麼問題呢?既然這樣,我們就從給最大似然找茬開始吧——我們假設兩者的似然程度是一樣或非常相近,這樣不就難以區分哪個猜測更靠譜了嗎?比如使用者輸入tlp ,那到底是 top 還是 tip ?(這個例子不怎麼好,因為 top 和 tip 的詞頻可能仍然是接近的,但一時想不到好的英文單詞的例子,我們不妨就假設 top 比 tip 常見許多吧,這個假設並不影響問題的本質。)這個時候,當最大似然不能作出決定性的判斷時,先驗概率就可以插手進來給出指示——“既然你無法決定,那麼我告訴你,一般來說 top 出現的程度要高許多,所以更可能他想打的是 top ”)。

以上只是最大似然的一個問題,即並不能提供決策的全部資訊。