一、本文主要內容
主要介紹了兩中命名實體識別的模型,第一種是老生常談的bi-LSTM-CRF模型,這個在論文的實踐領域中,已經有很多改進的方法,比如添加字符級別的嵌入,加入attention機制等等,第二種是一個目前我還未讀到的一個模型,Transition-Based Chunking Model,它使用類似於基於過渡的依賴解析(transition-based dependency parsing)的算法來分塊和標記輸入序列,它構造了多個令牌名稱。
1、bi-LSTM-CRF模型
該模型直接將長短期記憶網絡的輸出作為CRF的輸入,輸出是矩陣P(分數矩陣),大小是n*k,k是標簽類別的種類個數。
一個輸入句子 序列預測
,目標得分函數為:
,A是一個得分轉換矩陣(a matrix of transition scores),代表從 i 到 i + 1 的得分轉變,y(0)和y(n)是開始和結束標志,所以A的大小為 k+2。
然后在,在所有可能的標記序列上的一個softmax產生序列y的概率
在訓練中最大化正確標簽序列的對數概率
解碼時,預測最大的分數作為輸出 (可動態規划求解)
本模型中,我們不使用softmax輸出層,直接將要LSTM的輸出輸入到CRF中,再輸出CRF的結果,就是我們最終預算得分的結果。並且在LSTM(c)與CRF中間加一個隱層對結果更好。
標記,采用IOBES標記方法,I是命名實體非開始的單詞,O是命名實體之外的單詞,B是命名實體開始的單詞,E時命名實體結尾的單詞,S時單個命名實體
2、Transition-Based Chunking 模型
是前一個模型的替代方案,采用類似於基於過渡的依賴解析的算法對輸入序列進行分塊和標記。 該模型直接構造多個令牌名稱的表示。 該模型依賴於堆棧數據結構來增量構造輸入的塊。
使用Stack-LSTM預測輸出標簽(其中LSTM使用堆棧指針加強),可參考Transition-based dependency parsing with stack long short-term memory
本文中,主要是,用一種新的算法使用這個結構,下面將主要探討下這個算法------Chunking Algorithm。

帶字母的embedding,再通過詞查找表生成embedding,兩者都是隨機的,最后一起合成一起,輸出的給雙向的LSTM。
上面基於字符和詞的查找表是隨機生成的,作者發現沒有預訓練的好,於是用word2vec的skip gram進行訓練,並微調。作者還發現,用隨機初始化的字母lookup向量也預訓練的詞向量結合,效果並不理想,於是在組合兩方面向量的最后一層加入了一個dropout后,再輸入到BILSTM,這樣效果顯著。
二、相關工作
訓練:1、訓練通過BP算法更新參數。
2、用SGD以0.01的學習率優化參數,以5.0作為梯度的閾值。
3、LSTM-CRF模型用前向和后向LSTM各一個獨立層,維度為100,並加入了0.5dropout。
4、Stack-LSTM每一個stack用了2個100維的網絡層,用16維的向量表示actoion,輸出向量為20維。這個模型也加入了dropout,dropout rate通過調試,采用最好的那一個(不固定),采用貪婪模型,獲取局部最優。
三、個人想法
1、在簡稱生成的模型上,用CRF。可以采用IOBES這個標記,應該效果會比簡單的更好,這個可以在工作中實驗一下,不過最好還是要用代碼進行其余的標注,避免全手動標注。
2、第二個替換的模型,有點懵逼,再思考下吧
3、這個雙向的LSTM與CRF的中間沒有softmax層
4、這個,開山鼻祖,看的很懵逼啊