Logistic 最大熵 樸素貝葉斯 HMM MEMM CRF 幾個模型的總結

樸素貝葉斯(NB) , 最大熵(MaxEnt) (邏輯迴歸, LR), 因馬爾科夫模型(HMM),  最大熵馬爾科夫模型(MEMM), 條件隨機場(CRF) 這幾個模型之間有千絲萬縷的聯繫,本文首先會證實 Logistic 與 MaxEnt 的等價性,接下來將從圖模型的角度闡述幾個模型之間的關係,首先用一張圖總結一下幾個模型的關係:html

1

 

Logistic(Softmax)  MaxEnt 等價性證實算法

Logistic 是 Softmax 的特殊形式,多以若是 Softmax 與 MaxEnt 是等價的,則 Logistic 與 MaxEnt 是等價的。Softmax 能夠理解爲多項分佈的指數簇分佈,指數簇分佈都是具備最大熵性質的,其最大熵形式爲指數簇分佈的似然形式。dom

給定訓練數據 $\left\{(x^{(i)},y^{(i)}\right\}_{i=1}^m$ ,這裏 $x^{(i)} \in \mathbb{R}^N$, $y^{(i)} \in \mathbb{R}$ 且 $y^{(i)}$ 的取值是 1,…,K 表明類別,來看一下熟悉的 Softmax 模型:機器學習

\[h_k(x) = \frac{e^{w_k^Tx}}{\sum_je^{w_j^Tx}}\]函數

這裏 $h_k(x)$ 表明 x 屬於類別 k 的機率,而且有 $\sum_k h_k(x) = 1$ 訓練數據的 $\log$ 似然函數形式以下:性能

\[L(w) = \sum_i \log h_{y^{(i)}}(x^{(i)})\]學習

對於 $k = 1,2,…,K$, 對似然函數求導,並另導數得 0 可得:測試

\begin{aligned}
\frac{\partial L(w)}{\partial w_k} &= 0 \\
\Rightarrow  \\
\frac{\partial}{\partial w_k}\sum_i \log h_{y^{(i)}}(x^{(i)}) &= \sum_i \left \{ y^{(i)} - h_k(x^{(i)}) \right \}x^{(i)} \\
&= \sum_i  1(y^{(i)} = k)\cdot x^{(i)} - \sum_i h_k(x^{(i)}) \cdot x^{(i)} = 0
\end{aligned}
優化

關於以上這個推倒,參考文獻$^4$ ,這裏咱們用一個特徵函數來代替 $1(y^{(i)} = k)$ ,特徵函數的形式以下:ui

\[f(\mu,v) = \left \{\begin{aligned}
1, \ &if \  \mu = v \\
0, \ &else
\end{aligned}\right  .\]

所以獲得了 Softmax 的一個重要結論:

\[ \sum_i  f(y^{(i)} ,k)\cdot x^{(i)} = \sum_i h_k(x^{(i)}) \cdot x^{(i)} , \ k = 1,2…,K  \tag{1}\]

同時要知足:

\[\sum_k h_k(x) = 1 \tag{2}\]

以上的條件 (1) (2) 便可理解爲兩個約束條件,如今假設對映射函數 $h_k(x)$ 一無所知,咱們來用前邊兩個約束去求解一個 MaxEnt 模型 $h_k(x)$ ,模型的熵爲:

\[ – \sum_k \sum_i h_k(x^{(i)}) \log h_k(x^{(i)})\]

根據 MaxEnt 模型的求解形式,列出拉格朗日乘子法公式:

\begin{aligned}
L(w) =- \sum_k \sum_i h_k(x^{(i)}) \log h_k(x^{(i)})+ \sum_k w_k\left \{ \sum_i \left [ h_k(x^{(i)})x^{(i)} - f(y^{(i)},k)x^{(i)}\right ] \right \} + \sum_k\sum_ia_i\left \{ h_k(x^{(i)})-1 \right \}
\end{aligned}

對於任意 $k ,i$,對 $f_k(x^{(i)})$ 求偏導 :

\[\frac{\partial L(w)}{\partial h_k(x^{(i)}) } = w_k x^{(i)} + a_i –\log h_k(x^{(i)}) – 1 = 0\]

另偏導得 0:

\[h_k(x^{(i)}) = e^{w_k + x^{(i)} +a_i -1 } \tag{*}\]

所以可得:

\[ \sum_j h_j(x^{(i)}) = 1 \Rightarrow  e^a = \frac{1}{\sum_j e^{w_j x^{(i)} -1} }\]

帶入 (*) 式可得:

\[h_k(x^{(i)}) = \frac{e^{w_k \cdot x}}{\sum_j e^{w_j \cdot x}}\]

這即是 MaxEnt 推倒出 Softmax 的過程,思路就是首先對 Softmax 損失函數求導,而後另導數得 0 ,獲得 Softmax 模型須要知足的約束,而後在知足約束的狀況下求解 MaxEnt 模型便可,獲得的正是 Softmax 模型,因此二者等價的。

接下來直接從 MaxEnt 模型與 Softmax 模型的形式來找出二者的關係,爲了描述更加清晰,這裏的符號都帶有了向量標記,首先來看 Softmax 模型

\[f_k(\overrightarrow{x}) = \frac{e^{\overrightarrow{w}_k \cdot \overrightarrow{x} }}{\sum_j e^{\overrightarrow{w}_j \cdot \overrightarrow{x} }}\]

在 Softmax 的視角下,每條輸入數據會被表示成一個 n 維向量,能夠當作 n 個特徵。而模型中每一類都有 n 個權重,與 n 個特徵相乘後求和再通過 Softmax 的結果,表明這條輸入數據被分到這一類的機率。
在MaxEnt 的視角下,每條輸入的 n 個「特徵」與 k 個類別共同組成了$n \times k$ 個特徵,模型中有 $n \times k$ 個權重,與特徵一一對應。每一個類別會觸發 $n \times k$ 個特徵中的 n 個,這 n 個特徵的加權和通過 Softmax,表明輸入被分到各種的機率。

把最大熵模型寫成以下的形式:

\[P_w(y|\overrightarrow{x}) = \frac{\exp\left \{ \overrightarrow{w } \cdot f (\overrightarrow{x},y) \right \}}{\sum _y \exp \left \{ \overrightarrow{w } \cdot f(\overrightarrow{x},y) \right \}}\]

當判斷數據是否屬於類別 k 時相互轉換時,直接把特徵函數設計成以下的形式:

\[f(\overrightarrow{x},y) = \left \{ \begin{aligned}
&\overrightarrow{x},  \ y = k \\
&0, \ else
\end{aligned} \right . \]

則能夠獲得如下的形式 ,下式的 $\overrightarrow{w}$ 對應參數只有 n 維 不等於 0 :

\[P_w(y = k|\overrightarrow{x}) = \frac{\exp\left \{ \overrightarrow{w} \cdot  \overrightarrow{x} \right \}}{\sum _y \exp \left \{ \overrightarrow{w} \cdot  \overrightarrow{x} \right \}}\]

通常的機器學習任務中,不用像在 NLP 中須要對文本提取特徵,機器學習任務中的輸入 $\mathbf{x}$ 通常是數字向量的形式,因此使用起來比 MaxEnt 靈活; 可是 MaxEnt 模型在 NLP 任務中對於一個詞能夠抽取多種特徵,好比說他的前綴,後綴,詞性等等,因此特徵設計更加靈活,這也是 CRF 的一個特色,之前不理解爲何 CRF++ 在分詞時能夠爲每一個字設置多個特徵,如今理解一些了,還有老師木也說過:「Logistic 與 MaxEnt 與 CRF 其實就是一個東西」,如今對這句話也有了點理解,對於 MaxEnt 模型能夠提取多種特徵的形式只不過是在圖模型的基礎上多加幾組因子而已。1

樸素貝葉斯

樸素貝葉假設給定類別時,特徵之間條件獨立的:

\[p(y|\overrightarrow{x}) \propto p(y,\overrightarrow{x}) = p(y)\prod_{i=1}^np(x_i|y)\]

Navie Bayes 的圖模型表示:

\[P(x_1,x_2,x_3,y) = p(y)p(x_1|y)p(x_2|y)p(y_3|y)\]

因子圖表示爲:

\[P(x_1,x_2,x_3,y) = \Psi_1(y)\Psi_2(x_1,y)\Psi_3(x_2,y)\Psi_4(y_3,y)\]

1

HMM 模型

在 Navie Bayes 中,是對單個元素 y 進行預測,當預測變量也爲序列時,模型變爲:

\[p(\overrightarrow{x},\overrightarrow{y}) =\prod_{i=0}^n p(y_i|y_{i-1})  p(x_i|y_i)\]

HMM 的圖模型表示:

\[P(x_1,x_2,x_3,y_1,y_2,y_3) = p(y_1)p(x_1|y_1)p(y_2|y_1)p(x_2|y_2)p(y_3|y_2)p(x_3|y_3)\]

因子圖表示相似,這裏再也不贅述

hmm

MaxEnt 模型:

這裏給出一個通常形式下的最大熵模型,最大熵或者 Logistic 的形式是對條件機率進行建模的:

\[P(y|x) = \frac{\exp\left \{ \sum_k w_k  \cdot f_k(x,y) \right \}}{\sum _y \exp \left \{ \sum_k w_k f_k(x,y) \right \}}\]

下圖給出了一個隨機變量 x 的狀況下 Maxent 的圖模型表示,圖 (b) 三個約束表示三組勢函數,這即是相對於 Logistic 的優點了,能夠提取多組特徵:

me這裏並不能像有向圖那樣表示成精確的機率形式,而只能表示成最大團上的一組勢能函數的形式。 MaxEnt 模型能夠在 x 與 y 之間設置任意多的特徵函數,這樣會綜合考慮各類特徵信息。

CRF 的模型:

CRF 是 MaxEnt 模型序列化的推廣:

\[\begin{aligned} P(y|x) &= \frac{\exp \left \{ \sum_{k=1}^K w_k f_k(y,x) \right \}}{\sum_y \exp \left \{ \sum_{k=1}^Kw_kf_k(y,x)\right \}}\end{aligned} \]

111

總結:

HMM模型: 將標註看做馬爾可夫鏈,一階馬爾可夫鏈式針對相鄰標註的關係進行建模,其中每一個標記對應一個機率函數。HMM是一種生成模型,定義了聯 合機率分佈 ,其中 x 和 y 分別表示觀察序列和相對應的標註序列的隨機變量。爲了可以定義這種聯合機率分佈,生成模型須要枚舉出全部可能的觀察序列,這在實際運算過程當中很困難,由於咱們須要將觀察序列的元素看作是彼此孤立的個體即假設每一個元素彼此獨立,任什麼時候刻的觀察結果只依賴於該時刻的狀態。

HMM 模型的這個假設前提在比較小的數據集上是合適的,但實際上在大量真實語料中觀察序列更多的是以一種多重的交互特徵形式表現,觀察序列之間普遍存在長程相關性。在命名實體識別的任務中,因爲實體自己結構所具備的複雜性,利用簡單的特徵函數每每沒法涵蓋全部的特性,這時HMM的假設前提使得它沒法使用複雜特徵 (沒法使用多於一個標記的特徵)。

MaxEnt 模型: 可使用任意的複雜相關特徵,在性能上最大熵分類器超過了 Byaes 分類器。可是,做爲一種分類器模型,這兩種方法有一個共同的缺點:每一個詞都是單獨進行分類的,標記之間的關係沒法獲得充分利用,具備馬爾可夫鏈的 HMM 模型能夠創建標記之間的馬爾可夫關聯性,這是最大熵模型所沒有的。

最大熵模型的優勢:首先,最大熵統計模型得到的是全部知足約束條件的模型中信息熵極大的模型;其次,最大熵統計模型能夠靈活地設置約束條件,經過約束條件的多少能夠調節模型對未知數據的適應度和對已知數據的擬合程度;再次,它還能天然地解決統計模型中參數平滑的問題。

最大熵模型的不足:首先,最大熵統計模型中二值化特徵只是記錄特徵的出現是否,而文本分類須要知道特徵的強度,所以,它在分類方法中不是最優的;其次,因爲算法收斂的速度較慢,因此致使最大熵統計模型它的計算代價較大,時空開銷大;再次,數據稀疏問題比較嚴重。

CRF 模型:首先,CRF 在給定了觀察序列的狀況下,對整個的序列的聯合機率有一個統一的指數模型。一個比較吸引人的特性是其爲一個凸優化問題。其次,條件隨機場模型相比改進的隱馬爾可夫模型能夠更好更多的利用待識別文本中所提供的上下文信息以得更好的實驗結果。而且有測試結果代表:在採用相同特徵集合的條件下,條件隨機域模型較其餘機率模型有更好的性能表現。

CRF 具備很強的推理能力,而且可以使用複雜、有重疊性和非獨立的特徵進行訓練和推理,可以充分地利用上下文信息做爲特徵,還能夠任意地添加其餘外部特徵,使得模型能夠 獲取的信息很是豐富。

CRF 模型的不足:首先,經過對基於 CRF 的結合多種特徵的方法識別英語命名實體的分析,發如今使用 CRF 方法的過程當中,特徵的選擇和優化是影響結果的關鍵因 素,特徵選擇問題的好與壞,直接決定了系統性能的高低。其次,訓練模型的時間比 MaxEnt 更長,且得到的模型很大,在通常的 PC 機上沒法運行。

參考:(6,7 是兩篇很是經典的 CRF toturial)

1. https://www.zhihu.com/question/35866596

2. http://blog.csdn.net/losteng/article/details/51037927

3. https://www.zhihu.com/question/24094554/answer/108247115

4. http://www.cnblogs.com/ooon/p/5690848.html

5. the equivalence of logistic regression and maximum entropymodels

6. An Introduction to Conditional Random Fields

7. Classical Probabilistic Models and Conditional Random Fields

相關文章
相關標籤/搜索