boostcampaitech3 / level2-klue-level2-nlp-11

level2-klue-level2-nlp-11 created by GitHub Classroom
0 stars 5 forks source link

Supervised Relation Classification as Two-way Span-Prediction 구현 및 리딩 #28

Closed greekFire21 closed 2 years ago

greekFire21 commented 2 years ago
Abstract

관계 분류 작업에 대한 접근을 Question answering과 유사한 span-prediction 문제로 다루는 것이 더 좋은 결과를 가져온다.

Figure 1. 논문에서 주장하는 방식

K-001

3 Embedding Classification vs Span-Prediction

기존 관계 분류는 문장 c, entity e1과 e2가 주어지면 이를 통해 두 entity의 관계 r을 도출해냈다. 하지만 span prediction에서는 문장 c, 질문 q가 주어지면 그 질문의 답이 되는 span을 c에서 찾거나 c에 답이 없다는 뜻의 스페셜 토큰을 내보낸다.

3.1 Method Comparison

기존 relation classifier에서는 문장 c, entity e1과 e2에 대해 관계 r을 보여주었는데, SP classifier에서는 문장 c, entity e, entity와 관련된 질문 r이 주어지면 이에 대해 답이 되는 e를 예측한다. Embedding에서 RC는 문장과 entity들에 기반을 두지만, SP는 문장과 질문에 기반을 둔다.

3.2 Implications

SP에서 embedding은 하나의 entity와 관계 r에 대한 정보를 가지기 때문에 다른 entity가 존재하는지에 더 집중할 수 있다.
target과 관련된 의미 정보를 모델에 전달할 수 있으며, 다른 관계들을 일반화하는 것을 도울 수 있다. SP model은 문장이 특정 관계를 포함하는지를 예측할 뿐만 아니라 빠진 span을 예측하는 것도 요구받기 때문에 관계 자체만이 아니라 entity 사이의 관계도 예측하게 된다. 그러나 기존 RC 모델보다 더 많은 연산을 수행해야 하기 때문에 효율성은 떨어진다.

4 Reducing RC to span-prediction

RC instance '(c, e1, e2) -> rel'가 있고, 단어 e를 넣었을 때 질문을 반환해주는 함수 T가 있다면, SP instance는 '(T(e1), c) -> e2'로 표현할 수 있다. Bidirectional questions: e1으로 e2를 예측하는 질문만이 아니라 e2로 e1을 예측하는 질문도 만들어야 한다. 그래서 하나의 RC instance에서 두 개의 SP instance가 만들어질 수 있다. Template formulation: 영어로 질문을 만들었으며, 질문을 관계명으로 혹은 unused token으로 대체해보기도 하였다. Answer combination: 두 개의 대답을 합치는 방법으로 효과적이었던 것은 OR operation이다. 반환된 span들 중 어느 것이라도 정답 span과 일치한다면 그 관계를 반환하고, 어느 것도 일치하지 않는다면 답은 no-relation으로 하였다. 자연스럽게 떠올릴 수 있는 대안은 AND operation이 있지만, 연구진의 실험 결과 no-relation이 많이 나와서 F-score가 낮았다. Binary vs. Multiclass: binary version을 목표로 하지만, 연구진은 이를 multi-class version으로 확장하였다. Supervised dataset construction: 모든 가능한 관계들을 고려하여 SP instance들을 생성하였다. Per-template thresholds: 기존 SP model은 주어진 문장에서 질문이 답변 가능한지를 구별하는 threshold를 가진다. 각각 생성된 질문 세트를 고려하여 모델의 threshold setting procedure를 사용하여 설정하였다.

5 Main Experiments
5.1 Datasets

세 가지 RC 데이터셋을 사용하여 비교하였다. TACRED, SemEval 2010 Task 8, Challenge relation extraction (CRE)

5.2 Template variations

데이터셋을 span-prediction 형태로 전환하기 위해 세 가지 방법을 사용하였다. Natural language questions: 각 RC sample들을 질문을 가지는 두 개의 sample로 바꾸었다. Relation name: 질문들 대신에 관계명을 넣었다. Unique tokens: 관계명 대신에 스페셜 토큰을 넣었다.

5.3 Comparisons

MTB, KEPLER, LiTian 세 가지 모델과 비교하였다.

5.4 Models

BERT-large와 ALBERT를 사용하였는데, BERT-large는 SOTA 모델과 같은 환경에서 비교하기 위해 사용하였고, ALBERT는 최대한의 능력을 보여주기 위해 사용하였다.

6 Main Results

K-002

K-003

K-004

K-005

K-006

BlueYellowGreen commented 2 years ago

이렇게 정리해 주셔서 감사합니다! 😀