https://arxiv.org/pdf/2305.14628


Abstract:

  • 대형 언어 모델(LLM)이 다양한 질문 유형에 대해 얼마나 잘 일반화할 수 있는지를 다룸. 그러니까 서로 다른 종류의 질문에 대해서 답변을 잘하도록 말하는 걸 뜻함.
  • LLM 은 여전히 서로 다른 유형의 추론 능력을 요구하는 여러 질문 유형에 일관되게 잘 대답하지는 않는다고 함. 특히 본 적 없는 새로운 유형의 추론에 대해서는 일반화 성능이 저조하다고 한다.
  • 이러한 문제를 해결하기 위해 Mixture-of-Reasoning-Experts (MORE) 기법을 제안함.
  • 이 기법은 서로 다른 유형의 추론 능력을 가진 전문 모델(Expert Models) 를 앙상블 하는 기법임.
  • 각 전문 모델은 기반이 되는 언어 모델(백본 LLM)에 특화된 프롬프트를 사용하여 특정 추론 카테고리에 최적화되게됨. 이 논문에서 다루는 추론 카테고리는 사실적(factual), 멀티홉(multihop), 수학적(mathematical), 그리고 상식적(commonsense) 추론 문제인데, 이 카테고리별로 최적화 프롬프트를 만드는거임.
  • MORE 기법의 핵심 아이디어는 서로 다른 전문가 모델들간의 합의(agreement) 를 이용해서 각 질문마다 최적의 답변을 내놓거나, 답변을 주지 않는 기권 방법을 결정할 수 있다.
  • 이 기법의 실험 결과로는 4가지 추론 유형에 걸쳐 총 12개의 QA 데이터셋에서, 어떤 단일 전문 모델보다도 높은 정확도를 보여줬다고 함.

 

 

Introduction:

  • 질문 답변(QA) 시스템은 아주 광범위하게 사용되는 시스템임.
  • 그리고 이러한 QA 시스템은 어떤 종류의 질문이든 처리할 수 있어야 하고, 시스템이 정말 정답을 알고 있는 경우에만 답변을 제공해야 하는 신뢰성(reliability) 요구사항이 있다.
  • 이러한 요구사항을 만족시키려면 시스템은 다음 두 가지 목표를 달성해야함:
    • 다양한 유형의 질문에 대응할 수 있는 일반화 능력을 갖추어야 함.
    • 정답을 확신하지 못하는 경우에는 잘못된 답변을 피하고 답변을 생략할 수 있어야 한다.
  • 기존에는 많은 사람들이 하나의 모델이 모든 유형의 질문을 처리하는 통합 QA 시스템을 만들고자 했음.
  • 그리고 GPT-3 등의 범용 대형 언어 모델들은 인상적인 질문 답변 능력을 보여주지만, 특정 도메인이나 추론 유형에 대한 전문성이 부족해 전문화된 모델에 비해 성능이 떨어질 수 있음.
  • 논문에서는 단일의 범용 모델을 구축하려는 추세에 반해, 더 해석 가능한 시스템을 만들기 위해 여러 전문화된 전문가 모델을 사용하는 새로운 프레임우크를 제안함.
  • 각각의 전문가 모델은 특정 유형의 추론(예: 사실적, 멀티홉, 수학적, 상식적)에 특화되어 있음.
  • 주어진 질문에 대해 이 전문가 모델들 중 하나 이상이 답을 제안하고, 이들 중에서 최적의 답변을 선택하거나 답을 하지 않는(기권하는) 방식으로 작동할 수 있음. 이러한 프레임워크를 MORE (Mixture-of-Reasoning-Experts) 라고 한다.
  • 전문가 모델을 개발하는 방법으로는 Chain-of-Thought(추론 과정을 체인 형태로 나타내는 프롬프트)나 retrieval-augmented prompting 등과 같은 특수한 프롬프트 기법을 사용함.
  • 12개의 QA 데이터셋에 대해 실험한 결과, 이러한 특화된 프롬프트를 사용하는 전문가 모델은 일반적인 백본 모델보다 해당 추론 유형에 대한 성능이 뛰어났다고 함. 하지만 전문가 몯델은 자신이 전문화된 영역 밖의 질문에 대해서는 훨씬 낮은 정확도를 보이기도 했다고 함.
  • MORE 프레임워크는 이러한 전문가 모델들을 결합하여 시너지를 얻는 방법을 제시함.
  • 구체적으로, 각 전문 모델이 산출한 답변 후보 중에서 가장 적합한 답변을 선택하고, 필요시에는 답변을 생략하는 방법을 학습한다.
  • 답변 선택을 위한 특징으로는 다음과 같은 것이 고려될거임:
    • 질문 유형과 각 전문 모델의 전문성 간의 일치도
    • 각 전문 모델의 자신감 수준과 답변의 특성
    • 모든 전문 모델 간의 합의 정도 (논문에서는 새로운 특징으로 강조됨)
  • 이러한 방식으로 전문가 모델들을 앙상블함으로써, MORE는 다양한 추론 유형에 걸쳐 모든 단일 전문 모델을 능가하는 성능을 달성할 수 있다고 함.
  • 그리고 여러 전문가 모델 간의 합의 정도를 활용하면 선택적 QA(확신이 있을 때만 답하는 시스템) 성능이 개선됨을 확인했다고 한다.

 

 

Problem Setup:

  • 이 논문에서의 목적은 다양한 추론 유형을 처리하고, 필요할 때 답변을 기권할 수 있는 QA 시스템을 개발하는 것임.
  • 하나의 QA 시스템이 다양한 추론 과제를 효과적으로 처리하기 위해서는 여러 유형의 질문에 대응할 수 있어야 할 것:
    • a) 사실적 추론(Factual reasoning): 사실 중심의 질문을 처리하며, 지식 집약적인 도메인에 대한 응답이 필요한 경우를 말함. 예를 들어, “세계에서 가장 큰 강은 무엇인가?” 같은 질문에 대해 사실적 정보를 제공해야 함.
    • (b) 멀티홉 추론(Multihop reasoning): 질문을 여러 단계로 분해하여 종합적인 추론 과정을 거쳐야 하는 유형임. 예를 들어, “이탈리아의 수도를 지나는 강의 길이는?” 같은 질문은 중간 단계 (이탈리아의 수도는 로마이고, 로마를 지나는 강은 테베레강이라는 사실)를 거쳐야 할 것.
    • (c) 수학적 추론(Mathematical reasoning): 수학적 계산이나 논리적 계산이 필요한 유형임. 예를 들어, “5 곱하기 7은 무엇인가?” 또는 일상 수학 문제에 대한 질문임.
    • (d) 상식적 추론(Commonsense reasoning): 일반적인 상식이나 암묵적인 지식을 기반으로 하는 추론 유형임. 를 들어, “비가 올 때 우산이 필요한 이유는?” 같은 질문임.

 

 

선택적 예측(Selective Prediction)의 필요성:

  • 논문에서 말하는 선택적 예측은 실제 응용 분야에서 QA 시스템을 사용할 때, 시스템이 정답을 확신하지 못하는 경우 답변을 기권하는 기능을 말함.
  • 실제 QA 시스템에서는 이 기능이 요구될거임. 시스템이 정답을 맞힐 확률이 높을 때만 답을 하고, 정답이 틀릴 가능성이 높다고 판단될 경우에는 기권해야 하니까.
  • 이 기능의 작동 원리는 다음과 같을거임:
    • 주어진 질문 x에 대해 QA 시스템은 예측된 정답 y_hat 를 내고, 해당 예측에 대해 점수 c 를 부여함.
    • 시스템은 모든 예측값을 점수 c에 따라 순위화하고, c가 어떤 임계값 γ보다 낮으면 답변을 기권하도록 하는 것. 즉 c > y 일 때만 답변을 제시하는 방법임.
    • 사용자나 설계자는 임계값 γ를 조절하여, 정확도와 커버리지 사이의 균형을 조정할 수 있음.
    • 정답율과 응답율 사이의 트레이드오프를 조절하는 것이기 떄문임.
  • 이 시스템에서 자신의 답변에 대한 확신도는 MORE 시스템과 연계해서 동작할 수 있다고 함:
    • 전통적인 QA 시스템에서는 단일 모델의 출력만으로 확신도를 측정하지만, MORE 시스템에서는 여러 전문가 모델의 출력을 비교해 확신도를 측정할 수 있다고 한다.
    • 예를 들어, 모든 전문가 모델이 동일한 답변을 할 때 확신도가 높아진다고 판단할 수 있음.

 

 

MORE 프레임워크:

  • MORE 프레임워크는 다양한 추론 유형에 특화된 전문가 모델들을 앙상블하여 최종 답변을 생성하는 시스템임.
  • MORE 시스템의 첫 번째 단계는 다양한 전문가 모델을 얻는 것인데, 여기서는 LLM + 특화된 프롬프트를 사용해서 구현함.
  • 네가지 추론 분야에서 다음과 같이 특화된 프롬프트 기법을 사용했음:
    • 사실적 추론 전문가 (Factual expert):
      • Retrieval-augmented prompting 기법을 사용
      • Contriever (Izacard et al., 2022)와 같은 검색 모델을 사용하여 질문과 관련성이 높은 상위 10개의 위키백과 문단을 찾고, 이를 질문 앞에 추가해서 사용하는 방법.
    • 멀티홉 추론 전문가 (Multihop expert):
      • Chain-of-Thought (CoT) prompting (Wei et al., 2022b) 기법을 사용.
    • 수학적 추론 전문가 (Math expert):
      • CoT prompting을 사용
    • 상식적 추론 전문가 (Commonsense expert):
      • Generated knowledge prompting (Liu et al., 2021) 기법을 사용
      • LLM 을 사용해서 각 질문과 관련된 10개의 사실 정보를 생성하고, 이를 질문 앞에 추가하는 방식.
  • 이런 각 전문가 모델은 동일한 질문에 대해 서로 다른 추론 방식을 통해 답변을 생성할거임.
  • 최종 답변은 전문가 모델들로부터 예측 답변을 얻은 후, 최적의 답변을 선택하는 분류기를 사용해서 답변을 하게 될거임. 이 분류기는 각 전문가 모델의 예측을 입력으로 받아, 가장 올바른 답변을 골라내는 역할을 한다. 이 분류기는 특징 기반 랜덤 포레스트(random forest) 분류기를 사용하여 각 후보 답변에 점수를 매기고, 이 점수를 바탕으로 최종 답변을 고르게 될거임. 물론 기권에서도 사용됨.
  • 이를 통해, 시스템은 사전에 질문의 추론 유형을 파악하지 않고도, 다양한 전문가 모델을 앙상블하여 최적의 답을 제공할 수 있음.
  • 또한, 연구자들은 모든 전문가의 예측을 얻지 않고, 질문 자체만으로 가장 적합한 전문가를 선택하는 경우를 실험해봤다고 함. 이 설정에서는 전문가 모델의 예측 특징이나 전문가 간 합의 특징 없이도 분류기가 작동해야 하므로 오직 질문 관련 특징에서만 사용됨.
  • 앙상블을 통한 답변 선택(Ensembling via Answer Selection) 매커니즘:
    • 특징 기반 랜덤 포레스트(random forest) 분류기를 사용하여 각 후보 답변에 점수를 매기고, 이 점수를 바탕으로 최종 답변을 고르는 것.
    • 입력으로 사용될 훈련 데이터 특성:
      • 전문가 유형(Expert type): 답변을 제공한 전문가 모델의 유형(사실적, 멀티홉, 수학적, 상식적 추론 전문가).
      • 질문 특성(Question characteristics): 질문 단어(question word), 질문 길이(length), 숫자 값의 존재 여부 등과 같은 질문 자체에 관한 특징들.
      • 답변 특성(Answer characteristics): 각 답변의 확신(confidence), 답변 길이, 질문/문맥/추론 과정과의 토큰 중복도(token overlap) 등.
      • 전문가 간 합의(Inter-expert agreement): 모든 전문가 예측 간의 합의 정도 (모든 전문가 예측에서 동일한 답변이 예측된 횟수, 전문가들의 예측 간 토큰 오버랩 정도 등)
    • 훈련 데이터:
      • 각 QA 데이터셋마다 100개의 예제를 뽑아 총 1200개의 예제를 훈련 데이터로 사용
      • 각 질문에 대해 전문가 모델들이 생성한 출력(답변)과 해당 답변의 정오 여부를 이용한다.
      • 랜덤 포레스트 분류기는 이진 분류를 목표로 가짐. 즉, 각 전문가의 답변이 정답인지 여부를 예측하도록 훈련됨.
      • 훈련 과정에서, 분류기는 앞에서 정의한 특징들을 사용하여 각 전문가 답변의 정확도를 추정하도록 학습.
    • 추론 시:
      • 각 질문에 대해 모든 전문가 모델의 답변을 받음.
      • 랜덤 포레스트 분류기는 각 답변의 정확도에 대한 점수(score) 를 계산.
      • 가장 높은 점수를 가진 답변을 최종 답변으로 선택함.
      • 만약 최종 선택된 답변의 점수가 특정 임계값(여기서는 검색을 통해 결정된 임계값)보다 낮다면, 시스템은 기권.
    • 랜덤 포레스트 외에도 다른 특징 기반 분류기나, BERT(Devlin et al., 2019)와 같은 사전 학습된 언어 모델을 미세 조정(finetuning)하는 것도 시도해봤다고 함. 하지만 랜덤 포레스트가 제일 효과적이었다고 한다.
    • 랜덤 포레스트를 사용한 답변 선택은 좋은 QA 정확도를 제공함. 하지만 충분한 양의 훈련 데이터가 필요.
  • 랜덤 포레스트가 없다면 Few-shot 기법을 사용하는 것도 방법이라고 함:
    • 구체적으로, 임의로 선택된 14개의 데모 예제를 사용함.
    • 각 예제는 질문, 네 명의 전문가 모델이 예측한 답변, 그리고 그 중 최선의 답변으로 구성됨.
    • 추론 단계에서 이 데모 예제를 프롬프트로 LLM 에 제공하고, LLM 이 최적의 답변을 선택하도록 하는 것.

 

 

MORE 성능 비교와 결과:

  • Oracle Ensemble:
    • 모든 전문가 모델의 답변 중 최적의 답변을 선택하는 이상적인 방법(이론적 상한선)
    • 다양한 유형의 질문에 대해 적합한 전문가가 답변을 했다고 가정했을 때 나오는 값임.
    • 실제 구현에서는 질문에 대한 답변으로 어떤 것이 가장 적합한 것인지 알기 어려우니까 이 수치에 도달하지 못할거임. (올바른 전문가에게 라우팅을 정확하게 했다는 가정하에 이뤄진 것.)
  • Majority Vote:
    • 모델 간의 일치도를 단순한 방식으로 반영하는 접근 방법으로 네 명의 전문가 모델이 생성한 답변들 중 가장 빈도가 높은 문자열을 최종 답변으로 선택하는 것.
  • MaxProb:
    • 각 전문가 모델이 제공한 답변 중 가장 높은 확신도(confidence score) 를 가진 답변을 선택하는 것.
    • 확신도를 기반으로 답변을 선택하지만, 모든 전문가 모델의 결과를 종합적으로 고려하지는 않을거임.
  • MORE는 두 가지 답변 선택 방식(Codex 기반 선택기, 랜덤 포레스트 선택기)을 사용하여 성능 비교:
    • 랜덤 포레스트 선택기가 더 나은 성능을 보이기도 함.
  • 단일 전문가 모델은 특정 질문 유형에서 뛰어난 성능을 보일 수 있지만, 다른 유형에서는 성능이 크게 저하됨.
  • 확실히 MORE 기법이 여러 분야에서 성능을 유지함으로써 다른 기법들보다 결과적으로 성능이 높음.
  • Question-Only Routing 성능 비교:
    • 이전에는 라우팅 전략으로 질문과 전문가 답변을 기반으로 라우팅을 했음.
    • 이 기법을 질문 자체만을 기반으로 어떤 전문가 모델을 사용할지 결정하는 전략과 비교해보자.
    • 위 이미지의 마지막 단락에 성능이 표현되어 있음.
    • 모든 전문가 모델의 답변을 얻은 뒤 최적의 답변을 선택하는 풀 라우터(Full MORE Router) 설정이 질문만을 이용하는 라우터보다는 성능적으로 뛰어남.
    • 다만 모든 전문가 모델의 답변을 얻는 라우터는 비용이 더 발생한다는 문제점도 있음.

 

 

자동 기권(Automatic Abstention):

  • 자동 기권은 QA 시스템에서 답변을 내는 걸 포기하는 기능임. 정답의 확신이 없으면 포기하는게 나으니까.
  • 전문가 모델끼리 합의를 해서 나온 결과를 바탕으로 답변을 포기하도록 하면 성능이 향상된다고 한다. 그냥 단순하게 모델의 답변 확신도를 바탕으로 포기하는 것보다.
  • 여기서 말하는 합의는 모델의 답변을 보고, 답변간의 일치도나 토큰 일치도를 정량화해서 합의를 측정함. 공통된 단어나 토큰을 얼마나 내는지.

 

 

Limitations:

  • 이 논문에서는 실험을 위해 주로 Codex 모델에 초점을 맞췄음. QA 작업에서는 그 당시에 Codex 모델이 성능이 가장 좋았기 때문에.
  • 이후에는 프롬프트 엔지니어링을 거친 LLM만 사용하는 것에서 벗어나, 특정 추론 유형에 맞게 미세조정(finetuning)된 모델이나 Transformer 기반이 아닌 다른 유형의 모델 등을 포함한 방식으로 발전할 수도 있을거임.
  • 추론 유형 범위(Reasoning Type Coverage) 는 논문에서는 4가지 추론 유형만 다뤘지만, 현실 세계에서는 다양한 유형의 질문이 포함될 수 있음. 정답이 여러개이거나, 모호한 질문이거나, 잘못된 전제를 가진 질문 등. 현재 프레임워크는 이러한 다양한 질문 유형을 모두 다루지 않음.
  • 그리고 논문은 질문 답변(QA) 작업에 초점을 맞추었으며, 그 성능을 평가한거긴 함. 다른 분야 에서는 아직 실험을 안해봄.

+ Recent posts