Contextual String Embedding for Sequence Labeling
1. Introduction
序列標記問題作為NLP的基本問題,其結果好壞對與後續任務有著至關重要的影響。此外,自然語言處理中的許多任務也均能轉化為序列標記問題,如命名實體識別、分詞、詞性標註等。在傳統的機器學習方法中,最初使用隱馬模型實現sequence labeling,其主要思想是將標記序列作為隱狀態序列而將sentence作為觀察的顯示序列,通過定義5元組(隱狀態集合 ,觀測值集合 ,狀態轉移矩陣 ,初始狀態概率分佈 以及指定狀態下觀測值的概率分佈 )計算觀察序列各個時刻的概率分佈。HMM一般包括兩個基本問題即評估問題(給定觀察序列求其出現的概率),其對應前向演算法和後向演算法,解碼問題(給定觀察序列確定最有可能的隱狀態序列,即序列標記問題),其對應Viterbi演算法。然而,對於簡單的HMM演算法,由於隱序列的各個狀態僅由觀察序列的各個狀態確定,而相鄰時刻的隱狀態沒有發生直接的聯繫,因此在詞性標註等任務中會出現如兩個介詞連用的錯誤情形,對此學者的簡單想法是讓相鄰隱狀態間發生直接聯繫,即考慮添加隱狀態間的狀態轉移矩陣,故在最大熵模型的基礎上提出了CRF模型,CRF模型在前深度學習時代得到了廣泛的應用,然而這種非連接主義的方法最大的缺點是依賴人工設計特徵描述子。直至deep learning大火後我們現在也仍需使用embedding+BiLSTM進行特徵表示,然後仍需外加CRF進行序列標記,只不過其模型的參數由學習而得。有關序列標記的詳細介紹可以參考我的這篇筆記:
PoderLee:NLP中的序列標註問題(隱馬爾可夫HMM與條件隨機場CRF)?zhuanlan.zhihu.com