最大熵模型:读书笔记
??????????????????????????? ????? 胡江堂,北京大學(xué)軟件學(xué)院
1. 物理學(xué)的熵
2. 信息論的熵
3. 熵和主觀概率(一個(gè)簡(jiǎn)單注釋
4. 熵的性質(zhì)
4.1. 當(dāng)所有概率相等時(shí),熵取得最大值
4.2. 小概率事件發(fā)生時(shí)攜帶的信息量比大概率事件發(fā)生時(shí)攜帶的信息量多
5. 最大熵原理:直覺(jué)討論
6. 最大熵原理:一個(gè)手工例子
7. 最大熵原理:正式表述
8. 最大熵模型的訓(xùn)練:GIS算法
9. 最大熵模型:金融領(lǐng)域內(nèi)的應(yīng)用
參考文獻(xiàn)
這篇讀書(shū)筆記主要寫(xiě)了對(duì)熵的理解、對(duì)最大熵原則的理解,還有一個(gè)手工計(jì)算的例子。在處理一般化的最大熵模型時(shí),我采用了我偏愛(ài)的連續(xù)隨機(jī)變量形式,而不是一般有助于計(jì)算機(jī)理解的離散形式。連續(xù)而非離散的處理方式的一個(gè)好處就是,它能非常方便地推出最大熵模型的解是一個(gè)指數(shù)形式。如果使用離散形式,一樣的結(jié)論,那符號(hào)就看著復(fù)雜多了。
所有的東西都來(lái)自篇末的參考資料。
1. 物理學(xué)的熵
熵是一個(gè)物理學(xué)概念,它是描述事物無(wú)序性的參數(shù),熵越大則無(wú)序性越強(qiáng)。從宏觀方面講(根據(jù)熱力學(xué)定律),一個(gè)體系的熵等于其可逆過(guò)程吸收或耗散的熱量除以它的絕對(duì)溫度;從微觀講,熵是大量微觀粒子的位置和速度的分布概率的函數(shù)。自然界的一個(gè)基本規(guī)律就是熵遞增原理,即,一個(gè)孤立系統(tǒng)的熵,自發(fā)性地趨于極大,隨著熵的增加,有序狀態(tài)逐步變?yōu)榛煦鐮顟B(tài),不可能自發(fā)地產(chǎn)生新的有序結(jié)構(gòu),這意味著自然界越變?cè)綗o(wú)序。
2. 信息論的熵
在物理學(xué)中,熵是描述客觀事物無(wú)序性的參數(shù)。信息論的開(kāi)創(chuàng)者香農(nóng)認(rèn)為,信息(知識(shí))是人們對(duì)事物了解的不確定性的消除或減少。他把不確定的程度稱(chēng)為信息熵。假設(shè)每種可能的狀態(tài)都有概率,我們用關(guān)于被占據(jù)狀態(tài)的未知信息來(lái)量化不確定性,這個(gè)信息熵即為:
其中是以2為底的對(duì)數(shù),所以這個(gè)信息用位衡量。前面說(shuō)過(guò),在物理學(xué)的背景下,這個(gè)不確定性被稱(chēng)為熵(在通訊系統(tǒng)中,關(guān)于傳輸?shù)膶?shí)際信息的不確定性也被稱(chēng)為數(shù)據(jù)源的熵)。
擴(kuò)展到連續(xù)情形。假設(shè)連續(xù)變量的概率密度函數(shù)是,與離散隨機(jī)變量的熵的定義類(lèi)似,信息熵的連續(xù)定義為:
上式就是我們定義的隨機(jī)變量的微分熵。當(dāng)被解釋為一個(gè)隨機(jī)連續(xù)向量時(shí),就是的聯(lián)合概率密度函數(shù)。
3. 熵和主觀概率(一個(gè)簡(jiǎn)單注釋)
因?yàn)殪赜酶怕时硎?#xff0c;所以這涉及到主觀概率。概率用于處理知識(shí)的缺乏(概率值為1表明對(duì)知識(shí)的完全掌握,這就不需要概率了),而一個(gè)人可能比另一個(gè)人有著更多的知識(shí),所以?xún)蓚€(gè)觀察者可能會(huì)使用不同的概率分布,也就是說(shuō),概率(以及所有基于概率的物理量)都是主觀的。在現(xiàn)代的主流概率論教材中,都采用這種主觀概率的處理方法。
4. 熵的性質(zhì)
4.1. 當(dāng)所有概率相等時(shí),熵取得最大值
上面關(guān)于熵的公式有一個(gè)性質(zhì):假設(shè)可能狀態(tài)的數(shù)量有限,當(dāng)所有概率相等時(shí),熵取得最大值。證明如下:
在只有兩個(gè)狀態(tài)的例子中,要使熵最大,每個(gè)狀態(tài)發(fā)生的概率都是1/2,如下圖所示:
4.2. 小概率事件發(fā)生時(shí)攜帶的信息量比大概率事件發(fā)生時(shí)攜帶的信息量多
證明略,可以簡(jiǎn)要說(shuō)明一下,也挺直觀的。如果事件發(fā)生的概率為1,在這種情況下,事件發(fā)生就沒(méi)有什么“驚奇”了,并且不傳達(dá)任何“信息”,因?yàn)槲覀円呀?jīng)知道這“信息”是什么,沒(méi)有任何的“不確定”;反之,如果事件發(fā)生的概率很小,這就有更大的“驚奇”和有“信息”了。這里,“不確定”、“驚奇”和“信息”是相關(guān)的,信息量與事件發(fā)生的概率成反比。
5. 最大熵原理:直覺(jué)討論
最大熵原理是根據(jù)樣本信息對(duì)某個(gè)未知分布做出推斷的一種方法。日常生活中,很多事情的發(fā)生表現(xiàn)出一定的隨機(jī)性,試驗(yàn)的結(jié)果往往是不確定的,而且也不知道這個(gè)隨機(jī)現(xiàn)象所服從的概率分布,所有的只有一些試驗(yàn)樣本或樣本特征,統(tǒng)計(jì)學(xué)常常關(guān)心的一個(gè)問(wèn)題,在這種情況下如何對(duì)分布作出一個(gè)合理的推斷?最大熵采取的原則就是:保留全部的不確定性,將風(fēng)險(xiǎn)降到最小。在金融理論中,一個(gè)類(lèi)似的教訓(xùn)是,為了降低風(fēng)險(xiǎn),投資應(yīng)該多樣化,不要把所有的雞蛋都放在一個(gè)籃子里。
吳軍(2006)舉了一個(gè)例子。對(duì)一個(gè)均勻的骰子,問(wèn)它每個(gè)面朝上的概率分別是多少。所有人都會(huì)說(shuō)是1/6。這種“猜測(cè)”當(dāng)然是對(duì)的,因?yàn)閷?duì)這個(gè)“一無(wú)所知”的色子,假定它每一個(gè)朝上概率均等是最安全的做法,你不應(yīng)該假設(shè)它被做了手腳。從信息論的角度講,就是保留了最大的不確定性,讓熵達(dá)到最大(從投資的角度來(lái)看,這就是風(fēng)險(xiǎn)最小的做法)。但是,如果這個(gè)骰子被灌過(guò)鉛,已知四點(diǎn)朝上的概率是1/3,在這種情況下,每個(gè)面朝上的概率是多少?當(dāng)然,根據(jù)簡(jiǎn)單的條件概率計(jì)算,除去四點(diǎn)的概率是 1/3外,其余的概率都是 2/15。也就是說(shuō),除已知的條件(四點(diǎn)概率為 1/3)必須滿(mǎn)足外,對(duì)其它各點(diǎn)的概率,我們?nèi)匀粺o(wú)從知道,也只好認(rèn)為它們相等。這種基于直覺(jué)的猜測(cè)之所以準(zhǔn)確,是因?yàn)樗『梅狭俗畲箪卦怼?
回到物理學(xué)例子中。在涉及物理系統(tǒng)的情形中,一般要確定該系統(tǒng)可以存在的多種狀態(tài),需要了解約束下的所有參數(shù)。比如能量、電荷和其他與每個(gè)狀態(tài)相關(guān)的物理量都假設(shè)為已知。為了完成這個(gè)任務(wù)常常需要量子力學(xué)。我們不假設(shè)在這個(gè)步驟系統(tǒng)處于特定狀態(tài);事實(shí)上我們假定我們不知道也不可能知道這一點(diǎn),所以我們反而可以處理被占據(jù)的每個(gè)狀態(tài)的概率。這樣把概率當(dāng)作應(yīng)對(duì)知識(shí)缺乏的一種方法。我們很自然地想避免假定了比我們實(shí)際有的更多的知識(shí),最大熵原理就是完成這個(gè)的方法。
這里可以總結(jié)出最大熵對(duì)待已知事物和未知事物的原則:承認(rèn)已知事物(知識(shí));對(duì)未知事物不做任何假設(shè),沒(méi)有任何偏見(jiàn)。最大熵原理指出,當(dāng)我們需要對(duì)一個(gè)隨機(jī)事件的概率分布進(jìn)行預(yù)測(cè)時(shí),我們的預(yù)測(cè)應(yīng)當(dāng)滿(mǎn)足全部已知的條件,而對(duì)未知的情況不要做任何主觀假設(shè)(不做主觀假設(shè),這點(diǎn)很重要。)在這種情況下,概率分布最均勻,預(yù)測(cè)的風(fēng)險(xiǎn)最小。因?yàn)檫@時(shí)概率分布的信息熵最大,所以人們稱(chēng)這種模型叫“最大熵模型”。我們常說(shuō),不要把所有的雞蛋放在一個(gè)籃子里,其實(shí)就是最大熵原理的一個(gè)樸素的說(shuō)法,因?yàn)楫?dāng)我們遇到不確定性時(shí),就要保留各種可能性。
6. 最大熵原理:一個(gè)手工例子
舉個(gè)例子,一個(gè)快餐店提供3種食品:漢堡(B)、雞肉(C)、魚(yú)(F)。價(jià)格分別是1元、2元、3元。已知人們?cè)谶@家店的平均消費(fèi)是1.75元,求顧客購(gòu)買(mǎi)這3種食品的概率。如果你假設(shè)一半人買(mǎi)魚(yú)另一半人買(mǎi)雞肉,那么根據(jù)熵公式,這不確定性就是1位(熵等于1)。但是這個(gè)假設(shè)很不合適,因?yàn)樗^(guò)了你所知道的事情。我們已知的信息是:
以及關(guān)于對(duì)概率分布的不確定性度量,熵:
對(duì)前兩個(gè)約束,兩個(gè)未知概率可以由第三個(gè)量來(lái)表示,可以得到:
把上式代入熵的表達(dá)式中,熵就可以用單個(gè)概率來(lái)表示:
對(duì)這個(gè)單變量?jī)?yōu)化問(wèn)題,很容易求出時(shí)熵最大,有,和。
總結(jié)一下。以上,我們根據(jù)未知的概率分布表示了約束條件,又用這些約束條件消去了兩個(gè)變量,用剩下的變量表示熵,最后求出了熵最大時(shí)剩余變量的值,結(jié)果就求出了一個(gè)符合約束條件的概率分布,它有最大不確定性,我們?cè)诟怕使烙?jì)中沒(méi)有引入任何偏差。
7. 最大熵原理:正式表述
假設(shè)有一個(gè)隨機(jī)系統(tǒng),已知一組狀態(tài),但不知道其概率,而且我們知道這些狀態(tài)的概率分布的一些限制條件。這些限制條件或者是已知一定的總體平均值,或者是它們的一些界限。在給定關(guān)于模型的先驗(yàn)知識(shí)的條件下,問(wèn)題是選擇一個(gè)在某種意義下最佳的概率模型。Jaynes(1957)提出了一個(gè)最大熵原則:當(dāng)根據(jù)不完整的信息作為依據(jù)進(jìn)行推斷時(shí),應(yīng)該由滿(mǎn)足分布限制條件的具有最大熵的概率分布推得。也就是說(shuō),熵的概念在概率分布空間定義一種度量,使得具有較高熵的分布比其它的分布具有更大的值。顯然,“最大熵問(wèn)題”是一個(gè)帶約束的最優(yōu)化問(wèn)題。
為方便敘述,考慮最大微分熵
對(duì)所有隨機(jī)變量的概率密度函數(shù),滿(mǎn)足以下約束條件:
其中,是的一個(gè)函數(shù)。約束1和約束2描述的是概率密度函數(shù)的基本屬性,約束3定義變量的矩,它隨函數(shù)的表達(dá)式不同而發(fā)生變化,它綜合了隨機(jī)變量的所有可用的先驗(yàn)知識(shí)。為了解這個(gè)約束最優(yōu)化問(wèn)題,利用拉格朗日乘子法,目標(biāo)函數(shù)為:
其中, 是拉格朗日乘子。對(duì)被積函數(shù)求的微分,并令其為0,有:
解得:
我們看到這個(gè)概率密度函數(shù)具有指數(shù)形式。匈牙利數(shù)學(xué)家Csiszar曾經(jīng)證明,對(duì)任何一組不自相矛盾的信息,最大熵模型不僅存在,而且是唯一的。而且它們都有同一個(gè)非常簡(jiǎn)單的形式 -- 指數(shù)函數(shù)。我們還可以得到,在所有零均值隨機(jī)向量可達(dá)到的微分熵中,多元正態(tài)分布具有最大的微分熵。最大熵的解,同時(shí)是最吻合樣本數(shù)據(jù)分布的解。
8. 最大熵模型的訓(xùn)練:GIS算法和其他
上節(jié)我們得到,一個(gè)最大熵模型可以有效地把各種信息綜合在一起(無(wú)偏見(jiàn)地對(duì)待不確定性),而且具有指數(shù)函數(shù)的形式,下面模型的訓(xùn)練就要確定這個(gè)指數(shù)函數(shù)的各個(gè)參數(shù)。最原始的最大熵模型的訓(xùn)練方法是一種稱(chēng)為通用迭代算法 GIS(generalized iterative scaling) 的迭代算法,由 Darroch 和 Ratcliff 在七十年代提出,大致可以概括為以下幾個(gè)步驟:
1. 假定第零次迭代的初始模型為等概率的均勻分布。
2. 用第 N 次迭代的模型來(lái)估算每種信息特征在訓(xùn)練數(shù)據(jù)中的分布,如果超過(guò)了實(shí)際 的,就把相應(yīng)的模型參數(shù)變小;否則,將它們便大。
3. 重復(fù)步驟 2 直到收斂。
Darroch 和 Ratcliff沒(méi)有能對(duì)這種算法的物理含義進(jìn)行很好地解釋,后來(lái)是由Csiszar解釋清楚的,因此,人們?cè)谡劦竭@個(gè)算法 時(shí),總是同時(shí)引用 Darroch 和Ratcliff 以及希薩的兩篇論文。GIS 算法每次迭代的時(shí)間都很長(zhǎng),需要迭代很多次才能收斂,而且不太穩(wěn)定,即使在 64 位計(jì)算機(jī)上都會(huì)出現(xiàn)溢出。因此,在實(shí)際應(yīng)用中很少有人真正使用,大家只是通過(guò)它來(lái)了解最大熵模型的算法。
八十年代,Della Pietra在IBM對(duì)GIS算法進(jìn)行了兩方面的改進(jìn),提出了改進(jìn)迭代算法IIS(improved iterative scaling)。這使得最大熵模型的訓(xùn)練時(shí)間縮短了一到兩個(gè)數(shù)量級(jí)。這樣最大熵模型才有可能變得實(shí)用。即使如此,在當(dāng)時(shí)也只有 IBM 有條件是用最大熵模型。
由于最大熵模型在數(shù)學(xué)上十分完美,對(duì)科學(xué)家們有很大的誘惑力,因此不少研究者試圖把自己的問(wèn)題用一個(gè)類(lèi)似最大熵的近似模型去套。誰(shuí)知這一近似,最大熵模型就變得不完美了,結(jié)果可想而知,比打補(bǔ)丁的湊合的方法也好不了多少。于是,不少熱心人又放棄了這種方法。第一個(gè)在實(shí)際信息處理應(yīng)用中驗(yàn)證了最大熵模型的優(yōu)勢(shì)的,是原IBM現(xiàn)微軟的研究員Adwait Ratnaparkhi。Ratnaparkhi的聰明之處在于他沒(méi)有對(duì)最大熵模型進(jìn)行近似,而是找到了幾個(gè)最適合用最大熵模型、而計(jì)算量相對(duì)不太大的自然語(yǔ)言處理問(wèn) 題,比如詞性標(biāo)注和句法分析。拉納帕提成功地將上下文信息、詞性(名詞、動(dòng)詞和形容詞等)、句子成分(主謂賓)通過(guò)最大熵模型結(jié)合起來(lái),做出了當(dāng)時(shí)世界上 最好的詞性標(biāo)識(shí)系統(tǒng)和句法分析器。
9. 最大熵模型:金融領(lǐng)域內(nèi)的應(yīng)用
最大熵模型在自然語(yǔ)言處理領(lǐng)域內(nèi)得到了廣泛的應(yīng)用,在金融界,也能見(jiàn)到它的影子。當(dāng)年最早改進(jìn)最大熵模型算法的Della Pietra在九十年代初退出了學(xué)術(shù)界,而到在金融界大顯身手。他和很多IBM語(yǔ)音識(shí)別的同事一同到了一家當(dāng)時(shí)還不大,但現(xiàn)在是世界上最成功對(duì)沖基金公司----(Renaissance Technologies。我們知道,決定股票漲落的因素可能有幾十甚至上百種,而最大熵方法恰恰能找到一個(gè)同時(shí)滿(mǎn)足成千上萬(wàn)種不同條件的模型。Della Pietra等科學(xué)家在那里,用于最大熵模型和其他一些先進(jìn)的數(shù)學(xué)工具對(duì)股票預(yù)測(cè),獲得了巨大的成功。從該基金1988 年創(chuàng)立至今,它的凈回報(bào)率高達(dá)平均每年34%。也就是說(shuō),如果1988年你在該基金投入一塊錢(qián),今天你能得到200塊錢(qián)。這個(gè)業(yè)績(jī),遠(yuǎn)遠(yuǎn)超過(guò)股神巴菲特的旗艦公司Berkshire Hathaway(同期,Berkshire Hathaway的總回報(bào)是16倍)。
參考文獻(xiàn)
1. 吳軍《數(shù)學(xué)之美系列十六(上)-不要把所有的雞蛋放在一個(gè)籃子里 -- 談?wù)勛畲箪啬P汀?#xff0c;http://googlechinablog.com/2006/10/blog-post.html
2. 吳軍《數(shù)學(xué)之美系列十六(下)-不要把所有的雞蛋放在一個(gè)籃子里 -- 談?wù)勛畲箪啬P汀?#xff0c;http://googlechinablog.com/2006/11/blog-post.html
3. Jaynes, E.T., 1957. ”Information Theory and Statistical Mechanics”, Physical Review, vol.106, pp.620-630. http://bayes.wustl.edu/etj/articles/theory.1.pdf
4. Haykin, Simon《神經(jīng)網(wǎng)絡(luò)原理》(第10章 信息論模型,葉世偉等譯,北京:機(jī)械工業(yè)出版社,2004)
5. 王厚峰. 機(jī)器學(xué)習(xí)課程講義之六MEM (Maximum Entropy Model).北京大學(xué)軟件與微電子學(xué)院,2007年春季學(xué)期
6. Penfield, Paul. Information and Entrop. MIT Open Course, Spring 2003. http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-050JInformation-and-EntropySpring2003/CourseHome/index.htm
7. Wei, Xiaoliang《最大熵模型與自然語(yǔ)言處理》www.cs.caltech.edu/~weixl/research/read/summary/MaxEnt2.ppt
8. 常寶寶《自然語(yǔ)言處理的最大熵模型》www.icl.pku.cn/WebData_http-dir-listable/ICLseminars/2003spring/最大熵模型.pdf
9. 廖先桃《最大熵理論及其應(yīng)用》http://ir.hit.edu.cn/phpwebsite/index.php?module=documents&JAS_DocumentManager_op=downloadFile&JAS_File_id=196
轉(zhuǎn)自:http://johnthu.spaces.live.com/blog/cns!2053CD511E6D5B1E!246.entry
與50位技術(shù)專(zhuān)家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的最大熵模型:读书笔记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 数学之美 系列十六 (下)- 不要把所有
- 下一篇: 概率、信息和熵