NL-237, Self-Alignment for Factuality: Mitigating Hallucinations in LLMs via Self-Evaluation, ACL 2024

◼ Comment

  • 내가 생각하고 있는 문제점와 관련있는 논문이어서 좋았음.
  • 여기서 핵심은 LLM이 관련 지식을 알고 있음에도 불구하고 환각을 발생하는 경우가 있기 때문에 이의 문제를 완화하기 위한 방법을 제안하는 것이다.
  • 이러기 위해서는 DPO 학습을 통해 모델을 alignment 한번더 해서 성능을 향상시키는 것이고, DPO 학습을 위한 데이터를 만드는게 어떻게 보면 컨트리뷰션이다.
  • 데이터를 만들때 외부 지식이나 api을 사용하는게 아니라, 초기 LLM만을 활용하기 때문에 self-alignment라고 볼 수 있다.
  • 데이터 만드는 방법
    • 위 그림대로 만든다고 보면됨..
    • step1에서 LLM이 여러개 샘플을 생성하고
    • step2에서 atomic claims을 뽑고, question만들어서, 각각에 대한 P(True)값을 뽑아서 최종 점수를 만든다. (최종 점수는 걍 점수를 평균 낸듯)
    • step3에서 최종 점수가 높았던 response와 낮았던 response을 쌍을 지어서 DPO학습을 한다.
  • step2에서 점수내는 방법이 그냥 (Q, C) 던져서 LLM의 P(True) 확률을 뽑는 것은 나쁘진 않은데 다음의 문제가 있다고 한다.
    • SELF-EVAL-P(TRUE)는 효과적이지만, 초기 실험 결과에 따르면 LLM은 이 방법을 사용할 때 과도한 자신감을 나타내는 경향이 있습니다. 
  • 그래서 새로운 방법론을 제안했고 아래와 같다.
    • 하나의 모델을 학습하는 건데, 
    • step1에서 LLM을 통해 다양하게 샘플링하고 NLI을 통해 응답을 클러스터링한다고 보면됨.
    • 위 그림 예시에서는, 기존의 golden answer로 20개가 묶이고 나머지가 4개, 6개로 묶인 것
    • 그러면 LLM에게 2지선다를 날리는 것이다.
    • 여기서 A/B를 골라야하는데 각각의 확률이 있을건데, 그를 통해 marginal loss 을 설계해서 reward model 학습하듯이 한다.
    • 여기서 학습된 모델을 통해 P(TRUE)을 대체한게 SKT라고 명명한 모델이다.
  • 결과적으로 이렇게 만든 데이터로 DPO 학습한 SELF-EVAL-SKT이 기존 모델들보다 좋다고 주장한다.
  • 평가할 벤치마크는 TruthfulQA와 BioGEN이기 때문에 한번 살펴봐야겠다.
  • 한번 읽어봐야겠다고 생각든 논문
    • Language Models (Mostly) Know What They Know
    • Alignment for Honesty, NeurIPS 2024
    • Fine-tuning Language Models for Factuality, ICLR 2024

Abstract

대규모 언어 모델(LLMs)은 놀라운 능력을 보여주지만, 련 지식을 가지고 있음에도 불구하고 종종 사실 부정확성(즉, "환각") 문제를 겪습니다. 이러한 환각을 완화하기 위해 현재의 접근 방식은 일반적으로 고품질의 인간 사실성 주석을 필요로 합니다. 본 연구에서는 사실성을 향상시키기 위해 LLM의 자체 평가 기능을 활용하는 Self-Alignment for Factuality를 탐구합니다. 구체적으로, 우리는 SELF-EVAL이라는 자체 평가 구성 요소를 통합하여 LLM이 자신의 생성 응답의 사실성을 내부 지식에만 의존하여 검증하도록 유도합니다.

내가 생각하고 있는 방향과 비슷한데?

또한 모델의 자신감 추정과 교정을 개선하여 LLM의 자체 평가 능력을 강화하기 위해 **Self-Knowledge Tuning (SK-TUNING)**을 설계했습니다. 이후 이러한 자체 주석 응답을 활용해 **직접 선호 최적화 알고리즘(Direct Preference Optimization)**을 통해 모델을 미세 조정합니다. 제안된 자기 정렬(self-alignment) 접근 방식이 TruthfulQA와 BioGEN에서 세 가지 주요 지식 집약적 과제에 대해 LLAMA 계열 모델의 사실 정확도를 크게 향상시킨다는 것을 보여줍니다.

1 Introduction

대규모 언어 모델(LLMs)은 다양한 자연어 처리(NLP) 과제에서 뛰어난 능력을 보여주고 있음에도 불구하고(Wei et al., 2022; Liu et al., 2023c; Chang et al., 2023; Zhang et al., 2023a), 때로는 그럴듯하지만 사실과 다른 진술, 즉 "환각"을 생성하는 경우가 있습니다(Huang et al., 2023; Ji et al., 2023; Zhang et al., 2023c; Tonmoy et al., 2024). 이러한 환각은 특히 고위험 과제에서 LLM이 실질적인 응용 가능성과 신뢰성을 약화시킬 수 있습니다(Liu et al., 2023b).

이 연구에서는 LLM이 쿼리에 대해 관련 지식을 보유하고 있음에도 불구하고 정확한 정보를 전달하지 못하는(즉, "알고 있음"과 "말하고 있음" 간의 차이) 환각 유형을 완화하는 데 중점을 둡니다(Li et al., 2023b, 2024). 예를 들어, LLM이 한 번의 추론에서는 부정확한 응답을 생성했지만, 다른 시간대에는 정확한 응답을 제공할 수 있습니다(Wang et al., 2023a; Manakul et al., 2023; Dhuliawala et al., 2023). "알고 있음(knowing)""말하고 있음(telling)"의 차이는 LLM이 사전 학습 중에 습득한 지식을 정확히 전달할 가능성을 크게 저하시킵니다(Saunders et al., 2022; Kadavath et al., 2022; Chen et al., 2023a). 관심있는 포인트

일부 연구(Li et al., 2023b; Chuang et al., 2023; Zhang et al., 2023b)는 도메인별 주석 데이터를 사용하여 모델의 내부 표현을 "사실성" 방향으로 수정하는 방법을 제안했습니다. 한편, 최대 가능도 추정(MLE)이 사실성을 정확히 포착하지 못한다는 점을 인정하며(Ouyang et al., 2022; Allen-Zhu and Li, 2023; Azaria and Mitchell, 2023; Tian et al., 2023a), 최근 연구(Tian et al., 2023a)는 LLM의 내부 사실성 신호를 훈련 보상으로 활용하여 모델을 사실성으로 유도하는 방법을 제안했습니다. (요것도 읽어보면 좋을듯) LLM의 환각은 본질적으로 모델의 자신감과 연관되어 있기 때문에(Huang et al., 2023), Tian et al. (2023a)은 생성된 응답의 사실적 정확성에 대한 일관성 기반 자신감을 사실성 신호로 활용합니다(Kuhn et al., 2023; Manakul et al., 2023). 그러나 이러한 일관성 기반 자신감은 모델의 내부 지식보다는 생성 능력에 의존하는 한계를 가집니다.

LLM이 직접적으로 "올바른 응답을 말하는" 데 어려움을 겪는 경우에도, 생성된 응답을 "평가하는" 데는 잠재력을 보여주었습니다(Kadavath et al., 2022; Saunders et al., 2022). 예를 들어, LLM은 생성된 응답 내의 사실적 부정확성을 합리적인 신뢰도로 식별할 수 있습니다. 이러한 자체 평가(self-evaluation), 즉 내부 지식 인식을 기반으로 모델 자체를 직접 유도하는 접근 방식이 사실성 평가에 더 효과적일 수 있습니다. LLM으로 평가하는 self-evaluation은 나름 괜찮게 작동한다는 것

이 연구에서는 LLM의 자체 평가 능력을 활용하여 환각을 완화하는 Self-Alignment for Factuality라는 자기 정렬 프레임워크를 제안합니다. 우리의 접근 방식은 LLM이 생성한 응답의 사실성에 대한 예측 신뢰도를 자체적으로 생성하도록 유도하며, 이러한 신뢰도 점수를 보상 신호로 활용하여 직접 선호 최적화(Direct Preference Optimization, DPO) 알고리즘을 통해 모델을 미세 조정합니다(Rafailov et al., 2023). 구체적으로, 우리는 LLM이 내부 지식을 바탕으로 응답을 직접 검증하도록 유도하는 사실성 자체 평가 구성 요소인 SELF-EVAL을 통합합니다. 또한, LLM의 내부 지식 인식과 예측 신뢰도 추정 및 교정을 강화하기 위해 SK-TUNING을 도입하여 다양한 지식 지향 과제를 포괄적으로 조정합니다(Guo et al., 2017; Tian et al., 2023b).

우리는 제안된 Self-Alignment for Factuality 프레임워크의 효과를 LLM을 위한 세 가지 주요 지식 집약적 과제, 즉 다중 선택 질문 응답(MCQA), 짧은 형식의 열린 응답 생성, 그리고 긴 형식의 열린 응답 생성에서 평가했습니다. TruthfulQA(Lin et al., 2022)와 BioGEN(Min et al., 2023a) 두 가지 벤치마크 데이터셋을 사용한 결과, Self-Alignment for Factuality는 모델의 내부 지식만을 기반으로 하여 LLAMA 계열 모델(Touvron et al., 2023a, b)의 사실적 정확성을 크게 향상시켰으며, 표현 수정 방법(Chuang et al., 2023; Li et al., 2023c) 및 최근 일관성 기반 자신감 접근법(Tian et al., 2023a)을 뛰어넘는 성능을 보였습니다.

요약하면, 우리의 기여는 다음과 같습니다:

  1. LLM의 자체 평가 능력을 활용하여 모델의 환각을 완화하는 Self-Alignment for Factuality 전략을 제안합니다.
  2. LLM의 자신감 추정 및 교정을 개선하여 자체 평가 능력을 강화하는 SK-TUNING을 도입합니다.
  3. TruthfulQA와 BioGEN을 사용하여 세 가지 주요 과제에서 Self-Alignment for Factuality의 효과를 입증하였으며, 모든 비교 방법을 능가하는 사실적 정확성을 달성했습니다.

2 Related work

LLM의 환각
LLM(대규모 언어 모델)에서 환각은 생성된 콘텐츠가 겉보기에는 그럴듯하지만 실제 세계 지식과 일치하지 않을 때 발생합니다(Chen et al., 2023b; Li et al., 2023a; Zhang et al., 2023c; Tonmoy et al., 2024). 본 연구에서는 LLM이 습득한 지식이 확립된 사실을 반영해야 한다는 관점을 따릅니다(Yang et al., 2023). 특히, LLM이 관련 지식을 가지고 있음에도 불구하고 사실적으로 부정확한 진술을 생성하는 특정 유형의 “불성실 환각(unfaithful hallucination)”에 초점을 맞춥니다(Evans et al., 2021; Park et al., 2023; Li et al., 2023b).
LLM의 사실성을 전반적으로 향상시키는 것(Sun et al., 2023; Zhou et al., 2023a; Lightman et al., 2023; Peng et al., 2023; Li et al., 2023d; Mallen et al., 2023; Varshney et al., 2023)을 목표로 하기보다는, 우리는 LLM이 충분한 지식을 가지고 있을 때 신뢰할 수 있는 정확한 정보를 전달하도록 조정하는 데 중점을 둡니다.


환각 완화
LLM의 환각을 완화하기 위한 연구는 크게 세 가지 전략으로 나뉩니다.

  1. 사후 교정(post-hoc correction)
    최근 연구는 모델 정제를 위해 자기 일관성(self-consistency) 기법을 탐구했습니다(Kadavath et al., 2022; Ren et al., 2023; Tian et al., 2023b; Madaan et al., 2023; Dhuliawala et al., 2023; Wang et al., 2023a). 이러한 방법은 불확실성 추정에 기반하여 LLM이 생성한 여러 응답 간의 일관성을 분석해 사실적 정확성을 향상시키는 것을 목표로 합니다. 그러나 이러한 접근법은 모델의 고유한 성능에 따라 효과가 다릅니다.

  2. 추론 시간 개입(inference-time intervention)
    LLM의 내부 표현을 조작하여 사실성으로 유도하는 방법입니다(Li et al., 2023b; Chuang et al., 2023; Li et al., 2023c; Zhang et al., 2023b). 이 방법은 유망하지만 도메인별 데이터에 의존하는 경우가 많아 일반화 가능성이 제한됩니다.

  3. 정렬 학습(alignment training)
    LLM이 사실적 진술을 생성하도록 직접 최적화하는 방법입니다. 이 방법은 고품질 데이터셋을 사용한 지도 미세 조정(Wang et al., 2023b) 또는 인간 피드백을 활용한 강화 학습(RLHF)을 포함합니다(Ouyang et al., 2022; Zhang et al., 2022b). 하지만 이러한 접근은 광범위한 인간 주석이 필요하여 자원이 많이 소요됩니다.


우리의 연구 방향
본 연구는 Yang et al. (2023)과 Tian et al. (2023a)의 두 주요 연구와 유사한 방향을 따릅니다. 

  • Yang et al. (2023): Alignment for Honesty, NeurIPS 2024
  • Tian et al. (2023a): Fine-tuning Language Models for Factuality, ICLR 2024

Yang et al. (2023)은 "모르겠다"는 한계를 인정하도록 LLM을 정직성 기반으로 미세 조정하는 데 초점을 맞췄습니다. 반면, 우리의 Self-Alignment for Factuality 접근법은 LLM이 관련 지식을 보유하고 있을 때 진실된 정보를 표현하도록 유도하는 데 중점을 둡니다.
Tian et al. (2023a)는 일관성 기반 방법에 의존해 신뢰도를 추정했지만, 우리는 이와 대조적으로 SELF-EVAL-SKT를 도입했습니다. 이는 다양한 이질적 데이터에 대해 훈련되며, 신뢰도 추정 능력을 대폭 향상시키도록 설계되었습니다.

실험 결과, 우리의 연구는 LLM이 제공하는 사실적 정보의 정확성과 신뢰성을 눈에 띄게 향상시키는 것을 입증했습니다. 간략한 요약은 부록 A에 제공합니다.


  • 관련 연구를 하려면 위 논문들을 읽어보면 좋을듯

3 Self-Alignment for Factuality

이 섹션에서는 제안된 프레임워크를 소개합니다.
먼저, 3.1절에서 사실성(Self-Alignment for Factuality)을 위한 자기 정렬의 전반적인 개요를 제공합니다.
그다음, 3.2절에서는 SELF-EVAL이라 명명된 LLM의 고유한 지식을 활용한 사실성 자기 평가(Factuality Self-Evaluation)에 대해 자세히 설명합니다.
마지막으로, 3.3절에서는 DPO(Direct Preference Optimization)를 통한 사실성 정렬 프로세스를 개략적으로 설명합니다.

3.1 Overview

Self-Alignment for Factuality는 일반적으로 아래 세 단계를 통해 작동하며, 이는 그림 2에 나타나 있습니다:

  • step1에서 LLM이 여러개 샘플을 생성하고
  • step2에서 atomic claims을 뽑고, question만들어서, 각각에 대한 P(True)값을 뽑아서 최종 점수를 만든다. (최종 점수는 걍 점수를 평균 낸듯)
  • step3에서 최종 점수가 높았던 response와 낮았던 response을 쌍을 지어서 DPO학습을 한다.

1단계: 선호 데이터 수집을 위한 초기 응답 생성

주어진 프롬프트 x에 대해 다수의 후보 응답 {ym}m=1M을 생성합니다. 여기서 M은 샘플 크기를 나타냅니다. 이러한 응답은 정책 πref(yx)에 따라 기본 LLM으로부터 생성됩니다. 일관성 있고 관련성 높은 응답을 생성하기 위해 few-shot 예제를 프롬프트로 사용합니다.


2단계: SELF-EVAL을 활용한 응답의 사실성 평가 및 선호 레이블링

이 단계에서는 LLM의 내재적 지식을 활용하여 주어진 프롬프트 x에 대한 후보 응답 {ym}m=1M의 사실성을 평가합니다.
장문 응답 생성 작업(예: 그림 2의 biography 작성)에서는 응답에 사실적으로 정확한 정보와 부정확한 정보가 혼재되어 있을 수 있습니다.
정확한 사실성 평가를 위해, 먼저 GPT-3.5-turbo를 사용하여 응답으로부터 원자적 주장 리스트를 추출합니다(Liu et al., 2023d). 각 원자적 주장은 고유한 정보를 나타냅니다.
그다음, GPT-3.5-turbo를 이용하여 각 원자적 주장을 해당 원자적 질문으로 변환합니다.
이 과정은 SELF-EVAL을 통해 LLM의 내재적 지식을 활용하여 각 원자적 주장 c에 대한 사실성 p(Trueq,c)를 평가할 수 있게 합니다.

마지막으로, 개별 주장에서 얻은 사실성 점수의 평균을 계산하여 후보 응답에 대한 최종 사실성 점수 Avg-p(True)를 도출합니다.


3단계: 선호 데이터 생성 및 DPO를 활용한 LLM 정렬

각 프롬프트 x에 대해 평가된 사실성 점수를 기준으로 후보 응답을 순위화합니다.
이후 상위 α개의 응답을 선호 응답(yw)으로 선택하고, 나머지 응답을 비선호 응답(yl)으로 분류하여 선호 쌍 데이터 세트 D={(x,yw,yl)}를 생성합니다.
선호 쌍의 총 개수는 αM(1α)MK이며, 여기서 K는 동일한 점수를 가진 쌍의 개수를 나타냅니다.
마지막으로, 이러한 선호 데이터를 사용하여 **DPO(Direct Preference Optimization)**를 통해 LLM을 정렬합니다.

3.2 Factuality Self-Evaluation

Self-Alignment for Factuality의 핵심은 사실성 자기 평가 구성 요소인 SELF-EVAL의 설계입니다. 주어진 프롬프트 q LLM M이 있을 때, M을 기반으로 구축된 SELF-EVAL은 M의 응답 a의 타당성을 평가하는 작업을 수행하며, 이는 오직 모델의 내부 지식을 활용하여 이루어집니다. 이 과정은 p(Trueq,a)로 정량화되며, 다음과 같이 정의됩니다:

즉 (프롬프트, 답변)을 LLM에게 넣어서 타당성을 평가한다.

여기서 fM(q,a)를 매개변수화하는 다양한 방법론이 존재합니다. 예를 들어, LLM은 스스로 지식의 범위를 파악할 수 있는 능력을 입증한 바 있습니다(Kadavath et al., 2022). 

  • Language Models (Mostly) Know What They Know가 좋은 레퍼일듯

이 내재적 능력을 사실성 평가에 활용하기 위해, 우리는 **SELF-EVAL-P(TRUE)**로 명명된 True/False Q&A 프롬프트를 제안합니다. 이 프롬프트는 모델이 내재적 지식을 기반으로 사실성을 자체 평가할 수 있도록 돕습니다.

SELF-EVAL-P(TRUE) 프롬프트

  • 지시문:
    주어진 질문과 내부 지식을 바탕으로 제안된 응답의 진실성을 평가해주세요.
    예제 프롬프트 (Few-shot Prompts):
    Question: <질문>  
    Proposed Answer: <응답>  
    Is the proposed answer:  
    A. True  
    B. False  
    The proposed answer is:  

우리는 응답으로 "A" 또는 "B"가 반환될 것을 기대합니다. **p(True)**는 LLM이 생성한 응답(주장)을 얼마나 유효하다고 판단하는지를 나타냅니다. Kadavath et al. (2022)의 연구에 따라, 구조화된 응답을 촉진하기 위해 few-shot 프롬프트를 앞에 배치합니다.

그냥 LLM에게 던져서 물어보는것이고 TRUE가 나오면 사실 답변(환각 아님)이라고 간주하는 방식인듯

SELF-EVAL-P(TRUE)의 한계 및 개선

SELF-EVAL-P(TRUE)는 효과적이지만, 초기 실험 결과에 따르면 LLM은 이 방법을 사용할 때 과도한 자신감을 나타내는 경향이 있습니다. 이러한 관찰은 Tian et al. (2023b)에서 제시된 결과와 일치합니다.

LLM의 사실성 자기 평가 능력을 강화하고, 신뢰 점수(calibration)를 개선하기 위해 **Self-Knowledge Tuning (SK-TUNING)**을 도입했습니다. SK-TUNING은 다양한 작업에서 생성된 응답의 사실성을 정확히 평가하는 LLM의 능력을 향상하도록 설계되었습니다. 이를 통해 모델의 자기 평가 정밀도를 높이고, 신뢰 점수의 보정을 개선하여 사실적으로 올바를 가능성이 높은 응답에 더 높은 신뢰 점수를 부여할 수 있도록 합니다.

간단히 말해, SK-TUNING으로 조정된 사실성 자기 평가 구성 요소는 SELF-EVAL-SKT로 명명됩니다.

SK-TUNNING이 이 논문의 컨트리뷰션중 하나인듯

SK-TUNING의 핵심 과제는 LLM이 특정 지식 조각을 식별할 수 있는 학습 예제를 정확하게 생성하는 데 있습니다. 이를 해결하기 위해 그림 3에 설명된 대로 self-knowledge-guided training data를 생성하는 방식을 제안합니다. 이 과정은 다음 두 주요 단계로 구성됩니다:


1단계: 후보 답변 샘플링 및 사실성 검증

각 질문 qq에 대해, few-shot 프롬프트를 사용하여 후보 답변 집합 {ak}k=1K\{a_k\}^K_{k=1}을 생성합니다.
그다음, Deberta-Large-MNLI 모델(He et al., 2021)을 활용한 bidirectional entailment 접근법을 사용하여 각 답변의 사실성을 검증합니다.

  • 정답(golden answer)과 의미적으로 동등한 답변은 사실적으로 올바른 답변(aca_c)으로 레이블링합니다.
  • 그 외의 답변은 사실적으로 부정확한 답변(aia_i)으로 간주합니다.

2단계: True/False 학습 예제 생성

**SELF-EVAL-P(TRUE)**에서 사용하는 이진(True/False) 질문-답변 형식을 기반으로 few-shot 프롬프트를 결합하여 True/False 학습 예제를 생성합니다.

  • 올바른 답변 aca_c에 대해서는 긍정 예측 R+R^+(“A”)과 부정 예측 RR^-(“B”)를 쌍으로 만듭니다.
  • 부정확한 답변 aia_i의 경우에는 이를 반대로 처리합니다.
    이 방법은 질문에 대한 모델의 지식을 근사화하는 데 도움이 되는 예측 쌍 데이터셋 DψD_\psi를 생성하며, 복제본을 유지하여 신뢰도(calibration) 향상에 기여합니다(자세한 내용은 부록 H 참조).

H. SK-TUNING에서 중복 데이터를 제거했을 때의 영향
그림 6에서 확인할 수 있듯이, 섹션 5의 그림 4와 비교했을 때 SK-TUNING 학습 데이터에서 중복 답변을 유지하지 않은 경우, 모델의 신뢰도 보정(confidence calibration) 성능이 눈에 띄게 감소하는 것을 관찰할 수 있습니다(노란색 선으로 표시).

모델은 예측에 대해 **과소 신뢰(under-confident)**하는 경향을 보이며, 즉, 각 빈(bin)의 빈도수가 해당 신뢰도 값보다 일반적으로 높게 나타납니다(신뢰도가 0.7보다 작은 경우).

이는 학습 데이터에 중복 답변이 포함되어 있는 것이 모델의 신뢰도 보정 능력을 향상시키는 데 중요한 역할을 한다는 점을 시사하며, 중복 데이터를 제거하면 SK-TUNING의 전반적인 성능이 부정적인 영향을 받을 수 있음을 보여줍니다.


파인튜닝

DψD_\psi 데이터셋을 조합한 후, 이 쌍별 예측 데이터를 사용하여 LLM을 파인튜닝합니다.
이 파인튜닝은 모델이 내재적 지식을 활용하여 정확한 self-knowledge evaluation를 수행하는 능력을 향상하도록 설계된 손실 함수 최소화를 목표로 합니다.
손실 함수는 다음과 같습니다:

여기서 πϕ\pi_\phi는 사실성 추정을 위해 학습된 LLM이며, σ\sigma는 로지스틱(logistic) 함수입니다.

즉 이렇게 진행된다는 것 같다

  • What is Westlife's first album? 이라고 question 날리고 이에 대한 응답을 LLM으로 샘플링한다.
  • 30개 샘플링했다고 했을때, 20개가 실질적으로 gold answer과 같은 의미를 가지고, 나머지 틀린 10개도 4개 6개씩 같은 의미를 가진다고 하자. (그림처럼) 이거를 하기 위해선 기존의 NLI 모델을 활용해서 했다는거 같음. 각각의 그룹을 c1, c2, c3라고 해보자.
  • c1는 c11,c12,c13,...c120이고 c2는 c21,c22,..,c26, c3는 c31,..,c34 의 응답을 가진다고 하자.
  • gold answer에 해당하는경우
    • Question: "What is Westlife's first album?"
    • Proposed Answer: c11
    • Is the proposed answer:
    • A. True
    • B. False
    • The proposed answer is:
    • 여기서 A가 나올 확률이 B가 나올확률보다 높아지도록 학습한다는 것
  • wrong answer에 해당하는경우
    • Question: "What is Westlife's first album?"
    • Proposed Answer: c21
    • Is the proposed answer:
    • A. True
    • B. False
    • The proposed answer is:
    • 여기서 B가 나올 확률이 A가 나올확률보다 높아지도록 학습한다는 것
  • 위의 정확한 프롬프트가 논문에서 언급되지는 않았지만, P(TRUE)와 같은 프롬프트를 사용하지 않았을까?
  • 즉 LLM이 자신의 답변에 under-confident하기 때문에 샘플링 수에 따라 confident을 보정하는 개념이 되는 것
  • 이렇게 확률의 우위를 학습하여서 reward 모델이 학습되는 개념임
  • 이렇게 학습된 모델이 P(TRUE) 방법대신 사용되는 것


이 과정은 모델의 내재적 지식을 기반으로 한 사실성 평가 능력과 신뢰도(calibration)를 효과적으로 개선합니다.

3.3 Alignment Tuning with DPO

후보 응답에 대한 선호 데이터 D={(x,yw,yl)}D = \{(x, y_w, y_l)\}를 얻은 후, 각 튜플이 few-shot 프롬프트에 대한 "우승" 응답(ywy_w)과 "패배" 응답(yly_l) 간의 선호를 나타낼 때, 우리는 사실성(factuality)을 향상시키기 위한 정렬 튜닝(alignment tuning) 단계로 진행합니다. 본 연구에서는 정책 최적화를 위해 RL 알고리즘 대신 DPO(Direct Preference Optimization) 알고리즘을 사용합니다.

DPO는 간단하면서도 강력한 접근 방식으로, 표준 교차 엔트로피 목적함수를 사용하여 직접적인 정책 최적화를 수행합니다. 수식은 아래와 같습니다:

여기서:

  • πθ\pi_\theta: 튜닝된 정책을 나타내며, 초기값은 참조 정책 πref\pi_{\text{ref}}에서 시작합니다.
  • ywy_w: "우승"으로 선택된 응답.
  • yly_l: "패배"로 선택된 응답.
  • β\beta: πref\pi_{\text{ref}}에서의 편차를 조절하는 매개변수.
  • σ\sigma: 로지스틱 함수(시그모이드 함수).

과정 설명:

  1. 튜닝된 정책 πθ\pi_\theta

    • πθ(ywx)\pi_\theta(y_w | x): 모델이 xx에 대해 ywy_w를 생성할 확률.
    • πθ(ylx)\pi_\theta(y_l | x): 모델이 xx에 대해 yly_l를 생성할 확률.
    • 이 확률 값들은 모델에서 직접 계산된 logit 값을 사용해 softmax로 변환합니다.
  2. 참조 정책 πref\pi_{\text{ref}}

    • 초기 정책으로 설정된 모델입니다. 이를 기준으로 πθ\pi_\theta와의 편차를 조절합니다.
  3. β\beta: 편차 조절 매개변수

    • β\betaπθ\pi_\thetaπref\pi_{\text{ref}} 간의 차이를 얼마나 허용할지 결정합니다. 작은 값은 모델이 참조 정책에 더 가까워지도록 하고, 큰 값은 더 자유롭게 튜닝되도록 합니다.
  4. 최적화 목표 LθL_\theta

    • ywy_wyly_l 간의 선호를 반영해, 모델이 ywy_w를 더 선호하도록 최적화됩니다.
    • 로지스틱 함수를 통해 "우승"과 "패배" 응답의 확률 차이를 확률로 변환한 후, 그 로그값에 대한 음수 기대값을 최소화합니다.

DPO의 장점:

  • 기존 강화학습(RL) 기반 튜닝과 달리 복잡한 샘플링 정책이 필요하지 않아 구현이 간단합니다.
  • 안정적인 학습 과정과 빠른 수렴 속도를 제공합니다.
아마도 huggingface의 라이브러리 쓰지 않았을까?

4 Experiments

이 섹션에서는 Li et al. (2023b)을 따라, 제안된 프레임워크의 효과를 세 가지 지식 집약적 작업에 대해 평가합니다:

  1. MCQA(다지선다형 질문응답)
  2. 단문 형식의 개방형 생성
  3. 장문 형식의 개방형 생성

4.1 Setup

데이터셋 및 평가 지표

MCQA(Multiple-Choice Question Answering) 과제에서 TruthfulQA 데이터셋(Lin et al., 2022)을 사용합니다.
단문 생성 과제에서는 TruthfulQA의 생성 포맷을 활용하며, 장문 생성 과제에서는 BioGEN(Min et al., 2023b)을 사용합니다.

  • TruthfulQA의 성능 평가에서는 MCQA 과제를 위한 정확도(Accuracy)와 함께 진실성(True), 정보성(Info), True ∗ Info라는 복합 점수를 보고하며, 이는 Fine-tuned GPT-3 모델(Lin et al., 2022)을 사용해 평가됩니다.
  • BioGEN 평가에서는 FActScore 비율Respond 비율을 제시합니다. 또한, Tian et al. (2023a)을 따라 응답에서 생성된 내용의 정확성을 측정하기 위해 정확한 사실(cor)부정확한 사실(incor)의 개수를 보고합니다.
과제, 데이터셋 및 평가 기준의 자세한 설명은 Appendix B에 제공됩니다.
한편, 개방형 텍스트 생성 과제에서는 Self-Alignment 접근법이 데이터셋에 제공된 프롬프트만을 사용합니다.


비교 기준(Baselines)

제안 방법과 아래 대표적인 접근법을 비교하며, 세 번의 독립적인 실행 결과의 평균치를 보고합니다.

  • SFT (Supervised Fine-Tuning): 고품질로 주석된 학습 데이터셋을 기반으로 기본 모델을 지도 학습 방식으로 미세 조정합니다.
  • ITI (Li et al., 2023b): 학습된 사실성 관련 방향에 따라 모델 활성화를 조정해 내부 표현을 수정합니다.
  • DOLA (Chuang et al., 2023): 모델 내부 표현을 수정하기 위해 모델의 다른 레이어에서 생성된 출력 분포를 비교합니다.
  • FACTTUNE-MC (Tian et al., 2023a): 일관성 기반 신뢰 점수로 레이블링된 선호 데이터를 사용해 DPO(Direct Preference Optimization)로 기본 모델을 최적화합니다.
  • 실제 비슷한 연구한다면 위 방법들을 한번 살펴봐야할 듯?

구현 세부사항

  1. Self-Alignment for Factuality Framework:

    • LLAMA-7B(Touvron et al., 2023a)와 LLAMA2-7B(Touvron et al., 2023b)를 기본 언어 모델(LLM)로 사용하며, 생성된 선호 데이터를 사용해 5 에포크 동안 미세 조정합니다.
    • 추가 세부 정보는 Appendix C에 나와 있습니다.
  2. SK-TUNING 구현:

    • LLM 사전 학습에서 자주 사용되는 데이터 소스인 Wikipedia(Touvron et al., 2023b; Shi et al., 2023)와 BIG-bench 데이터셋(Srivastava et al., 2023)을 활용합니다.
    • 구체적으로, Wikipedia에서 49,862개의 프롬프트를, BIG-bench의 17개 MCQA 과제에서 무작위로 선택된 32,500개의 프롬프트를 사용합니다.
    • 추가적인 미세 조정 세부사항은 Appendix C에 제공됩니다.

4.2 Main Results

Table 1: 주요 평가 결과

  • TruthfulQA, BioGEN을 살펴봐야겠다.
  • 데이터를 보기전이라 잘은 모르겠지만, TruthfulQA에서는 Acc, True*Info를 보면 되는 거 같고 BioGen에서는 FactScore을 보면 되는 것 같음

다음은 세 가지 과제에서 주요 평가 결과를 통해 얻은 관찰 사항입니다.

1. Self-Alignment의 효과: 환각 완화

  • Self-Alignment w/ SELF-EVAL-SKT는 환각(hallucination)을 줄이는 데 효과적임을 보여줍니다.
  • TruthfulQA(MC) 과제에서 Accuracy가 약 13% 향상되었습니다.
  • TruthfulQA(단문 생성) 과제에서는 True ∗ Info 점수가 LLAMA-7B에서 45.75%, LLAMA2-7B에서 **53.42%**로 가장 높은 값을 기록했습니다.
  • BioGEN(장문 생성) 과제에서는 FActScore가 약 4% 향상되었습니다.
  • 이러한 결과는 Self-Evaluation이 환각 완화를 위한 LLM(대형 언어 모델) 정렬에 유용하다는 것을 입증합니다.

2. SK-TUNING의 기여: 사실성 향상

  • SK-TUNING을 통해 LLM의 내재된 지식을 활용하여 사실성 평가를 개선할 수 있습니다.
  • SELF-EVAL-SKT를 통해 Self-Alignment를 수행하면 SELF-EVAL-P(TRUE) 대비 더 높은 사실 정확성을 달성합니다.
  • 또한, True ∗ Info 점수는 약 12%, FActScore는 약 4% 더 높은 성과를 보였습니다.
  • 이는 SK-TUNING이 더 정확한 Self-Evaluation을 가능하게 하여, LLM이 생성하는 콘텐츠의 사실 정확도를 높이는 데 기여했음을 의미합니다.
  • Section 5에서 더 자세한 분석을 제공합니다.
  • 특히, SELF-EVAL-SKTFACTTUNE-MC를 크게 능가하며, 일관성 기반 접근법 대비 신뢰도 추정(confidence estimation)에서의 우수성을 강조합니다.
  • BioGEN 과제에서도 SELF-EVAL-SKT는 일관적으로 더 높은 FActScore를 기록하며, 정확한 사실을 유지하면서 사실 오류의 수를 크게 줄였습니다.

3. 다른 방법과의 비교

  • SELF-EVAL-SKT를 적용한 Self-Alignment는 ITIDOLA와 같은 표현 편집(representation-editing) 방식보다 훨씬 우수한 성능을 보였습니다.
    • TruthfulQA에서 최고 수준의 True ∗ Info를 기록하며, TrueInfo 점수 모두에서 탁월한 결과를 나타냈습니다.
    • 이는 SELF-EVAL-SKT가 정확한 정보를 제공하면서 한계를 인정하는 균형을 효과적으로 달성함을 보여줍니다.
  • 한편, SFT는 다른 방법들에 비해 현저히 낮은 성능을 나타냈습니다.
    • 이러한 관찰은 Li et al.(2023b) 및 **Tian et al.(2023a)**의 연구 결과와 일치합니다.

4.3 Pairwise Evaluation

Section 4.2에서 생성된 100개의 전기(biography)에 대해 다음 네 가지 주요 차원에서 쌍별(pairwise) 비교를 수행했습니다:
  • 사실성(factuality)
  • 유용성(helpfulness)
  • 관련성(relevance)
  • 자연스러움(naturalness)

비교는 GPT-4(OpenAI, 2023)를 사용해 이루어졌으며, 사용된 프롬프트는 Appendix E에서 확인할 수 있습니다.
Table 2의 결과에서, SELF-EVAL-SKT를 적용한 Self-Alignment는 FACTTUNE-MCSELF-EVAL-P(TRUE)(LLAMA2-7B를 기본 모델로 사용)보다 모든 차원에서 높은 승률을 기록하며, 유의미하게 우수한 성능을 보였습니다.

SELF-EVAL-SKT 방법이 위의 4가지 컨셉에서도 더 좋은 성능을 보여준다. 즉 단순히 환각만 줄여주는게 아니라고 주장하고자 하는건가?


정성적(qualitative) 분석의 예시는 Appendix F에 제공됩니다.

4.4 Self-Alignment with Varying Factuality Estimation Methods

설정(Setup)

Self-Alignment의 사실성(factuality) 향상 효과를 추가적으로 검증하기 위해 두 가지 변형 방법을 도입했습니다:

  1. Self-Alignment w/ SE (Semantic Equivalence)

    • Semantic Equivalence(Kuhn et al., 2023)를 사용하여 초기 응답을 의미적으로 동등한 클러스터로 분류합니다.
    • 가장 큰 의미적 동등 클러스터를 선호 응답(preferred responses)으로 간주하고, 나머지를 비선호 응답(dis-preferred responses)으로 처리합니다.
  2. Self-Alignment w/ USC (Universal Self-Consistency)

    • Universal Self-Consistency(Chen et al., 2023c)를 활용하여, GPT-3.5-turbo로 식별된 후보 응답 중 가장 일관된 응답이 포함된 클러스터를 선호 응답으로 채택합니다.

결과(Results)

  • SELF-EVAL-SKT를 적용한 Self-Alignment보다는 낮은 성능을 보였지만, 두 변형 방법 모두 MCQA 및 개방형 생성 과제에서 기본 모델(base models)의 사실성을 꾸준히 개선했습니다.
  • 이는 SK-TUNING이 사실성 평가를 향상시키는 데 효과적임을 추가로 입증합니다.
  • 이러한 유망한 결과는 사실성을 강화하기 위한 Self-Alignment 연구의 기반을 제시하며, 앞으로의 추가 탐구 가능성을 시사합니다.

5 In-depth Analysis of SELF-EVAL

5. SELF-EVAL에 대한 심층 분석

이 섹션에서는 SELF-EVAL이 사실성(factuality)을 위해 LLM을 효과적으로 정렬하는 이유에 대해 포괄적인 분석을 수행합니다.

  • **Kadavath et al.(2022)**를 따라, MCQA 과제를 참/거짓(True/False) 쿼리로 변환하여 분석합니다(3.2절 참고).
  • 각 쿼리는 올바른 답변과 여러 잘못된 답변이 혼합된 형태로 제공되며, SELF-EVAL은 제공된 답변의 정확성을 예측합니다.

5.1 Setup

사용된 데이터셋

다섯 가지 잘 연구된 MCQA 데이터셋을 사용합니다:

  1. TruthfulQA
  2. CommonSenseQA (Talmor et al., 2019)
  3. OpenBookQA (Closed-Form) (Mihaylov et al., 2018)
  4. MedQA (USMLE) (Pal et al., 2022)
  5. Massive Multitask Language Understanding (MMLU) (Hendrycks et al., 2021)

평가 지표

  1. 정확도(Accuracy):

    • 정답 옵션이 모든 답변 옵션 중 가장 높은 신뢰 점수를 가지는 확률을 평가합니다 (Kadavath et al., 2022).
  2. AUROC (Receiver Operating Characteristic 곡선 아래 면적):

    • 무작위로 샘플링된 잘못된 답변보다 정답이 더 높은 신뢰 점수를 가지는 확률을 평가합니다 (Kuhn et al., 2023).

5.2 Results

SK-TUNING의 효과: 모델 신뢰도 추정 개선

Table 4 결과

  • SK-TUNING은 모델의 **신뢰도 추정(confidence estimation)**을 향상시키는 데 강력한 효과를 보여줍니다.
  • SK-TUNING을 통해 SELF-EVAL-SKT는 다섯 가지 MCQA 과제에서 정답 선택(selection) 작업정확도(Accuracy)오답 구별(discrimination) 작업AUROC에서 **SELF-EVAL-P(TRUE)**를 상당한 차이로 꾸준히 능가했습니다.
  • 좀 더 광범위하게 더 많은 데이터에서 실험해본듯

사실성 평가 vs. 사실성 생성

  • 추가적으로, 기본 모델인 LLAMA2-7B의 응답 생성(generation) 결과를 포함하여 분석을 진행했습니다.
  • 결과적으로, SELF-EVAL-SKT(평가)는 다섯 가지 MCQA 과제에서 LLAMA2-7B(생성)의 **정확도(Accuracy)**를 유의미하게 개선했습니다.
    • 예를 들어, CommonSenseQA에서는 16% 이상, **OpenBookQA (Closed-Form)**에서는 12% 이상 개선되었습니다.
  • 이러한 뛰어난 성능은 LLM의 **사실성 정렬(factuality alignment)**에 Self-Evaluation 기법을 적용하는 데 있어 중요한 기반을 제공합니다.

SK-TUNING의 신뢰도 보정(Calibration) 향상

  • Kadavath et al.(2022) 및 **Tian et al.(2023b)**를 따라 **신뢰도 보정(confidence calibration)**을 추가적으로 분석했습니다.
  • Figure 4LLAMA2-7B를 대상으로 SELF-EVAL-P(TRUE)SELF-EVAL-SKT를 사용한 CommonSenseQA 과제에서의 보정 곡선을 보여줍니다.

결과 요약

  • SELF-EVAL-SKT(파란 선)는 SELF-EVAL-P(TRUE)(분홍 선)보다 훨씬 우수한 보정을 나타냈습니다.
  • SELF-EVAL-P(TRUE)는 과도한 자신감(overconfidence)을 보였으며, 각 구간(bin) 내 예측 빈도가 해당 신뢰도(confidence)보다 낮게 나타나는 경향이 있었습니다.
  • 반면, SELF-EVAL-SKT는 신뢰도와 실제 빈도 간의 더 적절한 일치를 보여, LLM의 신뢰도 추정 성능을 개선했습니다.

6 Conclusion

이 논문에서는 Self-Alignment for Factuality라는 프레임워크를 소개합니다.

이 프레임워크는 LLM의 자기 평가(self-evaluation) 능력을 활용하여 **환각(hallucination)**을 줄이는 데 중점을 둡니다.

  • 구체적으로, SELF-EVAL 프롬프트를 사용하여 LLM이 생성한 응답에 대해 사실성(factuality) 신뢰도 점수를 도출하고, 이를 학습 신호로 활용하여 모델을 사실성을 향상시키도록 조정합니다.
  • SK-TUNING을 통합하여 모델의 **신뢰도 추정(confidence estimation)**과 **보정(calibration)**을 강화함으로써 LLM의 자기 평가 능력을 더욱 강화합니다.
  • 세 가지 핵심 과제에 대한 실험 결과는, 제안된 자기 정렬(self-alignment) 접근 방식이 LLAMA 계열 모델의 사실 정확성을 개선하는 데 있어 뛰어난 성능을 보여준다는 것을 입증합니다.
  • 이러한 연구 결과는 **LLM의 사실성 자기 정렬(self-alignment)**에 대한 유망한 출발점을 제시합니다.

Limitations

1. 디코딩 기반 전략과의 결합

  • 본 연구에서 제안된 Self-Alignment for Factuality 프레임워크는 **과제별 주석 데이터(task-specific annotated data)**를 필요로 하지 않으며, 이는 기존의 디코딩 기반 접근법과 차별화됩니다.
    • 디코딩 기반 접근법은 모델의 내부 표현을 조정하여 사실성을 개선하기 위해 제한된 양의 주석 데이터를 활용합니다.
    • 최근 연구(Tian et al., 2023a) 결과에 따르면, 제안된 프레임워크를 DOLA와 같은 성능이 높은 접근법과 결합하면 LLM의 정확성과 사실성이 더욱 향상될 가능성이 있습니다.

2. 다양한 LLM에 대한 실험

  • 현재 연구에서는 LLAMA 계열의 7B 규모 모델에 대해 광범위한 실험을 수행했습니다.
    • 그러나 **Kadavath et al.(2022)**의 유망한 연구 결과에 따르면, 모델의 자기 평가 능력은 모델 크기와 성능이 증가함에 따라 개선되는 경향이 있습니다.
    • 따라서, 제안된 자기 정렬 프레임워크가 13B 및 70B 규모 모델에서 사실성을 더욱 크게 향상시킬 것으로 예상됩니다.
    • 또한, RLHF(RL을 사용한 인간 피드백 학습)로 미세 조정된 모델, 예를 들어 LLAMA2-CHAT에 대해 제안된 접근법의 효과를 조사할 필요가 있습니다.

3. 더 효과적인 신뢰도 추정 및 보정 접근법 채택

  • Section 4.2와 Section 4.4에 상세히 설명된 실험 결과에 따르면, **사실성 추정 방법(factuality estimation approaches)**의 선택은 제안된 자기 정렬 프레임워크의 성능에 큰 영향을 미칩니다.
  • 또한, Section 5에서 제안된 SELF-EVAL-SKT 분석은 LLM의 신뢰도 추정 및 보정을 강화하는 것이 사실성 개선에 있어 매우 중요함을 강조합니다.
  • 제안된 SK-TUNING은 모델의 신뢰도 추정 및 보정을 정밀하게 개선하는 데 매우 효과적이었으나,
    • Guo et al.(2017)Tian et al.(2023b)Zhu et al.(2023)Chen et al.(2023a) 등에서 제안된 방법들을 포함한 더 효율적인 신뢰도 추정 및 보정 기법을 탐구함으로써, 향후 연구에서 추가적인 발전을 기대할 수 있습니다.

Reference

댓글