NL-236, HaluEval: A Large-Scale Hallucination Evaluation Benchmark for Large Language Models, EMNLP 2023

◼ Comment

  • 환각 벤치마크로 꽤 그래도 쓰일만한 논문같고 인용수도 많다.
  • 여기서 제공한 데이터는 크게 2개가지 버전이 있다고 보면 된다
    • 1) 위는 3가지 테스크에 대해 LLM을 태워서 만든 30000개이다. QA task라고 예를 들면, question에 대해 LLM에게 환각 답변을 생성하라고 한다. 2가지 방법으로 환각 응답을 생성하고, 이를 또 LLM에게 더 나은 답변을 선택하라고 한다. 그럼 이것이 어려운 환각 응답이 된다는 것의 개념이다.
    • 2) 밑에는 일반 사용자쿼리 (alpaca에서 샘플링한 5000개 쿼리)에 대한 chatgpt 응답을 사람이 레이블링한 것. 여기서 5000개 쿼리는 환각을 잘 일으킬만한 질문을 선별하는데 selfcheckgpt 방법론을 차용했다고 보면 됨
  • 즉, 위의 2가지 환각 벤치마크는 총 4가지 타입의 데이터라보면 되고 이 데이터를 LLM이 환각인지 아닌지 판별하게 하면 결과가 아래와 같다
    • 대충 랜덤으로 찍는것보다 크게 높다고 볼수 없다.
    • 그래서 추가 기술을 활용하면 아래와 같다.
    • 외부지식을 사용하는게 대체적으로 향상이 있다. CoT는 별로 효과없는거 같다.
  • 환각 검출 방법론을 제시하면 위 데이터를 활용해보는것도 괜찮을것 같음

Abstract 

대형 언어 모델(LLM)인 ChatGPT와 같은 모델은 환각(hallucination), 즉 출처와 충돌하거나 사실적 지식으로 검증할 수 없는 콘텐츠를 생성하는 경향이 있습니다. LLM이 어떤 유형의 콘텐츠에 대해, 그리고 어느 정도까지 환각을 발생시키는지 이해하기 위해, 우리는 **HaluEval(Hallucination Evaluation benchmark)**이라는 벤치마크를 소개합니다. 이는 환각을 평가하기 위해 생성된 샘플과 사람이 주석을 단 환각 샘플로 구성된 대규모 데이터셋입니다.

이 샘플들을 자동으로 생성하기 위해, 우리는 **샘플링 후 필터링(sampling-then-filtering)**이라는 2단계 프레임워크를 제안합니다. 또한, 인간 주석자들을 고용하여 ChatGPT 응답 내 환각 내용을 주석화했습니다. 실험 결과에 따르면, ChatGPT는 특정 주제와 관련하여 검증할 수 없는 정보를 조작하여 환각된 콘텐츠를 생성할 가능성이 있으며, 이는 전체 응답의 약 **19.5%**에 해당합니다.

더욱이, 기존 LLM들은 텍스트 내 환각을 인식하는 데 상당한 어려움을 겪고 있습니다. 그러나 외부 지식을 제공하거나 추론 단계를 추가하면 LLM이 환각을 인식하는 데 도움이 된다는 것도 우리의 실험을 통해 입증되었습니다.
해당 벤치마크는 GitHub 링크에서 확인할 수 있습니다.

1 Introduction

대형 언어 모델(LLM)의 등장(Zhao et al., 2023)은 자연어 처리(NLP) 분야에 새로운 패러다임 전환을 가져왔으며, 텍스트 생성 및 이해에서 전례 없는 발전을 이루었습니다(Brown et al., 2020; Li et al., 2021). 이러한 뛰어난 언어 능력 덕분에 LLM은 수백만 사용자가 사용하는 코딩 보조 도구 Copilot 및 최근의 ChatGPT와 같은 여러 제품의 핵심 요소로 자리 잡았습니다.

그러나 대규모 텍스트 코퍼스를 기반으로 훈련된 LLM의 이러한 뛰어난 기능에도 불구하고, 최근 연구들은 다양한 응용 분야에서 LLM이 **환각(hallucination)**을 발생시킬 가능성이 크다는 것을 보여줍니다(Ji et al., 2023; Bang et al., 2023; Sun et al., 2023). 환각된 콘텐츠란 기존 출처와 충돌하거나 이용 가능한 지식 자원으로 검증할 수 없는 콘텐츠를 의미합니다. 이러한 환각 문제는 실제 애플리케이션에서 LLM의 배포를 잠재적으로 위험하게 만듭니다.

현재까지 대부분의 연구는 특정 작업과 소형 언어 모델(Cao et al., 2022; Zheng et al., 2023; Das et al., 2023)에 대한 환각의 원인을 조사하는 데 중점을 두었으나, LLM이 어떤 유형의 콘텐츠에서, 그리고 어느 정도로 환각을 발생시키는지에 대해서는 여전히 명확하지 않습니다.

이러한 연구를 촉진하기 위해, 우리는 LLM 분석 및 평가를 위한 **Hallucination Evaluation benchmark (HaluEval)**을 제안합니다. HaluEval은 35,000개의 환각/정상 샘플로 구성된 대규모 데이터셋으로, 5,000개의 일반 사용자 쿼리와 ChatGPT 응답, 그리고 세 가지 작업(질문 응답, 지식 기반 대화, 텍스트 요약)에서 30,000개의 작업별 예제를 포함합니다.

HaluEval의 데이터 생성 절차는 그림 1에 나타나 있습니다. 일반 사용자 쿼리의 경우, 우리는 Alpaca(Taori et al., 2023)의 52K 인스트럭션 튜닝 데이터셋을 활용해 인간 주석 작업을 수행했습니다. 또한, LLM이 환각을 발생시킬 가능성이 높은 사용자 쿼리를 선별하기 위해, 각 쿼리에 대해 ChatGPT로 세 가지 응답을 생성하고, 세 응답 간 유사성이 가장 낮은 5,000개의 쿼리만 유지했습니다.

최근 연구(Manakul et al., 2023)에 따르면, 환각은 LLM의 응답이 상충되거나 다르게 나타날 때 발생할 가능성이 높습니다. 필터링된 사용자 쿼리와 ChatGPT 응답을 바탕으로, 우리는 인간 주석자를 초대하여 응답에 환각 정보가 포함되어 있는지 확인하고 해당 부분을 표시하도록 했습니다. 예를 들어, 표 1에서 "가장 오래된 고양이 사진을 가져오세요"라는 사용자 쿼리에 대해 ChatGPT가 생성한 응답은 검증할 수 없는 정보를 포함하고 있습니다.

이렇게 인간이 주석한 쿼리와 응답은 LLM이 어떤 유형의 콘텐츠에서 환각을 발생시키는지 분석하고 이를 완화하기 위한 효과적인 방법을 고안하는 데 활용될 수 있습니다.

또한, 작업별 예제를 위해 우리는 환각 샘플을 생성하는 자동 2단계 접근 방식을 설계했습니다.
먼저, 기존 작업 데이터셋(예: HotpotQA)을 시드 데이터로 사용하여, ChatGPT를 활용해 작업별 지시(instruction)에 따라 두 가지 스타일(one-pass와 대화형)의 환각 샘플을 생성합니다. 이러한 두 가지 방법은 서로 다른 관점에서 다양한 환각 샘플을 생성할 것으로 기대됩니다.
다음으로, LLM 평가를 위해 가장 그럴듯하고 어려운 환각 샘플을 선택하기 위해, 실제 데이터(ground-truth) 예제로 강화된 필터링 지침을 정교화하고 ChatGPT를 활용해 샘플을 선택합니다. 제안된 샘플링 후 필터링(sampling-then-filtering) 접근법을 통해 각 작업 예제에 대해 환각된 대응 샘플을 생성할 수 있습니다. 이러한 환각 샘플은 LLM의 환각 인식 능력을 시험하고 정보 맹점을 분석하는 데 활용됩니다.

HaluEval에서 LLM의 성능을 더 잘 이해하기 위해, 우리는 ChatGPT와 GPT-3와 같은 기존의 강력한 LLM을 사용해 실험을 수행했습니다. 주요 결과는 다음과 같이 요약됩니다:

  • 첫째, ChatGPT는 응답에서 검증할 수 없는 정보를 만들어내며 환각된 콘텐츠를 생성할 가능성이 높습니다(약 **19.5%**의 응답). ChatGPT의 환각된 텍스트는 언어, 기후, 기술 등 다양한 주제를 포함합니다.
  • 둘째, 기존 LLM은 생성된 텍스트에서 환각을 식별하는 데 상당한 어려움을 겪으며, 환각 샘플을 생성하는 데 사용된 ChatGPT조차도 이 문제를 잘 해결하지 못합니다(예: 질문 응답에서 ChatGPT의 정확도는 **62.59%**에 불과).
  • 셋째, LLM의 환각 인식 성능 부족은 명시적인 지식을 제공하거나 중간 추론 단계를 추가함으로써 개선될 수 있습니다. 그러나 환각 샘플과 실제 데이터를 대조하는 경우, 오히려 LLM이 더 혼란스러워져 성능이 악화됩니다.

이러한 결과는 LLM의 환각 문제를 더 깊이 이해하고 이를 개선하기 위한 방향성을 제시합니다.

2 The HaluEval Benchmark

HaluEval의 목표는 LLM이 어떤 유형의 콘텐츠에서, 그리고 어느 정도까지 환각을 발생시키는지 이해하는 데 있습니다. 이를 위해 벤치마크는 다수의 올바른 샘플과 그에 대응하는 환각 샘플을 포함하고 있습니다. 이러한 컬렉션은 자동 생성인간 주석이라는 두 가지 방식으로 생성되었습니다.

2.1 Automatic Generation

우리의 생성 파이프라인은 두 단계로 구성됩니다:

  1. 다양한 환각 샘플링
  2. 고품질 환각 필터링
    이 두 단계는 ChatGPT를 활용하여 자동으로 수행됩니다.

다양한 환각 샘플링

사실적인 텍스트는 다양한 측면에서 환각될 수 있기 때문에, 우리는 서로 다른 환각 샘플링 방법 두 가지를 제안하여 다양한 샘플을 생성합니다. 각 방법에서 ChatGPT는 각기 다른 방식으로 환각 샘플링 지침을 따릅니다.

  • 첫 번째 방법원패스(one-pass) 지침을 따르는 방식으로, 완전한 지침(Table 2)을 ChatGPT에 입력하여 환각된 응답을 생성합니다(그림 1 참조).
    • 위처럼, LLM에게 넌 hallucination answer generator라고 알려주고, 예시를 알려준다.
    • 다양한 환각 방법에 대해 설명하고, 이에대한 few-shot demonstrations도 줘서 환각 답변을 생성하게 한다. (테이블 2 예시에서는 red로 표시된게 4가지 환각 방법을 설명한 것)
    • LLM에게 주어지는건, knowledge, question, right answer이다.
  • 두 번째 방법대화형(conversational) 방식을 사용하며, ChatGPT가 지침의 일부를 순차적으로 학습하고 이를 충분히 숙지했는지 확인합니다. 이후, 학습한 지침을 바탕으로 또 다른 환각된 응답을 생성합니다.
    • 이 방법은 one-turn으로 llm을 쓰는게 아니라, multi-turn으로 llm이 제대로 지침을 이해했는지 확인하면서 환각 응답을 생성하게 하는 방법
    • 자세한건 안나와있음

이 두 가지 샘플링 전략을 통해 각 질문에 대해 다각적이고 다양한 환각 응답을 얻을 수 있으며, 이후 필터링 및 선택 과정을 통해 가장 그럴듯하고 어려운 샘플을 선정합니다.


지침 설계

우리 접근법의 핵심은 ChatGPT가 환각 샘플을 생성할 수 있도록 효과적인 지침을 설계하는 것입니다.
환각 샘플링 지침은 다음 세 가지 주요 요소로 구성됩니다(표 2 참조):

  1. 목적 설명(Intention description): 시스템의 역할을 정의하고 입력과 생성 목표를 설명합니다.
  2. 환각 패턴(Hallucination pattern): 환각 샘플의 유형과 품질을 제어하기 위한 패턴을 제공합니다.
  3. 환각 예시(Hallucination demonstration): 시드 작업(예: 질문 응답)과 관련된 환각 예시를 제공하여 시스템이 환각 패턴을 이해할 수 있도록 합니다.

본 연구에서는 세 가지 작업(질문 응답, 지식 기반 대화, 텍스트 요약)을 위한 환각 샘플을 자동으로 생성했습니다.
특히, 각 작업에서 다음과 같은 환각 패턴을 고려했습니다:

  • 질문 응답(QA): 이해력, 사실성, 구체성, 추론(Zheng et al., 2023)
  • 지식 기반 대화: 외부 소프트(extrinsic-soft), 외부 하드(extrinsic-hard), 외부 그룹(extrinsic-grouped)(Das et al., 2023)
  • 텍스트 요약: 사실적(factual), 비사실적(non-factual), 내재적(intrinsic)(Cao et al., 2022)

이 세 가지 작업을 위해, 우리는 각각의 작업 데이터셋(HotpotQA [Yang et al., 2018], OpenDialKG [Moon et al., 2019], CNN/Daily Mail [See et al., 2017])에서 30,000개 인스턴스를 무작위로 샘플링하고, 이들의 환각 예제를 생성했습니다.
대화와 요약 작업에 사용된 환각 샘플링 지침은 부록 A의 Table 9-10에서 확인할 수 있습니다.

고품질 환각 필터링

LLM을 위한 도전적인 벤치마크를 구축하기 위해, 우리는 앞서 언급한 두 가지 샘플링 방법에서 가장 그럴듯하고 식별하기 어려운 환각 샘플을 선택하는 것을 목표로 합니다.

표 3에 나타난 바와 같이, 우리는 환각 필터링을 위해 실제 정답(ground-truth)으로 강화된 지침을 설계했습니다. 이를 통해 두 개의 환각 후보 중 가장 적합한 답변을 선택합니다.

  • 필터링 지침에서, 데모 예시는 실제 정답(예: U.S. Highway 60)과 그에 대응하는 환각된 답변(예: U.S. Highway 70)을 포함합니다.
  • 반면, 테스트 예제에서는 두 개의 환각된 답변을 입력합니다.
  • 데모를 따른 ChatGPT가 두 환각 답변 중에서 가장 그럴듯하고 실제 정답에 가까운 답변을 선택할 것으로 기대합니다.

위 테이블 3처럼, LLM에게 다양하게 생성된 환각 답변중 더 나은 답변을 고르게 한다. few-shot으로는 right answer이 hallucinated answer보다 더 나은 답변이란걸 보여준다. 

어쨌든 여기서 선택된 환각 답변은 더 나은 것이라는 의미로 식별하기 어려운 고난이도 샘플이라고 간주하는 것

최종적으로 선택된 환각 샘플은 식별하기 어려운 고난도의 샘플로, 이후 LLM의 환각 인식 능력을 평가하는 데 사용됩니다.

대화와 요약 작업을 위한 환각 필터링 지침은 부록 B의 표 11-12에 나와 있습니다.
이와 같은 샘플링-필터링 프로세스를 통해, 우리는 세 가지 작업(질문 응답, 지식 기반 대화, 텍스트 요약)을 위한 총 30,000개의 환각 샘플을 생성했습니다.

또한, 이 접근법은 다른 작업과 데이터셋에도 쉽게 적용될 수 있습니다.

2.2 Human Annotation

환각 샘플 생성 외에도 인간 주석 추가

우리는 ChatGPT 응답에 환각된 내용이 포함되어 있는지 여부를 주석 처리하기 위해 인간 주석자들을 초대했습니다.

**52K Instruction Tuning 데이터셋(Alpaca [Taori et al., 2023])**의 일반 사용자 질문과 ChatGPT 응답에 대해 주석 작업을 수행했으며, 이 데이터셋은 최근 LLM에서 널리 사용되고 있습니다.

사전 선택 절차

LLM이 환각을 생성할 가능성이 높은 사용자 질문을 선별하기 위해 사전 선택 절차를 설계했습니다:

  1. ChatGPT를 사용하여 각 사용자 질문에 대해 세 개의 응답을 샘플링합니다.
  2. BERTScore(Zhang et al., 2020)를 사용해 이 응답들의 평균 의미 유사도를 계산합니다.
  3. 유사도가 가장 낮은 5,000개의 사용자 질문을 최종적으로 선택합니다.
LLM 응답이 환각이 발생할 확률이 높은 alpaca 데이터셋의 쿼리를 선별하는 것

최근 연구(Manakul et al., 2023)에 따르면, 환각은 LLM의 응답이 불일치하거나 충돌하는 경우에 나타날 가능성이 높습니다.

이 논문이 selfcheckgpt의 뒤에 나온거이기 때문에, selfcheckgpt 아이디어를 차용한 느낌

주석 과정

각 질문과 ChatGPT 응답에 대해 인간 주석자들은 다음을 수행합니다:

  • 응답이 환각 정보를 포함하는지 여부를 **"예" 또는 "아니오"**로 주석 처리합니다.
  • 관련된 환각 스팬(텍스트 범위)을 나열합니다.
  • 환각은 다음 세 가지 측면에서 고려됩니다:
    • 검증 불가(Unverifiable)
    • 비사실적(Non-factual)
    • 관련성 부족(Irrelevant)

각 응답은 3명의 주석자가 라벨링하며, 최종 환각 라벨은 **최다 득표 전략(max-voting)**으로 결정됩니다.


주석자 세부사항

ChatGPT 응답의 환각을 주석 처리하는 작업은 높은 수준의 읽기 이해력과 검색 엔진을 사용한 정보 검증 능력을 요구하는 매우 까다로운 작업입니다.

  • 초기 후보군에서 영어 독해 능력이 우수하고 최소 대학 학사 학위 수준의 교육을 받은 주석자를 선별했습니다.
  • Ouyang et al.(2022)을 참고하여, 주석자들에게 소수의 테스트 예제를 주석 처리하도록 하고, 연구자의 라벨과의 일치도를 측정했습니다.
  • 가장 높은 일치 점수를 기록한 30명의 주석자를 최종적으로 선정했습니다.

라벨링 신뢰도

인간 주석자 간의 일치 신뢰도를 나타내기 위해 **Fleiss’s Kappa (κ)**를 계산했습니다.

  • 5,000개의 주석 샘플에서 κ = 0.811을 기록했으며, 이는 **"완벽한 합의(perfect agreement)"**를 나타내는 범위(0.80 ≤ κ ≤ 1.00)에 해당합니다.

2.3 Benchmark Analysis and Usage

자동화된 두 단계 생성 과정 및 데이터셋

2.1절에서 설명한 자동화된 두 단계 생성 과정으로, 우리는 각 작업(질문 응답(QA), 대화, 요약)에 대해 총 30,000개의 환각 샘플을 생성했습니다. 각 작업에는 10,000개의 예시가 포함되어 있습니다. 각 환각 패턴에 대해 생성된 샘플 수는 부록 D의 표 16에서 확인할 수 있습니다. 

패턴수에 대해 딱히 제약을 둔게 아니고 LLM이 알아서 생성한 분포를 보여주는 듯

또한 2.2절에서는 5,000개의 ChatGPT 응답을 일반 사용자 질문에 대해 수동으로 주석 처리했습니다. 표 4에서는 QA 예시와 주석 처리된 쿼리 및 응답 예시를 제시합니다. 주석 처리된 ChatGPT 응답 중 977개의 응답이 환각을 포함한다고 라벨링되었습니다(19.5%).

테이블 4의 위와 아래의 두 가지 형식의 데이터를 만든거라 보면 됨

  • 위는 3가지 테스크에 대해 LLM을 태워서 만든 30000개이고, 
  • 밑에는 일반 사용자쿼리 (alpaca에서 샘플링한 5000개 쿼리)에 대한 chatgpt 응답을 사람이 레이블링한 것

그림 2그림 3에서는 생성된 작업별 샘플과 주석 처리된 ChatGPT 응답의 주제 분포를 제시합니다. 분포는 영화, 스포츠에서 학교, 컴퓨터, 기술 등 다양한 주제를 포함하고 있습니다.


벤치마크 활용 방법

우리의 벤치마크는 연구자들이 LLM의 환각 문제를 세 가지 측면에서 조사하거나 완화할 수 있도록 합니다.

  1. 환각이 발생하는 콘텐츠 유형 분석: 생성된 샘플과 주석 처리된 샘플을 기반으로, 연구자들은 LLM이 어떤 종류의 콘텐츠에서 환각을 생성하는 경향이 있는지 분석할 수 있습니다.
  2. LLM의 환각 인식 능력 평가: 연구자들은 주어진 질문과 답변을 통해, LLM이 해당 답변이 환각된 콘텐츠를 포함하는지 여부를 판단할 수 있는지 평가할 수 있습니다.
  3. 인간 주석과의 결합: 벤치마크의 샘플은 LLM의 환각을 테스트하기 위해 특별히 설계되었으므로, 연구자들은 이 벤치마크와 인간 주석을 결합하여 LLM의 출력에 환각이 포함되었는지 평가할 수 있습니다.

벤치마크 사용 방법

사용자는 우리 프로젝트 리포지토리의 코드를 실행하여 해당 평가와 분석을 수행할 수 있습니다. 제공된 지침을 사용하여 사용자는 자신의 데이터셋에서 LLM을 환각에 대해 평가할 수 있습니다.

3 Experiments

3.1 Experimental Setup

Evaluation Models

  • 우리는 HaluEval 벤치마크에서 여러 최첨단 LLM을 평가합니다. 먼저, OpenAI의 GPT-3 (davinci) (Brown et al., 2020), InstructGPT (text-davinci-002/003) (Ouyang et al., 2022), ChatGPT (gpt-3.5-turbo) 및 Anthropic의 Claude와 Claude 2 모델을 포함한 다섯 개의 폐쇄형 LLM에 대해 실험을 수행합니다. 이 모델들은 API를 통해서만 접근할 수 있습니다. 
  • 또한, Alpaca (7B) (Taori et al., 2023), Vicuna (7B) (Chiang et al., 2023), ChatGLM (7B) (Zeng et al., 2022), Falcon (7B) (TII, 2023) 및 Llama 2-Chat (7B) (Touvron et al., 2023)과 같은 다섯 개의 널리 사용되는 오픈소스 LLM도 평가합니다. 우리의 실험은 모델을 미세 조정하거나 하이퍼파라미터 튜닝을 하지 않고 수행되었습니다.

Implementation Details.

  • 우리는 Azure OpenAI ChatGPT API를 사용하여 허위 샘플 생성 과정을 실행합니다. 샘플 생성을 위해 온도는 1.0으로 설정하고 생성할 최대 토큰 수는 256으로 설정합니다. 또한, frequency penalty은 0으로 설정하고 top-p는 1.0으로 설정합니다. 평가 시, 모든 모델에 대해 온도를 0으로 설정하여 출력의 무작위성을 줄이고 보다 집중적이고 결정적인 출력을 보장합니다. 
  • 이후, 먼저 hallucination recognition experiments을 수행하고, hallucination recognition을 개선할 수 있는 몇 가지 잠재적인 전략을 제안한 후, LLM에서의 hallucination을 이해하기 위해 질적 분석을 수행합니다.

3.2 Results and Analysis 

3.2.1 Hallucination Recognition 

LLM(대규모 언어 모델)이 환각(hallucination)을 인식하는 능력을 평가하기 위해, 각 샘플의 환각된 출력 또는 정상 출력을 무작위로 선택하여 이를 분류하는 작업을 수행했습니다. QA, 대화, 요약에 대한 평가 지침은 부록 C의 표 13, 14, 15에 제시되어 있습니다.

표 5는 샘플 출력이 환각 정보를 포함하는지 여부를 분류하는 LLM 평가 정확도를 나타냅니다. 연구 결과에 따르면, LLM은 여전히 텍스트에 암묵적으로 포함된 환각을 식별하는 데 어려움을 겪고 있습니다. 예를 들어, 최첨단 ChatGPT 모델은 사실적 요약과 환각된 요약을 구분하지 못하며, 텍스트 요약 작업에서 단지 58.53%의 정확도를 기록했습니다. 이는 거의 랜덤 수준의 정확도와 비슷합니다. 또한, GPT-3는 세 가지 작업에서 약 50%의 정확도를 기록하며, Alpaca나 Vicuna 모델의 성능은 랜덤보다 훨씬 낮게 나타났습니다.

이러한 낮은 성능의 이유는, 생성된 환각 샘플이 실제 데이터와 매우 유사해 보이지만 핵심적인 사실적 요소에서 차이가 있기 때문이라고 가정할 수 있습니다. GPT-3에서 InstructGPT와 ChatGPT로 발전하면서, 명령 조정(instruction tuning)과 인간 정렬(alignment)이 LLM의 환각 식별 능력을 강화할 수 있음이 관찰되었습니다.

ChatGPT가 환각을 식별하지 못한 샘플의 패턴 수는 표 6에 제시되어 있습니다. 결과에 따르면, QA, 대화, 요약 작업에서 실패한 환각 샘플의 절반 이상은 첫 번째 환각 패턴(즉, 이해, 외부적-소프트, 사실적)에 속하며, 이는 맥락과 충돌하지만 사실적으로는 정확한 환각을 의미합니다. 이는 LLM이 생성된 텍스트에서 사실적 환각을 식별하기 위해 관련 지식을 연관 짓거나 활성화하지 못한다는 것을 보여줍니다.

ChatGPT의 실패를 더 잘 이해하기 위해, Latent Dirichlet Allocation(LDA)(Blei et al., 2003)을 활용하여 실패한 샘플의 주제를 시각화했습니다. 그림 2와 그림 3에서 샘플을 10개의 주제로 클러스터링하고, 실패한 샘플의 주제를 빨간색으로 표시했습니다. 결과적으로, LLM의 환각은 주제에 따라 민감하게 반응하는 것으로 나타났습니다. 예를 들어, QA 작업의 빈번한 주제는 영화, 학교, 회사였으며, ChatGPT는 주로 영화, 회사, 밴드와 관련된 샘플에서 실패했습니다. 사용자 쿼리와 ChatGPT 응답의 주요 주제는 이야기, 건강, 언어, 기술, 컴퓨터로 나타났지만, ChatGPT는 기술, 기후, 언어와 관련된 주제에서 특히 어려움을 겪는 것으로 나타났습니다.

3.2.2 Improvement Strategies

이 부분에서는 LLM(대규모 언어 모델)이 환각(hallucination)을 인식하는 능력을 개선하기 위한 여러 전략을 설계했습니다. 결과는 표 8에 제시되어 있습니다.

1. 지식 검색(Knowledge Retrieval)

지식을 검색하여 활용하는 것은 환각을 줄이기 위한 널리 사용되는 전략입니다(Lewis et al., 2020; Li et al., 2023a). 따라서, 우리는 ChatGPT에 위키피디아에서 검색한 관련 지식을 제공했습니다(단, 요약 작업에서는 소스 문서 외에 추가적인 외부 정보가 필요하지 않음). 지식을 제공한 결과, ChatGPT의 인식 정확도가 크게 향상되었습니다(예: QA에서 62.59%에서 76.83%로 증가). 반면, 대화 작업에서는 성능 개선이 미미했습니다. 이는 대화에서 일반적으로 발생하는 환각 패턴(즉, 외부적 소프트/하드)이 단순히 외부 지식을 통합하는 것만으로는 쉽게 식별되지 않기 때문이라고 가정할 수 있습니다. 그러나 일반적인 사용자 쿼리 및 ChatGPT 응답의 경우, 외부 지식을 제공하는 것이 유의미한 이점을 가져오는 것으로 나타났습니다. 따라서, LLM에 외부 지식을 장착하면 환각을 인식하는 능력을 크게 향상시킬 수 있습니다.


2. CoT 추론(Chain-of-Thought Reasoning)

이전 연구(Wei et al., 2022)에서는 중간 추론 단계를 도입해 최종 답을 도출함으로써 LLM의 추론 능력을 향상시키는 Chain-of-Thought(CoT) 기법이 제안되었습니다. 본 연구에서도 ChatGPT에게 인식 결과를 생성하는 것 외에 추론 단계를 함께 생성하도록 요구했습니다. 그러나 표 8의 결과에서 보듯이, 추론 단계를 생성하는 것이 약간의 성능 향상을 가져오는 경우도 있었으나, QA와 대화 작업에서는 성능이 오히려 하락했습니다(예: 62.59%에서 59.58%로 감소). 이는 지식 검색과 비교했을 때, 출력 전에 Chain-of-Thought를 추가하면 최종 판단을 방해할 수 있기 때문입니다. 반면, 텍스트 요약 작업에서는 추론 단계를 생성하는 것이 정확도를 58.53%에서 61.21%로 개선했습니다. 이는 문서와 요약 간의 사실적 모순을 논리적 추론을 통해 식별할 수 있기 때문으로 보입니다.


3. 샘플 대조(Sample Contrast)

ChatGPT에 정답 샘플(ground-truth examples)을 제공하여 올바른 샘플과 환각된 샘플을 구별할 수 있는지 테스트했습니다. 표 8에서 볼 수 있듯이, 올바른 샘플과 환각된 샘플을 구별하는 것은 가장 낮은 성과를 보였습니다. 이는 생성된 환각 샘플이 실제 샘플과 매우 유사하기 때문에 LLM이 이를 구별하는 데 혼란을 겪기 때문이라고 가정됩니다. 이 테스트는 또한 본 연구의 벤치마크가 LLM의 환각 평가에 있어 매우 도전적임을 나타냅니다.

3.3 Case Study

외부 지식을 제공하는 것이 환각을 완화하고 인식하는 데 유익하다는 점을 보여주기 위해, 표 7에 ChatGPT의 환각된 응답과 검색된 지식으로 보완된 개선된 응답을 제시했습니다.

  • 첫 번째 예에서는 생성된 텍스트에서 "1776년 7월 4일 - 독립선언서 서명"이 잘못된 정보로 포함되어 있었습니다. 독립선언서 서명에 대한 검색 정보를 제공한 후, ChatGPT는 환각된 텍스트를 수정하고 올바른 정보를 제시할 수 있었습니다.
  • 두 번째 예에서는 ChatGPT가 중국과 인도의 GDP 성장률을 잘못 제공했는데, 이는 API 기반 ChatGPT가 웹에 접근해 공식 데이터를 확인할 수 없기 때문이었습니다. 세계은행에서 검색된 공식 정보를 제공한 후, 수정된 텍스트는 정확한 정보를 포함하는 응답을 생성했습니다.

이 두 가지 예시는 쿼리와 관련된 지식을 검색하여 제공하면, 특히 사실적 오류를 줄이는 데 있어 ChatGPT의 환각을 크게 감소시킬 수 있음을 보여줍니다.

4 Related Work

LLM의 환각(Hallucination)

LLM(대규모 언어 모델)의 환각 문제는 성능을 저해하고 실제 응용에서 안전성을 위협하기 때문에 우려의 대상입니다. 이 문제를 완화하기 위해 이전 연구에서는 다음과 같은 방법들을 제안했습니다:

  1. 텍스트 요약에서 비사실적 요소를 식별하기 위한 검증 시스템 사용(Zhao et al., 2020).
  2. 지식 그래프나 데이터베이스와 같은 구조화된 데이터 인터페이스를 호출하여 관련 증거를 획득(Jiang et al., 2023; Lan et al., 2022).
  3. 대화에서 환각을 인식하고 수정하기 위해 토큰 수준의 사실 검증 시스템(fact critic) 훈련(Dziri et al., 2021).

환각의 원인을 분석하고 다양한 작업에서 환각 간의 관계를 조사하려는 연구가 활발히 진행되고 있습니다(Zheng et al., 2023; Das et al., 2023; Cao et al., 2022). 본 연구는 이러한 연구와 밀접한 관련이 있지만, 특히 LLM을 위한 환각 평가 벤치마크를 구축하는 데 초점을 맞추고 있습니다. 우리의 데이터셋은 LLM이 환각 문제를 해결하는 데 있어 취약한 부분(맹점)을 나타내는 공개 플랫폼으로 활용될 수 있습니다.


환각 평가(Hallucination Evaluation)

모델의 환각을 다양한 NLP 작업에서 평가하려는 또 다른 연구 흐름도 존재합니다(Dziri et al., 2022b; Gupta et al., 2022; Dziri et al., 2022a; Rashkin et al., 2021; Li et al., 2023b). 예를 들어:

  • BEGIN 벤치마크(Dziri et al., 2022b)는 대화 시스템이 생성한 발화를 세 가지 범주(완전히 귀속 가능, 완전히 귀속 불가능, 일반적)로 분류합니다.
  • AIS 벤치마크(Attributable to Identified Sources; Rashkin et al., 2021)는 생성 모델의 출력이 소스 문서를 지지하는지 평가합니다.

이러한 벤치마크들은 적절한 평가 플랫폼으로 활용될 수 있지만, 단일 작업(예: 대화)이나 소규모 모델(DPR 등)에만 초점을 맞춘다는 한계가 있습니다.

또한, 환각을 정량화하기 위해 몇 가지 측정 지표가 제안되었습니다:

  • PARENT(Dhingra et al., 2019): 테이블-텍스트 생성에서 n-그램 기반의 어휘적 포함 관계를 측정.
  • TRUE(Honovich et al., 2022): 예제 수준에서 ROC 곡선 아래 면적(AUC)을 계산.

본 연구에서 제안하는 HaluEval 벤치마크는 일반 사용자 쿼리와 ChatGPT 응답을 포함하며, 환각 샘플을 평가하기 위해 완전히 LLM 기반의 두 단계 자동화 프로세스를 통해 생성된 샘플을 사용합니다. 이를 통해 LLM의 환각 평가를 위한 더욱 일반적이고 강력한 플랫폼을 제공합니다.

5 Conclusion

우리는 LLM(대규모 언어 모델)이 환각(hallucination)을 인식하는 성능을 평가하기 위해, 생성 및 인간 주석이 포함된 대규모 환각 샘플 모음인 HaluEval을 소개합니다.
대규모 샘플을 자동으로 생성하기 위해, **샘플링-필터링(sampling-then-filtering)**이라는 두 단계 접근법을 제안했습니다.

  1. 샘플링 단계: 다양한 샘플을 생성하기 위해 명령어(instructions)를 활용하여 두 가지 샘플링 방법을 도입했습니다.
  2. 필터링 단계: 생성된 샘플 중 난이도가 높은 샘플을 선택하고 필터링했습니다.

또한, 자격을 갖춘 인간 평가자들을 초대하여 사용자 쿼리에 대해 ChatGPT가 생성한 응답의 환각 여부를 주석으로 달도록 했습니다.

본 연구를 통해, 기존 LLM이 텍스트에서 환각을 대부분 인식하지 못하며, 환각된 내용을 생성하는 경향이 있다는 사실을 발견했습니다.

마지막으로, LLM이 환각을 인식하는 데 도움을 줄 수 있는 몇 가지 전략을 제안했습니다.
HaluEval 벤치마크는 LLM이 어떤 유형의 콘텐츠에서 어느 정도 환각을 생성하는 경향이 있는지를 이해하는 연구를 지원하며, 궁극적으로는 더 효과적이고 신뢰할 수 있는 LLM을 구축하는 데 기여할 수 있습니다.

Reference

댓글