Try   HackMD

Packed Levitated Marker for Entity and Relation Extraction

acl 2022

重點

  • 這篇主要由 A Frustratingly Easy Approach for Joint Entity and Relation Extraction 改良而來
  • 過往的作法專注在讓 span 有更好的表示,但他們忽略了 spans 之間的關係,本文提出 Packed Levitated Markers (PL-Marker) 來改進
  • 對於那些更複雜的 span 預測任務,提出 subject-oriented packing strategy
  • 提出 neighborhood-oriented packing strategy

背景

pre-trained language models(PLMS) 在 name entity recognition (NER) 和 relation extraction (RE) 任務有很好的成果,最近的研究將其視為 span pair classification,因此需要更專注在製造出更好的 span representaion

// span classification 就是先把 token 組成 span,再去對 span 做分類

以下為常見的三種 span representaion extraction methods

  • T-concat 將 start 和 end 串起來,這作法收集了 token 資訊,但忽略 span 之間的關係
  • Solid maker 在 span 前後插入 solid makers 標示,並用兩種 maker 來標示 subject 和 object。但在有多個 span 時會無法應付
  • Leviated Marker (懸浮標記),一樣是插入標記,但標記會隨著 NER 辨識結果改變

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

提出了 Packed Levitated Marker(PL-Marker)

In this work, we introduce Packed Levitated Marker (PL-Marker), to model the interrelation between spans (pairs) by strategically packing levitated markers in the encoding phase.

隨著 leviated marker 的增多,運算複雜度也會隨之升高,所以我們需將 spans 分成多個群組來控制每個輸入句子的長度。

相鄰 span 的關係也是需要注意的,例如具有相同 start token 的 span,他們之間的 分界(boundary) 應該要很明確。我們提出 neighborhood-oriented packing strategy,盡可能將具有相同開始 token 的 span ,打包成同一個訓練實體來讓模型學習他們的分界。

對於更複雜的 span pair classification 任務,理想的方式為將所有的 span pair 打包起來,

Related work

Levitated Marker
在 A Frustratingly Easy Approach for Joint Entity and Relation Extraction 提出,將特殊標記作為 token 插入輸入句子,並共用 positional embeddings,用以代表 span 資訊

Knowledge Infusion
將額外知識加入模型,如用 knowledge graph 產生實體特徵後再去結合 NER 模型

Structural Extension
模型架構延伸,對現有的模型進行擴展,像是

  • biaffine attention
  • graph propagation
  • memory flow
  • solid markers
  • 本論文對 NER 進行延伸

方法

Neighborhood-oriented Packing for Span

levitated markers 是可平行處理的,我們可以將有相關的 span 打包成一個訓練實體。

  • 實際上將多個相關的 levitated marker 接到輸入後面,來讓模型全面的學習每個 span

levitated marker

即使限制了 entity 長度,還是會產生很多可能的 span

  • 提出 neighborhood-oriented packing scheme 來解決。
  1. 枚舉所有可能的 span (開始位置, 結束位置)
  2. 將他們依照 開始/結束位置由小排到大
  3. 將其分組(最多k個)
  4. 將這 k 個 [O][/O] Levitated marker 插入到輸入句子後面形成一個訓練實體
  5. 輸入預訓練模型後,取得每個 token 的對應輸出
    hi

如果要對 China 的 span 進行預測,將對應 levitated marker 的

hi 串接起來。將其接上分類層後預測 NER 類別分類。

Span("china")=[hstart,hend]

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

結果