標記偏置 隱馬爾科夫 最大熵馬爾科夫 HMM MEMM

隱馬爾科夫模型(HMM):算法

圖1. 隱馬爾科夫模型函數

隱馬爾科夫模型的缺點:spa

        一、HMM僅僅依賴於每一個狀態和它相應的觀察對象:對象

              序列標註問題不只和單個詞相關,而且和觀察序列的長度,單詞的上下文,等等相關。it

        二、目標函數和預測目標函數不匹配:class

              HMM學到的是狀態和觀察序列的聯合分佈P(Y,X),而預測問題中,咱們需要的是條件機率P(Y|X)。im

 

最大熵隱馬爾科夫模型(MEMM):margin

 

圖2. 最大熵馬爾科夫模型top

        MEMM考慮到相鄰狀態之間依賴關係。且考慮整個觀察序列,所以MEMM的表達能力更強;MEMM不考慮P(X)減輕了建模的負擔。同一時候學到的是目標函數是和預測函數一致。img

MEMM的標記偏置問題:

 

圖3. Viterbi算法解碼MEMM。狀態1傾向於轉換到狀態2,同一時候狀態2傾向於保留在狀態2;

P(1-> 1-> 1-> 1)= 0.4 x 0.45 x 0.5 = 0.09 ,P(2->2->2->2)= 0.2 X 0.3 X 0.3 = 0.018,

P(1->2->1->2)= 0.6 X 0.2 X 0.5 = 0.06,P(1->1->2->2)= 0.4 X 0.55 X 0.3 = 0.066。

        圖3中狀態1傾向於轉換到狀態2,同一時候狀態2傾向於保留在狀態2;但是獲得的最優的狀態轉換路徑是1->1->1->1。爲何呢?因爲狀態2可以轉換的狀態比狀態1要多,從而使轉移機率減小;即MEMM傾向於選擇擁有更少轉移的狀態。

這就是標記偏置問題。

而CRF很是好地攻克了標記偏置問題。

        MEMM是局部歸一化,CRF是全局歸一化

        還有一方面。MEMMs不可能找到對應的參數知足下面這樣的分佈:

         a b c --> a/A b/B c/C      p(A B C | a b c) = 1

         a b e --> a/A b/D e/E      p(A D E | a b e) = 1

         p(A|a)p(B|b,A)p(C|c,B) = 1

         p(A|a)p(D|b,A)p(E|e,D) = 1

       但是CRFs可以找到模型知足這樣的分佈。

相關文章
相關標籤/搜索