[EMNLP 2020] Double Graph Based Reasoning for Document-level Relation Extraction 논문 정리

Jiwung Hyun
10 min readOct 20, 2020

--

EMNLP 2020 논문 읽기 (1)

[paper] [github]

Reference

[1] S. Zeng, R. Xu, B. Chang, L. Li, Double Graph Based Reasoning for Document-level Relation Extraction, The 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP 2020)

최근에 관심있게 읽은 EMNLP 2020 논문이다. 논문을 읽는 것과 별개로 논문을 글로 정리하는 것은 생각보다 되게 힘든 일 같다. 그래서 정말 오랜만에 이 논문을 글로 정리하면서 마음가짐을 잡기로 하였다. ㅎㅎ;

Outline

  • Abstract + Introduction
  • Graph Aggregation and Inference Network (GAIN)
  • Result
  • Ablation Study + Case Study

Abstract + Introduction 만 읽고 정리해보기

Relation extraction 은 자연어 처리의 대표적인 Task 중 하나이고, 문장과 두 개의 entity가 주어졌을 때, 두 entity 간의 관계를 추론하는 Task이다. BERT 이후로 Relation extraction의 성능은 훨씬 좋아졌고, 기존 문장 단위의 Relation extraction을 넘어서 문서 단위의 Relation extraction으로 Task가 확장되고 있다. (DocRED 데이터셋의 등장으로)

문장 단위에서 문서 단위로 확장된 범위의 Task의 주요 쟁점은 다음과 같다.

  1. 관계의 subject, object entity 들이 서로 다른 문장에 있을 수 있다.
    → 이러한 점은 문장 단위에서는 없었기 때문에 새롭게 해결해야 하는 핵심 쟁점이며, 단순 single sentence 기반의 방식으로는 식별할 수 없다.
  2. 같은 entity가 서로 다른 문장에서 여러 번 언급될 수 있다.
    → entity를 잘 표현하기 위해서는 여러 문장에 걸친 cross-sentence context 정보가 통합되어야 한다.
  3. 많은 관계를 추론하는데 있어서 logical reasoning 능력이 수반된다.
    → 이는 이러한 관계가 다른 entity, relation과 문장에 걸쳐 퍼져 있을 때에만 암묵적으로 또는 명시적으로 식별할 수 있다.

정리하자면 여러 문장 간의 reasoning 능력이 요구된다는 것이다.

실제로 DocRED development set에 대하여 랜덤으로 100개의 문서를 샘플링하여 bad case에 대한 분석을 진행하였을 때, inter-sentence error가 53.5%, logical reasoning error가 21.0%로 큰 부분을 차지하였다. 따라서, 저자들은 이 문제들을 해결하는 것을 목표로 하였다.

이전 연구들의 경우 reasoning을 고려하지 않은 연구도 있었고, 단순히 graph-based neural network 또는 hierarchical neural network을 사용하여 implicit한 방식으로 reasoning을 구축한 경우만 있었다.

이 논문에서 새롭게 제안하는 GAIN (Graph Aggregation-and-Inference Network)는 DocRED 데이터셋에서 이전 state-of-the-art보다 2.85 F1 score를 높이는 성능을 보였다. 바로 다음 섹션에서 모델을 설명하기 때문에 간단하게만 설명을 하자면, GAIN 네트워크는 먼저 heterogeneous mention-level graph (hMG)를 구축하여 문서 내의 서로 다른 mention 간의 관계를 모델링한다. 그 후, Graph Convolution Network를 적용하여 각 mention에 대한 문서 간의 표현을 얻어낸다. hMG에서 같은 entity를 참조한 mention들을 합쳐서 Entity-level Graph(EG)를 구축하여, entity들 간의 관계를 추론하는 새로운 path reasoning mechanism을 제안한다. 이 path reasoning mechanism으로 entity들 간의 multi-hop 관계들을 추론하는 것이 가능하다고 한다.

GAIN (Graph Aggregation and Inference Network)

The overall architecture of GAIN (from paper)

Encoding Module (Encoder)

n개의 word sequence로 표현된 문서를 각 단어에 대하여 word embedding, entity type embedding, coreference embedding을 한다. 각 임베딩된 값을 concatenate하여 구축한 벡터 x를 encoder에 넣어 context sensitive representation을 뽑아낸다. 여기서 encoder는 LSTM이 될 수도 있고, 그 외의 모델이 될 수도 있다.

Mention-level Graph Aggregation Module

Mention-level Graph는 2가지 node로 이루어져 있다. (mention, document) 그리고, 3가지의 edge가 있다.

  • Intra-Entity Edge: 동일한 entity를 언급하는 mention끼리 연결
  • Inter-Entity Edge: 서로 다른 entity에 대한 mention이 한 문장 내에 발생할 경우 연결
  • Document Edge: 문서 내 모든 mention과 해당 document node간 연결

Document node가 피봇일 때, mention node 간 거리에 최대 2이기 때문에, long-distance dependency에 대한 모델링이 가능하다.

이렇게 Mention-level Graph를 구성한 다음, GCN(Graph Convolution Network)를 적용하여 이웃으로부터의 feature를 통합할 수 있고, 각 mention에 대한 표현을 얻어낼 수 있다.

Entity-level Graph Inference Module

먼저, 같은 entity를 언급한 mention들은 하나의 entity node (=mention representation의 평균)로 합쳐진다. 그리고 같은 두 개의 entity를 언급한 모든 inter-entity edge들은 EG(Entity-level Graph)내의 edge(두 entity node가 결합된 상태로 1개의 Linear layer를 통과한 형태)로 합쳐진다.

head entity와 tail entity 간의 경로는 중간에 거치는 through entity를 포함(단 논문의 설명에서는 two-hop paths만 고려)하여 head와 through 간 edge, through와 tail 간 edge, tail과 through 간 edge, through와 head 간 edge의 결합된 형태로 말할 수 있다.

말로는 잘 전달되지 않을 것 같아 수식을 가져왔다. (from paper)

여러 경로 중 어느 경로가 중요한지에 대한 정도를 head entity와 tail entity를 query로 하는 attention을 적용하여, 좀 더 유용한 경로에 집중할 수 있도록 하였다.

이러한 모듈 활용으로 여러 문장에 걸쳐 있는 mention들 간의 정보를 잘 혼합할 수 있고, 서로 다른 경로들로 인해 잠재적인 reasoning 단서들도 얻을 수 있다.

Classification Module

모델의 대장정을 지나 마지막 분류 모듈이다. 굉장히 종합적인 정보를 담아서 classification module에 집어넣는다. head entity, tail entity, head와 tail 차의 절대값, head와 tail의 element-wise 곱, Mention-level Graph의 document node, head와 tail간의 attention이 적용된 경로가 통합되어 들어간다.

Result

DocRED 데이터셋에 대한 성능 평가이다. word embedding과 encoder에 대해서 GloVe, BERT base, BERT large를 사용하여 결과를 비교하였다.

Performance on DocRED (from paper)

또한 모델 내 각 모듈을 제외했을 때의 성능도 비교하였다.

Performance of GAIN with different embeddings and submodules (from paper)

Ablation Study + Case Study

문장 내 관계, 문장 외에서 관계에서의 성능 비교를 위해 Intra-F1, Inter-F1 성능을 측정하였다. hMG이 Inter-F1 성능에 큰 영향을 주는 것으로 보아, hMG가 문장들 간 interaction을 잘 모델링하는데 도움을 주었다고 볼 수 있다. 그래도 여전히 Inter-F1 성능을 올려야겠다는 생각도 든다. (Intra도 확실히 document-level이라 그런지 생각한 것보다 성능이 낮아 놀랐다.)

Intra- and Inter-F1 results on dev set of DocRED (from paper)

또한, 실제로 추론으로 얻어진 관계만 고려했을 때의 성능도 비교하였다. 한마디로 얻어 걸리는 것을 제외하는 것이다. GAIN이 추론 능력이 좋고, inference module의 중요성을 보여준 결과다.

Infer-F1 results on dev set of DocRED (from paper)

마지막으로 다른 baseline과 비교하는 case study이다.

The case study of GAIN and baseline models (from paper)

BiLSTM은 첫 문장 내의 관계들만 캐치할 수 있었다. BERT-RE는 Without Me가 The Eminem Show의 일부인 것을 캐치하였지만, logical reasoning이 필요한 부분은 놓쳤다.

마치며

오랜만에 글을 쓰려다 보니 힘드네요 ㅎㅎ; 이렇게 좋은 논문을 읽고 정리할 때마다 저의 연구 방향도 점점 잡혀가는 것 같습니다. 올해 아니면 내년 안에는 저도 이런 논문을 쓸 수 있기를 바라면서 마칩니다!

--

--

Jiwung Hyun
Jiwung Hyun

No responses yet