[논문 리뷰] COMET : Commonsense Transformers for Automatic Knowledge Graph Construction (ACL, 2019)

HYEM_E ·2023년 1월 4일
0

논문 리뷰

목록 보기
4/16

PDF : https://arxiv.org/pdf/1906.05317.pdf

Problem

Difference between conventional KBs and commonsense knowledge

정해진 형식(two entities with a known relation)이 있는 전통적인 knowledge base와 다르게 commonsense knowledge는 느슨하게 구조화된 open-text description of kenowledge 이다.

How can we develop generative models of commonsense knowledge?

인간의 상식 추론 능력을 기계가 어떻게 습득할 수 있을까? 무한하게 다양한 상황들 중에서 현재 상황과 관련있는 정확한 상식을 추론해낼 수 있어야 할 것이다.
본 논문은 자동으로 Commonsense Knowledge base 구조를 생성하는 모델에 대한 연구 논문이다. ATOMIC(Sap et al.2019), ConceptNet(Speer et al.,2017) 두 가지의 commonsense knowledge graph datasets을 사용하여 연구를 진행하였다.

Method

Use Transformer! : Commonsense Transformer(COMET)

A Seed set of knowledge 에 대하여 트랜스포머 모델을 사전학습시킨다. 모델은 사전학습 과정에서 knowledge generation을 위핸 representation 조정을 거친다. 그리고 사전학습된 모델은 높은 수준의 새로운 튜플들을(commonsense knowledge) 생성해낸다.

Model overview

기본적인 구조는 GPT,Radford et al.(2018) 와 같다. 여러개의 트랜스포머 블록으로 모델이 구성되며, 트랜스포머블록은 멀티헤드어텐션 블록과 피드포워드 네트워크로 구성되어 있다.

Notation

COMET는 {s,r,o}\{s,r,o\} 형식의 knowledge base의 자연어 튜플 데이터로 훈련된다.

Notation
ss : subject of the tuple
rr : relation of the tuple
oo : object of the tuple

XS={(x0)S,...,(xSS)}X^S = \{(x_0)^S, ... , (x_{|S|}^S)\} : a set of Subject tokens
Xr={(x0)r,...,(xSr)}X^r = \{(x_0)^r, ... , (x_{|S|}^r)\} : a set of Relation tokens
Xo={(x0)o,...,(xSo)}X^o = \{(x_0)^o, ... , (x_{|S|}^o)\} : a set of Object tokens

예를 들어, ConceptNet tuple의 경우에는 "taking a nap" 에 대하여 s= "take a nap", r = Causes, o : "have energy" 가 된다.

Task

s,r이 input으로 주어졌을 때 o를 생성해내는 것이다.

Learning Model

- first layer input

{s,r,o}\{s,r,o\} 형식의 튜플들이 concatenated 된 word의 sequence 형태 : XX= {XS,Xr,Xo}\{X^S, X^r, X^o\}
input xtXx_t \in X 에 대하여 word embedding 진행 : ete_t
포지션 임베딩 : ptp_t
t : time stemp

-input template

For ConceptNet, a second set of masking tokens separate Xr and Xo because Xr can have avariable number of tokens.

- Transformer block

MULTIATTN : Multi-headed self attention mechanism
FFN : two-layer feed-forward network
LAYERNORM : layer normalization, contain a residual connection

Training Model

-Loss Function

COMET는 Object o 를 생성하는 것을 학습하기 위하여 훈련된다. 이 목표를 달성하기 위해 위의 loss function을 maximize하는 방향으로 모델은 훈련된다.
s,r,o|s|,|r|,|o|는 각각 subject, relation, and object phrase의 token의 갯수다.

- Datasets

논문에서는 knowledge seed sets으로 ATOMIC과 ConceptNet을 사용하였다. 그러나 COMET는 domain-agnostic하기 때문에 다른 commonsense knowledge resources도 comet모델에 사용될 수 있다.

- Hyperparameters

COMET는 12layers, 768-dimensional hidden states, and 12 attention heads로 intiallized되었다. 이외에도, dropout rate=0.1, Gelu를 사용하였고 훈련하는 동안에는 배치사이즈는 64를 사용하였다.

Experiments

실험은 ATOMIC dataset, 그리고 ConceptNet dataset 각각에 대하여 수행되었다. 우선 Atomic dataset experiments 부터 자세히 살펴보도록 하겠다. ATOMIC은 commonsense를 9차원으로 추출하며 각 차원이 relation이 된다.
ATOMIC events(e.g., “X goes to the store”) are phrase subjects, s, the dimension (e.g., xIntent) is the phrase relation, r, and the causes/effects (e.g., “to get food”) are phrase objects, o.

Metrics
BLEU-2를 자동 평가 지표로 사용하여 모델을 평가하였다.
perplexity(ppl) 또한 보고하였다.
human evaluation을 진행함.

Ablation study

  • 얼마나 큰 corpus를 사전학습해야 모델 학습에 도움이 될지 연구하기 위하여 사전 학습된 WEIGHT로 초기화하지 않은 COMET(-pretrain) 모델 또한 평가하였다.
  • data efficiency를 평가하기 위하여 다양한 비율의 training data로 model training을 진행하였다.
  • 다양한 decoding schemes을 사용하여 candidate knowledge tuples의 퀄리티에 얼마나 영향을 끼치는가 실험하였다. (argmax greedy decoding, beam search with beam size b=2,5,10, and top-k sampling with k=5,10) 각각의 디코딩 방법이 생성한 몇 개의 최종 후보들에 대하여 human evaluation을 진행하였다.

N/Tsro{N/T}_{sro} : 새롭게 생성된 튜플들의 비율
N/TO{N/T}_O : 새롭게 생성된 모든 튜플 중 train dataset에는 없었던 새로운 object의 비율
N/UO{N/U}_O : 새로운 object 중 unique object의 비율

BELU-2 에 대해서 COMET가 다른 Baseline model들 보다 뛰어난 성능을 보이고 있다.

test set에서 랜덤하게 선정된 100개의 events와 각각의 relation type에 대한 human evaluation 결과에서도 COMET가 제일 뛰어난 성능을 보임.

decoding algorithm effect에 대한 실험 결과를 살펴보면, greedy decoding을 사용했을 때 77.53%로 가장 높은 성능을 보이며 human evaluation과 10% gap 차이 남. human performance에 가장 근접한 수치. 추가로, 더 많은 후보들을 뽑을 수록 성능이 더 낮아짐.

training data의 10%만 사용했을 때의 성능이 가장 좋음. 그리고 pretrained weight를 사용하지 않고 후련된 모델은 training data를 1%사용했을 때의 성능에도 못미침.

ConceptNet Experiments

  • ConceptNet Experiments에서는 COMET모델에서 Relation의 이름을 자연어로 맵핑해주었다. (ex. IsA -> "is a") COMET -RELTOK은 맵핑을 진행하지 않은 모델이다.
  • Baseline model인 LSTM은 기존 연구에서는 sr-> o 뿐만 아니라 or->s 방향으로도 모델이 훈련되었기 때문에, sr->o 방향으로만 학습한 LSTM -s 모델을 사용하였다.
  • 낮은 PPL(perplexity score)은 모델의 predictions에 대한 높은 confidence를 의미한다.
  • pre-trained Bilinear AVG model(Li et al.2016)을 사용하여 test set에 대한 model prediction의 correctness score를 평가하였다.
  • Novelty를 평가하기 위해 ATOMIC Experiments에서와 같은 평가 지표를 사용하였다.

Contribution

  • introduce transformers for automatic construction of commonsense knowledge bases.

Limitation

  • In conceptNet Experiments, novel generations sometimes simplified forms of tuples from the training set.
    ex) the tuple "doctor capableOf save life"is not present in the training set, but "doctor capableOf save person life" is.

future work

  • extending the approach to a variety of other types of knowledge bases
  • investigating wheter comet can learn to produce OpenIE-style knowledge tuples for arbitrary knowledge seeds.

0개의 댓글