
대형 언어 모델(Large Language Model, LLM)은 다양한 문제를 해결할 수 있는 뛰어난 능력을 보유하고 있다.
특히, 질의응답(Question-answering, QA)에서 뛰어난 성능을 보인다.
상용 서비스에 배포된 LLM은 사용자가 명확하고 깔끔한 질의를 제공하길 기대하지만, 예상치 못한 입력들이 대부분이다.
본 논문에서는 이러한 질의들 중 모호한(ambiguous) 질의에 대해 LLM이 어떻게 대응할 수 있을지, 대응 방법인 Alignment with Perceived Ambiguity (APA)를 제안한다.
논문 : Aligning Language Models to Explicitly Handle Ambiguity - ACL Anthology
Aligning Language Models to Explicitly Handle Ambiguity
Hyuhng Joon Kim, Youna Kim, Cheonbok Park, Junyeob Kim, Choonghyun Park, Kang Min Yoo, Sang-goo Lee, Taeuk Kim. Proceedings of the 2024 Conference on Empirical Methods in Natural Language Processing. 2024.
aclanthology.org
본 논문에서는 다양한 방식으로 해석이 가능한 표현을 모호하다고 정의한다. (Ambiguity refers to cases where an expression conveys multiple denotations)

예를 들어, "When was the last time UGA won a national championship?"이라는 질의는 어떤 종목의 national championship인지에 따라 유효한 정답이 다양하게 존재한다. (national tennis / golf / baseball/ ... championship)
저자들은 LLM이 모호한 질의에 대응하기 어려운 이유를 다음과 같다고 주장한다.
- LLM은 대부분 모호한 질의에 대응하도록 학습되지 않았다.
- 모호성은 LLM의 내재 지식의 영향을 받는다.
두 번째 이유에 대해 조금 더 이야기를 해보자면:
위 예시에서 Model A의 경우 national championship과 관련된 다양한 지식을 보유하고 있다. (tennis, golf, baseball, ...) 이렇게 다양한 지식을 보유하고 있는 모델에게 national championship에 대한 질의를 제공하면 모호하다고 판단하게 될 것이다.
반면에, Model B의 경우 내재 지식으로 national tennis championship 밖에 존재하지 않기 때문에 national championship에 대한 질의는 자연스럽게 tennis로 한정되어 모호하지 않다고 판단하게 된다.
이렇게, 질의에 대한 모호성은 모델의 내재 지식에 큰 영향을 받게 된다. (LLM은 정말 많은 텍스트 데이터로 학습되었기 때문에 내재 지식을 파악하기란 여간 어려운 것이 아니다.)
본 논문에서는 이러한 두 요소를 태클해서 LLM이 모호한 질의에 대응할 수 있도록 학습하는 방법론인 Alignment with Perceived Ambiguity (APA)를 제안한다.
# Alignment with Perceived Ambiguity (APA)
LLM은 ① 명확한(unambiguous) 질의에 대해서는 정확한 답을 생성하고, ② 모호한 질의에 대해서는 사용자에게 clarification을 요청할 수 있어야 한다. (질의의 의도는 사용자가 가장 잘 알고 있기 때문에, 질의가 모호한 경우 사용자에게 모호함을 해소하도록 하는 것이 가장 바람직하다.)
APA는 총 4가지 단계를 거쳐 모델을 학습하게 된다.

1. Initial Prediction Assessment
주어진 질의를 모델에게 제공해서 정답 여부를 판단한다.
오답인 데이터를 별도로 수집한다.
이는 모델의 내재 지식이 부족하다거나, 질의가 모호하다거나, 등등 다양한 원인에 의해 오답을 생성한 샘플들을 포함한다.
2. Perceived Ambiguity Detection
1단계에서 수집한 (오답) 데이터 중, 질의가 모호해서 발생한 데이터를 추려내기 위한 단계이다.
앞서 모호한 질의에 대응하기 어려운 이유 중 하나(모호성은 LLM의 내재 지식의 영향을 받는다.)를 고려해서, 모델의 내재 지식을 기반으로, 모델 입장에서 모호한, perceived ambiguity를 측정한다.
- 모델에게 주어진 질의를 disambiguate 하라고 요청한다. (1단계에서 예측한 모델과 동일한 모델로)
- 원본 질의와 disambiguation의 entropy를 측정한다.

Entropy 식 - 두 entropy 차이를 구한다. (본 논문에서는 이를 information gain - INFOGAIN - 으로 정의한다.)

INFOGAIN 식 - INFOGAIN이 특정 threshold보다 큰 경우, disambiguation을 통해 제공된 정보량이 많다고 판단 → 원본 질의가 충분한 정보를 포함하고 있지 않다 → 결과적으로 원본 질의가 모호하다고 판단한다.
- 모호하다고 판단된 샘플들만 수집한다.
이렇게 수집된 샘플들은 모델 입장에서 모호하다고 판단되었다고 가정한다.
3. Response Construction
모호한 질의에 대한 label을 구축한다. 크게 2가지 방식을 활용하는데,
- Fixed response : 저자들이 임의로 정한 응답 (The question is ambiguous, please clarify your question, ...)을 활용
- Generated response : 모델에게 직접 clarification request를 생성하도록 한다. 원본 질의와 disambiguation을 모델에게 제공해서 두 질의를 비교하고 모호함을 발생시킨 요소를 판단해 clarification request를 생성하도록 요청한다.
이렇게 생성된 response는 모호한 질의에 대한 label로 사용된다.
4. Supervised Fine-tuning (SFT)
질의가 주어졌을 때 레이블을 생성하도록 모델을 학습한다. (QLoRA를 활용했다.)
모호한 질의에 대해서 3단계에서 구축한 clarification request를 생성하도록 학습한다. 모호한 질의에 대해서만 학습하면 올바른 정답을 생성할 수 없을 수 있으니, 1단계에서 정답을 생성한 샘플들도 함께 학습에 사용한다.
이러한 과정을 거쳐 LLM은 사용자로부터 모호한 질의가 제공되었을 때 사용자의 의도에 맞지 않은 오답을 생성하는 것이 아닌, 사용자의 의도를 확인하는 clarification request를 생성하도록 학습된다.
# 실험 결과
실험은 3가지 backbone (Llama2 7B, Mistral 7B, Llama2 13B)을 이용해서 진행했다.
평가 지표, baseline 등 구체적인 정보는 논문 참고.
대부분의 시나리오에서 가장 좋은 성능을 내는 것을 확인할 수 있다. (unambiguous query에 대한 정능이 유지~향상 되는 것도 재미있는 결과)

생성 결과를 몇 가지 살펴보면 다음과 같다.
사용자로부터 주어진 질의(x)에 대한 disambiguation에서 모델의 내재 지식을 활용해 다양한 추가 정보를 제공한다.
- "Brave New World" 에 대해서 몇 년도 edition인지, 어떤 저자의 책인지 등의 추가적인 정보를 제공.
- 질의에 구체적인 시기를 포함 (during the american revolution)
Disambiguation을 기반으로 생성한 clarification request에서는 disambiguation에서 추가적으로 제공된 요소들을 기반으로 요청을 한다.

댓글