NL-275, (FSC) Improving LLM Generations via Fine-Grained Self-Endorsement, Findings of ACL 2024

◼ Comment

  • 이 논문은 방법론 자체의 논리는 납득이되나 너무 고비용의 느낌이 드는 방법이다
  • 방법론
    • 응답을 여러 개 생성한다
    • 응답을 atomic fact 문장 단위로 쪼갠다
    • 쪼개진 문장의 인정점수를 계산한다
      • 인정 점수란? 해당 atomic fact가 다른 응답들로부터 얼마나 support 되냐의 느낌임
    • 인정점수들을 활용하여 최종 응답을 생성한다
      • 인정점수가 높은 atomic fact를 필터링하고
      • 이것을 bag-of-words 및 K-means 필터링하여
      • 중심에 가까운 대표적인 atomic fact만을 골라서 LLM에게 최종 응답을 재생성하라고 함
    • 꼭 생성이 아니더라도, atomic fact의 인정점수를 평균내서 응답의 인정점수를 구하고
      • 가장 높은 점수의 응답을 선택하는 방법도 있다고 함
  • 문제는 이 모든게 LLM으로 이루어 진다는 것이다
    • 응답 여러개 생성 / atomic fact 쪼개기 / 인정 점수 계산 / 재생성
    • 이를 다 고려하면 너무 고비용이라고 생각된다
    • 비교모델로 USC와 chain-of-verification을 선택했는데 USC도 비용이 좀 드는 방법인데, 그것보다 훨씬 더 드는거 같음
    • chain-of-verification은 내가 잘모르지만.. 비슷한 느낌임

Abstract

이 연구는 대형 언어 모델(LLM)의 추론 시점에서 사실과 충돌하는 환각(hallucination)을 완화하는 방법을 다룹니다. 특히, 우리는 여러 샘플 응답 간의 세밀한 사실 수준 비교를 활용하는 self-endorsement 프레임워크를 제안합니다. 이전의 앙상블 방식들(예: self-consistency (Wang et al., 2022; Chen et al., 2023))이 응답 단위 선택에 중점을 두는 것과 달리, 우리의 접근 방식은 지식 집약적인 작업에서 환각을 더 효과적으로 줄일 수 있습니다.

우리 방법은 주로 단순한 콘텐츠 기반 비교를 수행하므로, 소형 및 오픈소스 LLM들에게도 폭넓은 이점을 제공할 수 있습니다. Biographies 데이터셋에 대한 실험에서는, 다양한 규모의 LLM에서 간단하고 직관적인 프롬프트를 사용하더라도 생성 결과의 사실성을 효과적으로 향상시킬 수 있음을 보여줍니다. 이외에도 TriviaQA 및 GSM8K에 대한 포괄적인 분석을 통해, self-endorsement 기법이 보다 넓은 영역에 응용될 가능성을 시사합니다.

1 Introduction

최근의 대규모 언어 모델(LLM)인 LLaMA (Touvron et al., 2023)와 Mixtral (Jiang et al., 2024)은 수십억 개의 매개변수를 갖고 수십억 토큰 규모의 방대한 말뭉치로 학습되었습니다. 그 결과, 장문 생성(long-form generation), 폐쇄형 질문응답(closed-book QA), 수학적 추론(math reasoning) 등 여러 과제에서 탁월한 성능을 보여 주었습니다. 

그럼에도 불구하고, LLM은 여전히 지식 집약적이고 추론이 요구되는 작업에서 명백히 잘못된 사실이나 논리적 오류를 생성하는 경우가 빈번합니다.

  • 이를 해결하기 위해, 외부 지식과 도구를 활용(Mallen et al., 2023; Peng et al., 2023; Wang et al., 2023c)하거나, 
  • 지속적 지도 미세조정(continual supervised fine-tuning; Wu et al., 2023; Tian et al., 2023), 
  • 추론 단계 개선(inference-time improvement; Dhuliawala et al., 2023; Chen et al., 2023) 등 다양한 독립적 방향의 연구가 진행되었습니다. 

이 중 추론 단계 개선은 다음과 같은 이유로 최근 큰 주목을 받고 있습니다: 

  • (i) 모델 가중치에 접근할 필요가 없어 블랙박스 LLM에도 적용 가능하며, 
  • (ii) 고품질 학습 데이터를 생성해 지도 미세조정과 병행할 수 있기 때문입니다(일명 자기 증류, self-distillation; Huang et al., 2022).

추론 단계 개선 기법은 크게 두 축으로 나눌 수 있습니다. 

  • 첫째, self-consistency (Wang et al., 2022)와 universal self-consistency (Chen et al., 2023) 같은 앙상블 계열은 여러 후보 출력을 샘플링해 최적의 결과를 선택하는 전통적 앙상블 학습에 기반합니다. 
  • 둘째, chain-of-verification (Dhuliawala et al., 2023)이나 self-reflection (Madaan et al., 2023; Shinn et al., 2023)과 같은 자기-정제(self-refinement) 계열은 LLM 스스로가 다양한 관점에서 자신의 출력을 점검·수정하도록 유도합니다. 
  • 앙상블 방식은 다수의 샘플을 비교하여 우연한 환각을 제거할 수 있지만, 장문 생성처럼 후보 간 불일치가 빈번한 경우 최적의 출력을 고르기 어렵고, 서로 다른 후보의 장점을 결합하기도 어렵습니다. 
  • 반면 자기-정제 방식은 미세한 수준에서 오류를 고칠 수 있지만, LLM이 스스로 유용한 비평을 제공할 만큼 강력하다는 가정에 의존하므로 주로 GPT-4 (Achiam et al., 2023)와 같은 최첨단 폐쇄형 모델에서 실험됩니다.
  • SC, self-reflection 방법들의 장단점

본 연구에서는 추론 단계 개선 관점에서, 미세한 수준의 응답 간 교차-검증(endorsement)이 환각을 얼마나, 언제 줄이는지 탐구합니다. 

  • 구체적으로, 우리는 미세한 교차-응답 인정(Cross-Response Endorsement)을 활용해 LLM 출력을 향상하는 프레임워크를 제안합니다. 

Figure 1과 같이, 먼저 대상 LLM에서 여러 개의 샘플을 생성한 뒤, 각 샘플에서 사실(fact)을 추출하고 다른 샘플과 교차 참조하여 사실의 일치 여부를 확인하도록 LLM에 질의합니다. 

사실마다 승인 수준을 반영한 인정 점수(endorsement score)를 부여한 뒤, 

  • (i) 신뢰할 만한 사실을 가장 많이 포함한 샘플을 선택하거나, 
  • (ii) 높은 인정 점수를 받은 사실을 보조 입력으로 제공해 새로운 응답을 재생성하는 두 가지 방식 중 하나로 최종 출력을 생성합니다. 
  • 과정은 그럴싸하긴한데 너무 코스트들고 느린거 아닐까?
복잡한 프롬프트 없이 LLM은 

  • ① 한 번에 하나의 사실이 다른 응답과 일치하는지 판별, 
  • ② 고품질 사실을 추가 입력으로 받아 새 응답 생성이라는 
  • 두 가지 단순 작업만 수행하면 되므로, 다양한 규모의 오픈소스 LLM에도 널리 활용 가능하다고 보았습니다(실험으로도 확인).

실험은 모델 예측에 포함된 사실 충돌형 환각(fact-conflicting hallucination)의 수준을 평가하는 데 집중했습니다. 

장문 생성 벤치마크인 Biographies (Min et al., 2023)와 대표적 생성형 QA 데이터셋인 TriviaQA (Joshi et al., 2017)에서 LLaMA 2 (Touvron et al., 2023), Mixtral (Jiang et al., 2024) 등 인기 오픈소스 모델을 대상으로 평가한 결과, 제안 기법은 환각 발생률을 크게 줄였습니다. 

다양한 모델 크기에 걸쳐 신뢰할 수 있는 미세 사실을 더 잘 선택한다는 분석도 제시합니다. 또한 수학 서술형 문제 데이터셋 GSM8K (Cobbe et al., 2021) 실험을 통해, 자기 인정(self-endorsement) 접근이 보다 폭넓은 과제에도 유망함을 확인했습니다.

2 베이스라인

본 연구에서는 비교를 위한 베이스라인으로 (보편적) 자기 일관성((universal) self-consistency; Wang et al., 2022; Chen et al., 2023)과 검증 체인(chain-of-verification; Dhuliawala et al., 2023)을 사용합니다. 이 두 방법은 각각 앙상블 학습과 자기 정제(self-refinement)를 기반으로 한 대표적인 추론 단계 개선 기법입니다.

2.1 (보편적) 자기 일관성((Universal) Self-Consistency)

자기 일관성(Self-Consistency, SC)은 추론 과제를 위해 설계된 다수결 기반의 앙상블 방식입니다. 구체적으로, LLM으로부터 여러 개의 추론 과정과 그에 대응하는 답변, 즉 (ri,ai)(r_i, a_i)

여기서 riair_i \Rightarrow a_i를 샘플링한 뒤, 가장 일관된 답변을 다수결 투표로 결정합니다. 

이는 공식으로 표현하면 maxai1(ai=a)\max_{a} \sum_i \mathbf{1}(a_i = a)와 같습니다. 

체인 오브 쏘트(Chain-of-Thought, CoT) 프롬프팅과 함께 사용하면 복잡한 추론 과제에서 뛰어난 성능 향상을 보여줍니다. 하지만 SC는 최종 답변이 정확히 일치하는 형태로 집계될 수 있는 과제(예: 질문 응답, 수학 문제)에서만 적용 가능합니다.

보편적 자기 일관성(Universal Self-Consistency, USC)은 더 넓은 과제에 적용 가능하도록 자기 일관성을 확장한 기법으로, 다수결 대신 LLM 자체가 생성한 후보 응답들 중 최종 응답을 선택하게 합니다. 

  • 특히 그림 2a와 같이, LLM은 먼저 여러 후보를 생성하고, 이 후보들 전체를 입력으로 받아 그 중 하나를 최종 응답으로 선택합니다. 
  • 따라서 USC가 정확한 최종 응답 선정을 위해서는 LLM이 강력한 비판적 분석 능력을 갖추고 있을 필요가 있습니다.
  • 좋은 LLM이어야 하는 단점이 있긴 하다

2.2 검증 체인 (Chain-of-Verification, CoVe)

앙상블 기반의 자기 일관성(SC/USC)과는 달리, 검증 체인(CoVe)은 단일 응답 내의 사실적 오류를 스스로 수정한 뒤, 이를 바탕으로 새롭게 정제된 응답을 생성합니다. 

구체적으로 그림 2b에 나타난 것처럼, 

  • LLM은 먼저 (Ⅰ) 초기 응답 초안을 작성한 뒤, 
  • (Ⅱ) 작성한 초안을 검증할 수 있는 질문을 기획하고, 
  • (Ⅲ) 이 검증 질문들에 독립적으로 답변한 다음, 
  • 마지막으로 (Ⅳ) 이를 바탕으로 사실이 검증된 최종 응답을 생성합니다.
  • 방법은 나쁘지 않은데, 이 녀석도 인퍼런스가 많이 필요하긴함

CoVe의 핵심 동기는 LLM이 복잡한 질문(원본 질문)보다는 단순한 질문(검증 질문)에 대해 보다 정확한 사실을 제공하는 경향이 있다는 것입니다. 

  • 복잡한 질문이 안된다는 단점이 있긴한듯

따라서 CoVe는 전체 응답의 사실 정확도를 높일 수 있습니다.

3 Self-Endorsement

그림 1에서 보인 것처럼, 우리가 제안한 자기 인정(self-endorsement) 프레임워크는 사용자의 질의 XX가 주어졌을 때 LLM과 다음과 같은 단계를 거쳐 상호작용합니다.

(1) 후보 응답 샘플링 (Candidate Sampling):
LLM에게 질의하여 총 NN개의 후보 응답 Y1,Y2,,YNY_1, Y_2, \dots, Y_N을 생성하도록 요청합니다.

(2) 사실 분해 (Fact Decomposition):
각 후보 응답 YiY_i를 개별 사실(fact)로 분해합니다. 즉, 각 응답은 f1i,f2i,,fNYiif_1^i, f_2^i, \dots, f_{N_{Y_i}}^i와 같은 여러 사실로 구성됩니다. 여기서 NYiN_{Y_i}는 응답 YiY_i에 포함된 사실의 개수입니다.

(3) 사실 검증 (Fact Verification):
각각의 사실 fjif_j^i는 다른 후보 응답들 {Ykki}\{ Y_k \mid k \ne i \}과 비교하여 ‘인정 점수(endorsement score)’를 계산함으로써 검증됩니다. 이 단계에서는 또한 후보 응답들에서 검증과 관련 없는 내용을 제거하는 ‘문맥 가지치기(context pruning)’ 기법도 탐구합니다.

(4) 최종 응답 생성 (Final Response Production):
최종적으로는 선택(selection) 또는 재생성(regeneration) 방식으로 응답을 생성합니다. 구체적으로, 가장 높은 인정 점수를 받은 사실들을 포함한 후보 응답 하나를 최종 응답으로 선택하거나, 다양한 후보 응답에서 선정된 고품질의 사실 집합 ZZ를 기반으로 LLM이 새롭게 최종 응답 YY를 생성하게 합니다.

이게 전반적인 논문 방법이다

  • 방법론 자체는 납득할만한데.. 단점이 다른 방법에 비해 누가봐도 코스트, 인퍼런스 측면이 있음
  • 비교 방법론중에 이렇게 고비용이 있나?
  • 혹은 성능이 압도적으로 좋으면 또 모르겠..

3.1 후보 응답 샘플링 (Candidate Sampling)

우리는 일반적으로 사용되는 nucleus sampling 방법을 통해 총 NN개의 후보 응답을 샘플링합니다. 각각의 샘플링 과정은 YiLLM(X)Y_i \sim \text{LLM}(X)로 표현할 수 있습니다.

3.2 사실 분해(Fact Decomposition)

기존 연구(Gao et al., 2022; Liu et al., 2023)를 따라, 본 연구에서는 '사실(fact)'을 사실적 지식에 관한 하나의 명제(statement)로 정의합니다. 사실 분해를 수행하는 방법은 여러 가지가 있을 수 있습니다. 우선 일부 선행 연구(Liu et al., 2023; Manakul et al., 2023)에서 사용된 간단한 접근법을 채택했는데, 이는 응답에 포함된 각 문장 자체를 하나의 사실로 간주하는 것입니다. 그러나 이 방법은 한 문장이 여러 개의 독립적인 사실을 담고 있거나(Liu et al., 2023), 혹은 어떤 사실도 포함하지 않는 경우를 제대로 처리하지 못합니다.

이에 따라 우리는 LLM 자체를 프롬프팅(prompting)하여 응답에서 사실을 직접 추출하도록 하는 방식을 추가로 탐구했습니다. 이 과정은 아래와 같은 LLM 프롬프트 지시어 PDPD를 사용하여 표현됩니다:

아래 텍스트에서 중복되지 않은 모든 사실을 숫자 순서대로 나열하시오. 각 사실은 스스로 완결된 문장이어야 합니다: Yi

이를 통해 사실 추출 과정을 다음과 같이 나타낼 수 있습니다:

f1i,f2i,,fNYii=LLM(Yi,PD)f_1^i, f_2^i, \dots, f_{N_{Y_i}}^i = \text{LLM}(Y_i, PD)

llm으로 atomic fact로 분리한다

실험 결과, LLM을 활용한 이 방식은 사실적 지식이 담기지 않은 문장을 효과적으로 제거할 수 있으며, 복잡한 문장을 여러 개의 사실 단위로 성공적으로 분해할 수 있음을 확인하였습니다.

3.3 자기 인정(Self-Endorsement)을 통한 사실 검증

우리는 각 사실의 **인정 점수(endorsement score)**를 통해 해당 사실이 다른 후보 응답의 내용과 얼마나 일치하는지를 검증합니다. 

  • 두 텍스트 간의 유사성을 평가하는 방법으로는 LLM에게 직접 질의하거나, 문장 인코더(예: SimCSE, Gao et al., 2021)를 활용하는 방법 등이 있습니다. 

본 연구에서는 단순성을 유지하고 추가적인 지도(supervision)의 영향을 최소화하기 위해, 프롬프팅(prompting)을 통해 LLM에게 직접 질의하는 방식을 선택했습니다.

구체적으로, 응답 YiY_i에 속한 사실 fjif_j^i를 검증하기 위해 다른 후보 응답 Yk(ki)Y_k (k \neq i)와 함께 프롬프트 PVPV를 LLM에 입력하여, YkY_kfjif_j^i를 지지(endorse)하는지 여부를 판단하게 합니다. 

selfcheckgpt처럼 다른 응답이 atomic fact을 지지하는데 llm에게 물어본다는 것

  • 개념적으로는 factcheck까지는 아니고 인정 점수? 라고 여기서 부른다

이에 따라 사실 fjif_j^i의 인정 점수 g(fji)g(f_j^i)는 다음과 같이 정의됩니다:

g(fji)=1N1kiI[LLM(fji,Yk,PV)=true]g(f_j^i) = \frac{1}{N - 1} \sum_{k \ne i} I[\text{LLM}(f_j^i, Y_k, PV) = \text{true}]

이때 프롬프트 PVPV는 간단히 다음과 같이 정의됩니다:

다음을 참으로 간주하세요: Y_k  
그렇다면 다음 명제: “f_j^i”는 참(true), 거짓(false), 혹은 판단 불가(inconclusive)입니까?

장문 생성과 같은 경우 특히, YkY_k에 포함된 많은 사실들이 fjif_j^i와 관련이 없을 수 있습니다. 따라서 불필요한 문맥을 가지치기(pruning)하여 가장 관련된 부분만 유지해 추론을 빠르게 수행하는 방식을 제안합니다. 

  • 구체적으로, 우리는 BM25 알고리즘을 사용하여 각 YkY_k에서 fjif_j^i와 유사한 사실들을 상위 KK개만 선택하고, 이를 연결(concatenate)한 후 YkY_k'으로 명명하여 fjif_j^i를 검증하는 데 활용합니다.
  • BM25을 써서 매우 간단하게 Yk중 연관성있는 부분만 support reference로 활용한다

전반적으로 인정 점수는 특정 사실에 대해 LLM이 갖는 신뢰 수준을 나타내며, 따라서 높은 인정 점수를 가진 사실일수록 더 신뢰할 수 있습니다.

3.4 최종 응답 생성을 위한 선택(Selection) 및 재생성(Regeneration)

선택(Selection)
앞선 단계들이 끝난 후, 최종 응답 YY를 생성하는 가장 간단한 방법은 샘플링된 후보 응답 중 하나를 선택하는 것입니다. 구체적으로 각 후보 응답 YiY_i의 인정 점수(endorsement score)를 사실별로 평균을 내어, 즉 Avg(g(f1i),)\text{Avg}(g(f_1^i), \dots), 평균 점수가 가장 높은 응답을 최종 응답으로 선정합니다. 그러나 이 방법은 다음과 같은 이유로 본 프레임워크의 잠재력을 충분히 활용하지 못할 수 있습니다.

  • (1) 선정된 응답에도 여전히 사실적 오류가 포함될 가능성이 있습니다.

  • (2) 다른 후보 응답에 포함된 유용하고 상호보완적인 사실들을 충분히 활용하지 못합니다.

여러 응답중 하나를 고르는건 다른 응답의 유용한 정보를 활용못한다는 단점

재생성(Regeneration)
우리는 또 다른 방식으로, 모든 후보 응답에서 선택된 우수한 사실 집합 ZZ를 입력으로 제공하여, LLM이 최종 응답 YY를 새로 생성하도록 하는 방법을 제안합니다. 이를 공식화하면 다음과 같습니다.

YLLM(X,Z,PG)Y \sim \text{LLM}(X, Z, PG)

이때 프롬프트 PGPG는 다음과 같이 정의됩니다.

3.3에서 사실로 간주된 atomic fact가 Z가 되는 것인가? 

  • 아래에 나옴. 점수로 필터링후, bag-of-words로 벡터화하여 K-means하여 C개의 클러스로 묶음
  • 중심과 가장 가까운 fact들을 Z로 간주함
  • 이들을 모아서 질문을 재생성하게 하는 메커니즘인거 같음

다른 출처에서 얻은 지식: Z  
위 자료를 참고하여 다음 질문에 답하세요: X

유용한 사실을 선정하는 방법은 다음과 같습니다. 먼저, 인정 점수가 사전에 정한 임계치 α\alpha 이하인 사실을 제외합니다(g(fji)αg(f_j^i) \leq \alpha). 

  • 이 과정에서 저품질의 사실들을 효과적으로 걸러낼 수 있지만, 내용이 중복되는 사실들이 여전히 남아있을 수 있습니다. 
  • 따라서 bag-of-words 특징을 기반으로 각 사실을 표현한 뒤, K-means 알고리즘을 사용하여 이들을 C개의 클러스터로 나눕니다. 
  • 마지막으로 각 클러스터의 중심(centroid)에서 가장 가까운 사실을 선정하여, 총 ∣C∣개의 사실을 포함하는 최종 선택된 사실 집합 Z를 구성합니다.

4 실험(Experiments)

4.1 실험 환경(Setup)

데이터셋(Datasets)
주요 실험은 Biographies(Min et al., 2023)와 TriviaQA(Joshi et al., 2017) 데이터셋을 대상으로 진행했습니다.

  • Biographies는 지식 집약적 장문 생성 과제를 위한 대표적인 벤치마크로, 183명의 인물(entity)에 대한 전기를 생성하는 과제입니다. 질의는 “Tell me a bio of ” 형태로 주어집니다.

  • TriviaQA는 널리 사용되는 개방형 질문-답변(open-domain QA) 벤치마크입니다. 본 연구에서는 LLM이 단순히 정답만 생성하는 것이 아니라 추가적인 설명과 관련 지식을 함께 생성하도록 유도하기 위해 특별한 제약(예: 조기 종료, 답만 생성하도록 지시)을 주지 않았습니다. 평가 지표로는 사실 정확도(Fact Acc.)와 사실의 개수(#Fact) 이외에도, 답변 회상률(answer recall, Ans. Rec.)을 추가로 보고합니다.

  • 수학적 추론(math reasoning)의 경우, GSM8K(Cobbe et al., 2021) 데이터셋에서 자기 인정(self-endorsement)의 성능을 평가합니다.

각 데이터셋에 대한 추가적인 세부사항은 본 절의 뒷부분에서 별도로 설명합니다.


평가 방법(Evaluation)

  • Biographies: Min et al.(2023)의 방식을 따라, 사실 정확도(Fact Acc.)를 평가하기 위해 이들이 공개한 inst-LLaMA-7B 모델을 심판 모델(judge)로 사용하고, 2023년 4월 1일 기준 Wikipedia 덤프 데이터를 추가 증거 자료로 활용했습니다. inst-LLaMA-7B는 각 사실의 정확성을 평가할 때 위키피디아에서 주제 인물의 페이지로부터 검색한 상위 5개의 관련 구절(passages)을 근거로 삼습니다. inst-LLaMA-7B는 최신의 강력한 모델(예: ChatGPT)에 비해 규모가 작지만, Min et al.(2023)의 연구에 따르면 ChatGPT와 항상 일관된 평가 결과를 제공합니다. 사실 정확도 외에도, 좋은 응답은 충분한 수의 정확한 사실을 포함해야 하므로 사실의 개수(#Fact)도 보고합니다.

  • TriviaQA: 표준적인 관례에 따라, 사실 정확도와 사실 개수뿐 아니라 응답에 실제 정답이 포함되어 있는지를 나타내는 답변 회상률(Ans. Rec.)도 보고합니다.

  • GSM8K: 최종 정답 정확도(Acc.)와 더불어, 중간 추론 과정의 품질을 GPT4를 심판 모델로 사용하여 평가합니다(GPT4 (Y), GPT4 (N)). 중간 추론 품질에 대한 자세한 설명은 해당 섹션에서 추가로 다룹니다.


실험 설정 및 하이퍼파라미터(Settings and Hyperparameters)

  • 모델: 실험은 주로 LLaMA2-7B-Chat, LLaMA2-70B-Chat(Touvron et al., 2023), 그리고 Mixtral-8x7B-Inst(Jiang et al., 2024)를 사용해 진행했습니다. GSM8K의 경우에는 강력한 수학 추론 능력을 가진 Mixtral-8x7B-Inst만을 사용했습니다.

  • 생성 방식: 우리의 방법론에서는 응답을 생성할 때 nucleus sampling(온도: 1.0)을 사용하고, 그 외의 경우에는 greedy decoding을 사용합니다.

  • 사실 추출 방식: Biographies와 TriviaQA의 경우 LLM에게 직접 프롬프팅하여 사실을 추출했고, GSM8K는 각 문장 자체를 하나의 사실로 간주했습니다.

  • 하이퍼파라미터: 후보 응답 수 NN(§3.1), 유지하는 문맥 사실의 수 KK(§3.3), 사실 필터링 임계치 α\alpha(§3.4)는 다음과 같이 설정했습니다.

모델 NN KK α\alpha
LLaMA2-7B-Chat 10 3 1.0
LLaMA2-70B-Chat 10 3 0.8
  • 클러스터 수 결정: K-means 클러스터 개수 CC는 후보 응답에 포함된 평균 사실 개수에 따라 동적으로 결정됩니다.

추가로 이러한 하이퍼파라미터가 성능에 미치는 영향에 대한 세밀한 분석을 별도로 수행했습니다.


베이스라인(Baselines)

가장 기본적인 베이스라인은 단순히 LLM에서 하나의 응답을 샘플링하는 것입니다. 우리는 샘플링 과정의 무작위성을 줄이기 위해 NN개의 샘플된 응답 결과의 평균값을 보고합니다. 또한 우리의 방법을 보다 정확히 이해하기 위해 다음과 같은 베이스라인을 추가로 설정했습니다.

  • Refine(정제): LLM의 강력한 성능을 감안할 때, 동일한 LLM이 다시 한 번 출력을 생성하면 스스로 오류를 수정할 수 있다는 가정을 기반으로 한 방법입니다. 이를 통해 재생성 자체로 인한 성능 향상을 정량화합니다.

  • (보편적) 자기 일관성(SC / USC): 이는 이전 2.1절에서 설명한 방식으로 구현되었습니다.

  • 검증 체인(CoVe): 이는 2.2절에서 설명한 방식으로 구현되었습니다.

4.2 결과 및 분석

자기 인정(Self-endorsement)이 사실 정확도를 높이는 효과

표 1에 나타난 것처럼, 기존 베이스라인들(+Refine, +USC, +CoVe)은 7B 및 70B LLaMA2-Chat 모델 대비 사실 정확도(Fact Acc.)를 크게 개선하지 못한 반면, 제안한 자기 인정 방법(Self-endorsement)은 선택(selection)과 재생성(regeneration), 그리고 문맥 가지치기(context pruning)의 사용 여부와 관계없이 모든 베이스라인보다 크게 우수한 성능을 보였습니다. 

  • 근데 방법자체가 애초에 인정 점수가 높은것 만을 이용해 재생성한건데.. 당연한 결과아닐까? 싶음ㅋㅋㅋ
  • 물론 인정점수가 Fact 자체를 의미하는 것은 아니나.. 어쨌든 뭔가 이상함

베이스라인 중에서는 CoVe만 약간의 사실 정확도 개선 효과를 보였지만, 이는 사실의 개수(#Fact)를 현저히 줄이는 부작용을 초래하며, 이는 Dhuliawala et al. (2023)에서도 관찰된 바 있습니다. Refine 방법은 오직 LLaMA2-70B-Chat에서만 약간의 효과를 보였지만, 자체적으로 엄선된 우수 사실 기반의 자기 인정 방식에 비해서는 훨씬 뒤떨어졌습니다. 또한 Refine 방식의 결과는 순진한 자기 정제가 강력한 LLM 능력을 요구함을 시사합니다.

제안한 방법들 중에서는, 재생성 방식이 모든 후보에서 얻은 신뢰성 높은 사실들을 포함하고 잘못된 사실을 제거할 수 있으므로, 선택 방식보다 일관되게 더 좋은 응답을 생성했습니다. 문맥 가지치기의 유무는 사실 정확도에 경미한 차이만 주었으며, 이 부분은 추가 실험에서 더 분석할 예정입니다.


인정 점수와 사실 정확도의 상관관계 분석

인정 점수(endorsement score)는 제안 방법의 성공에 중요한 역할을 합니다. 따라서 우리는 인정 점수와 실제 사실 정확도 간의 상관관계를 추가로 분석했습니다. 이를 위해 inst-LLaMA-7B와 Wikipedia 자료를 활용하여 각 사실의 정확도 점수를 계산했습니다. 

그림 3에서 보이듯이, 두 모델 모두 인정 점수와 사실 정확도 간에 명확한 양의 상관관계를 보였습니다. LLaMA2-70B-Chat 모델이 더 강력한 능력으로 인해 더 높은 상관성을 보였으며, 특히 LLaMA2-7B-Chat 모델은 특정 잘못된 사실에도 높은 인정 점수를 부여하는 오류가 자주 관찰되었습니다.


선택된 사실의 품질이 최종 응답에 미치는 영향

재생성에서 선택되는 사실의 품질을 결정하는 임계치 α\alpha의 영향을 분석하기 위해, 다양한 α\alpha값에 따른 최종 응답 품질을 그림 4a와 4d에서 시각화했습니다. 

LLaMA2-7B-Chat 모델의 경우 α\alpha가 0에서 1까지 증가할 때 꾸준히 성능이 향상되었으나, LLaMA2-70B-Chat 모델은 일정 수준 이후 성능이 감소했습니다. 분석 결과, 높은 α\alpha는 선택되는 사실의 수와 다양성을 제한해 최종 응답 품질에 부정적 영향을 미칠 수 있었습니다. 예를 들어 α=1\alpha = 1일 때, LLaMA2-70B-Chat의 선택된 평균 사실 개수는 11.3개였으나 LLaMA2-7B-Chat에서는 16.7개였습니다. 또한 α0.2\alpha \geq 0.2 이상에서 성능이 안정적으로 증가했으며, 이는 낮은 품질의 사실 제거 효과를 입증합니다.


후보 응답 개수가 최종 응답에 미치는 영향

후보 응답 개수(NN)가 증가하면 고품질의 사실이 더 많이 제공되며, 각 사실의 신뢰성 평가도 향상됩니다. 

그림 4b와 4e에서 보이듯이, 7B와 70B 모델 모두 NN이 증가함에 따라 전반적으로 성능이 향상되었고, 재생성된 응답의 사실 개수는 안정적으로 유지되었습니다. 특히 LLaMA2-7B-Chat 모델은 후보 개수가 더 증가할수록 추가적인 성능 개선이 예상되지만, 계산 비용이 비현실적으로 증가할 수 있습니다. 반면, LLaMA2-70B-Chat은 적은 수의 후보로도 충분한 성능을 달성했습니다. 특히 제한된 후보 수로도 베이스라인을 크게 앞서는 성능을 보였는데(N=2일 때 70.4 vs. 63.1), 이는 제안 방법의 견고성을 보여줍니다.


더 적은 후보에서 사실 선택의 영향 분석

선택된 사실을 결정할 때 모든 후보(N) 대신 일부 후보(M, M<N)에서만 선택하는 효과를 추가로 분석했습니다. 

단, 이때 사실의 인정 점수는 전체 후보(N)를 활용해 계산합니다. 그림 4c와 4f에서 볼 수 있듯이, M이 증가할수록 최종 응답이 더 많은 사실을 참고할 수 있어 긍정적인 효과가 나타났습니다. 또한 후보 수가 적을 때는 오히려 모든 후보(N)를 이용하는 것보다 일부 후보(M<N)를 선택하는 방식이 더 나은 결과를 보였으며(예: N=M=2일 때 71.3 vs. 70.4), 이는 더 많은 후보를 통해 인정 점수가 더 정확히 산출될 수 있음을 의미합니다.


문맥 가지치기가 최종 응답에 미치는 영향

문맥 가지치기는 각 사실의 인정 점수를 계산할 때 불필요한 문맥을 제거하여 효율을 높이지만, 지나친 제거는 사실 선택의 정확도를 낮출 수 있습니다. 

표 2에서 보듯이, LLaMA2-7B-Chat 모델은 K 값의 영향을 많이 받아 K가 증가할수록 성능이 꾸준히 향상됐으나, LLaMA2-70B-Chat 모델은 성능 증가폭이 상대적으로 작았습니다(예: 72.4 → 73.2). 그러나 두 모델 모두 문맥 가지치기를 하지 않은 경우와 유사한 성능을 보였으며, 문맥 가지치기를 통해 K=5일 때 계산 비용을 약 50% 절감할 수 있어 전반적으로 유용하다고 판단됩니다. 더 발전된 문장 매칭 기법의 탐구는 후속 연구 과제로 남겨두었습니다.


TriviaQA 질문 응답 실험 결과

TriviaQA의 실험 결과는 표 3에 제시했습니다. 

본 연구의 방법은 Biographies 실험과 마찬가지로 사실 정확도를 효과적으로 개선했습니다. 다만 Ans. Rec.에 대한 개선 효과는 제한적이었는데, 이는 이미 기존 LLM들이 정답을 정확히 제시하고 있었기 때문입니다.


GSM8K 수학 추론 실험 결과

수학적 추론 과제인 GSM8K 데이터셋에서도 실험을 진행했습니다. 

최종 정답 정확도(Acc.)뿐 아니라 중간 추론 과정의 품질도 평가했는데, 자기 인정 방식이 SC와 비교해 정답 정확도에서 약간 더 나았으며, 잘못된 최종 정답을 제공한 중간 단계(GPT4 (N))의 품질에서 더 큰 개선(0.12 증가)을 보였습니다. 이는 잘못된 답변에서도 보다 우수한 논리적 근거를 선택하는 본 연구 방식의 효과성을 나타냅니다.

5 관련 연구(Related Work)

5.1 추론 단계에서의 환각 완화(Inference-time Hallucination Mitigation)

LLM의 환각(hallucination) 문제를 해결하기 위한 접근법은 크게 학습 단계와 추론 단계로 나눌 수 있습니다. 학습 단계의 접근법(Lee et al., 2022; Lightman et al., 2023; Tian et al., 2023; Lan et al., 2023; Wu et al., 2023; Zhang et al., 2024)과 비교하여, 추론 단계 개선이 최근 더 많은 관심을 받고 있는데, 이는 비용 효율성과 제어 가능성이 높기 때문입니다(Zhang et al., 2023).

기존 연구들(Shi et al., 2023; Wang et al., 2023a,b; Huang et al., 2024) 중 많은 경우가 검색 엔진과 같은 외부 도구나 데이터베이스에서 관련 지식을 미리 검색하여 LLM에 제공함으로써 사실 정확도(factuality)를 높이는 방법을 사용했습니다. 그러나 본 연구는 외부 지식 없이 오직 LLM 자체를 활용하여 환각을 줄이는 또 다른 연구 방향(Lee et al., 2022; Chen et al., 2023; Dhuliawala et al., 2023; Li et al., 2023; Chuang et al., 2023; Das et al., 2024)을 탐구합니다. 이는 외부 지식 원천을 활용할 수 없는 환경에서 특히 중요합니다.

앞서 설명한 두 베이스라인(USC와 CoVe)을 제외한 기존 연구 중, Lee et al. (2022)는 디코딩 중 샘플링의 하이퍼파라미터를 동적으로 조정하여 다양성과 사실 정확도를 균형 있게 유지하는 factual-nucleus sampling을 제안했습니다. Li et al. (2023)는 진실성(truthfulness)에 대한 선형 탐침 정확도(linear probing accuracy)가 높은 어텐션 헤드를 찾아내 모델 활성값(activation)을 진실과 상관된 방향으로 조정하는 Inference-Time Intervention (ITI)을 소개했습니다. Chuang et al. (2023)는 사실 정보가 서로 다른 층(layer)에 다르게 인코딩된다는 것을 발견하여, 서로 다른 층에서 생성된 확률의 차이를 통해 환각을 완화했습니다.

이러한 연구들 중에서 우리의 방법론은 후보 응답들 간의 일관성을 평가하는 USC와 가장 관련이 있지만, 우리의 접근법은 응답 수준이 아니라 더욱 세부적인 사실(fact) 단위에서 평가한다는 점에서 차별성을 갖습니다.


5.2 블랙박스 환각 탐지(Black-box Hallucination Detection)

추론 과정에서의 환각 탐지는 일반적으로 불확실성(uncertainty) 평가에 기반합니다. 최근 연구들은 다음 세 가지로 분류할 수 있습니다(Zhang et al., 2023):

  • 로짓(logit) 기반 접근법 (Guo et al., 2017)

  • 언어화(verbalize) 기반 접근법 (Xiong et al., 2023)

  • 일관성(consistency) 기반 접근법 (Manakul et al., 2023; Mündler et al., 2023)

본 연구는 일관성 기반 접근법과 가장 관련이 있습니다. 일관성 기반 접근법은 LLM이 불확실하거나 환각 상태일 때 같은 질문에 논리적으로 모순되는 응답을 생성한다는 가정을 기반으로 합니다(Zhang et al., 2023). 예를 들어 SelfCheckGPT(Manakul et al., 2023)는 샘플링된 여러 응답 간 정보적 일관성을 확인하기 위해 BERTScore(Zhang et al., 2019)와 같은 여러 평가 기법을 사용했습니다. Mündler et al. (2023)는 추가 LLM을 사용하여 동일한 맥락에서 생성된 두 응답 간의 모순을 탐지하여 잘못된 사실을 발견했습니다.

우리 방법론은 샘플링된 응답 간의 일관성을 평가한다는 점에서 이 접근법들과 유사성을 공유합니다. 그러나 우리는 인정 점수를 사실(fact) 대 사실 수준의 더 세부적인 단위에서 산출한다는 점이 다릅니다. 또한 본 연구의 최우선 목표는 단순히 환각을 탐지하는 것을 넘어, 환각 탐지 이후 최종 응답의 품질을 실질적으로 향상시키는 데 있습니다.

6 결론(Conclusion)

본 논문에서는 오직 LLM 자체만을 활용하여 환각(hallucination)을 완화하고 추론 능력을 향상시키는 자기 인정(self-endorsement) 프레임워크를 제안했습니다. 구체적으로, 여러 개의 샘플 후보 응답 간 미세한 사실(fact) 수준의 비교를 통해 신뢰할 수 있는 사실을 식별한 뒤, 이 사실들을 기반으로 후보 응답 중 하나를 선택하거나 재생성하여 최종 응답을 만듭니다. 우리의 접근법을 Biographies(장문 생성), TriviaQA(개방형 질문 응답), GSM8K(다단계 수학 추론) 등 인기 있는 벤치마크에서 평가했습니다. 실험 결과, 자기 인정 기법은 복잡한 지시사항 없이도 기존 접근법에 비해 소규모나 오픈소스 LLM의 성능을 유의미하게 개선했습니다.

한계점(Limitations)

자기 인정 방법의 주요 한계점은 사실 검증 단계에서 발생하는 계산 비용입니다. 검증된 사실을 확보하기 위해 더 많은 후보를 사용할수록 비용이 급격히 증가합니다. 본 연구에서는 후보 수와 최종 성능 간의 상충 관계(trade-off)를 분석하였으며, 상대적으로 적은 후보 수로도 사실 정확도를 향상시킬 수 있음을 보였습니다. 또한 더 큰 모델일수록 하이퍼파라미터 선택에 덜 민감했습니다. 향후 연구에서는 양자화(quantization; Jacob et al., 2018) 기법이나 **작은 모델로의 지식 증류(distillation; Hinton et al., 2015)**를 활용하여 계산 효율성을 추가로 개선하는 방안을 탐구할 수 있을 것입니다.

또 다른 한계점은 우리의 방식이 전적으로 프롬프팅(prompting) 기반이라는 점입니다. LLM이 입력 프롬프트에 민감하기 때문에, 프롬프트 선택이 최종 성능에 상당한 영향을 줄 수 있습니다. 또한 단일 프롬프트가 다양한 과제나 모델에 대해 일관되게 최적의 결과를 얻지 못할 가능성도 있습니다. 프롬프트 탐색(prompt searching; Yang et al., 2023)과 같은 기술을 통해 이 문제를 해결할 수 있으며, 이는 후속 연구 과제로 남겨두었습니다.

자기 인정 방법은 오로지 LLM 내부의 지식만 활용하여 환각을 줄이는 연구 흐름을 따르므로, 타겟 LLM의 능력에 근본적인 제약을 받습니다. 예를 들어 높은 인정 점수를 얻은 문장이라도, 모델이 가진 정보가 오래되었거나 노이즈가 포함된 경우 여전히 사실 오류를 포함할 수 있습니다. LLM이 이러한 사실들에 대해 정확한 정보를 갖추지 못했으므로, 외부 지식을 활용하지 않는 한 환각을 완전히 방지하는 것은 본질적으로 불가능합니다.

Reference

댓글