日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

NLP-初学条件随机场(CRF)

發布時間:2024/1/1 编程问答 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NLP-初学条件随机场(CRF) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 說明:學習筆記,內容參考《機器學習》《數學之美》和七月在線課件

條件隨機場

定義1:

條件隨機場(conditional random field,簡稱CRF)是一種判別式無向圖模型。生成式模型是直接對聯合分布進行建模,而判別式模型則是對條件分布進行建模,隱馬爾可夫模型就是生成式模型?!苤救A《機器學習》

定義2:

條件隨機場模型是Lafferty于2001年,在最大熵模型和隱馬爾可夫模型的基礎上,提出的一種判別式概率無向圖學習模型,是一種用于標注和切分有序數據的條件概率模型。

普遍意義上的條件隨機場:

模型解釋:
①條件隨機場保留了隱含馬爾可夫模型的一些特性,比如圖中的y1,y2,..y1,y2,..等狀態的序列還是一個馬爾可夫鏈。
②在圖中,頂點x1,y1x1,y1代表一個個隨機變量,頂點之間的弧代表他們之間的依賴關系,采用概率分布P(x1,y1)P(x1,y1)來描述。
③它的特殊性在于變量之間要遵守馬爾可夫假設,即每個狀態的轉移概率只取決于相鄰的狀態,這一點,它和貝葉斯網絡相同。不同之處在于貝葉斯網絡是有向圖,而條件隨機場是無向圖,

1.生成式模型和判別式模型

o,s分別代表觀測序列和標記序列

生成式模型
構建o和s的聯合分布p(s,o),可以根據聯合概率來生成樣本,如HMM,BNs,MRF。
缺點:目標分類問題中容易產生較大的錯誤率
優點:實際上帶的信息比判別模型豐富;能更充分利用先驗知識;模型可以通過增量學習得到
判別式模型
構建o和s的條件分布p(s|o),因為沒有s的知識無法生成樣本,只能判斷分類,如SVM,CRF,MEMM。
缺點:不能反映訓練數據本身的特性
優點:分類邊界更靈活;能清晰分辨出多類或某一類與其他類之間的差異特征;適用于較多類別的識別
二者關系
由生成模型可以得到判別模型,但由判別模型得不到生成模型。

2.詞性標注

除了上一章介紹的HMM進行詞性標注外,也可以使用條件隨機場進行詞性標注。正如分類器所做,首先需要設定一組特征方程。

①CRF的特征函數

每個特征函數的輸入包括:

  • 一個句子ss
  • 詞在句子中的位置ii
  • 當前詞的標簽lili
  • 前一個詞的標簽li?1li?1

②從特征到概率

  • 為我們每個特征函數fifi設置一個權重值λjλj(通過訓練學習得到這些權重值),給定一個句子s,可以通過累加句中所有詞加權后的特征來為s的打標結果打分:

    score(l|s)=j=1mi=1nλjfj(s,i,li,li?1)score(l|s)=∑j=1m∑i=1nλjfj(s,i,li′,li?1′)
    注:第一個求和是對遍歷特征方程jj的求和,第二個球和是對句子里面的每一個位置ii進行遍歷求和。

  • 最終,通過求指數與歸一的方式將得分轉化為0,1之間的概率值:

    p(l|s)=exp[score(l|s)lexp[score(l|s)]=exp[mj=1ni=1λjfj(s,i,li,li?1)]lexp[mj=1ni=1λjfj(s,i,li,li?1)]p(l|s)=exp[score(l|s)∑l′exp[score(l′|s)]=exp[∑j=1m∑i=1nλjfj(s,i,li,li?1)]∑l′exp[∑j=1m∑i=1nλjfj(s,i,li′,li?1′)]
    注:邏輯回歸是分類問題的對數線性模型,CRF是序列標注問題的對數線性模型。


③權重學習

學習CRF權重,以梯度上升方法為例:
有一組訓練樣本(包括句子和相關的詞性標注標簽結果);先為我們的CRF模型隨機初始化權重值;為了使這些隨機初始的權重最終調整為正確的值,需要遍歷每個訓練樣本,然后執行:
  • 遍歷每個特征函數fifi,并為λiλi計算訓練樣本的對數概率梯度值:

    ??wjlogp(l|s)=j=1mfi(s,j,lj,lj?1)?lp(l|s)j=1mfi(s,j,lj,lj?1)??wjlogp(l|s)=∑j=1mfi(s,j,lj,lj?1)?∑l′p(l′|s)∑j=1mfi(s,j,lj′,lj?1′)

  • 梯度公式中第一項是特征fifi在正確標注下的貢獻,梯度公式中的第二項是特征fifi在當前模型中的貢獻。

  • λiλi朝著梯度方向移動:
    λi=λi+α[j=1mfi(s,j,lj,lj?1)?lp(l|s)j=1mfi(s,j,lj,lj?1)]λi=λi+α[∑j=1mfi(s,j,lj,lj?1)?∑l′p(l′|s)∑j=1mfi(s,j,lj′,lj?1′)]
    αα是學習率。

重復上述步驟,直到達到某個停止條件,例如低于某一個閾值。
總而言之就是抽取當前模型與我們想要學習到的模型的差異,將λiλi朝著正確的方向移動。


④找到最佳標注
問題:假定訓練好了CRF模型,這時來了一個新的句子,應該如何標注它?

  • 最直接的方法:
為每個可能的標注ll計算p(l|s)p(l|s),接著選取一種概率值最大的打標。然而對一個大小為k的標簽組和一個長度為m的句子,有kmkm種可能的打標方式。
  • 更好的方法:
使CRF滿足最佳子結構的屬性,使得我們可以使用一種動態規劃算法(多項式時間復雜度)找到最佳標注,類似于HMM的維特比算法。

擴展

詞性標注的方法還有許多,而CRF除了命名實體抽取的其他有趣應用:
eg.圣誕節禮物抽取
①簡單匹配形如‘I want/got xxx for Christmas’的句式
②CRF變種GIFT詞標注:將其轉換為詞性標注問題,基于類似“如果上一個詞是一個GIFT-RECIVER且前一個詞是gave,那么這個詞就是一個GIFT”或者‘如果后面緊跟兩個詞是for Christmas,那么這個詞就是GIFT’的規則去構造特征。

總結

以上是生活随笔為你收集整理的NLP-初学条件随机场(CRF)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。