BiLSTM-CRF Models for Sequence Tagging(翻譯)

Abstract(摘要)

  在本文中,我們爲序列標註任務提出了一系列基於長短時記憶網絡 (LSTM)的模型。這些模型包括 LSTM 網絡,BI-LSTM 網絡,帶有條件隨機場(CRF)層的 LSTM 網絡(LSTM-CRF),以及帶有 CRF 層的 BI-LSTM 網絡(BI-LSTM-CRF)。我們第一次將 BI-LSTM-CRF 模型應用在 NLP 序列標註的基準數據集上。我們證明, 基於雙向 LSTM 組件, BI-LSTM-CRF 模型可以有效地利用過去和未來的輸入特徵。藉助 CRF 層, 它還可以使用句子級別的標記信息。BI-LSTM-CRF 模型在POS(詞性標註),chunking(語義組塊標註)和 NER(命名實體識別)數據集上產生了令人驚奇的精確度。另外,BI-LSTM-CRF模型是一個健壯的,並且對詞嵌入具有更少依賴的模型。

1. 簡介

  序列標註任務包括POS(詞性標註),chunking(語義組塊標註)和NER(命名實體識別),都是自然語言處理類別的任務。已經被研究者關注了數十年。這些輸出的標籤能夠應用於下游的應用。例如, 可以使用在用戶搜索查詢上訓練過的命名實體識別器來標識哪些文本範圍是產品, 從而觸發某些產品廣告。另一個例子是, 搜索引擎可以使用此類標籤信息來查找相關網頁。
  絕大多數現有的序列標註模型都是線性統計模型,包括隱含馬爾科夫模型(HMM),最大熵馬爾科夫模型(MEMMs),以及條件隨機場模型(CRF)。最近提出的基於卷積網絡的模型也被用來解決序列標註問題。我們指出,像Conv-CRF這樣,將卷積網絡和CRF組合在一起的模型,在序列標註的任務上取得了比較好的效果。在語音理解社區,最近提出了基於循環神經網絡和卷積網絡的模型。其他相關的工作包括爲語音識別提出了雙向循環網絡模型。
  在這篇文章中,我們爲序列標註任務提出了一系列基於長短時記憶網絡 (LSTM)_的模型。這些模型包括 LSTM 網絡,BI-LSTM 網絡,帶有條件隨機場(CRF)層的 LSTM 網絡(LSTM-CRF),以及帶有 CRF 層的 BI-LSTM 網絡(BI-LSTM-CRF)。我們的貢獻如下:

  1. 我們系統地比較了上述模型在 NLP 標記數據集上的性能;
  2. 我們第一次將 BI-LSTM-CRF 模型應用在 NLP 序列標註的基準數據集上。我們證明, 基於雙向 LSTM 組件, BI-LSTM-CRF 模型可以有效地利用過去和未來的輸入特徵。藉助 CRF 層, 它還可以使用句子級別的標記信息。BI-LSTM-CRF 模型在 POS(詞性標註),chunking(語義組塊標註)和 NER(命名實體識別)數據集上產生了令人驚奇的精確度。
  3. 我們證明了 BI-LSTM-CRF 模型是一個健壯的,並且對詞嵌入具有更少依賴的模型。他可以在不依賴詞嵌入的前提下產生精確的標記性能。

  本文剩餘的內容是這樣組織的。第二節描述本文中使用的序列標註模型。第三節展示訓練過程。第四節報告實驗結果。第五節討論相關的研究。最後在第六節刻畫結論。

2. 模型

  在這一節,我們描述文本使用的模型:LSTM、BI-LSTM、CRF、LSTM-CRF 以及 BI-LSTM-CRF。

2.1 LSTM網絡

  循環神經網絡(RNN)在多種任務包括語言模型和語音識別中取得了很有前景的效果。RNN 維護了關於歷史信息的記憶,能夠使模型通過長距離的特徵來預測當前的輸出。
  圖1展示了RNN的結構,由輸入層 x,隱藏層 h 以及輸出層 y 組成。在命名實體標註的上下文中,x 表示輸入特徵而 y 表示標籤。圖1展示的命名實體識別系統中,每一個單詞都標註爲其他(O)或者四種實體類型(人名 - PER,地名 - LOC,組織機構 - ORG,雜項 - MISC)中的一個。句子 EU rejects German call to boycott British lamb. 被標註爲B-ORG,O,B-MISC,O,O,O,B-MISC,O,O,。其中前綴 B- 和 I- 表示每一個實體的開始和中間的位置。
  一個輸入層表示時刻 t 的特徵。可能是基於獨熱編碼的詞特徵,密集的特徵向量或者稀疏向量。輸入層的維度與應當與特徵的大小相等。一個輸出層表示在時刻 t ,標籤取值的概率分佈。輸出層的維度與標籤數量大小相等。與前饋神經網絡相比,RNN引入了上個隱藏狀態與當前隱藏狀態的連接(因而產生了循環層的權重參數)。這種循環層是設計用來保存歷史信息的。隱藏層和輸出層的值是通過下面的方式進行計算的:


U,W 以及 V 就是在訓練時刻被計算的連接權重,並且 f(z)g(z)sigmoidsoftmax 激活函數:

  在本文中,我們應用長短時記憶網絡(Long Short-Term Memory)進行序列標註。LSTM 網絡和 RNNs 一樣,除了隱藏層的更新模塊被專門構建的記憶細胞所取代。其結果就是,LSTM能夠更好的發現和探索數據中長範圍的依賴信息。圖2展示了一個LSTM記憶細胞(cell)。


LSTM的記憶細胞是通過下面的公式實現的:

其中 σ 是邏輯 sigmoid 函數,以及if, oc 分別是輸入門,遺忘門,輸出門和細胞向量,所有這些都與隱藏向量 h 的大小相同。權重矩陣下標的含義與名稱是等價的。舉個例子,W_{hi}是隱藏 - 輸入門矩陣,W_{xo}是輸入 - 輸出門矩陣。從細胞(cell)到門(gate)向量的權值矩陣是對角矩陣,因此,每一個門向量中的元素 m 只接受來自於細胞向量元素m 的輸入。

2.2 雙向 LSTM 網絡

  在序列標註任務中,我們需要在給定時間訪問過去或未來的輸入特徵,因此我們可以利用雙向 LSTM 網絡(圖4)。這樣做,我們能夠在指定的時間範圍內有效地使用過去的特徵(通過前向狀態)和未來的特徵(通過後向的狀態)。我們使用通過時間的反向傳播(BPTT)來訓練雙向LSTM網絡。隨着時間推移,在展開的網絡上進行的前向和後向傳遞同常規網絡中的前向和後向傳遞方式類似,除了我們需要對所有的時間步驟展開隱藏狀態。我們還需要在數據點的開始和結束時進行特殊的處理。在我們的實現中,我們對整個句子進行前向掃描和後向掃描的時候僅僅需要在句子的開頭將隱藏狀態重置爲0。我們做了批量的實現,這使得多個句子可以同時被處理。

2.3 CRF網絡

  有兩種方式可以在預測當前標籤的時候使用鄰居的標籤信息。第一種就是在每一個時間步都預測標籤的分佈然後使用 beam-like 編碼方式來發現最優的標籤序列。最大熵分類器和最大熵馬爾科夫模型(MEMMs)都屬於這種類別。第二種就是把關注點放在句子級別上,而不是個別位置,從而導致了條件隨機場(CRF)模型的出現(圖5)。注意,CRF 的輸入和輸出是直接相連的,這與 LSTM 和 BI-LSTM 網絡剛好相反,是通過記憶細胞和循環組件連接在一起的。
  一般情況下,CRF模型能夠產生更高的標籤精度。有趣的是,這兩種使用標籤信息方式之間的關係與兩種使用輸入特徵的方式的關係類似(可以看看前文中的LSTM網絡和BI-LSTM網絡),並且本文的結果證明了BI-LSTM比LSTM要優越。

2.4 LSTM-CRF 網絡

  我們將LSTM網絡和CRF網絡整合成爲LSTM-CRF模型,如圖6所示。通過LSTM層,這個模型可以有效的利用過去的輸入特徵,通過CRF層,模型可以有效的利用句子級的標籤信息。CRF層由連接連續輸出層的線條表示。CRF層具有一個狀態轉移矩陣作爲參數。利用這樣的一個層,我們可以有效地利用過去和未來的標籤來預測當前的標籤,這類似於雙向LSTM網絡能夠利用過去和未來的輸入特徵。我們將分數矩陣f_θ([x]_1^T)看做是網絡的輸出。我們丟棄輸入[x]_1^T來簡化計數。矩陣攜帶θ的元素[f_θ]_{i,t}是網絡輸出的關於句子[x]_1^T中第 t 個詞的第 i 個標籤的分數。我們引入轉換分數[A]_{i,j}來模擬一對連續的時間步長從第 i 個狀態到第 j 個狀態的轉換。注意,這個轉移矩陣與位置無關。現在我們來看看網絡的新參數\breve \theta=\theta\bigcup\{[A]_{i,j}\forall i,j \}。然後,通過轉移分數和網絡分數的總和給出句子[x]^T_1的分數以及標籤[i] ^T_1的路徑:

動態編程可以有效地用於計算[A]_{i,j}和最佳標籤的推理序列。

2.5 BI-LSTM-CRF網絡

  與LSTM-CRF網絡類似,我們將一個雙向LSTM網絡和一個CRF網絡合併成爲一個BI-LSTM-CRF網絡(圖7)。除像LSTM-CRF模型那樣能夠利用過去的輸入特徵和句子級別的標籤信息之外,BI-LSTM-CRF模型還能夠利用未來的輸入特徵,這項額外的功能可以提高標註的準確性,正如我們將在實驗中展示的那樣。


3 訓練過程

  本文使用的所有模型都有一個通用的SGD前向和後向的訓練程序。我們選擇最複雜的模型BI-LSTM-CRF,來展示算法1中描述的訓練算法。在每一次迭代中,我們將整個訓練數據分成很多批次,每一次處理一批。每一個批次包含一個句子列表,列表的大小由參數 batch size 決定。在我們的實驗中,每一個批次的大小爲100([ batch size ] = 100),這意味着每一次處理的句子列表的大小不會超出100。對於每個批次,我們首先運行BI-LSTM-CRF模型進行前向傳遞,其包括LSTM的前向狀態和後向狀態的前向傳遞。我們會獲取所有位置的所有標籤的輸出分數作爲結果。然後,我們運行CRF層的前向和後向傳遞,以計算網絡輸出和狀態轉換邊緣的梯度。做完這些,我們將錯誤從輸出反向傳播到輸入,這包括對LSTM前向和後向狀態的反向傳遞。最後,我們更新網絡參數,這包括轉移矩陣 [A]_{i,j} \forall i,j 和原初的BI-LSTM的參數\theta

算法1:BI-LSTM-CRF模型訓練過程

1: for each epoch do
2:   for each batch do
3:     1) bidirectional LSTM-CRF model forward pass:
4:         forward pass for forward state LSTM
5:         forward pass for backward state LSTM
6:     2) CRF layer forward and backward pass
7:     3) bidirectional LSTM-CRF model backward pass:
8:         backward pass for forward state LSTM
9:         backward pass for backward state LSTM
10:     4) update parameters
11:   end for
12: end for

4 實驗

4.1 數據

  我們在三個NLP序列標註任務:Penn TreeBank(PTB,賓州樹庫)詞性標註,CoNLL 2000 語義組塊識別,以及CoNLL 2003 命名實體標註上測試了LSTM、BI-LSTM、CRF、LSTM-CRF以及BI-LSTM-CRF模型。表格1展示了句子、詞以及訓練標籤的數量,以及驗證和測試集。
  序列標註爲每一個詞分配一個標籤,這個標籤標識詞的句法角色。在語義組塊中,使用短語類型來標註每一個詞。舉個例子:標籤 B-NP 表示一個詞開始了一個名詞短語。在NER(命名實體識別)任務中,每一個詞使用其他的實體類型或者四種實體類型中的一個:Person,Location,Organization或者Miscellaneous來標註。對於語義組塊識別和命名實體實體識別任務,我們使用 BIO2 規範來標註訓練數據。

4.2 特徵

  我們爲三個數據集抽取相同類型的特徵。這些特徵可以分組爲拼寫特徵和上下文特徵。我們爲指定的POS、chunking、NER數據集分別抽取了401K,76K,341K的特徵數據。這些特徵類似於使用 Stanford NER 工具抽取的特徵。注意除了使用Senna嵌入之外,對於POS和chunking任務我們並未使用額外的數據。對於NER任務,我們報告使用拼寫和上下文特徵的性能,同時我們也增量報告了使用Senna嵌入和Gazetteer特徵的結果。

4.2.1 拼寫特徵

  除了單詞的小寫特徵外,我們還未一個給定的單詞提取以下特徵。

  • 是否首字母大寫
  • 是否所有字母都是大寫
  • 是否所有字母都是小寫
  • 是否有非首字母的大寫字母
  • 是否是由字母和數字混合的
  • 是否由標點符號
  • 字母前綴和後綴 (窗口大小爲2到 5)
  • 是否由('s)結尾
  • 只包含一個字母,例如: I. B. M. 對IBM
  • 不只包含字母,例如:A. T. &T. 對..&
  • 單詞模式特徵,用大寫字母、小寫字母和數字分別映射到 "A"、"a" 和 "0",例如:D56y-3 到 A00a-0。
  • 單詞模式摘要特徵,類似於詞模式特徵,但是刪除了連續相同的字符。

4.2.2 上下文特徵

  對於三個數據集中的詞特徵,我們使用一元和二元語法特徵。對於CoNLL2000數據集在POS任務,以及CoNLL2003數據集在POS和CHUNK任務上的特徵,我們使用一元,二元和三元語法特徵。

4.2.3 詞嵌入

  詞嵌入在提升序列標註性能上扮演了一個至關重要的角色。我們下載了詞典長度爲130K,維度爲50維的詞嵌入模型,在嵌入層,我們只是簡單的將獨熱編碼的詞表示替換成爲50維的詞向量。

4.2.4 特徵連接技巧

  我們處理拼寫特徵和上下文特徵的方式和處理詞特徵的方法一樣。也就是說,網絡的輸入同時包括詞,拼寫和上下文特徵。然而,我們發現從拼寫和上下文特徵到輸出的直接連接可以加速訓練,並且會導致非常相似的標註精度。圖8展示了特徵與輸出直接相連的網絡。我們將報告所有使用了這種連接方式的精確度。我們注意到這種特徵應用方式與 Mikolov et al. 2011 中使用的最大熵特徵有相同的思想。不同之處在於 Mikolov et al. 2011 中採用了特徵哈希技術,因此會發生特徵碰撞。因爲序列標註數據集中輸出的標籤數遠遠小於語言模型(通常有數十萬個),所以我們可以保證在特徵和輸出之間採用全連接的同時避免潛在的特徵碰撞。

4.3 結果

  我們針對每一個數據集訓練LSTM,BI-LSTM,CRF,LSTM-CRF以及BI-LSTM-CRF模型。我們使用兩種方式來初始化詞嵌入:RandomSenna。在第一類中我們隨機地初始化詞嵌入向量,第二類中,我們使用Senna詞嵌入。對於每一種類別,我們使用相同的特徵集,因此不同的結果完全是由於不同的網絡產生的。我們使用訓練數據訓練模型,使用驗證數據集來監控性能。如果分塊的數據沒有驗證數據,我們使用部分訓練數據來驗證模型。
  我們使用0.1的學習率來訓練模型。我們設置隱藏層的大小爲300,同時發現模型的性能對於隱藏層大小並不敏感。這三種任務的訓練需要不到10次迭代就能夠收斂,一般需要不到幾個小時。我們在表2中報告了模型在測試數據集上的性能,同時我們也列出了論文(Collobert et al., 2011)中的最好結果,表示爲Conv-CRF。POS任務通過計算每個字的準確性進行評估,而 chunk 和 NER 任務則通過計算組塊上的 F1 分數來評估。

4.3.1 與Conv-CRF網絡的比較

  我們有三個基準模型:LSTM,BI-LSTM 以及 CRF。LSTM是這三個數據集上最弱的基準。BI-LSTM 在 POS 和 chunking 數據集上的性能接近CRF,但是在NER數據集上的性能不如CRF。CRF模型在我們的實驗中是最強的基準。對於隨機類別, CRF 模型在所有三個數據集中的性能優於 Conv-CRF 模型。對於Senna類別,CRF 模型在 POS 任務上的表現優於 Conv-CRF,但在 chunking 和 NER 任務上的表現不如 Conv-CRF。LSTM-CRF 模型的性能在所有數據集上優於 CRF 模型。這表明了正向 LSTM 組件在建模序列數據中的有效性。BI-LSTM-CRF 模型進一步改進了 LSTM-CRF 模型,BI-LSTM-CRF 在除了隨機類型的 POS 任務(該任務還是 LSTM-CRF 性能最好)之外的其他所有任務上取得了最好的標註性能。在 CoNLL 200 的 Senna 類別中,括號裏面的數字是由 Gazetteer 特徵生成。
  有趣的是,我們最好的模型 BI-LSTM-CRF 對 Senna 詞嵌入的依賴性比 Conv-CRF 模型要小。例如,BI-LSTM-CRF 在隨機類型和Senna類型之間的標記差異分別是 POS:0.12%,chunking:0.33%,NER:4.57% 。相反,Conv-CRF模型在很大程度上依賴於Senna嵌入以獲得良好的標記準確性,標記差異分別爲 POS:0.92%,chunking:3.99%和NER:7.20%。

4.3.2 模型健壯性

  爲了估計模型在工程特徵(拼寫和上下文特徵)方面的穩健性,我們僅僅使用詞特徵訓練 LSTM,BI-LSTM,CRF,LSTM-CRF和 BI-LSTM-CRF 模型(移除了拼寫和上下文特徵)。表3顯示了使用Senna字嵌入的建議模型在 POS,chunking 和 NER 數據集上的標記性能。其中括號中的數字表示與使用了拼寫和上下文特徵的相同模型相比,下降的性能。CRF模型在移除了拼寫和上下文特徵的情況下發生了顯著的性能下降。這表明了CRF模型嚴重依賴特徵工程的事實。換句話說,基於LSTM的模型,尤其是 BI-LSTM 和 BI-LSMT-CRF模型是更加健壯的,並且當我們移除工程化的特徵後,受到的影響也最低。對於所有三個任務,BI-LSTM-CRF模型擁有最高的標註精度。例如,BI-LSTM-CRF 在 CoNLL 2000 上的 chunking 任務取得了94.40的F1分數,比起使用了拼寫和上下文特徵的模型,只降低了(0.06)。

4.3.3 與已存在系統的比較

  對於 POS 數據集,我們在使用或不使用額外數據資源的情況下實現了最先進的標記準確性。POS 數據集已經過廣泛測試,過去的改進可以在表4中看到。我們的測試準確率爲97.55%,在置信水平爲95%時明顯優於其他測試。此外,我們的BI-LSTM-CRF模型在無需使用Senna詞嵌入的情況下達到了良好的精度。


  所有 chunking 系統的性能如表5所示。Kudo 等人贏得了 CoNLL 2000 的挑戰賽,F1得分爲93.48%。 他們的方法是基於SVM的分類器。他們後來將結果提高到93.91%。最近的工作包括基於 CRF 的模型(ShaPereira ,2003年;Mcdonald 等人,2005年;Sun 等,2008年)。更近期的是(ShenSarkar,2005年),其使用的投票分類器方案獲得了95.23%的準確度,其中每個分類器在不同的標籤表示(IOB,IOE等)上訓練。 除了(ShenSarkar,2005年)之外,我們的模型優於所有報告的系統。
  NER的所有系統的性能如表6所示。(Florian 等 ,2003年)在 NER CoNLL 2003 挑戰中成爲最佳系統,F1得分爲88.76%。他們使用了各種機器學習分類器的組合。 排名第二的是(Chieu,2003年),F
1得分是88.31%,也是在外部地名錄的幫助下。在這之後,(AndoZhang,2005年)以半監督方式達到了89.31%的F1值。(Passos 等,2014)報告了90.90%的最佳F1得分,它採用了一種新的形式來學習單詞嵌入,這種方式可以利用相關詞典中的信息來改進表示。我們的模型可以通過 Senna 嵌入和地名詞典功能獲得90.10的最佳F1分數。它的F1得分低於(Passos 等,2014),這可能是由於採用了不同的詞嵌入這一事實。使用相同的Senna嵌入,BI-LSTM-CRF略微優於Conv-CRF(90.10%對比89.59%)。然而,如果使用隨機嵌入,BI-LSTM-CRF明顯優於Conv-CRF(84.26%對81.47%)。


5. 討論(Discussions)

  我們的工作與(Collobert等,2011年)的工作接近,都是使用深度神經網絡進行序列標註。他們的工作使用的是卷積神經網絡,而我們的工作是使用雙向LSTM網絡。
  我們的工作也接近(Hammerton,2003年;Yao 等,2014年)的工作,因爲他們都使用 LSTM 網絡進行序列標記。(Hammerton,2003年)的表現並不令人印象深刻。(Yao 等,2014年)的工作沒有使用雙向 LSTM 和 CRF 層,因此標註的準確性可能會受到影響。
  最後,我們的工作與(WangManning,2013年)的工作有關,其結論是非線性體系結構在高維離散特徵空間中沒有任何好處。 我們展示了使用 BI-LSTM-CRF 模型,我們始終獲得比具有相同特徵集的單個CRF模型更好的標記精度。

6. 結論(Conclusions)

  在這篇論文中,我們有計劃的比較了基於LSTM網絡的模型在序列標註上的性能。我們第一個提出將BI-LSTM-CRF模型應用於NLP基準序列標註數據。 我們的模型可以在POS,chunking 和 NER 數據集上產生最先進(或接近)的精度。此外,與(Collobert 等,2011年)中的觀察相比,我們的模型是健壯的並且對字嵌入的依賴性較小。 它可以在不使用詞嵌入的前提下實現準確的序列標註。

原文地址:《BiLSTM-CRF Models for Sequence Tagging》

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章