論文解讀:ACL2021 NER | 基於模板的BART命名實體識別


摘要:本文是對ACL2021 NER 基於模板的BART命名實體識別這一論文工作進行初步解讀。

本文分享自華為雲社區《ACL2021 NER | 基於模板的BART命名實體識別》,作者: JuTzungKuei 。

論文:Cui Leyang, Wu Yu, Liu Jian, Yang Sen, Zhang Yue. TemplateBased Named Entity Recognition Using BART [A]. Findings of the Association for Computational Linguistics: ACL-IJCNLP 2021 [C]. Online: Association for Computational Linguistics, 2021, 1835–1845.

鏈接:https://aclanthology.org/2021.findings-acl.161.pdf

代碼:https://github.com/Nealcly/templateNER

0、摘要

  • 小樣本NER:源領域數據多,目標領域數據少
  • 現有方法:基於相似性的度量
    • 缺點:不能利用模型參數中的知識進行遷移
  • 提出基於模板的方法
    • NER看作一種語言模型排序問題,seq2seq框架
    • 原始句子和模板分別作為源序列和模板序列,由候選實體span填充
    • 推理:根據相應的模板分數對每個候選span分類
  • 數據集
    • CoNLL03 富資源
    • MIT Movie、MIT Restaurant、ATIS 低資源

1、介紹

  • NER:NLP基礎任務,識別提及span,並分類
  • 神經NER模型:需要大量標注數據,新聞領域很多,但其他領域很少
    • 理想情況:富資源 知識遷移到 低資源
    • 實際情況:不同領域實體類別不同
    • 訓練和測試:softmax層和crf層需要一致的標簽
    • 新領域:輸出層必須再調整和訓練
  • 最近,小樣本NER采用距離度量:訓練相似性度量函數
    • 優:降低了領域適配
    • 缺:(1)啟發式最近鄰搜索,查找最佳超參,未更新網絡參數,不能改善跨域實例的神經表示;(2)依賴源域和目標域相似的文本模式
  • 提出基於模板的方法
    • 利用生成PLM的小樣本學習潛力,進行序列標注
    • BART由標注實體填充的預定義模板微調
    • 實體模板:<candidate_span> is a <entity_type> entity
    • 非實體模板:<candidate_span> is not a named entity
  • 方法優點:
    • 可有效利用標注實例在新領域微調
    • 比基於距離的方法更魯棒,即使源域和目標域在寫作風格上有很大的差距
    • 可應用任意類別的NER,不改變輸出層,可持續學習
  • 第一個使用生成PLM解決小樣本序列標注問題
  • Prompt Learning(提示學習)

2、方法

2.1、創建模板

  • 將NER任務看作是seq2seq框架下的LM排序問題
  • 標簽集 entity_type:\mathbf{L}=\{l_1,...,l_{|L|}\}L={l1​,...,lL∣​},即{LOC, PER, ORG, …}
  • 自然詞:\mathbf{Y}=\{y_1,...,y_{|L|}\}Y={y1​,...,yL∣​},即{location, person, orgazation, …}
  • 實體模板:\mathbf{T}^{+}_{y_k}=\text{<candidate\_span> is a location entity.}Tyk​+​=<candidate_span> is a location entity.
  • 非實體模板:\mathbf{T}^{-}=\text{<candidate\_span> is not a named entity.}T−=<candidate_span> is not a named entity.
  • 模板集合:\mathbf{T}=[\mathbf{T}^{+}_{y_1},...,\mathbf{T}^{+}_{y_{|L|}},\mathbf{T}^{-}]T=[Ty1​+​,...,TyL∣​+​,T−]

2.2、推理

  • 枚舉所有的span,限制n-grams的數量1~8,每個句子有8n個模板
  • 模板打分:\mathbf{T}_{{y_k},x_{i:j}}=\{t_1,...,t_m\}Tyk​,xi:j​​={t1​,...,tm​}

  • x_{i:j}xi:j​實體得分最高
  • 如果存在嵌套實體,選擇得分較高的一個

2.3、訓練

  • 金標實體用於創建模板
    • 實體x_{i:j}xi:j​的類型為y_kyk​,其模板為:\mathbf{T}^{+}_{y_k,x_{i:j}}Tyk​,xi:j​+​
    • 非實體x_{i:j}xi:j​,其模板為:\mathbf{T}^{-}_{x_{i:j}}Txi:j​−​
  • 構建訓練集:
    • 正例:(\mathbf{X}, \mathbf{T}^+)(X,T+)
    • 負例:(\mathbf{X}, \mathbf{T}^-)(X,T−),隨機采樣,數量是正例的1.5倍
  • 編碼:\mathbf{h}^{enc}=\text{ENCODER}(x_{1:n})henc=ENCODER(x1:n​)
  • 解碼:\mathbf{h}_c^{dec}=\text{DECODER}(h^{enc}, t_{1:c-1})hcdec​=DECODER(henc,t1:c−1​)
  • 詞t_ctc​的條件概率:p(t_c|t_{1:c-1},\mathbf{X})=\text{SOFTMAX}(\mathbf{h}_c^{dec}\mathbf{W}_{lm}+\mathbf{b}_{lm})p(tc​∣t1:c−1​,X)=SOFTMAX(hcdec​Wlm​+blm​)
    • \mathbf{W}_{lm} \in \mathbb{R}^{d_h\times |V|}Wlm​∈Rdh​×∣V
  • 交叉熵loss

3、結果

  • 不同模板類型的測試結果
    • 選擇前三個模板,分別訓練三個模型

  • 實驗結果
    • 最后一行是三模型融合,實體級投票

號外號外:想了解更多的AI技術干貨,歡迎上華為雲的AI專區,目前有AI編程Python等六大實戰營供大家免費學習。

 

點擊關注,第一時間了解華為雲新鮮技術~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM