[논문리뷰]A Knowledge-Injected Curriculum Pretraining Framework for Question Answering
카테고리: NR
Lin, X., Su, T., Huang, Z., Xue, S., Liu, H., & Chen, E. (2024). A Knowledge-Injected Curriculum Pretraining Framework for Question Answering. WWW 2024, https://arxiv.org/abs/2403.09712
Problem Statement
Knowledge Base Question Answering(KBQA)
Knowledge Base Question Answering(KGQA)는 지식 베이스(knowledge base)를 활용하여 자연어 질문에 답변하는 기술이다. Knowledge Graph(KG)는 개체와 개체 간의 관계를 구조화된 형태로 표현한 데이터베이스로, 다양한 정보가 체계적으로 정리되어 있습니다. KGQA는 이러한 구조화된 데이터를 이용해 사용자의 질문에 정확하고 효율적으로 답변할 수 있습니다.
예를 들어, “What is the period of the author of Off on a Comet?”이라는 질문을 입력으로 받았다. 그리고 주어진 KG에는 “Off on a Comet” 이라는 엔티티가 있고, “author”이라는 릴레이션으로 “Jules Verne”가 연결되어있다.
- Triple 1: (Off on a Comet, author, Jules Verne)
- Triple 2: (Jules Verne, period, 1828-1905)
이처럼, 두 개의 트리플을 순차적으로 연결하면 질문에 대한 정답(1828-1905)을 찾을 수 있다. 위의 예시는 다시 말해 2-hop 추론(reasoning) 문제가 되는 것이다.
Existing Several Nontrivial Technical Challenges of KBQA
기존의 KBQA 연구들은 환각(hallucination) 등 여러 가지 고질적인 문제들을 해결하려 한다. 그러나 이러한 문제들은 여전히 지속되고 있으며, 논문에서는 최근 KBQA 연구들에서 중요한 세 가지 문제점을 지적한다.
- 문제 1. 문장 생성 방법의 다양성
- 현재 사전 학습된 생성형 언어 모델을 사용하여 문장을 생성하는 방법이 많이 사용된다. 이는 정해진 템플릿을 입력으로 받아 QA(질문-응답) 쌍을 생성하는 방식이다. 예를 들어, CoT, GoT, ToT(Tree-of-Thought)등 여러 prompt engineering 연구들이 있다.
- 그러나 이러한 방법은 종종 KG에서 제공하는 고품질의 메타데이터를 충분히 활용하지 못하는 단점이 있다. 즉, KG에 있는 풍부한 정보를 효과적으로 반영하지 못하여 결과적으로 생성된 문장의 품질이 떨어질 수 있다.
- 문제 2. 생성된 문장의 자연스러움 문제
- 사전 학습된 언어 모델이 생성하는 문장은 종종 부자연스럽거나 왜곡된 형태를 띨 수 있다.
- 이는 자연스러운 문장을 보장하기 위한 복잡한 조정 과정이 필요하다는 것을 의미한다. 다양한 문장 구조와 맥락을 모델이 제대로 학습하지 못하면 부자연스러운 결과문이 나올 수 있다.
- 문제 3. 복잡한 추론 능력의 부족 문제
- 언어 모델이 종종 ‘환각, hallucination’을 겪게 된다. 이는 모델이 실제로 존재하지 않는 정보를 생성하거나, 잘못된 추론을 통해 잘못된 정보를 제공하는 현상이다.
- 또한, 최신 지식의 부족으로 인해 최신 정보나 사실을 반영하지 못하는 경우가 많다.
- 다중 홉 추론(Multi-hop reasoning)을 수행하는 데 어려움을 겪는다. 이는 복잡한 질의에 대한 정확한 응답을 제공하는 데 제한이 될 수 있다.
본 논문에서는 Knowledge Injective(KI), Knowledge Adaptive(KA), Curriculum Reasoning(CR) 모듈을 도입하여 이 세가지 문제를 해결하고자 한다.
Methods
Model Architecture
논문에서는 Knowledge-Injected Curriculum Pretraining(KICP) 프레임워크를 소개한다. KICP는 사전 학습된 언어 모델을 위한 종합적인 지식 학습과 복잡한 추론 능력을 목표로 하는 일반적인 프레임워크로, 지식 주입(KI), 지식 적응(KA), 커리큘럼 추론(CR)의 세 가지 주요 구성 요소로 이루어져 있다.
KI는 KG에서 지식을 추출하여 문장으로 변환하고, KA는 원래의 언어 모델을 고정시켜 자연어 이해 능력을 유지하면서 생성된 코퍼스에서 지식을 학습한다. 마지막으로, CR은 인간의 추론 패턴을 따라 여러 난이도의 추론이 요구되는 코퍼스를 구성하고, 쉬운 것에서 어려운 것 순으로 언어 모델을 훈련시켜 모델 학습을 촉진한다.
Module 1. Knowledge Injection (KI)
KI 모듈은 다양한 지식 그래프(KG) 트리플을 문장으로 변환하는 과정을 일반화하고, 고품질 KG의 메타데이터를 효과적으로 활용할 수 있도록 설계되었다. 이를 통해 사전 학습된 생성 모델과 freeze된 템플릿의 한계를 극복할 수 있다.
-
KI모듈은 세 가지 단계를 거쳐서 KG의 트리플을 언어모델에 입력시킬 수 있는 형태로 가공한다. 첫 번째로 Text characterization이다. KG에 존재하는 트리플의 엔티티와 릴레이션은 보통 id로 매핑이 되어있다. 이는 자연어로써 아무 의미없는 정보이기 때문에, KI 모듈은 text characterziation을 통해 언어 모델이 학습하기 용이하게 맵핑된 아이디를 다시 의미있는 자연어, entity name으로 변환시킨다.
-
두번째로, triple format의 자연어를 일반적인 문장에 해당하는 free form sentence형태로 바꾼다.
-
마지막으로 완성된 문장에서 특정 단어를 마스킹한다. 모델이 이를 예측하도록 하여 주어진 문맥에서 누락된 정보를 예측하는 능력을 학습할 수 있다.
Module 2. Knowledge Adaptation (KA)
KI에 의해 생성된 코퍼스는 문장들이 문법을 엄격히 따르지 않을 수 있어(특히 간단한 τ의 경우) 자연스러운 코퍼스(corpus)와 다르다. 또한, 코퍼스의 다양성도 제한적이다. LM을 이 코퍼스로 사전 학습시키면 자연어 이해(Natural Language Understanding, NLU) 능력이 저하되고, 자연스러운 텍스트에서의 성능이 떨어질 수 있다. 더 나아가, 제안된 일반 프레임워크에서는 문장 생성 기술이 임의적이므로, 기존 연구처럼 특정 생성 기술에 기반한 방법을 사용할 수 없다. 따라서, KA(Knowledge Adaptation)에서는 지식 사전 학습 동안 LM의 NLU능력을 유지하는 것을 목표로 한다.
KI 모듈로 생성된 문장들을 불완전한 문법으로 이루어진 문장일 가능성이 있기 때문에, 그대로 LM에 미세 조정(fine-tuning)하게 되면, 언어 모델의 문맥적 의미를 학습하는 자연어 이해(NLU) 능력이 저하될 수 있다. 이 NLU 능력을 보존하기 위해 어댑터(adapter)를 도입해 모든 레이어의 출력값을 어댑터가 학습하도록 한다.
중요한 것은 어댑터의 레이어 수가 freeze된 LM의 레이어 수와 동일하며, 히든 크기만 LM의 절반이라는 점이다. 최종 출력 차원은 LM과 동일하다. 어댑터의 i번째 레이어는 freeze된 LM의 i번째 레이어와 동일한 구조를 가지며, 이전 어댑터의 히든 표현과 freeze된 LM의 출력 벡터를 결합하여 입력받는다. freeze된 LM이 6개의 레이어로 구성되어 있으면, 어댑터 역시 6개의 레이어로 구성되지만, 마지막 레이어를 제외한 중간 레이어의 히든 크기는 LM의 절반이 된다.
Module 3. Curriculum Reasoning (CR)
복잡한 추론 능력을 향상시키기 위해 Knowledge Injection(KI)에서 생성된 코퍼스를 사용하는데, 이 코퍼스는 문법을 엄격하게 따르지 않을 수 있으며 다양성이 제한적이다. 이러한 코퍼스로 언어 모델을 사전 학습하면 자연어 텍스트에 대한 자연어 이해(NLU) 능력이 저하될 수 있다. 이를 위해 KA모듈에서 어댑터를 적용해 일반화된 자연어 정보를 학습하도록 하였다.
이를 바탕으로 모델의 복잡한 추론 능력 향상시키기 위해 세 단계로 구성된 Curriculum Reasoning(CR) 모듈을 제안한다. 세 단계는 각각 1)일반적인 트리플의 정보를 학습하는 Knowledge Learning 단계, 2)Multi-hop path에 존재하는 트리플을 한 번에 학습하는 CoT learning 단계, 그리고 3)모델이 실제 QA task에서 암기된 지식을 사용하여 추론하도록 사전 학습을 진행하는 Composition Learning 단계이다. 세 단계에 걸쳐 freeze된 LM과 adapter의 파라미터들을 최종적으로 미세 조정한다.
Lesson 1: Knowledge Learning
KICP 프레임워크의 첫 번째 단계는 Knowledge Learning이다. 이 단계에서는 지식을 효과적으로 학습하기 위해 KI 모듈을 사용하여 K개의 트리플을 추출하고 이를 바탕으로 언어 모델을 학습시킨다. 이를 통해 KG의 지식을 암기하도록 한다.
Lesson 2: Chain-of-Thought (CoT) Learning
두 번째 단계는 CoT Learning으로, 기본적인 KG의 knowledge fact를 학습한 후, KI를 통해 특정 추론 패턴과 관련 지식을 조합하여 코퍼스를 구성하고 학습시킨다. 엔티티 등 동일한 요소를 최종 구성과 추론 단계에서 모두 마스킹하여 정보 누출을 방지한다. 복잡한 추론이 필요한 충분한 양의 코퍼스를 모든 KG에서 수집하는 것은 어렵기 때문에, 우리는 KG를 기반으로 코퍼스를 구축한다. 사람들은 종종 특정 패턴(예: 다중 홉 추론)을 따라 복잡한 추론을 수행하며, 이는 참여하는 삼중항에 제약을 가한다(예: 연쇄형 삼중항). 따라서 이러한 패턴을 따르며 코퍼스를 구축한다.
Lesson 3: Composition Learning
세 번째 단계인 Composition Learning에서는 모델이 실제 QA task에서 암기된 지식을 사용하여 추론하도록 사전 학습을 진행한다. 여기서는 관련 추론 없이 최종 구성만을 제공하여 코퍼스를 구성하며, 무작위로 샘플링된 삼중항을 사용하여 동적으로 생성된 코퍼스를 활용한다.
Experiments
Dataset
Main Result & Ablation Study
Main Result KICP 프레임워크의 전체 결과는 네 가지 실제 데이터셋에서 평가되었다. CN-QA, ComplexWebQuestions, FreebaseQA, Math23K 데이터셋을 사용하여, 각 데이터셋에서 KICP는 기존의 다양한 베이스라인 모델들을 능가하는 성능을 보였다. F1 점수와 정확도(EM, ACC)로 평가된 결과, KICP는 모든 데이터셋에서 더 높은 성능을 나타냈다. 특히, KICP는 KBQA 작업에서 더 나은 지식 학습과 활용 능력을 보여주었으며, 다양한 QA 작업에 대한 일반화 능력도 우수했다.
KICP는 특히 K-Adapter와 비교했을 때 더 우수한 성능을 보였다. 이는 KICP의 사전 학습 작업이 모델 성능에 중요한 영향을 미친다는 것을 보여준다. 또한, 대형 언어 모델(LLM)인 GPT4와 ChatGLM2와 비교했을 때도 KICP가 더 나은 성능을 보였으며, 이는 KICP가 지식 주입과 복잡한 추론 능력에서 강력함을 입증한다. 반면, Math23K 데이터셋에서는 지식 주입이 큰 향상을 가져오지 않았으며, 이는 Math23K가 자연어 이해 능력을 더 많이 요구하기 때문일 수 있다.
Ablation Study KICP-KA는 KICP에서 KA 모듈을 제거한 것으로, 어댑터를 사용하지 않고 고정된 언어 모델(fixed LM)을 튜닝했을 때의 실험 결과를 보여준다. KICP-ATT는 KG에서 엔티티의 속성(attribute)을 사용하지 않는 것으로, 예를 들어 Temporal KG의 경우 시간이라는 정보가 메타데이터로 포함되어 있는 경우를 제외하고 엔티티와 관계의 이름, 설명 등을 제외한 모든 정보를 사용하지 않는다.
이 실험 결과는 CN-QA 데이터셋에서만 제공된다. 이는 다른 데이터셋에는 메타데이터가 포함되어 있지 않기 때문이다. CN-QA 데이터셋에는 엔티티와 엔티티에 대한 추가 정보, 예를 들어 생년월일, 국적, 직업 등의 속성 정보가 포함되어 있다.
KICP-KA와 KICP-ATT의 결과를 통해, KICP-KA는 지식 적응 모듈을 제거한 경우를 평가하여 생성된 코퍼스의 부정적 영향을 줄이는 지식 적응의 중요성을 확인할 수 있었다. 반면, KICP-ATT는 속성 정보를 제외함으로써 속성 지식의 중요성을 평가하였다. CN-QA 데이터셋에서 KICP-ATT는 KICP-KA보다 성능이 더 낮았으며, 이는 속성 정보가 CN-QA 데이터셋에서 중요한 역할을 한다는 것을 나타낸다.
Analysis
위의 두 figure는 Curriculum reasoning 모듈에 대한 실험 결과이다. CR은 Lesson 3에서 복잡한 추론을 위한 LM 사전 학습의 난이도를 줄이는 것을 목표로 한다. 먼저 Figure 4에서 CR-03은 Lesson 1과 Lesson2를 건너뛰고 바로 Lesson3만 진행했을 때를 나타내고, CR-13은 Lesson 2를 건너뛴 모델을 나타낸다.
Figure 4. Loss Trend
- 손실 감소 추세
- CR: 손실이 가장 빠르게 감소하고 최종적으로 가장 낮은 수준에 도달한다. 이는 커리큘럼 설정이 모델 학습을 더 효율적으로 만든다는 것을 의미한다.
- CR-03: 손실 감소가 느리며, 이는 모델이 처음부터 어려운 과제를 수행하려고 하므로 학습 효율이 낮아진다는 것을 보여준다. 이 설정은 Lesson 1에서 기본 지식을 먼저 학습하지 않았기 때문이다.
- CR-13: CR보다 손실 감소가 느리지만, CR-03보다는 빠르다. 이는 Lesson 1에서 기본 지식을 학습했지만 Lesson 2의 체계적인 학습 단계를 건너뛴 영향 때문이다.
- 초기 손실 증가
- CR과 CR-13 설정 모두에서 초기 손실이 약간 증가하는 현상이 관찰된다. 이는 Lesson 3의 높은 난이도와 이전 레슨들과의 분포 차이 때문이다.
- 설정 간 비교
- CN-KG 및 Wikidata: CR-13이 CR-03보다 더 좋은 성능을 보입니다. 이는 기본 지식을 먼저 학습한 후, 추가적인 학습 단계를 건너뛴 것이 효과적임을 시사합니다.
- HowNet: CR-13이 특별히 더 나은 성능을 보이지 않는데, 이는 HowNet이 주로 의미적 정보를 포함하고 있어 기존 LM이 이미 이 정보를 부분적으로 포함하고 있기 때문입니다.
Figure 5. Performance Comparison based on the Lessons
- 성능 향상
- L1은 lesson 1만 완료한 모델, L2는 Lesson 2만 완료한 모델, L3는 3을 포함해 전체 lesson을 완료한 모델이고,L03과 L13은 각각 1과 2를 건너띄고 3만 완료한 모델과 2를 건너뛴 모델이다.
- 결론적으로 모든 lesso을 완료한 L3가 가장 높은 성능을 보여준다. 또한 Lesson2가 lesson1보다는 좀 더 중요하다는 것을 L1과 L2의 비교를 통해 알 수 있다. 그리고 lesson1과 lesson3만 진행한 L13이 L2보다 낮은 것으로 보아, lesson3이 성능에 주는 영향이 가장 낮은 것을 알 수 있다.
- CR-03과 CR-13의 비교
- L3이 L03과 L13보다 성능이 뛰어남: 모든 레슨을 완료한 설정이 더 나은 성능을 보여준다. 이는 커리큘럼 설정이 수렴과 최종 결과 모두에서 도움이 됨을 나타낸다.
- L13이 L03보다 나음: L13이 L03보다 더 나은 성능을 보이며, 이는 Lesson 1에서 기본 지식을 먼저 학습한 후 추가 학습 단계를 거친 것이 효과적임을 시사한다.
- 데이터셋 간 차이
- CN-QA, ComplexWebQuestions, FreebaseQA: 각 데이터셋에서 커리큘럼 설정을 따른 모델이 꾸준히 높은 성능을 보인다.
- Math23K: 성능 차이가 크게 나지 않는다. 이는 Math23K 데이터셋이 지식보다는 자연어 이해(NLU)를 더 많이 요구하기 때문에, 사전 학습의 효과가 제한적일 수 있음을 시사한다.
결론적으로 커리큘럼 설정(CR)은 모델 학습의 효율성을 크게 향상시키며, 각 레슨이 모델 성능 향상에 중요한 기여를 한다는 것을 보여준다. 특히 Lesson 1에서 기본 지식을 먼저 학습한 후 추가적인 학습 단계를 거치는 것이 모델 성능에 긍정적인 영향을 미친다.
Limitations and Contributions
- Limitations
- KICP에 의해 생성되는 코퍼스의 다양성이 부족하다.
- 주로 언어 이해를 위한 언어 모델(LM)에 초점을 맞췄다 sLM, LLM 등의 생성형 언어 모델(generative LM)로 확장할 필요가 있다.
- KICP는 지식 소스로서 지식 그래프(KG)만을 활용했다. 추론시 검색 등 직접적으로 이용하지 않는다.
- Contributions
- Curriculum Reasoning: 복잡한 추론 능력을 향상시킨다.
댓글 남기기