本期推薦的論文筆記來自 PaperWeekly 社群使用者 @handsome。這篇論文是 COLING 2018 的 Most reproducible Paper。作者用 PyTorch 實現了一個統一的序列標註框架,重現了 CoNLL 2003 English NER、CoNLL 2000 Chunking 和 PTB POS tagging 這三個資料集上不同模型的的表現。值得一提的是,基於這個統一的框架,作者對一些已有工作的一些不一致的結論進行了反駁,提出了一些新的看法。對於實踐者而言,這篇論文還是很有借鑑意義的。
關於作者:樑帥龍,新加坡科技設計大學博士生,研究方向為自然語言處理。
■ 論文 | Design Challenges and Misconceptions in Neural Sequence Labeling
■ 連結 | https://www.paperweekly.site/papers/2061
■ 原始碼 | https://github.com/jiesutd/NCRFpp
引言
這篇論文是 COLING 2018 的 Best Paper 之一 “Most Reproducible Paper”,論文基於的 PyTorch 程式碼框架 NCRF++ 也收錄於 ACL 2018 的 Demo Paper。
作者用一個統一的序列標註框架實現了不同模型架構在 NER, Chunking, POS Tagging 資料集上的表現,並對已有工作的一些不一致的結論進行了檢驗,發現了新的結論。程式碼在 Github 上已經開源,使用文件也非常詳盡,做序列標註的童鞋們又多了一把利器可以使用。
任務
CoNLL 2003 英文的命名實體識別 (NER)
CoNLL 2000 Chunking
PTB POS Tagging
模型
字元序列表示
在詞的表示方面,本文摒棄了基於傳統的特徵的方法,直接使用詞本身的資訊進行編碼。除了詞向量以外,為了更好地對那些不常見的詞編碼,文章使用 LSTM 或者 CNN 對構成詞語的字元進行編碼。
詞序列表示
在整個句子級別,文章同樣使用 LSTM / CNN 對構成句子的詞語的表示進行上下文的編碼。
預測層
獲取了每個詞的上下文表示之後,在最後的預測層,文章使用了基於 Softmax 的和基於 CRF 的結構。和 Softmax 相比, CRF 往往更能有效地結合上下文的標籤的依賴關係進行預測。
實驗結果
NER的實驗結果
Chunking的實驗結果
POS Tagging的實驗結果
從以上結果來看,字元序列的表示方面,CNN 和 LSTM 的結果差別不大;詞序列的表示方面,LSTM 的結果比 CNN 的稍好一些,說明全域性資訊的有效性;預測層方面,POS Tagging 任務的 CRF 和 Softmax 表現相當,但是 NER、Chunking 的 CRF 的結果要比 Softmax 好一些。相比 POS 的tags,BIE 標籤之間的依賴關係可能更容易被 CRF 所建模。
其他
這篇文章也檢驗了預訓練的詞向量的不同(GloVe/SENNA),標註體系的不同 (BIO/BIOES),執行環境的不同(CPU/GPU),以及優化器的不同 (SGD/Adagrad/Adadelta/RMSProp/Adam)對結果的影響。感興趣的同學可以檢視論文原文。
最後
本文程式碼已開源,使用非常方便,也可以加自定義的 feature,幾乎不用自己寫程式碼就可以使用了。