這里開始轉為網(wǎng)課的計數(shù)方式了。。。改正好麻煩的???
7.2 最大熵模型簡介
-
模型定義:
用 條件熵 是因為要用下輸入變量X來獲得Y對應的類別;不用聯(lián)合概率分布是因為這里的模型用的是判別方法,所得到的是條件概率分布(已知X的條件下Y的概率分布)
- 實現(xiàn)方式:計算在X=x時每個Y對于每個類的取值概率,并選出其中最大的那個作為類,在出現(xiàn)等概率的時候可以任選一個作為其類;
-
算式講解:
集合C算式中花體的P代表所有概率分布,而后面的E...為約束條件,此處共有n個
-
例子:
用特征函數(shù)f(x,y)來描述輸入x與輸出y之間的事實

對于剛剛的例子可以得到對應的特征函數(shù)值:

反例:三打白骨精,這里的“打”是動詞,所以要再加一個特征函數(shù)f2來表示具體的語義環(huán)境——>此處的n=2;再運用特征函數(shù)來得到約束條件。
注意:經(jīng)驗分布為真實分布的一個估計值,所以此處的也只是真實的一個近似值?

對于每個特征函數(shù),分別在真實分布和經(jīng)驗分布下求期望值并令他倆相等;
而對于真實分布,就等于所有p(x,y)fi(x,y)的求和:

由于求的是條件概率分布,那么p(x)就可以拿近似值替代,也就是經(jīng)驗分布也就有了第三條式子來作為特征函數(shù)的期望;其中的p~(x)和fi(x,y)都是可以求出/直接得到的,只有一個條件概率分布是未知的,不過可以通過此等式來對其進行一系列約束(n個),
這樣求p(x)

p~(x=xi)就是x=xi的個數(shù)除以總的個數(shù);將每個xi都求出來就可以得到經(jīng)驗分布了;
然后求p~(x,y)

這樣就有了一大堆的 待選模型 了;
接著需要求 條件熵 (已知x的情況下y概率分布對應的熵)

公式推導過程:

把每個y的條件熵加權求和之后就得到了總的條件熵;和之前一樣,p(xi)可以拿經(jīng)驗分布代替(加個~)然后把兩個求和符號合并為一個就可以了
7.3.1 拉格朗日乘子法
-
原始問題:
其中f(x)下面的兩條都是約束條件,共有k+l個。另外目標函數(shù)f(x)還帶有n個未知量;求條件熵的最大值等價于求-條件熵的最小值,然后就統(tǒng)一為f(x);
為了簡化上述問題,就用到了拉格朗日函數(shù):

在每個約束項前面加了個拉格朗日乘子,α共有k個,β共有l(wèi)個
7.3.2 原始問題

若是要求X,那么就在若干組α和β中找到使L最大的那組,進而讓α和β確定下來,也就可以讓函數(shù)只有X一個未知量了;
第二條函數(shù)中角標記為P是因為這是個原始問題,后邊的分類是突出在有約束條件的情況下只有X的函數(shù)
證明展開式:若任何一個約束條件不滿足就可以讓θ->+∞

由于ci(x)<0,所以只有α=0時θ最大,又hj(x)=0,所以L最后只和x有關了。

展開后就是上面的第三個表達式,是一個極小極大問題

7.3.3 對偶問題

在這里X是已知的,α與β是未知的,所以求最優(yōu)值就是對α與β求導;
這里的d比p好求,因為假設α,β已知的情況下求min的那個函數(shù)是很好求得(?)
這里的d是個極大極小問題
-
d和p的關系:
對于上面那個不等式仔細點講就是下面這樣:
左側的最小值是通過對偶問題解得,右側的最大值是通過原始問題解得
不難得到:

-
啥時候可以取等號:
只要滿足上面圈起來的幾個條件,就可以得到等號
-
KKT條件:
第一條代表L的偏導數(shù)為0
好累啊,今天先這樣吧,明天再補后面的








