天天看點

CRF條件随機場與HMM,MEMM比較2. CRF

CRF簡介

Conditional Random Field:條件随機場,一種機器學習技術(模型)

CRF由John Lafferty最早用于NLP技術領域,其在NLP技術領域中主要用于文本标注,并有多種應用場景,例如:

  • 分詞(标注字的詞位資訊,由字構詞)
  • 詞性标注(标注分詞的詞性,例如:名詞,動詞,助詞)
  • 命名實體識别(識别人名,地名,機構名,商品名等具有一定内在規律的實體名詞)

本文主要描述如何使用CRF技術來進行中文分詞。

CRF VS 詞典統計分詞

  • 基于詞典的分詞過度依賴詞典和規則庫,是以對于歧義詞和未登入詞的識别能力較低;其優點是速度快,效率高
  • CRF代表了新一代的機器學習技術分詞,其基本思路是對漢字進行标注即由字構詞(組詞),不僅考慮了文字詞語出現的頻率資訊,同時考慮上下文語境,具備較好的學習能力,是以其對歧義詞和未登入詞的識别都具有良好的效果;其不足之處是訓練周期較長,營運時計算量較大,性能不如詞典分詞

CRF VS HMM,MEMM

  • 首先,CRF,HMM(隐馬模型),MEMM(最大熵隐馬模型)都常用來做序列标注的模組化,像分詞、詞性标注,以及命名實體标注
  • 隐馬模型一個最大的缺點就是由于其輸出獨立性假設,導緻其不能考慮上下文的特征,限制了特征的選擇
  • 最大熵隐馬模型則解決了隐馬的問題,可以任意選擇特征,但由于其在每一節點都要進行歸一化,是以隻能找到局部的最優值,同時也帶來了标記偏見的問題,即凡是訓練語料中未出現的情況全都忽略掉
  • 條件随機場則很好的解決了這一問題,他并不在每一個節點進行歸一化,而是所有特征進行全局歸一化,是以可以求得全局的最優值。

CRF分詞原理

1. CRF把分詞當做字的詞位分類問題,通常定義字的詞位資訊如下:

  • 詞首,常用B表示
  • 詞中,常用M表示
  • 詞尾,常用E表示
  • 單子詞,常用S表示

2. CRF分詞的過程就是對詞位标注後,将B和E之間的字,以及S單字構成分詞

3. CRF分詞執行個體:

  • 原始例句:我愛北京天安門
  • CRF标注後:我/S 愛/S 北/B 京/E 天/B 安/M 門/E
  • 分詞結果:我/愛/北京/天安門

CRF原理:

從機率模型(Probabilistic Models)與圖表示(Graphical Representation)兩個方面引出CRF。

機率模型

Naïve Bayes(NB)是分類問題中的生成模型(generative model),以聯合機率P(x,y)=P(x|y)P(y)P(x,y)=P(x|y)P(y)模組化,運用貝葉斯定理求解後驗機率P(y|x)P(y|x)。NB假定輸入xx的特征向量(x(1),x(2),⋯,x(j),⋯,x(n))(x(1),x(2),⋯,x(j),⋯,x(n))條件獨立(conditional independence),即

CRF條件随機場與HMM,MEMM比較2. CRF

HMM是用于對序列資料XX做标注YY的生成模型,用馬爾可夫鍊(Markov chain)對聯合機率P(X,Y)P(X,Y)模組化:

CRF條件随機場與HMM,MEMM比較2. CRF

然後,通過Viterbi算法求解P(Y|X)P(Y|X)的最大值。LR (Logistic Regression)模型是分類問題中的判别模型(discriminative model),直接用logistic函數模組化條件機率P(y|x)P(y|x)。實際上,logistic函數是softmax的特殊形式(證明參看ufldl教程),并且LR等價于最大熵模型(這裡給出了一個簡要的證明),完全可以寫成最大熵的形式:

CRF條件随機場與HMM,MEMM比較2. CRF

其中,Zw(x)Zw(x)為歸一化因子,ww為模型的參數,fi(x,y)fi(x,y)為特征函數(feature function)——描述(x,y)(x,y)的某一事實。

CRF便是為了解決标注問題的判别模型,于是就有了下面這幅張圖(出自 [3]):

CRF條件随機場與HMM,MEMM比較2. CRF

圖表示

機率模型可以用圖表示變量的相關(依賴)關系,是以機率模型常被稱為機率圖模型(probabilistic graphical model, PGM)。PGM對應的圖有兩種表示形式:independency graph, factor graph. independency graph直接描述了變量的條件獨立,而factor graph則是通過因子分解( factorization)的方式暗含變量的條件獨立。比如,NB與HMM所對應的兩種圖表示如下(圖出自[2]):

CRF條件随機場與HMM,MEMM比較2. CRF
CRF條件随機場與HMM,MEMM比較2. CRF

可以看出,NB與HMM所對應的independency graph為有向圖,圖(V,E)(V,E)所表示的聯合機率P(v→)P(v→)計算如下:

CRF條件随機場與HMM,MEMM比較2. CRF

其中,vkvk為圖(V,E)(V,E)中一個頂點,其parent節點為vpkvkp。根據上述公式,則上圖中NB模型的聯合機率:

CRF條件随機場與HMM,MEMM比較2. CRF

有别于NB模型,最大熵則是從全局的角度來模組化的,“保留盡可能多的不确定性,在沒有更多的資訊時,不擅自做假設”;特征函數則可看作是人為賦給模型的資訊,表示特征xx與yy的某種相關性。有向圖無法表示這種相關性,則采用無向圖表示最大熵模型:

CRF條件随機場與HMM,MEMM比較2. CRF

最大熵模型與馬爾可夫随機場(Markov Random Field, MRF)所對應factor graph都滿足這樣的因子分解:

CRF條件随機場與HMM,MEMM比較2. CRF

其中,CC為圖的團(即連通子圖),ΨCΨC為勢函數( potential function)。在最大熵模型中,勢函數便為exp(wifi(x,y))exp(wifi(x,y))的形式了。

2. CRF

前面提到過,CRF(更準确地說是Linear-chain CRF)是最大熵模型的sequence擴充、HMM的conditional求解。CRF假設标注序列YY在給定觀察序列XX的條件下,YY構成的圖為一個MRF,即可表示成圖:

CRF條件随機場與HMM,MEMM比較2. CRF

根據式子(4)(4),則可推導出條件機率:

CRF條件随機場與HMM,MEMM比較2. CRF

原文:https://www.cnblogs.com/en-heng/p/6214023.html

https://blog.csdn.net/zengxiaosen/article/details/53743474 

繼續閱讀