資訊理論定義了資訊熵,用以表示人們對客觀事件不確定性的度量。資訊熵考慮隨機變數的所有可能取值,即所有可能發生事件帶來的資訊量的期望: h(
x)=∑
ni=1
pilo
g(1p
i)=e
(log
(1pi
))資訊熵表示了乙個不確定事件的所有可能狀態所提供的資訊量,資訊熵越大,表明攜帶的資訊量越大,不確定性也越大;反之攜帶的平均資訊量越少,不確定性越少。
最大熵原理認為,學習概率模型時,在所有可能的概率分布中,熵最大的模型是最好的模型。
上面的話可以表述為,
(1)對乙個隨機事件的概率分布進行**時,應滿足全部已知條件–即所有可能的模型
(2)而對未知的情況不要做任何主觀假設。
在這種情況下,概率分布最均勻,**的風險最小,熵也最大。
假設隨機擲骰子,我們總會猜測出現任意乙個點數的概率為1/6,與此類似,意為最小化經驗風險。
將最大熵原理應用到分類就得到最大熵模型,模型表示對於給定的輸入x,以條件概率輸出p(
y|x)
。對於給定的訓練集,可以確定聯合分布p(
x,y)
的經驗分布和邊緣分布p(
x)的經驗分布: p^
(x,y
)=co
unt(
x=x,
y=y)
n p^
(x)=
coun
t(x=
x)n
其中,n為樣本數量,$count(\cdot)為滿足條件的樣本數量。
如果從樣本中選取或者設計n個特徵函式:
這些特徵在建模過程中,模型必須滿足所有這些特徵的約束,而所有滿足這些約束的模型產生乙個集合c,最大熵原理給出選擇最優模型的乙個準則。
對於每乙個特徵函式,都有:
(1)關於經驗分布p^
(x,y
) 的期望:ep
^(f)
=∑x,
yp^(
x,y)
f(x,
y)
(2)關於理論模型p(
x,y)
的期望:ep
(f)=
∑x,y
p(x,
y)f(
x,y)
=∑x,
yp(x
)p(y
|x)f
(x,y
) 我們認為經驗分布是實際分布的無偏取樣,依據經驗分布訓練出來的模型,應該滿足ep
^(f)
=ep(
f):∑x,
yp^(
x,y)
f(x,
y)=∑
x,yp
^(x)
p(y|
x)f(
x,y)
定義在條件概率分布上的條件熵為:h(
p)=h
(y|x
) =∑
xp(x
)h(y
|x=x
) =−
∑xp(
x)∑y
p(y|
x)lo
g(p(
y|x)
) =−
∑x,y
p(x)
p(y|
x)lo
g(p(
y|x)
) 所以,在滿足所有約束條件的的模型集合c裡面,滿足條件熵最大的模型即是最大熵模型。
具體的模型推導優化過程這裡不展開說明,具體可參考李航老師的《統計學習方法》,最終模型形式如下:
從上面模型的形式可以看到,最大熵模型其實和邏輯回歸模型的形式非常相似,都是指數類模型。可以認為,邏輯回歸只是類別數量為2的最大熵模型。
這裡需要注意的是,最大熵模型的特徵與普通機器學習演算法的特徵表示方式有所不同,普通機器學習演算法抽取特徵只是單純的對輸入x進行抽取,而最大熵模型則是對輸入x及標籤y的聯合特徵抽取。
具體特徵抽取形式可以參考:
1、《統計學習方法》 李航
2、
最大熵模型
最大熵模型學習中的對偶函式極大化等價於最大熵模型的極大使然估計。這樣最大熵模型的學習問題就轉換為具體求解對數似然函式極大化或對偶函式極大化的問題。邏輯斯蒂回歸模型 最大熵模型學習歸結為以似然函式為目標函式的最優化問題。iis試圖一次只優化其中乙個變數theai,而固定其他變數。這裡b thea w ...
最大熵模型
pw y x 1z w x exp i 1nw ifi x,y 其中,zw x yexp i 1n wifi x,y 最大熵模型的學習等價於約束最優化問題 minp c h p x yp x p y x logp y x s.t.ep fi ep fi 0,i 1,2 n yp y x 1 約束最優...
最大熵模型
學習概率模型時,在所有的可能概率模型 分布 中,熵最大的模型是最好的模型。通常根據約束條件來確定概率模型的集合,所以也可理解為 在滿足約束條件的模型集合中選取熵最大的模型。假設離散隨機變數 x 的概率分布是p x 則其熵是 h p xp x lo gp x 熵滿足不等式 0 h p lo g x 其...