[논문리뷰]Relation-Aware Language-Graph Transformer for Question Answering
카테고리: GR
Authors: Jinyoung Park, Hyeong Kyu Choi, Juyeon Ko, Hyeonjin Park, Ji-Hoon Kim, Jisu Jeong, Kyungmin Kim, Hyunwoo J. Kim
Paper: Relation-Aware Language-Graph Transformer for Question Answering in AAAI 2023.
Problem Statement
1. 기존 GNN 기반 모델들의 한계
Question-Answering(QA)을 위한 기존의 GNN 기반의 모듈은 트리플(Triple)로 이루어진 Knowledge Graph(KG)의 풍부한 정보를 제대로 활용하지 못했다. GNN은 기본적으로 노드의 임베딩을 학습한다. 다시 말해, 노드의 정보만을 학습하며 두 노드 사이의 연결 유무만을 학습하게 된다. 하지만, KG에는 많은 릴레이션에 자연어 정보가 포함되어 있고, 그 종류가 매우 많다. 따라서 GNN을 통한 KG학습에는 한계가 존재한다.
2. Langauge Model(LM)과 Knowledge Graph(KG) 사이 매우 적은 정보만을 교환
기존 모델들 중 LM과 KG 사이 매우 적은 정보 교환만 이루어졌다. 예를 들어, LM모델을 학습하고 추론 시에만 KG를 처리하여 학습된 LM에 통합시키려 하였다. 이후 연구에서는 학습 단계에서 KG와 LM을 합치려는 시도가 있었으며, 이는 special token node나 cross-attention을 통해 이루어졌다. 하지만, 이런 접근 방식은 GNN을 modality-specific하게 하며, KG모듈과 LM모듈 간의 정보 교환이 연산을 진행하는 fusion부분에서만 이루어지기에 여전히 제한적으로 일어난다는 한계가 있다.
Related Work
1. Knowledge Graph Question-Answering (KGQA)
KG에서 경로 상에 존재하는 정보를 취합하여 하나의 질문(question)에 대한 정답(answering)을 찾아내는 문제로, Knowledge Base Question-Answering(KBQA)로도 불린다. 초기에는 GNN만을 사용한 연구가 대부분이었다. GNN은 기본적으로 message passing과 aggregation을 통해 이웃 노드(엔티티)의 정보를 취합하여 구조 정보를 학습한다. 이후 Knowledge Graph Completion(KGC)분야에도 LM 모델을 활용한 연구가 진행되면서 LM과 KG를 모두 활용하는 multi-modal형태의 연구가 진행되었다.
위의 그림은 KGQA의 예시이다. 질문으로 “Q) What types are the film starred by actors in the nine lives of fritz the cat?” 주어졌을 때, 정답을 올바르게 찾아가는 경로는 빨간색이다. 하지만 Question-answering이 어려운 대표적인 이유 중 하나가 바로 정답을 맞추더라도 올바른 경로로 가지 않는 경우가 발생하기 때문이다. 그림에서 파란색 경로를 보면, 질문과는 거리가 먼 추론을 하지만 정답인 Comedy를 맞춘 것을 확인할 수 있다. 이러한 이유 때문에 Hallucination이 발생하는 것이다. Hallucination이란 예를 들면, “아인슈타인이 중력을 발견한 연도가 언제야?” 라고 자연어 모델에게 질문하였을 때, 잘못된 질문임에도 불구하고 “아인슈타인은 중력을 1925년에 발견하고 논문을 발표했어.”와 같이 잘못된 답변을 그럴듯하게 생성해내는 문제이다. 이러한 이유로, QA를 올바르게 할 수 있도록 모델을 학습하는 것이 중요하다.
2. Question-Answering for Graphs
QA task의 목표는 주어진 질문의 context를 자연어와 구조화된 관계 정보로 이해하는 것에 초점을 맞춘다. SapBERT와 ConceptNet등이 이 연구에 해당한다.
Multiple-Choice Question-Answering (MCQA)는 question의 \(q\)의 단어 엔티티와 선택한 답변 \(a \in C\) 엔티티를 Concatenation하여 시퀀스 \(X\)로 정의하고 이를 입력으로 넣는다. 그리고 사전 학습된 자연어 모델 \(\mathcal{g_{\text{LM}}}\)이 입력 시퀀스 \(X\)를 받아 출력된 값이 바로 Context Token \(\mathcal{H_{\text{LM}}}\)이 된다.
3. Meta-Path
Meta-path란 여러 타입의 릴레이션을 가지는 knoweldge graph에서 특정 엔티티와 엔티티 사이의 경로를 표현한 것이다. \(v\)를 엔티티, \(r\)을 릴레이션으로 정의할 때 meta-path는 위와 같이 정의된다. 본 논문에서는 mata-path상의 트리플을 모델의 입력으로 넣는다.
Method
1. Overview
- Input
- Question-Answer Choice Pair
- Meta-path token(= subgraph edges and paths)
이 논문의 architecture는 위와 같다. Question-Answer choice pair와 Subgraph edges and paths(meta-path)을 입력으로 받는다. 두 입력은 각각 language model(LM)과 MLP layer로 들어가 임베딩된다. 이후 논문에서 제안한 모달리티 임베딩(modality embedding)과 각각 더해진 후 concatenation되어 Relation-Aware Self-Attention(RASA) 모듈에 입력으로 들어가게된다. 이 때, 모달리티 임베딩딩은 학습 가능한 임베딩이다. 논문에서는 이 Question Answering Transformer(QAT)를 통해 LM과 KG를 하나로 통합하여 공동 추론(jointly reasoning)을 수행한다.
2. Meta-Path Token Embedding
Question answering이란 엔티티 사이의 관계(relationship)을 이해하는 것이 핵심이다. QAT는 각 엔티티 쌍의 관계를 나타내는 임베딩을 학습한다. 이러한 임베딩을 만들어 내기 위해 Meta-Path를 정의하며 이 path상에 존재하는 triple들의 자연어 토큰을 나열한 것이 meta-path token(MP 토큰)이라 한다. 논문에서는 서브그래프(subgraph)를 추출함에 있어서, path상에 존재하는 엔티티와 릴레이션들을 서브그래프로 정의한다. 이 때, 엔티티의 타입을 4가지로 분류하며 이는 입력으로 미리 주어진다. 주의할 점은, 엔티티 feature를 직접적으로 임베딩을 학습하는데 이용하지 않는다는 점이다. Meta-Path Token(MP 토큰)은 다음과 같이 표현된다.
QAT와 달리 이전 연구들은 knowledge graph를 인코딩하기 위해 GNN을 사용하였다. 일반적으로 message passing은 메커니즘을 활용하여 이웃 엔티티의 feature와 릴레이션의 feature를 한 layer에 전파(passing)함으로써 이웃 정보를 취합(aggregation)한다. 그리고 최종적으로 엔티티들은 예측을 위해 풀링(pooling)된다. 엔티티(노드)가 결과적으로 릴레이션 정보를 포함하지만, message passing의 목적은 릴레이션이 아닌 엔티티의 feature를 학습하는 것이므로 GNN방식은 node-centric하다. 반면 QAT는 릴레이션 정보를 meata-path token을 통해 명시적으로 임코딩하여 이를 공동 추론(jointly reasoning)에 이용하기에 모델이 서브그래프내의 구조 및 의미적 관계를 포착할 수 있다. 따라서 QAT는 relation-centric하다. 또한 한 질의 응답에 대한 meta-path는 고정된 sequence이므로, epoch을 거듭하면서 반복학습하면 overfitting될 수 있으므로, meta-path token 임베딩의 일부분을 랜덤하게 마스킹하는 Drop-MP를 한다.
3. Relation-Aware Self-Attention
Relation-Aware Self-Attention(RASA)모듈은 i)QA sequence가 LM을 거쳐 출력된 임베딩인 LM 토큰 임베딩(\(\mathcal{H}_\text{LM}\))과 ii) meata-path sequence가 MLP를 거쳐 출력된 meata-path-token(\(\mathcal{H}_\text{KG}\)))를 받아 이 둘을 concatenation하여 각 질의 응답 선택 쌍(question answering choice pair)에 대한 logit을 계산해야 한다. 이 때, \(\mathcal{H}_\text{LM}\)와 \(\mathcal{H}_\text{KG}\)를 modality라고 지칭한다.(서로 다른 data가 각각 서로 다른 모듈을 통해 인코딩되어 출력된 결과이므로 multi-modal임.)
1) Language-Graph Joint Self-Attention
먼저 두 modality를 하나로 합쳐 하나의 임베딩으로 만든 후, self-attention을 적용해 각 토큰 임베딩 별 self-attention과 modality간의 cross-attention을 모두 한 번에 계산한다. 이렇게 함으로써 각 토큰은 내부 및 modality간 관계를 기반으로 feature를 aggregation할 수 있다.
논문에서는 두 modality간의 feature를 합치기 전에 학습 가능한 임베딩 \(e_{\text{LM}}, e_{\text{KG}}\)을 정의해 각각의 modality에 더해주어 concatenation을 하는 방법을 제안한다. 이 두 임베딩은 query와 key token을 feature vector로써 modality source로 집어넣기 위함이다. 다시 말해, 두 개의 서로 다른 modality 임베딩을 합쳐 하나의 새로운 feature vector를 만드는 것이기 때문에, 이 둘이 잘 합쳐지도록 align시켜 줄 학습 가능한 임베딩을 추가해준 것이다. 최종적으로 attention의 결과는 \(\widetilde{\mathcal{Z}}\)로 나타내며, 이는 일반적인 scaled-dot attention의 결과와 동일하다.
2) Cross-Modal Relative Position Bias
Self-attention을 활용하는 트랜스포머 자체도 강력하다. 논문에서도 트랜스포머에 “어떻게 정보를 취합할 것인가?“에 대한 가이드라인을 제공함으로써 성능 향상을 이끌어 냈다. 공동 추론을 위해 학습 가능한 상대 위치 편향 \(\Omega\)(relative position bias)를 도입한다. 이는 연관된 토큰들 사이의 cross-modal attention weight을 제어하는 역할을 한다.
위 그림을 보면 이를 쉽게 이해할 수 있다. LM 토큰 임베딩과 MP 토큰 임베딩이 합쳐진 하나의 feature vector를 attention을 하면 LM-LM, LM-MP, MP-LM, MP-MP 사이의 모든 attention이 구해진다. 이 때, 모달리티 간의 유의미한 정보 교환을 위해 relative position bias를 적용해 서로 다른 모모달리티에서 의미상 유사한 토큰 간의 attention을 높게 만드는 것이다.
두 모달리티에서 토큰 쌍의 상호 관계는 각 엔티티의 자연어 표현이 서로 유사한지에 의해 결정된다. 각 엔티티를 벡터화하기 위해 논문에서는 pretraining된 GloVE word embedding을 사용한다. Knoweldge graph의 경우 여러 엔티티는 밑줄로 연결된 단어를 포함한다. 예를 들어, jewlry_store라는 단어가 있다. 논문에서는 GloVE를 통해 위와 같은 하나의 토큰을 분리시킨다. 이를 수식화하면 아래와 같다.
그리고 i)\(\mathcal{H}_{\text{KG}}\)의 각 릴레이션 토큰에 대해 해당하는 head와 tail 엔티티를 취하여 cosine 유사도를 사용해 LM 엔티티와의 코사인 유사도를 각각 계산한다. ii)이후 MP 토큰의 head 혹은 tail 엔티티는 가장 높은 유사도를 가진 LM토큰을 선택하여 \(\mathcal{H}_{\text{LM}}\)에 매핑된다. 다시 말해 각각의 MP 토큰 임베딩은 두 개의 LM 임베딩과 대응된다(head, tail - LM). 이 대응에 의헤, Cross-modal relative postion bias(RPB)를 정의한다. RPB는 다음과 같은 크기를 가지며, \(\Omega \in R^{\vert X \vert \times \vert X \vert}\) 다음 수식에서 i와 j는 각각 토큰의 위치를 지칭한다.
다시 위에서 왼쪽 그림을 보면, 모달리티 간의 어텐션이 계산되는 부분에만 RPB가 더해진 것을 확인할 수 있다. 이는 다시 말해 두 모달리티에서 의미상 유사한 토큰의 어텐션의 영향력을 키워주어 학습이 올바르게 될 수 있도록 도와주는 역할을 한다. \(\omega_1\)과 \(\omega_2\)를 정의하는 식을 보면 두 모달리티에서 의미상 유사한 토큰 간의 어텐션 위치(\(i, j\))만 활성화 시키도록\(\text{Indicator function} \; \mathbb{1}(\cdot)\)을 활용한다.
최종적으로 어텐션 연산이 이루어지는 수식이 바뀐다. 기존 연산에 \(\Omega\)가 더해져 softmax함수에 입력된다. 이 어텐션 연산을 Relation-Aware Self-Attention으로 정의하며, 결론적으로 concatenation 된 토큰 \(X\)는 RASA 모듈에 입력된다.
- 트랜스포머와 마찬가지로 다음과 같은 기법을 적용함.
- Skip-connection
- Layer normalization(LN)
4. Training
QA를 위한 손실함수로써 Cross Entropy Loss(CE)를 시용하며 RASA 모듈과 FFN을 거쳐 최종적으로 출력된 \(\mathcal{Z}\)는 CE의 logit으로 사용되게 된다. 거기에 positive bias를 만들기 위해 regularizer term을 더해준 것을 최종 loss로 한다. \(\omega^{(hl}\)은 \(l\)번째 레이어의 head 어텐션 \(h^{th}\)로부터 나온 RPB을 비선형 함수에 통과시켜 빼주는 것이다. \(L\)은 RASA모듈의 전체 층 수를 나타내며 \(H\)는 그 층에서 모든 head 토큰의 집합이다. 이 loss의 의미를 생각해보면, 두 모달리티 간의 유사한 위치를 나타내는 \(\omega\) 부분에 대해 regularization term을 추가해 줌으로서 유사한 의미를 가지는 위치의 어텐션 값을 최대화하는 것을 알 수 있다.
5. Cpmpairsion with Existing Methods
- GNN
- GNN은 이웃 노드의 정보를 취합하여 노드 임베딩만을 학습함.
- Relation Net
- QA는 Relation NEtwork의 확장임.
- RN의 경우 multi-hop간의 관계를 학습하는 것이 아닌 1-hop 거리의 트리플 만을 학습한다는 한계가 있음.
- QAT
- QAT는 반면 RN을 일반화한 유연하고 강력한 아키텍쳐임.
- RN과 대조적으로 MP 토큰 임베딩을 통해 multi-hop의 관계를 포착함.
- 또한 RASA 모듈을 통해 LM과 KG 모달리티를 통합하여 공동 추론을 함.
Experiments & Results
1. Dataset
- Dataset: CommonsenseQA, OpenBookQA, MedQA-USMLE
- CommonsenseQA와 OpenBookQA를 위한 Knowledge Graph는 ConceptNet을 사용하였다.
- Conceptnet은 799,279개의 노드와 2,487,810개의 트리플을 포함한다.
- MedQA-USMLE는 다른 medical KG를 사용하였으며 dataset에 포함되어 있다.
- 9,958개의 노드와 44,561개의 트리플을 포함한다.
- 각각의 QA context를 위해 subgraph를 추출하였다. (QA-GNN: Reasoning with Language Models and Knowledge Graphs for Question Answering, in NAACL 2021)
2. Experiment
실험 1. CommonsenseQA
- QAT 모델: SOTA 달성
- in-house developemnet(IHdev)와 in-house test(IHtest)모두 KagNet논문을 참조해서 split함.
- KG를 활용했을 때가 성능이 좋으며, RASA가 LM과 KG를 각각 이용했을 때와 비교해서 압도적으로 성능이 좋음.
실험 2. OpenBookQA
- QA-GNN 논문을 기준으로 LM과 GNN모델을 적용해 QA를 진행
- QAT가 SOTA달성함.
실험 3. MedQA-USMLE
- 여러 도메인에 general하게 적용 가능한지 실험하기 위해 의료 데이터로 QA진행
- QAT가 SOTA달성. 이를 통해 general하게 여러 도메인에 적용 가능함을 입증
- commonsense reasoning을 통해 여러 도메인에 적용 가능함.
3. Analysis
1) Ablation Study
[Q1] Does each Component in QAT boost performance?
모델을 학습할 때, MP 토큰 임베딩, RPB, Drop-MP를 하나씩 제거하며 성능을 비교한 실험이다. Cross-modal RPB를 제거하는 것은 Relative position bias가 없는 것이며, MP 토큰을 제거함으로써 추가 처기 없이 엔티티 feature로 KG토큰을 대체한다.
모두 제거했을 때 성능이 1.6%감소하였으며, MP 토큰을 추가했을 때 성능 향상이 가장 두드러지게 일어났다.
2) Relation-Centric vs Node-Centric
[Q2] Are relation-centric MP Tokens better than node-centric embeddings?
결과적으로 MP 토큰 임베딩을 사용하는 것이 성능 측면에서 압도적으로 좋다.
3) Qualitative Analysis
[Q3] How does Relation-Aware Self-Attention utilize the language-graph relations when answering questions?
올바른 답변을 다른 답변들과 구별하는 데 Cross modal attention이 중요함을 입증하는 실험이다. 위의 어텐션 히트맵에서 A-to-B라고 하면 A는 x축이고 B는 y축을 의미한다.
- KG-to-KG: 우측 아래
- KG-to-LM: 우측 상단
- LM-to-KG: 좌측 아래
- LM-to-LM: 좌측 상단
Figure 3을 보면, 정답인 ‘shopping mall’의 어텐션 히트 맵은 매우 고른 것을 확인할 수 있다. 이는 다시 말해 QAT가 LM과 KG의 feature를 제대로 합쳤다는 것을 의미한다. 반면 정답이 아닌 경우, 특히 KG-to-LM(우측 상단)부분은 특히 어텐션이 낮은 것을 확인할 수 있으며, 대부분의 어텐션이 LM 토큰(좌측 상단)에 집중된 것을 확인할 수 있다. QAT는 각 질문-답변 쌍에 대해 KG에서 서브그래프를 추출하고 새로운 MP 토큰 집합을 구성한다. 비록 답변 선택지가 하나의 단어일지라고, MP 토큰 생성은 node-level 토큰 생성보다 다양화된 KG 토큰 집합을 결과로 낳는다.
또한 Cross-Modal RPB가 cross-modal attention을 어떻게 강화하는지를 확인한다. Figure 4는 LM토큰과 KG 토큰 사이의 어텐션 mapping을 시각화하며, 가장 강한 어텐션만을 보여준다. 화살표는 어텐션 방향을 나타낸다. 예를 들어, left-leave는 RPB와 함께 left로부터 가장 많은 어텐션을 받는다. 상단의 파란 토큰들을 LM토큰이고, 하단의 녹색 토큰들은 MP 토큰들이다. RPB없이 서로 일치하지 않는 무관한 토큰들 사이의 Cross-modal attention에서 두 모달리티간의 유사성이 낮은 단어 간 어텐션에 해당하는 회색 화살표가 더 많이 나타난다. 반면, RPB는 관련이 있고 일치하는 토큰들을 위해 \(\omega_1(\text{LM} \rightarrow \text{KG})\), \(\omega_2(\text{KH} \rightarrow \text{LM})\)이 적용되어 어텐션 값을 증가시킨다. 따라서 의미상 유사한 토큰들은 더 높은 어텐션 score를 받으며 RPB와 함께 상단 행에서 더 많은 빨간 화살표가 관찰된다.
Contribution
- Meta-Path token을 제안함. Meta-path를 따라 KG의 다양한 relational information을 인코딩할 수 있는 새로운 임베딩 모듈이다.
- Cross-Modal Relative Position Bias를 제안함. 이는 LM과 KG 사이 더욱 더 유동적인 정보 교환이 이루어지도록 만든다. 이를 통해 KG의 triple 정보를 다른 modality로 더 잘 전달할 수 있다.
- 결론적으로 QA를 위한 새로운 Transformer모델을 제안하며, 이 Transformer는 LM과 KG를 jointly reasoning한다.
- CommonsenseQA와 OpenBookQA, 그리고 medical QA 데이터셋인 MedQA-USMLE에서 SOTA달성.
댓글 남기기