歷史
條件隨機場(CRF)由Lafferty等人於2001年提出,結合了最大熵模型和隱馬爾可夫模型的特點,是一種無向圖模型,近年來在分詞、詞性標註和命名實體識別等序列標註任務中取得了很好的效果。
簡介
條件隨機域(場)(conditional random fields,簡稱 CRF,或CRFs),是一種判別式機率模型,是隨機場的一種,常用於標註或分析序列資料,如自然語言文字或是生物序列。 條件隨機場是條件機率分布模型 P(Y|X) ,表示的是給定一組輸入隨機變數 X 的條件下另 一組輸出隨機變數 Y 的馬爾可夫隨機場,也就是說 CRF 的特點是假設輸出隨機變數構成馬爾可夫隨機場。條件隨機場可被看作是最大熵馬爾可夫模型在標註問題上的推廣。
如同馬爾可夫隨機場,條件隨機場為具有無向的圖模型,圖中的頂點代表隨機變數,頂點間的連線代表隨機變數間的相依關係,在條件隨機場中,隨機變數Y 的分布為條件機率,給定的觀察值則為隨機變數 X。原則上,條件隨機場的圖模型布局是可以任意給定的,一般常用的布局是鏈結式的架構,鏈結式架構不論在訓練(training)、推論(inference)、或是解碼(decoding)上,都存在效率較高的算法可供演算。條件隨機場是一個典型的判別式模型,其聯合機率可以寫成若干勢函式聯乘的形式,其中最常用的是線性鏈條件隨機場。
套用
“條件隨機場”被用於中文分詞和詞性標註等詞法分析工作,一般序列分類模型常常採用隱馬爾可夫模型(HMM),像基於類的中文分詞。
假設我們有Bob一天從早到晚的一系列照片,Bob想考考我們,要我們猜這一系列的每張照片對應的活動,比如: 工作的照片,吃飯的照片,唱歌的照片等等。一個比較直觀的辦法就是,我們找到Bob之前的日常生活的一系列照片,然後找Bob問清楚這些照片代表的活動標記,這樣我們就可以用監督學習的方法來訓練一個分類模型,比如邏輯回歸,接著用模型去預測這一天的每張照片最可能的活動標記。這種辦法雖然是可行的,但是卻忽略了一個重要的問題,就是這些照片之間的順序其實是有很大的時間順序關係的,而用上面的方法則會忽略這種關係。比如我們現在看到了一張Bob閉著嘴的照片,那么這張照片我們怎么標記Bob的活動呢?比較難去打標記。但是如果我們有Bob在這一張照片前一點點時間的照片的話,那么這張照片就好標記了。如果在時間序列上前一張的照片裡Bob在吃飯,那么這張閉嘴的照片很有可能是在吃飯咀嚼。而如果在時間序列上前一張的照片裡Bob在唱歌,那么這張閉嘴的照片很有可能是在唱歌。
為了讓我們的分類器表現的更好,可以在標記數據的時候,可以考慮相鄰數據的標記信息。這一點,是普通的分類器難以做到的。而這一塊,也是CRF比較擅長的地方。在實際套用中,自然語言處理中的詞性標註(POS Tagging)就是非常適合CRF使用的地方。詞性標註的目標是給出一個句子中每個詞的詞性(名詞,動詞,形容詞等)。而這些詞的詞性往往和上下文的詞的詞性有關,因此,使用CRF來處理是很適合的,當然CRF不是唯一的選擇,也有很多其他的詞性標註方法。
隱馬爾可夫模型
隱馬爾可夫模型(Hidden Markov Model,HMM)是統計模型,它用來描述一個含有隱含未知參數的馬爾可夫過程。其難點是從可觀察的參數中確定該過程的隱含參數。然後利用這些參數來作進一步的分析,例如模式識別。在 正常的馬爾可夫模型中,狀態對於觀察者來說是直接可見的。這樣狀態的轉換機率便是全部的參數。而在 隱馬爾可夫模型中,狀態並不是直接可見的,但受狀態影響的某些變數則是可見的。每一個狀態在可能輸出的符號上都有一機率分布。因此輸出符號的序列能夠透露出狀態序列的一些信息。
HMM有三個典型(canonical)問題:
•預測(filter):已知模型參數和某一特定輸出序列,求最後時刻各個隱含狀態的機率分布,通常使用前向算法解決.。
•平滑(smoothing):已知模型參數和某一特定輸出序列,求中間時刻各個隱含狀態的機率分布, 通常使用forward-backward 算法解決。
•解碼(most likely explanation): 已知模型參數,尋找最可能的能產生某一特定輸出序列的隱含狀態的序列,通常使用Viterbi算法解決。
比較
但隱馬爾可夫模型中存在兩個假設:輸出獨立性假設和馬爾可夫性假設。其中,輸出獨立性假設要求序列數據嚴格相互獨立才能保證推導的正確性,而事實上大多數序列數據不能被表示成一系列獨立事件。而條件隨機場則使用一種機率圖模型,具有表達長距離依賴性和交疊性特徵的能力,能夠較好地解決標註(分類)偏置等問題的優點,而且所有特徵可以進行全局歸一化,能夠求得全局的最優解。
參見
•機器學習
•統計學習理論
•機率論
•統計學習