最大熵模型

不要把所有信息放到一個籃子裏,降低風險。

知道各種各樣但又不完全確定的信息,用一個統一的模型將這些信息綜合起來。——將風險降到最小,保留全部的不確定性,讓熵最大。

對一個隨機事件概率分佈進行預測時,預測應滿足全部已知條件,而對未知情況不做任何主觀假設。在這種情況下,概率分佈最均勻,預測風險最小。因爲這時概率分佈的信息熵最大,這種模型叫“最大熵模型”。

最大熵模型應用於:計算量不太大的NLP問題,如詞性標註,句法分析。

 

拼音轉漢字的例子,我們已知兩種信息,第一,根據語言模型,wang-xiao-bo 可以被轉換成王曉波和王小波;第二,根據主題,王小波是作家,《黃金時代》的作者等等,而王曉波是臺灣研究兩岸關係的學者。因此,我們就可以建立一個最大熵模型,同時滿足這兩種信息。現在的問題是,這樣一個模型是否存在。匈牙利著名數學家、信息論最高獎香農獎得主希薩(Csiszar)證明,對任何一組不自相矛盾的信息,這個最大熵模型不僅存在,而且是唯一的。而且它們都有同一個非常簡單的形式 -- 指數函數。下面公式是根據上下文(前兩個詞)和主題預測下一個詞的最大熵模型,其中 w3 是要預測的詞(王曉波或者王小波)w1 和 w2 是它的前兩個字(比如說它們分別是“出版”,和“”),也就是其上下文的一個大致估計,subject 表示主題。



我們看到,在上面的公式中,有幾個參數 lambda 和 Z ,他們需要通過觀測數據訓練出來。

最大熵模型在形式上是最漂亮的統計模型,而在實現上是最複雜的模型之一

 

最大熵模型的訓練:GIS算法和其他

假定搜索的排序需要考慮20種特徵(x1,x2...x20),需要排序的網頁爲d,這些特徵相互獨立,則最大熵模型爲:

歸一化因子:

這模型裏的很多參數需要通過訓練得到。
 
 

一個最大熵模型可以有效地把各種信息綜合在一起(無偏見地對待不確定性),而且具有指數函數的形式,下面模型的訓練就要確定這個指數函數的各個參數。最原始的最大熵模型的訓練方法是一種稱爲通用迭代算法 GIS(generalized iterative scaling) 的迭代算法,由 Darroch 和 Ratcliff 在七十年代提出,大致可以概括爲以下幾個步驟:

1. 假定第零次迭代的初始模型爲等概率的均勻分佈。
2. 用第 N 次迭代的模型來估算每種信息特徵在訓練數據中的分佈,如果超過了實際的,就把相應的模型參數變小;否則,將它們便大。
3. 重複步驟 2 直到收斂。

Darroch 和 Ratcliff沒有能對這種算法的物理含義進行很好地解釋,後來是由Csiszar解釋清楚的,因此,人們在談到這個算法時,總是同時引用 Darroch 和Ratcliff 以及希薩的兩篇論文。GIS 算法每次迭代的時間都很長,需要迭代很多次才能收斂,而且不太穩定,即使在 64 位計算機上都會出現溢出。因此,在實際應用中很少有人真正使用,大家只是通過它來了解最大熵模型的算法。

八十年代,Della Pietra在IBM對GIS算法進行了兩方面的改進,提出了改進迭代算法IIS(improved iterative scaling)。這使得最大熵模型的訓練時間縮短了一到兩個數量級。這樣最大熵模型纔有可能變得實用。即使如此,在當時也只有 IBM 有條件是用最大熵模型。

由於最大熵模型在數學上十分完美,對科學家們有很大的誘惑力,因此不少研究者試圖把自己的問題用一個類似最大熵的近似模型去套。誰知這一近似,最大熵模型就變得不完美了,結果可想而知,比打補丁的湊合的方法也好不了多少。於是,不少熱心人又放棄了這種方法。第一個在實際信息處理應用中驗證了最大熵模型的優勢的,是原IBM現微軟的研究員Adwait Ratnaparkhi。Ratnaparkhi的聰明之處在於他沒有對最大熵模型進行近似,而是找到了幾個最適合用最大熵模型、而計算量相對不太大的自然語言處理問題,比如詞性標註和句法分析。拉納帕提成功地將上下文信息、詞性(名詞、動詞和形容詞等)、句子成分(主謂賓)通過最大熵模型結合起來,做出了當時世界上最好的詞性標識系統和句法分析器。

http://blog.sina.com.cn/s/blog_4d93258901008a7l.html

總之:形式上 簡單完美;效果上 滿足各種信息源限制條件同時保證平滑;但是計算量巨大。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章