Search

Does Fine Tuning LLMs on News Knowledge Encourage Hallucinations?

Category
PaperReview
Venue
ARXIV
Backbone
PaLM
Text
- LLM이 SFT Stage에서 새로운 지식을 학습할 수 있는가?에 대해서 통제된 실험을 설계해서 실험적으로 밝힌논문. - LLM은 SFT stage에서 pre-training때 학습하지 않는 지식을 학습하는데 어려움이 있으며, highly known kg를 학습한다고 해서 굉장히 높게 utilizing되지도 않는다.
PPT

1. Introduction

Large Language Model Pretraining
pre-training: parameter에 factual knowledge를 넣기
supervised fine-tuning: instruction following task에 sft해서 model에 alignment behavior 부여
rlhf: model에 preference behavior 부여
SFT stage에서 human annotator에 의해서 model이 alignment를 배우기도 하는데, pre-training때 학습하지 않는 지식을 대답하도록 annotating이 될 수 있다.
여기서 해당 논문의 RQ가 등장.
⇒ (1) 과연 모델이 이미 존재하지 않은 지식을 (2) (supervised) fine-tuning으로 학습할 경우 기존 모델이 가지고 있는 지식체계에 어떤 변화가 생길까?를 굉장히 체계적으로 분석한 논문.
⇒ 이를 위해서 single fine-tuning example을 model의 knowledge에 따라서 총 4단계로 분류하는 카테고리 체계를 제시.
⇒ Model의 Knowledge를 평가하기 위해서, 또 controlled experiment setting을 구축하기 위해서 EntityQuestion(QA dataset)을 활용한 것은 분명한 한계가 있지만, 역설적으로 가장 통제적인 실험을 하기 위한 세팅이 아니었나라는 생각.
논문의 결론
⇒ LM이 Unknown fine-tuning example을 학습하는것도 pre-existing example에 대한 hallucination은 linear한 correlation 관계가 있다.
⇒ Unknown Example이 Known Example에 비해서 fitting되는데 시간이 오래걸리며, Unknown Example에 의한 hallucination을 제거하기 위해서 Early Stopping이 필요함을 실험적으로 계속해서 보임.
⇒ Known Example로 그 카테로리를 fine-grained하게 나눠서 LM에 미치는 효과를 분석.
⇒ LM은 대부분의 지식을 pre-training stage에서 배운다. Fine-tuning에서 새로운 지식을 학습시키면 결국 배우긴 하지만 pre-training stage에서 학습한 지식의 hallucination을 발생시킨다.
⇒ Fine-tuning은 pre-training때 학습한 지식을 활용하도록 mechanism을 설계해야 한다.

2. Study Setup

Fine-tuning dataset : DD
ENTITYQUESTION (subject, relation, object)
qq: Where is Paris located?
aa: France
→ 12 relations를 LM에 태워서 UNK, KN sample (i.e., train sample)로 분리
→ (OOD) 7 relations를 LM에 태워서 UNK, KN sample (i.e., test sample)로 분리
Training Pipeline
MD={(qi,ai)}i=1NMDM \rightarrow D=\{(q_{i},a_{i})\}_{i=1}^{N} \rightarrow M_{D}
Model
PALM2-M
Metric
EM

3. Quantifying Knowledge in LLMs

D={(qi,ai)}i=1ND=\{(q_{i},a_{i})\}_{i=1}^{N}에 있는 데이터가 MM이 알고 있는지 아닌지 판단하는 과정

SLICK

MMqq를 집어 넣었을때 aa를 잘 대답하는가?
1.
q와 유사한 (relation이 같은) few-shot exampler 4개 sampling
2.
temperature TT 설정.
3.
모델이 aa를 제대로 맞출 확률 Pcorrect(q,a;M;T)P_{correct}(q,a;M;T) estimate
a.
각 example에 대해서 Nex=10N_{ex}=10번씩 estimate.
b.
Pcorrect(q,a;M;T=0)P_{correct}(q,a;M;T=0)
i.
greedy answer
c.
Pcorrect(q,a;M;T=0.5)P_{correct}(q,a;M;T=0.5)
i.
highly logit에 더 높은 확률 주게 resampling
ii.
Top 40에서 Nsample=16N_{sample}=16개를 sampling
iii.
MD={(qi,ai)}i=1NMDM \rightarrow D=\{(q_{i},a_{i})\}_{i=1}^{N} \rightarrow M_{D}
Pcorrect(q,a;M;T)P_{correct}(q,a;M;T) 로 knowledge 카테고리 분류
LM이 한번이라도 맞추면 Known, 아니면 Unknown으로 분류.
여러 demonstration에 대해서 Greedy Decoding과 temperature sampling에 대해서 생성된 answer들을 가지고 Known 카테고리를 세분화

4. How Harmful are Unknown Examples?

D|D|를 고정하고 Unknown Example의 비율을 바꿔가면서 LM을 training해가면서 변화추이를 관측
Known Example은 일단 collectively하게 측정.
이후에 ablation으로 fine-grained하게 측정.
⇒ Disjoint Test를 hallucination 척도로 활용
Disjoint setting이기 때문에 Test set에는 2개 type question이 존재
1.
UNK Question → 어떤 trainset으로 학습해도 모델이 맞추질 못함
2.
KNOWN Question → Training set 이후 모델이 맞추는지 확인이 가능함
⇒ Dev에서 수렴하면 Early Stopping
⇒ Training Dataset Acc 100% 달성하면 Early Stopping
#### Higher Unknown Ratio is Proportional to Performance Degradation
Unknown비율이 많을수록 성능이 악화됨 (training duration 상관 없이 같은 경향)
Unknown 비율이 높을때, Early Stopping이 risk of overfitting에 도움이 됨
#### Unknown Examples: Harmful or Neutral?
위의 실험에서는 (1) Unknown example이 정말 LM의 parametric knowledge와 discrepancy가 커서 performance degradation이 일어나는지 (2) Known example 수가 줄어듦에 따라 Neutral한 효과를 주는것인지 불분명
D|D|에서 known Example만 따로 빼서 DknownD_{known} 구축 후 fine-tuning, 실험결과 추가로 plotting
Early Stop을 할 경우 Unknown Example은 neutral한 효과를 가짐.
Convergence할 경우 Unknown Example은 harmful한 효과를 가져옴
Early Stop Convergence의 gap이 DknownD_{known}보다 DD에서 더 큰데, 이를 통해 Unknown sample이 overfitting에 취약함을 알 수 있다.
#### Unknown Examples are Fitted Slower than Known Examples
Unknown example이 later training stage에 fitting되어서 negative 영향을 미치는 것을 보았는데, training dynamics 분석을 통해 어떤 sampling이 fine-tuning stage에서 빠르게 fitting되는지 보다 명시적으로 분석함.
(UNK 50% vs KNOWN 50%) Known Samples가 Unknown Samples보다 훨씬 더 빠르게 fitting되고 Early Stop으로 끊는 위치에서 Training Known의 fitting 비율이 압도적으로 높은 것을 확인할 수 있다.
Known 카테고리를 변경해가면서 Early Stop 직후 Training sample 내 UNK vs KNOWN이 얼만큼 fitting 되어있냐를 확인해보면 (아래그림) Known이 압도적인 비율임을 확인함을 볼 수 있으며, 이전 Early Stoping의 Neutral Effect에 대한 해석을 제시함
#### The Influence of Unknown vs Known on Accuracy: A Linear Model Perspective
Known Example과 Unknown Example 개수를 Test Acc와 linear 관계로 표현
Unknown examples은 음수(hurts performance), Known examples는 양수(improves).
Test samples가 OOD(이 setting에서는 relation이 다름)이라도 경향성은 같음
In-Distribution
Out-of-Distribution
"Where is [E1] located?”라는 데이터로 convergence 시키면 "Who founded [E2]?”라는 질문에 hallucination을 일으킬 수 있음.

5. Understanding Knowledge Types: Their Value and Impact

지금까지 진행했던 실험에 대해서 조금 더 fine-grained된 실험을 진행
1.
각 training sample의 knowledge 카테고리가 test performance에 어떻게 영향을 미치는가?
a.
2.에서 구축한 카테고리 별로 나눠서 gap이 DCATD_{CAT}
b.
ENTITYQUESTION의 natural distribution 따르는 DnaturalD_{natural}
2.
각 test examples 카테고리별로 다를까?
a.
test example도 2.처럼 분류함
Highlyknown으로만 학습하는게 가장 좋을것 같지만, Highlyknown한 disjoint test에서만 가장 성능이 좋다.
의외로 Maybeknown이라고 판정받은 training dataset으로 학습하는게 (Highly, Maybe) 전반적으로 가장 성능이 좋다.
Weakly Known과 Unknown으로만 학습할 경우 Early → Convergence로 갈 시 각각의 카테고리에서 큰 개선이 있지 않는것 대비 (8.6%→ 17.2% & 0.6% → 3.2%) Highlyknown과 Maybeknown처럼 이미 알고 있는 지식체계가 많이 파괴되는 것을 알 수 있다.
(Unknown으로 학습후도 disjoint test set의 Unknown이 낮아야 disjoint test에 대한 실험 타당성을 이야기할 수 있는데 장표를 보면 낮음(3.2%)
같은 이야기지만 DnaturalD_{natural}DmaybeknownD_{maybeknown}에 비해서 EarlyStop 이후에 수직낙하하는 것을 DnaturalD_{natural}에 Weakly Known과 Unknown되어 있기 때문이라고 설명하며, DmaybeknownD_{maybeknown}이 overfitting 방지와 top performance에 좋다고 이야기함.

6. Conclusion

superficial hypothesis에 따르면 LLM이 지식을 pre-training때 학습하고 SFT는 단순 alignment를 학습한다고 주장 (LIMA).
여기에 더해 LM이 UNK Example에 대해서 학습하기 어렵다는 것, Highlyknown을 추가적으로 학습하는게 suboptimal utilization으로 어이진다는 밝혀냄으로, superficial hypothesis에 힘을 실어 SFT 데이터를 구축할때 LM의 pre-existing KG를 고려할 것을 강조.