BiLSTM CRF模型 CRF層的作用

2021-09-27 02:09:01 字數 1133 閱讀 7730

1、輸入句子x通過字嵌入或詞嵌入構成向量。如果是字嵌入,則是隨機初始化的(char2id);若是詞嵌入,則是通過訓練好的詞向量得到(如glove)。

2、字嵌入或詞嵌入構成向量構成bilstm模型的輸入,輸出為句子x中各個字元對應的標籤。如下圖: 

顯然,標籤序列是"i-organization i-person」是錯誤的。雖然我們可以得到句子x中每個字元的正確標籤,但是我們不能保證標籤每次都是**正確的。

1、crf層可以為最後**的標籤新增一些約束來保證**的標籤是合法的。在訓練資料訓練過程中,這些約束可以通過crf層自動學習到的。約束可以是:

i:句子中第乙個詞總是以標籤「b-「 或 「o」開始,而不是「i-」。  

ii:標籤「b-label1 i-label2 i-label3 i-…」,label1, label2, label3應該屬於同一類實體。例如,「b-person i-person」 是合法的序列, 但是「b-person i-organization」 是非法標籤序列。  

iii:標籤序列「o i-label」 is 非法的.實體標籤的首個標籤應該是 「b-「 ,而非 「i-「, 換句話說,有效的標籤序列應該是「o b-label」。

2、crf中有轉移特徵,即它會考慮輸出標籤之間的順序性,也會學習一些約束規則

當乙個**序列得分很高時(或概率最大時),並不是取各個位置都是softmax輸出最大概率值對應的標籤,還要考慮轉移概率相加最大,即還要符合輸出規則(b-person後面不能跟i-organization),比如假設bilstm輸出的最有可能序列為(i-o,i-p,o,i-o,i-p),但因為我們的轉移概率矩陣中i-o->i-p的概率很小甚至為負,那麼根據綜合得分(概率),這種序列不會得到最高的分數(概率),即就不是我們想要的序列

reference:

序列標註 BiLSTM CRF模型

對於序列標註問題,目前bilstm crf模型是目前使用比較流行的方法。本文以neural architectures for named entity recognition為例,講解bilstm crf模型在命名實體識別任務上的應用,著重於crf層的分析。假設資料集有兩種實體型別 人物 pers...

CRF模型原理解析。

前置條件 概率無向圖模型 馬爾可夫性 hammersley clifford原理 統計學習方法 11.1 假設有事件x1 x2 x3,你想計算出 p x1 p x2 p x3 p x1 x2x3 p x2 x1x3 p x3 x1x2 你並不知道,x1 x2 xn之間的關係,你希望能有乙個神奇的模型...

CRF的模型引數學習問題

當乙個crf條件隨機場模型引數確定後,基於crf進行狀態序列 問題,比如給定中文語句觀測序列,來 整個中文語句當中每個詞的詞性,實質問題就是 每個句子的隱含詞性狀態問題,在相關條件轉移矩陣等模型引數給定的條件下,利用維特比演算法,就能 出概率最大的隱含狀態,從而實現詞性識別,本文主要是討論crf 的...