본문 바로가기

NLP/Prompt tuning

Can language models learn from explanations in context? 간단 리뷰

EMNLP Findings 2022

 

논문 링크: https://arxiv.org/abs/2204.02329

 

요약:

답에 대한 이유를 설명하는 explanation을 추가해주면 성능이 좋아진다.

 

 

제목에 나와있듯 input에 explanation을 추가했을 때 in context learning 환경에서 효과가 있을지를 실험했다.

여기서 말하는 explanation은 대답이 어떤 이유로 나왔는지를 설명하는 내용의 text이다. Explanation이 추가된 모델의 input은 다음과 같다.

 

 

기존 연구들과 차별점이 있다면 저 explanation을 answer 뒤에 넣은 것인데, 그 이유는 실제 테스트를 할 때와 동일한 형태의 input을 만들어주기 위함이라고 한다.

 

저런 식으로 explanation을 활용했을 때 few-shot example을 추가한 것보다 더 효과가 있었다. 그리고 Instruction은 큰 효과를 보여주지는 않았다. Hand-tuned explanation은 10개의 validation set에 대해 가장 좋은 성능을 갖도록 수동으로 조작된 explanation들을 활용한다. Hand-tuned explanation이 상당한 효과를 보여준다(실험 세팅에 따라 다를 순 있다).

 

 

모델이 커질 수록 explanation의 효과가 커졌고,

 

Input 내의 example들에 대한 explanation들을 섞어서도 실험을 했었는데, 이렇게 실험할 경우 성능이 악화됐다. 이는 모델이 단순히 input에 포함된 word distribution을 보는 게 아니라 실제 example과 explanation의 관계를 본다는 것을 뜻한다.

 

 

정리:

재밌는 의도를 갖고 있고, 재밌는 결론을 도출하는 실험이다. 예전부터 DeepMind와 저자 중 한 명인 Felix Hill은 이런 류의 연구를 많이 하는 것 같아서 좋다. 그런데 실험 그 자체가 얼마나 robust하게 설정되었는지는 모르겠다.

 

그리고 이 결론의 활용성도 그렇게 좋지는 않다. Explanation을 example들에 대해 얻고 실험하기가 쉽지는 않다. 그래서 이런저런 이유로 Findings에 들어가게 됐나보다.

 

개인적으로 instruction이 큰 효과가 없는 이유는 너무 task example들에 대해 general한, 추상적인 내용을 갖고 있기 때문인 것 같고, explanation은 각 example에 대해 설명해주기 때문에 모델이 알아듣기에 좀 더 구체적인 설명이 된 게 아닌가 생각한다.