NLP之最大熵模型

2021-08-28 06:47:20 字數 962 閱讀 1117

最大熵模型的基本原理是:在只掌握關於未知分布的部分資訊的情況下,符合已知知識的概率分布可能有多個,但使熵值最大的概率分布最真實地反映了事件的分布情況,因為熵定義了隨機變數的不確定性,當熵最大時,隨機變數最不確定,最難準確地**其行為。也就是說,在已知部分資訊的前提下,關於未知分布最合理的推斷應該是符合已知資訊最不確定或最大隨機的推斷。

最大熵模型引數訓練的任務就是選取有效的特徵fi及其權重λi。由於可以利用歧義點所在的上下文資訊(如詞形、詞性、視窗大小等)作為特徵條件,而歧義候選往往有多個,因此,各種特徵條件和歧義候選可以組合出很多特徵函式,必須對其進行篩選。常用的篩選方法有:①從候選特徵集中選擇那些在訓練資料中出現頻次超過一定閾值的特徵;② 利用互資訊作為評價尺度從候選特徵集中選擇滿足一定互資訊要求的特徵;③利用增量式特徵選擇方法從候選特徵集中選擇特徵。第三種方法比較複雜,一般不用。

對於引數λ,常用的獲取方法是通用迭代演算法(generalized iterative scaling, gis)。gis演算法要求對訓練樣本集中每個例項的任意(a, b) ∈a×b,特徵函式之和為常數,即對每個例項的k個特徵函式均滿足

並增加乙個特徵fl:fl(a, b)=c-

gis演算法的描述如下:

(1)    初始化:λ[1..l]=0;

(2)    根據公式(6-34)計算每個特徵函式fi的訓練樣本期望值:e (fi);

(3)    執行如下迴圈,迭代計算特徵函式的模型期望值ep(fi):

①    利用公式(6-40)和公式(6-39)計算概率 (a|b);

②    若滿足終止條件,則結束迭代;否則,修正λ:λ(n+1)=λ(n)+

(4)演算法結束,確定λ,算出每個 (a|b)。

迭代終止的條件可以為限定的迭代次數,也可以是對數似然(l(p))的變化值小於某個閾值ε:

a, b)為(a, b)在訓練樣本中出現的概率。

由於λ的收斂速度受c取值的影響,因此,人們改進了gis演算法,限於篇幅這裡不再詳細介紹.

機器學習演算法之 最大熵模型總結

最大熵模型可由最大熵原理推出,最大熵原理是概率模型學習的乙個準則。最大熵原理認為在滿足已有事實的所有可能的概率模型中,熵最大的模型是最好的模型。x 是x的取值個數,上式表明當且僅當x的分布是均勻分布時右邊的等號成立,當x服從均勻分布時,熵最大。兩個步驟 給定資料集,考慮模型滿足的條件,可以確定聯合分...

最大熵模型

最大熵模型學習中的對偶函式極大化等價於最大熵模型的極大使然估計。這樣最大熵模型的學習問題就轉換為具體求解對數似然函式極大化或對偶函式極大化的問題。邏輯斯蒂回歸模型 最大熵模型學習歸結為以似然函式為目標函式的最優化問題。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 約束最優...