如何輕松愉快地理解條件隨機(jī)場(CRF)挤渔?

理解條件隨機(jī)場最好的辦法就是用一個現(xiàn)實的例子來說明它。但是目前中文的條件隨機(jī)場文章鮮有這樣干的风题,可能寫文章的人都是大牛判导,不屑于舉例子吧。于是乎沛硅,我翻譯了這篇文章眼刃。希望對其他伙伴有所幫助。

原文在這里[http://blog.echen.me/2012/01/03/introduction-to-conditional-random-fields/]

想直接看英文的朋友可以直接點進(jìn)去了摇肌。我在翻譯時并沒有拘泥于原文擂红,許多地方都加入了自己的理解,用學(xué)術(shù)點的話說就是意譯围小。(畫外音:裝什么裝昵骤,快點開始吧树碱。)好的,下面開始翻譯变秦!

假設(shè)你有許多小明同學(xué)一天內(nèi)不同時段的照片成榜,從小明提褲子起床到脫褲子睡覺各個時間段都有(小明是照片控!)”拿担現(xiàn)在的任務(wù)是對這些照片進(jìn)行分類赎婚。比如有的照片是吃飯,那就給它打上吃飯的標(biāo)簽钳垮;有的照片是跑步時拍的惑淳,那就打上跑步的標(biāo)簽;有的照片是開會時拍的饺窿,那就打上開會的標(biāo)簽歧焦。問題來了,你準(zhǔn)備怎么干肚医?

一個簡單直觀的辦法就是绢馍,不管這些照片之間的時間順序,想辦法訓(xùn)練出一個多元分類器肠套。就是用一些打好標(biāo)簽的照片作為訓(xùn)練數(shù)據(jù)舰涌,訓(xùn)練出一個模型,直接根據(jù)照片的特征來分類你稚。例如瓷耙,如果照片是早上6:00拍的,且畫面是黑暗的刁赖,那就給它打上睡覺的標(biāo)簽;如果照片上有車搁痛,那就給它打上開車的標(biāo)簽。

這樣可行嗎宇弛?

乍一看可以鸡典!但實際上,由于我們忽略了這些照片之間的時間順序這一重要信息枪芒,我們的分類器會有缺陷的彻况。舉個例子,假如有一張小明閉著嘴的照片舅踪,怎么分類纽甘?顯然難以直接判斷,需要參考閉嘴之前的照片硫朦,如果之前的照片顯示小明在吃飯贷腕,那這個閉嘴的照片很可能是小明在咀嚼食物準(zhǔn)備下咽,可以給它打上吃飯的標(biāo)簽咬展;如果之前的照片顯示小明在唱歌泽裳,那這個閉嘴的照片很可能是小明唱歌瞬間的抓拍,可以給它打上唱歌的標(biāo)簽破婆。

所以涮总,為了讓我們的分類器能夠有更好的表現(xiàn),在為一張照片分類時祷舀,我們必須將與它相鄰的照片的標(biāo)簽信息考慮進(jìn)來瀑梗。這——就是條件隨機(jī)場(CRF)大顯身手的地方!

從例子說起——詞性標(biāo)注問題

啥是詞性標(biāo)注問題裳扯?

非常簡單的抛丽,就是給一個句子中的每個單詞注明詞性。比如這句話:“Bob drank coffee at Starbucks”饰豺,注明每個單詞的詞性后是這樣的:“Bob (名詞)? drank(動詞)? coffee(名詞)? at(介詞)? ? Starbucks(名詞)”亿鲜。

下面,就用條件隨機(jī)場來解決這個問題冤吨。

以上面的話為例,有5個單詞,我們將:(名詞肌割,動詞呜叫,名詞,介詞怠李,名詞)作為一個標(biāo)注序列圾叼,稱為l,可選的標(biāo)注序列有很多種捺癞,比如l還可以是這樣:(名詞夷蚊,動詞,動詞翘簇,介詞撬码,名詞),我們要在這么多的可選標(biāo)注序列中版保,挑選出一個最靠譜的作為我們對這句話的標(biāo)注呜笑。

怎么判斷一個標(biāo)注序列靠譜不靠譜呢?

就我們上面展示的兩個標(biāo)注序列來說彻犁,第二個顯然不如第一個靠譜叫胁,因為它把第二、第三個單詞都標(biāo)注成了動詞汞幢,動詞后面接動詞驼鹅,這在一個句子中通常是說不通的。

假如我們給每一個標(biāo)注序列打分,打分越高代表這個標(biāo)注序列越靠譜输钩,我們至少可以說豺型,凡是標(biāo)注中出現(xiàn)了動詞后面還是動詞的標(biāo)注序列,要給它負(fù)分B蚰恕姻氨!

上面所說的動詞后面還是動詞就是一個特征函數(shù),我們可以定義一個特征函數(shù)集合剪验,用這個特征函數(shù)集合來為一個標(biāo)注序列打分肴焊,并據(jù)此選出最靠譜的標(biāo)注序列。也就是說功戚,每一個特征函數(shù)都可以用來為一個標(biāo)注序列評分娶眷,把集合中所有特征函數(shù)對同一個標(biāo)注序列的評分綜合起來,就是這個標(biāo)注序列最終的評分值啸臀。

定義CRF中的特征函數(shù)

現(xiàn)在届宠,我們正式地定義一下什么是CRF中的特征函數(shù),所謂特征函數(shù)壳咕,就是這樣的函數(shù)席揽,它接受四個參數(shù):

句子s(就是我們要標(biāo)注詞性的句子)

i,用來表示句子s中第i個單詞

l_i谓厘,表示要評分的標(biāo)注序列給第i個單詞標(biāo)注的詞性

l_i-1幌羞,表示要評分的標(biāo)注序列給第i-1個單詞標(biāo)注的詞性

它的輸出值是0或者1,0表示要評分的標(biāo)注序列不符合這個特征,1表示要評分的標(biāo)注序列符合這個特征竟稳。

Note:這里属桦,我們的特征函數(shù)僅僅依靠當(dāng)前單詞的標(biāo)簽和它前面的單詞的標(biāo)簽對標(biāo)注序列進(jìn)行評判,這樣建立的CRF也叫作線性鏈CRF他爸,這是CRF中的一種簡單情況聂宾。為簡單起見,本文中我們僅考慮線性鏈CRF诊笤。

從特征函數(shù)到概率

定義好一組特征函數(shù)后系谐,我們要給每個特征函數(shù)f_j賦予一個權(quán)重λ_j。現(xiàn)在讨跟,只要有一個句子s纪他,有一個標(biāo)注序列l(wèi),我們就可以利用前面定義的特征函數(shù)集來對l評分晾匠。

pic1.PNG

上式中有兩個求和茶袒,外面的求和用來求每一個特征函數(shù)f_j評分值的和,里面的求和用來求句子中每個位置的單詞的的特征值的和凉馆。

對這個分?jǐn)?shù)進(jìn)行指數(shù)化和標(biāo)準(zhǔn)化薪寓,我們就可以得到標(biāo)注序列l(wèi)的概率值p(l|s)亡资,如下所示:

pic2.PNG

幾個特征函數(shù)的例子

前面我們已經(jīng)舉過特征函數(shù)的例子,下面我們再看幾個具體的例子向叉,幫助增強(qiáng)大家的感性認(rèn)識锥腻。

pic3.PNG

當(dāng)l_i是“副詞”并且第i個單詞以“l(fā)y”結(jié)尾時,我們就讓f1 = 1植康,其他情況f1為0旷太。不難想到展懈,f1特征函數(shù)的權(quán)重λ1應(yīng)當(dāng)是正的销睁。而且λ1越大,表示我們越傾向于采用那些把以“l(fā)y”結(jié)尾的單詞標(biāo)注為“副詞”的標(biāo)注序列

pic4.PNG

如果i=1存崖,l_i=動詞冻记,并且句子s是以“?”結(jié)尾時来惧,f2=1冗栗,其他情況f2=0。同樣供搀,λ2應(yīng)當(dāng)是正的隅居,并且λ2越大,表示我們越傾向于采用那些把問句的第一個單詞標(biāo)注為“動詞”的標(biāo)注序列葛虐。

pic5.PNG

當(dāng)l_i-1是介詞胎源,l_i是名詞時,f3 = 1屿脐,其他情況f3=0涕蚤。λ3也應(yīng)當(dāng)是正的,并且λ3越大的诵,說明我們越認(rèn)為介詞后面應(yīng)當(dāng)跟一個名詞万栅。

pic6.PNG

如果l_i和l_i-1都是介詞,那么f4等于1西疤,其他情況f4=0烦粒。這里,我們應(yīng)當(dāng)可以想到λ4是負(fù)的代赁,并且λ4的絕對值越大扰她,表示我們越不認(rèn)可介詞后面還是介詞的標(biāo)注序列。

好了管跺,一個條件隨機(jī)場就這樣建立起來了义黎,讓我們總結(jié)一下:

為了建一個條件隨機(jī)場,我們首先要定義一個特征函數(shù)集豁跑,每個特征函數(shù)都以整個句子s廉涕,當(dāng)前位置i泻云,位置i和i-1的標(biāo)簽為輸入。然后為每一個特征函數(shù)賦予一個權(quán)重狐蜕,然后針對每一個標(biāo)注序列l(wèi)宠纯,對所有的特征函數(shù)加權(quán)求和,必要的話层释,可以把求和的值轉(zhuǎn)化為一個概率值婆瓜。

CRF與邏輯回歸的比較

觀察公式:

是不是有點邏輯回歸的味道?

事實上贡羔,條件隨機(jī)場是邏輯回歸的序列化版本廉白。邏輯回歸是用于分類的對數(shù)線性模型,條件隨機(jī)場是用于序列化標(biāo)注的對數(shù)線性模型乖寒。

CRF與HMM的比較

對于詞性標(biāo)注問題猴蹂,HMM模型也可以解決。HMM的思路是用生成辦法楣嘁,就是說磅轻,在已知要標(biāo)注的句子s的情況下,去判斷生成標(biāo)注序列l(wèi)的概率逐虚,如下所示:

pic7.PNG

這里:

p(l_i|l_i-1)是轉(zhuǎn)移概率聋溜,比如,l_i-1是介詞叭爱,l_i是名詞撮躁,此時的p表示介詞后面的詞是名詞的概率。

p(w_i|l_i)表示發(fā)射概率(emission probability)涤伐,比如l_i是名詞馒胆,w_i是單詞“ball”,此時的p表示在是名詞的狀態(tài)下凝果,是單詞“ball”的概率祝迂。

那么,HMM和CRF怎么比較呢器净?

答案是:CRF比HMM要強(qiáng)大的多型雳,它可以解決所有HMM能夠解決的問題,并且還可以解決許多HMM解決不了的問題山害。事實上纠俭,我們可以對上面的HMM模型取對數(shù),就變成下面這樣:

pic8.PNG

我們把這個式子與CRF的式子進(jìn)行比較:

pic1.PNG

不難發(fā)現(xiàn)浪慌,如果我們把第一個HMM式子中的log形式的概率看做是第二個CRF式子中的特征函數(shù)的權(quán)重的話冤荆,我們會發(fā)現(xiàn),CRF和HMM具有相同的形式权纤。

換句話說钓简,我們可以構(gòu)造一個CRF乌妒,使它與HMM的對數(shù)形式相同。怎么構(gòu)造呢外邓?

對于HMM中的每一個轉(zhuǎn)移概率p(l_i=y|l_i-1=x),我們可以定義這樣的一個特征函數(shù):

pic9.PNG

該特征函數(shù)僅當(dāng)l_i = y,l_i-1=x時才等于1撤蚊。這個特征函數(shù)的權(quán)重如下:

pic10.PNG

同樣的,對于HMM中的每一個發(fā)射概率损话,我們也都可以定義相應(yīng)的特征函數(shù)侦啸,并讓該特征函數(shù)的權(quán)重等于HMM中的log形式的發(fā)射概率。

用這些形式的特征函數(shù)和相應(yīng)的權(quán)重計算出來的p(l|s)和對數(shù)形式的HMM模型幾乎是一樣的丧枪!

用一句話來說明HMM和CRF的關(guān)系就是這樣:

每一個HMM模型都等價于某個CRF

每一個HMM模型都等價于某個CRF

每一個HMM模型都等價于某個CRF

但是光涂,CRF要比HMM更加強(qiáng)大,原因主要有兩點:

CRF可以定義數(shù)量更多豪诲,種類更豐富的特征函數(shù)顶捷。HMM模型具有天然具有局部性,就是說屎篱,在HMM模型中,當(dāng)前的單詞只依賴于當(dāng)前的標(biāo)簽葵蒂,當(dāng)前的標(biāo)簽只依賴于前一個標(biāo)簽交播。這樣的局部性限制了HMM只能定義相應(yīng)類型的特征函數(shù),我們在上面也看到了践付。但是CRF卻可以著眼于整個句子s定義更具有全局性的特征函數(shù)秦士,如這個特征函數(shù):

pic4.PNG

如果i=1,l_i=動詞永高,并且句子s是以“隧土?”結(jié)尾時,f2=1命爬,其他情況f2=0曹傀。

CRF可以使用任意的權(quán)重將對數(shù)HMM模型看做CRF時,特征函數(shù)的權(quán)重由于是log形式的概率饲宛,所以都是小于等于0的皆愉,而且概率還要滿足相應(yīng)的限制,如

pic11.PNG

但在CRF中艇抠,每個特征函數(shù)的權(quán)重可以是任意值幕庐,沒有這些限制。

作者:milter

鏈接:http://www.reibang.com/p/55755fc649b1

來源:簡書

簡書著作權(quán)歸作者所有家淤,任何形式的轉(zhuǎn)載都請聯(lián)系作者獲得授權(quán)并注明出處异剥。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市絮重,隨后出現(xiàn)的幾起案子冤寿,更是在濱河造成了極大的恐慌错妖,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件疚沐,死亡現(xiàn)場離奇詭異暂氯,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)亮蛔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進(jìn)店門痴施,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人究流,你說我怎么就攤上這事辣吃。” “怎么了芬探?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵神得,是天一觀的道長。 經(jīng)常有香客問我偷仿,道長哩簿,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任酝静,我火速辦了婚禮节榜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘别智。我一直安慰自己宗苍,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布薄榛。 她就那樣靜靜地躺著讳窟,像睡著了一般。 火紅的嫁衣襯著肌膚如雪敞恋。 梳的紋絲不亂的頭發(fā)上丽啡,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天,我揣著相機(jī)與錄音耳舅,去河邊找鬼碌上。 笑死,一個胖子當(dāng)著我的面吹牛浦徊,可吹牛的內(nèi)容都是我干的馏予。 我是一名探鬼主播,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼盔性,長吁一口氣:“原來是場噩夢啊……” “哼霞丧!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起冕香,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤蛹尝,失蹤者是張志新(化名)和其女友劉穎后豫,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體突那,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡挫酿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了愕难。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片早龟。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖猫缭,靈堂內(nèi)的尸體忽然破棺而出葱弟,到底是詐尸還是另有隱情,我是刑警寧澤猜丹,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布芝加,位于F島的核電站,受9級特大地震影響射窒,放射性物質(zhì)發(fā)生泄漏藏杖。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一轮洋、第九天 我趴在偏房一處隱蔽的房頂上張望制市。 院中可真熱鬧,春花似錦弊予、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至责鳍,卻和暖如春碾褂,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背历葛。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工正塌, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人恤溶。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓乓诽,卻偏偏與公主長得像,于是被迫代替她去往敵國和親咒程。 傳聞我的和親對象是個殘疾皇子鸠天,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內(nèi)容