ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Chain-of-Verification Reduces Hallucination in Large Language Models
    카테고리 없음 2026. 5. 4. 21:33
    반응형

    type: paper
    source: https://arxiv.org/abs/2309.11495


    Chain-of-Verification Reduces Hallucination in Large Language Models

    항목 내용
    저자 Shehzaad Dhuliawala, Mojtaba Komeili, Jing Xu, Roberta Raileanu, Xian Li, Asli Celikyilmaz, Jason Weston
    연도 2023
    arXiv 2309.11495
    분야
    인용 수 0 (Semantic Scholar 기준)

    1. 배경 및 문제 정의

    대규모 언어 모델(LLM)은 사실과 다른 내용을 자신 있게 생성하는 환각(hallucination) 문제를 갖는다. 환각이란 모델이 학습 데이터에 근거하지 않거나 사실과 불일치하는 정보를 그럴듯하게 출력하는 현상을 말한다.

    이 문제의 구조적 원인 중 하나는 노출 편향(exposure bias) 이다. 학습 시에는 정답 토큰이 입력으로 주어지지만, 추론 시에는 모델 자신이 생성한 토큰에 의존한다. 긴 응답을 생성할수록 앞서 생성한 오류가 뒤따르는 토큰에 전파되어 환각이 누적된다.

    CoVe(Chain-of-Verification)는 이 문제에 대해 외부 도구 없이 LLM 스스로의 출력을 구조화된 질문-답변 쌍으로 검증하는 프레임워크를 제안한다. 핵심 관찰은 다음과 같다: 긴 응답 내에서 발생한 환각이, 동일 사실을 짧고 독립적인 질문으로 분리하여 물으면 더 정확하게 답변된다. 실험적으로 긴 응답 속 사실 정확도가 약 17%에 불과한 반면, 동일한 사실을 독립적 단문 질문으로 물으면 약 70%까지 상승한다. 이 격차를 체계적으로 활용하는 구조가 CoVe다.

    예를 들어, "멕시코-미국 전쟁에서 주요 전투를 치른 도시들을 나열하라"는 질문에 모델이 초기 응답으로 여러 도시를 나열하면서 일부 오류를 포함할 수 있다. 이때 CoVe는 나열된 각 도시에 대해 "토론토는 멕시코-미국 전쟁의 전투지였는가?"와 같은 검증 질문을 생성하고, 이 질문에 독립적으로 답하면 "아니오, 토론토는 캐나다 도시이며 해당 전쟁과 무관하다"라는 정확한 답을 얻는다. 이 검증 결과로 최종 응답에서 토론토를 제거한다.

    이 직관은 긴 시퀀스 생성 시 문맥 오염이 환각의 핵심 원인 중 하나임을 시사한다. 짧은 질문은 오염될 선행 문맥이 없으므로 정확도가 높다.


    2. CoVe 4단계 파이프라인

    CoVe는 다음 4단계로 환각을 자체 검증한다.

    2.1 1단계: 초기 응답 생성 (Generate Baseline Response)

    표준 few-shot LLM 생성이다. 사용자 쿼리에 대해 left-to-right 디코딩으로 초기 응답을 만든다. 이 응답이 이후 검증 대상이 된다. 특별한 기법 없이 일반적 few-shot 프롬프트를 사용한다.

    프롬프트 구조 예시:

    [Few-shot 예시들]
    Q: Name some politicians who were born in New York.
    A: Some politicians who were born in New York include:
    1. Donald Trump (...)
    2. Hillary Clinton (...)
    3. Michael Bloomberg (...)
    ...
    

    이 단계에서 생성되는 응답에는 노출 편향으로 인해 환각이 포함될 가능성이 높다.

    2.2 2단계: 검증 질문 계획 (Plan Verifications)

    원래 쿼리와 1단계 응답을 컨텍스트로 제공하고, 초안의 사실적 주장을 점검할 검증 질문 목록을 LLM이 생성한다. 검증 질문은 규칙 기반 템플릿이 아니라 few-shot 예시를 참고하여 자유 형식으로 만들어진다.

    프롬프트 템플릿 예시:

    I will provide a question-answer pair. Based on the answer given,
    generate a list of verification questions that could help verify
    the facts in the answer.
    
    [Few-shot 예시]
    Question: Name some politicians who were born in New York.
    Answer: 1. Donald Trump 2. Hillary Clinton 3. Michael Bloomberg ...
    Verification Questions:
    - Where was Donald Trump born?
    - Where was Hillary Clinton born?
    - Where was Michael Bloomberg born?
    ...
    
    [실제 입력]
    Question: {사용자 쿼리}
    Answer: {1단계 응답}
    Verification Questions:
    

    핵심은 검증 질문이 원본 응답의 각 사실적 주장을 독립적으로 검증 가능한 형태로 분해한다는 점이다. 후술하는 ablation 실험에서 개방형(open-ended) 질문이 yes/no 질문보다 성능이 우수한 것으로 확인되었다. yes/no 형식에서는 모델이 사실 여부와 무관하게 질문에 동의하는 편향(sycophancy bias, 아첨 편향)을 보이기 때문이다.

    2.3 3단계: 검증 실행 (Execute Verifications)

    이 단계가 CoVe의 핵심이다. 검증 질문에 답하여 환각을 탐지하는데, 원래 응답을 얼마나 참조할 수 있는지에 따라 4가지 변형이 존재한다.

    (a) Joint

    계획과 실행을 단일 프롬프트로 처리한다. 검증 질문 생성과 답변이 하나의 디코딩 과정에서 이루어지므로, 검증 답변이 초안 응답의 전체 컨텍스트를 참조할 수 있다.

    [Few-shot 예시 — 질문+응답+검증질문+검증답변이 모두 포함]
    Question: {쿼리}
    Answer: {1단계 응답}
    Verification Questions and Answers:
    - Where was Hillary Clinton born?
      → Hillary Clinton was born in Chicago, Illinois.
    

    문제점: LLM의 반복 편향(repetition bias) 으로 인해, 컨텍스트에 있는 초안 응답의 환각을 검증 답변에서도 그대로 반복할 위험이 크다. 예를 들어 초안에서 "Hillary Clinton은 뉴욕 출신"이라 했으면, 검증 답변에서도 "뉴욕"이라 반복할 수 있다.

    (b) 2-Step

    계획과 실행을 별도 프롬프트로 분리한다. 실행 단계에서는 검증 질문만 제공하고 원래 초안 응답은 프롬프트에 포함하지 않는다.

    [실행 단계 프롬프트 — 초안 응답 미포함]
    Answer the following questions:
    - Where was Hillary Clinton born?
      → Chicago, Illinois.
    - Where was Michael Bloomberg born?
      → Boston, Massachusetts.
    

    초안 응답에 대한 직접적 참조를 차단하여 반복 환각을 방지한다. 다만 모든 검증 질문이 하나의 프롬프트에 들어가므로, 검증 답변 간 간섭은 여전히 존재한다.

    (c) Factored

    각 검증 질문을 완전히 독립된 프롬프트로 실행한다. 초안 응답은 물론이고 다른 검증 질문-답변 쌍도 컨텍스트에 포함되지 않는다.

    [프롬프트 1]
    Where was Hillary Clinton born?
    → Chicago, Illinois.
    
    [프롬프트 2 — 프롬프트 1과 완전 독립]
    Where was Michael Bloomberg born?
    → Boston, Massachusetts.
    

    장점은 답변 간 간섭이 완전히 제거되고 병렬 실행 및 배치 처리가 가능하다는 점이다. 단점은 검증 질문 수만큼 별도 추론이 필요하여 계산 비용이 증가한다는 점이다.

    (d) Factor+Revise

    Factored 방식으로 검증 질문에 답한 후, 추가 LLM 프롬프트로 명시적 교차 점검(cross-check) 을 수행한다. 원래 응답과 검증 질문-답변을 함께 보며 불일치를 판정한다.

    교차 점검 프롬프트 예시:

    Claim from bio: "Texas seceded from Mexico in 1835."
    
    Verification Question: When did Texas secede from Mexico?
    Verification Answer: Texas declared independence from Mexico on
    March 2, 1836, and the Republic of Texas was established.
    
    Judgment: INCONSISTENT
    (초안은 1835년이라 했지만 검증 답변은 1836년)
    

    3가지 판정 범주가 사용된다:

    • CONSISTENT: 초안의 주장과 검증 답변이 일치하여 유지
    • INCONSISTENT: 명확한 불일치로 검증 답변 기준으로 수정 또는 제거
    • PARTIALLY CONSISTENT: 부분적 일치로 맥락에 따라 수정 또는 보완

    Factor+Revise는 Factored 대비 전기문 FactScore를 63.7에서 71.4로 끌어올렸으며, 명시적 추론이 암묵적 비교보다 환각 제거에 효과적임을 보여준다.

    2.4 4단계: 최종 검증 응답 생성 (Generate Final Verified Response)

    이전 단계의 모든 결과(초안 응답 + 검증 Q&A 쌍 + Factor+Revise의 일관성 판정)를 컨텍스트로 제공하여 수정된 최종 응답을 생성한다.

    Original Question: {쿼리}
    Draft Response: {1단계 응답}
    Verification Results:
    - Q: Where was Hillary Clinton born? A: Chicago, Illinois.
      → INCONSISTENT with draft
    - Q: Where was Donald Trump born? A: Queens, New York.
      → CONSISTENT with draft
    
    Final Verified Response:
    (불일치 항목을 수정한 최종 응답)
    

    리스트 기반 태스크에서는 불일치 항목을 제거하고, 장문 생성에서는 불일치 부분을 검증 답변에 기반하여 수정한다.

    2.5 변형 간 비교 요약

    변형 프롬프트 횟수 초안 참조 답변 간 간섭 병렬 가능
    Joint 1 O O X
    2-Step 2 X O X
    Factored N+1 X X O
    Factor+Revise 2N+1 X (검증 시) X O

    N은 검증 질문 수를 의미한다. Joint에서 Factor+Revise로 갈수록 환각 제거 효과는 높아지지만 계산 비용도 비례하여 증가한다.


    3. Factored 변형의 설계 근거

    Factored 변형이 필요한 이유는 LLM이 자기 생성물에 대해 확증 편향(confirmation bias) 을 보이기 때문이다. 자신이 이전에 생성한 답을 문맥에서 보면, 그것이 틀렸더라도 일관성을 유지하려는 경향이 있다.

    일반적인 CoT 방식에서는 검증 단계에서도 원래 응답이 컨텍스트에 남아 있어, 모델이 자신의 초기 환각을 다시 참조하여 같은 오류를 반복하는 문제가 발생한다. Factored 변형은 검증 질문 실행 시 원래 응답을 어텐션 범위에서 제거하여, 모델이 오직 질문 자체만 보고 답하도록 강제한다.

    [Joint 방식 — 반복 환각 위험]
    컨텍스트: 초기 응답 전체 + 검증 질문
    → 모델이 초기 응답의 틀린 내용을 다시 따라감
    
    [Factored 방식 — 반복 환각 방지]
    컨텍스트: 검증 질문만 (초기 응답 제거)
    → 모델이 독립적으로 사실 확인
    

    실험에서 Wikidata precision이 Joint(0.29) 대비 2-Step(0.36)에서 유의미하게 높은 것이 이 설계의 타당성을 입증한다.


    4. 관련 연구

    LLM 환각 감소 연구는 크게 세 가지 범주로 나뉜다.

    4.1 학습 단계 교정 (Training-time Correction)

    모델 학습 과정 자체를 수정하여 환각을 줄이는 접근이다.

    • RLHF(Reinforcement Learning from Human Feedback): 인간 피드백으로 보상 모델을 학습시키고, 사실적 응답에 높은 보상을 부여한다. 보상 모델 자체가 환각을 정확히 탐지하지 못하면 효과가 제한되며, 보상 해킹(reward hacking)을 통해 사실적으로 보이지만 부정확한 응답을 생성할 수 있다.
    • 대조 학습(Contrastive Learning): 사실적 응답과 환각 응답 쌍을 구성하여 두 유형의 차이를 학습하게 한다. 고품질 대조 쌍 구축에 비용이 크다.

    이 범주의 근본적 한계는 학습 데이터에 포함되지 않은 새로운 사실에 대해서는 교정 효과가 약하다는 점이다.

    4.2 생성 단계 교정 (Generation-time Correction)

    모델 파라미터를 변경하지 않고, 추론 시점에 환각을 탐지·교정하는 접근이다. CoVe가 이 범주에 속한다.

    • Confidence Score 기반: 토큰별 생성 확률이나 entropy를 측정하여 불확실한 구간을 식별한다. 그러나 LLM은 환각 내용에도 높은 confidence를 보이는 경우가 빈번하여(overconfident hallucination), 확률 기반 탐지만으로는 불충분하다. 특히 학습 데이터에서 자주 등장했지만 실제로는 틀린 정보(popular misconception)에 대해 confidence가 매우 높게 나타난다.
    • Self-Consistency / 다중 샘플링: SelfCheckGPT가 대표적이다. 동일 질문에 대해 여러 번 샘플링하고, 응답 간 일관성이 낮은 부분을 환각으로 판단한다. 사실적 내용은 샘플링마다 반복되지만 환각은 매번 달라진다는 원리이다. 단점은 다수 샘플링에 따른 연산 비용과, 모든 샘플에서 동일하게 반복되는 "공유 환각(shared hallucination)"을 탐지하지 못한다는 점이다.
    • Multi-Agent Debate: 복수의 LLM 에이전트가 서로의 응답을 비판하고 수정하는 방식이다. 모든 에이전트가 동일한 사전학습 데이터에 기반하므로, 공통 지식 공백에서는 여전히 환각이 발생한다. 다양성이 부족한 에이전트 풀은 편향을 강화할 위험이 있다.

    CoVe의 위치: generation-time self-consistency 계열이지만, multi-agent 없이 단일 모델로 수행한다는 점이 차별적이다. Factored 변형은 검증 질문 답변 시 원래 응답을 컨텍스트에서 제거하여, 원래 환각이 반복 전파되는 것을 차단한다.

    4.3 외부 도구 활용 (Tool-use / Retrieval Augmentation)

    생성 시 외부 지식 소스를 참조하여 환각을 줄이는 접근이다.

    • RAG(Retrieval-Augmented Generation): 질문과 관련된 문서를 검색 엔진이나 벡터 DB에서 가져와 컨텍스트에 포함시킨 후 응답을 생성한다. 검색된 문서 자체가 부정확하거나 오래된 경우 오히려 환각을 유발할 수 있다(retrieval-grounded hallucination).
    • Tool-use: 계산기, 데이터베이스 쿼리, API 호출 등 외부 도구를 활용한다. 도구가 커버하지 못하는 개방형 질문에서는 적용이 어렵다.

    4.4 추론 개선 관련 연구와의 관계

    • Chain-of-Thought(CoT): 중간 추론 단계를 명시적으로 생성하게 하여 최종 답변 정확도를 높인다. CoVe는 CoT의 단계적 사고를 "검증"이라는 특정 목적에 특화시킨 것으로 볼 수 있다.
    • Deductive Verification: 생성된 추론 과정의 각 단계가 논리적으로 유효한지 역방향으로 검증한다.
    • Self-Verification: 모델이 자신의 출력을 재검토하는 일반적 프레임워크로, CoVe는 이를 구조화된 질문-답변 쌍으로 구체화한 변형이다.

    4.5 3대 범주 비교

    범주 대표 방법론 장점 주요 한계
    Training-time RLHF, 대조 학습 모델 자체 개선 학습 외 사실에 취약
    Generation-time CoVe, SelfCheckGPT 파라미터 수정 불필요 공유 환각 탐지 어려움
    Tool-use/Retrieval RAG, API 호출 최신 외부 지식 활용 도구 범위 외 질문에 한계

    5. 실험 설계

    5.1 벤치마크 태스크

    CoVe는 4개의 벤치마크 태스크를 통해 환각 감소 효과를 검증한다. 각 태스크는 환각이 발생하기 쉬운 서로 다른 유형의 생성 과제를 대표한다.

    Wikidata 리스트 질문: "Name some cities in France that have a UNESCO World Heritage Site"와 같이 여러 엔티티를 나열해야 하는 질문 56개로 구성된다. 총 약 600개의 gold 엔티티가 정답으로 존재하며, precision(모델이 생성한 엔티티 중 실제 정답에 포함되는 비율)을 평가 메트릭으로 사용한다. 리스트 형태의 응답은 모델이 "그럴듯하지만 존재하지 않는" 항목을 삽입하기 쉬워 환각 측정에 적합하다.

    Wiki-Category 리스트 질문: QUEST(Question and Entity-based Search Tasks) 데이터셋에서 추출한 55개 질문으로, Wikidata보다 난이도가 높다. QUEST는 위키피디아 카테고리 구조를 활용해 더 복잡한 조건의 리스트 질문을 생성한 데이터셋이다. 질문당 평균 약 8개의 정답이 존재하며 동일하게 precision으로 평가한다. 정답 수가 적고 조건이 까다로워 모델이 정답 범위를 벗어난 엔티티를 생성할 확률이 높다.

    MultiSpanQA: 418개 질문으로 구성된 closed-book(외부 문서 참조 없이 모델 내부 지식만으로 답변) 다중 스팬 QA 태스크다. 하나의 질문에 여러 개의 독립된 답변 스팬이 존재하며, F1 score로 평가한다. 예를 들어 "Who invented the printing press and in what year?"라는 질문에 "Gutenberg"와 "1450"이라는 두 개의 스팬이 정답이 된다.

    Biography 장문 생성: 인물에 대한 전기문을 자유롭게 생성하는 태스크로, "Tell me a bio of [person]"과 같은 프롬프트를 사용한다. 평가에는 FactScore를 사용하는데, 이는 생성된 텍스트를 개별 사실 단위(atomic fact)로 분해한 뒤 각각의 사실이 신뢰 출처에서 검증 가능한지를 측정하는 메트릭이다.

    태스크 질문 수 정답 규모 평가 메트릭
    Wikidata 56 총 약 600 gold entities Precision
    Wiki-Category 55 질문당 약 8개 Precision
    MultiSpanQA 418 다중 스팬 F1
    Biography - - FactScore

    5.2 Baseline 모델 구성

    모델 설정 비고
    Llama 65B few-shot CoVe 기반 모델
    Llama 2 70B Chat zero-shot, CoT instruction-tuned 모델
    InstructGPT - 외부 비교군
    ChatGPT - 외부 비교군
    PerplexityAI - 검색 보강 시스템

    모든 CoVe 실험은 Llama 65B 기반으로 수행되었다. Llama 2 70B Chat은 instruction-tuned 모델로서 zero-shot 및 CoT 설정으로 평가하고, 외부 비교 대상으로 InstructGPT, ChatGPT, PerplexityAI를 포함한다.

    5.3 Llama 2 Chat의 불필요 내용 생성 문제

    Instruction-tuned 모델인 Llama 2 Chat은 리스트 질문에 대해 단순 엔티티 나열 대신 각 항목에 부연 설명, 면책 조항(disclaimer), 또는 관련 없는 배경 정보를 덧붙이는 경향이 있다. 이는 RLHF 훈련 과정에서 "도움이 되는 상세한 응답"을 선호하도록 학습된 결과다. 이 문제를 해결하기 위해 두 가지 후처리 방법을 적용한다:

    1. "List only the names, one per line" 등의 추가 프롬프트로 출력 형식을 제약하는 방법
    2. NER(Named Entity Recognition, 개체명 인식) 후처리로 생성된 텍스트에서 엔티티만 추출하는 방법

    6. 실험 결과

    6.1 Wikidata 리스트 질문

    모델 Method Prec. Pos. Neg.
    Llama 2 70B Chat Zero-shot 0.12 0.55 3.93
    Llama 2 70B Chat CoT 0.08 0.75 8.92
    Llama 65B Few-shot 0.17 0.59 2.95
    Llama 65B CoVe (joint) 0.29 0.41 0.98
    Llama 65B CoVe (2-step) 0.36 0.38 0.68
    Llama 65B CoVe (factored) 0.32 0.38 0.79

    Pos.는 정답 엔티티 수, Neg.는 환각된 엔티티 수를 의미한다. Few-shot baseline의 precision이 0.17에서 CoVe(2-step)에서 0.36으로 약 2배 향상되었다. 환각 엔티티 수(Neg.)도 2.95에서 0.68로 대폭 감소했다.

    6.2 Wiki-Category 리스트 질문

    모델 Method Prec. Pos. Neg.
    Llama 2 70B Chat Zero-shot 0.05 0.35 6.85
    Llama 2 70B Chat CoT 0.03 0.30 11.1
    Llama 65B Few-shot 0.12 0.55 4.05
    Llama 65B CoVe (joint) 0.15 0.30 1.69
    Llama 65B CoVe (2-step) 0.21 0.50 0.52
    Llama 65B CoVe (factored) 0.22 0.52 1.52

    Wikidata보다 난이도가 높은 Wiki-Category에서도 동일한 패턴이 관찰된다. Factored 변형이 precision 0.22로 가장 높았다.

    6.3 MultiSpanQA

    모델 Method F1 Prec. Rec.
    Llama 2 70B Chat Zero-shot 0.20 0.13 0.40
    Llama 2 70B Chat CoT 0.17 0.11 0.37
    Llama 65B Few-shot 0.39 0.40 0.38
    Llama 65B CoVe (joint) 0.46 0.50 0.42
    Llama 65B CoVe (factored) 0.48 0.50 0.46

    다중 정답 스팬을 요구하는 MultiSpanQA에서 F1이 0.39에서 0.48로 약 23% 향상되었다.

    6.4 Biography 장문 생성

    모델 / Method FactScore Avg. # facts
    InstructGPT Zero-shot 41.1 26.3
    ChatGPT Zero-shot 58.7 34.7
    PerplexityAI Retrieval-based 61.6 40.8
    Llama 2 70B Chat Zero-shot 41.3 64.9
    Llama 2 70B Chat CoT 41.1 49.0
    Llama 65B Few-shot 55.9 16.6
    Llama 65B CoVe (joint) 60.8 12.8
    Llama 65B CoVe (factored) 63.7 11.7
    Llama 65B CoVe (factor+revise) 71.4 12.3

    전기문 생성에서 FactScore가 55.9에서 71.4로 약 28% 향상되었다(factor+revise 변형). Llama 65B 기반 CoVe가 ChatGPT(58.7)와 PerplexityAI(61.6)를 모두 능가했다.

    6.5 Ablation: 검증 질문 유형별 성능

    Wiki-Category 태스크에서 검증 질문 형식에 따른 성능 차이를 비교한다.

    검증 질문 유형 CoVe (joint) CoVe (factored)
    Rule-based 0.13 0.16
    Yes/no 형식 0.15 0.19
    Open (general) 형식 0.15 0.22

    LLM이 자체 생성한 open-ended 질문(0.22)이 규칙 기반 질문(0.16)보다 우수했다. Yes/no 형식(0.19)은 LLM이 "yes"로 편향되는 경향이 있어 open 형식보다 열등했다.


    7. 핵심 발견 및 분석

    7.1 CoT와 Instruction-tuning은 환각 감소에 무효

    CoT 적용 시 Wikidata Neg.가 3.93에서 8.92로 약 2.3배 급증했고, MultiSpanQA에서도 F1이 0.20에서 0.17로 하락했다. 사실 검증 태스크에서 CoT의 단계별 추론이 오히려 더 많은 그럴듯한 환각을 생성하는 역효과를 보인다. Llama 2 70B Chat(instruction-tuned)도 Llama 65B(base, few-shot)보다 모든 태스크에서 열등했다. Instruction-tuning이 모델의 순응성(sycophancy)을 높여 자기 교정 능력을 약화시킬 수 있음을 시사한다.

    7.2 Factored 변형의 일관된 우수성

    Factored 방식이 Joint 방식보다 모든 태스크에서 우수했다. 원래 응답을 참조하면 동일한 환각을 반복하는 편향이 발생하기 때문이다. Wikidata에서 Joint(0.29) vs 2-Step(0.36)의 precision 차이가 이를 입증한다.

    7.3 짧은 형태 질문의 정확도 우위

    동일한 사실에 대해 짧은 독립 질문으로 물으면 약 70% 정확도를 보이지만, 긴 응답 속에 포함된 동일 사실은 약 17% 정확도에 그쳤다. 이것이 CoVe 전체 프레임워크의 이론적 기반이 되는 핵심 관찰이다.

    7.4 FactScore의 인물 유명도별 분포

    전기문 대상 인물의 유명도에 따라 성능 차이가 발생한다. head(유명 인물) 구간에서는 CoVe와 baseline 모두 높은 정확도를 보이지만, tail(잘 알려지지 않은 인물)로 갈수록 baseline의 환각이 급증한다. CoVe는 모든 구간에서 개선을 보이지만, tail 구간에서는 PerplexityAI가 검색 증강 특성 덕분에 여전히 우위를 점한다.

    7.5 길이 제한(Clipping)의 제한적 효과

    Llama 2 70B Chat에서 생성 길이를 10문장으로 제한했을 때 FactScore가 41.3에서 42.7로 소폭 상승했다. 길이 제한 자체만으로도 환각을 약간 줄일 수 있으나, CoVe의 검증 메커니즘에 비하면 효과가 미미하다.


    8. 역효과 및 한계

    8.1 정답 엔티티 동반 감소

    환각 제거 과정에서 정답도 함께 탈락한다. Wikidata에서 Pos.(정답 엔티티 수)가 0.59에서 0.38로 약 36% 감소했다. 검증 과정이 보수적으로 작동하여 맞는 항목까지 의심하는 것이다. 재현율이 중요한 태스크에서는 이 부작용이 치명적일 수 있다.

    8.2 생성 사실 수 감소

    전기문 생성에서 평균 사실 수(Avg. # facts)가 16.6에서 12.3으로 약 26% 감소했다. FactScore는 올랐지만 정보량은 줄어든 셈으로, 정확도와 정보량 사이에 트레이드오프가 존재한다.

    8.3 검증 질문 자체의 환각

    검증 질문 생성 단계에서 부적절하거나 원래 주장과 무관한 질문이 만들어질 수 있다. 검증 질문의 품질이 낮으면 파이프라인 전체가 무력화된다. 잘못된 검증 질문으로 인해 올바른 내용을 오히려 틀린 것으로 교정하는 역효과(false negative)도 발생할 수 있다.

    8.4 자기참조의 재귀적 한계

    단일 모델이 자신의 출력을 검증하므로, 모델의 지식 자체에 공백이 있는 영역에서는 검증 질문에도 동일하게 틀린 답을 할 수 있다. Factored 변형이 반복 환각을 줄여주지만, 모델이 아예 모르는 사실에 대해서는 근본적으로 무력하다. CoVe의 개선 상한은 LLM이 독립 질문으로 물었을 때의 정확도(약 70%)에 제한된다. PerplexityAI가 희귀 사실에서 CoVe를 능가한 것이 이를 보여준다.

    8.5 계산 비용 증가

    단일 질문에 대해 초기 생성 + 검증 질문 생성 + 검증 실행 + 최종 생성의 최소 4회 LLM 호출이 필요하다. Factored는 검증 질문 N개만큼 독립 추론이 필요하고, Factor+Revise는 2N+1회의 LLM 호출이 필요하다. 전기문 생성에서 검증 질문이 10~20개 생성되면 총 추론 횟수가 20~40회로 늘어난다. 실시간 응답이 필요한 서비스에서는 지연이 심각할 수 있다. 또한 검증 질문을 늘릴수록 비용은 선형 증가하지만, 모델 지식 상한에 의해 정확도 개선은 포화(plateau)한다.

    8.6 Factored 방식의 정보 손실

    초기 응답을 문맥에서 제거하면 반복 환각은 방지되지만, 원래 응답에 포함된 유용한 맥락 정보까지 함께 사라져 검증 답변의 품질이 저하될 수 있다. 맥락 의존적 사실 확인에서는 Joint 방식보다 오히려 불리할 수 있다.

    8.7 검증 범위 제약

    CoVe는 직접 진술된 사실 부정확성(factual inaccuracy)만 대상으로 한다. 추론 과정에서 발생하는 논리적 환각, 의견 기반 환각, 암묵적 가정의 오류 등은 검증 질문으로 분해 자체가 어려워 CoVe의 범위 밖이다. 또한 노출 편향 외에 학습 데이터의 부정확성이나 지식 경계(knowledge boundary) 문제 등 다른 원인에 의한 환각에는 CoVe의 자체 검증이 근본적으로 대응하지 못한다.

    8.8 모델 스케일 의존성

    모델 크기를 키워도(예: 7B → 65B) 환각이 완전히 사라지지 않으며, 대형 모델은 더 유창하게 환각하므로 오히려 탐지가 어려워지는 역설이 존재한다. 자기검증 능력 역시 모델 크기에 비례하므로, 소형 모델에서는 검증 단계 자체가 부정확하여 CoVe의 효과가 크게 감소하거나 오히려 성능이 하락할 수 있다.

    8.9 실험 규모 제한

    Wikidata 56개, Wiki-Category 55개 질문은 통계적으로 소규모이며, 특정 질문 유형이나 도메인에 편향될 가능성이 있다. Biography 태스크의 FactScore는 위키피디아 기반으로 검증하므로, 위키피디아에 기술되지 않은 사실은 정답이더라도 검증 불가로 처리될 수 있다.


    9. 핵심 기여 및 향후 방향

    9.1 3대 핵심 기여

    기여 1 — 검증 질문 분해: 긴 응답에서 발생한 환각을, 해당 사실을 짧은 독립 질문으로 재구성하여 다시 물으면 정확도가 높아진다는 관찰을 체계적 파이프라인으로 구현했다.

    기여 2 — Factored Attention으로 반복 환각 방지: 검증 질문 실행 시 원래 응답을 어텐션 범위에서 제거하여 확증 편향을 차단하는 구조를 제안했다. 이를 통해 모델이 자신의 초기 환각에 끌려가는 현상을 효과적으로 방지한다.

    기여 3 — 외부 도구 없는 자기검증: 검색 엔진이나 외부 지식 베이스 없이, 동일한 LLM이 생성과 검증을 모두 수행한다. 외부 시스템 의존 없이 배포 가능하다는 실용적 장점이 있다. Llama 65B 단일 모델로 ChatGPT, PerplexityAI를 능가하는 결과가 이를 뒷받침한다.

    9.2 향후 확장 방향

    자기검증의 상한을 극복하기 위해, 검증 질문 실행 단계에서 검색 엔진(retrieval augmentation)이나 외부 API를 호출하는 tool-use 방식과의 결합이 제안된다. 이 경우 모델 내부 지식에 의존하지 않고 외부 사실 소스로 검증하므로, 모델 지식 경계 밖 사실에 대한 상한 문제를 완화할 수 있다.


    참고: 핵심 선행 연구

    • SelfCheckGPT: 동일 질문에 대한 다중 샘플링 응답 간 일관성으로 환각을 탐지하는 방법론. CoVe와 달리 통계적 비일관성을 기준으로 하며, 공유 환각에 취약하다.
    • RLHF: 인간 피드백 기반 강화학습으로 모델 자체를 교정하는 학습 단계 접근. 보상 해킹 위험과 학습 외 사실에 대한 한계가 있다.
    • Chain-of-Thought(CoT): 중간 추론 단계를 명시적으로 생성하여 최종 답변 정확도를 높이는 프롬프팅 기법. CoVe는 CoT의 단계적 사고를 검증 목적에 특화시킨 확장으로 볼 수 있다.
    • RAG(Retrieval-Augmented Generation): 외부 문서를 검색하여 컨텍스트에 포함시키는 방식으로, 모델 내부 지식의 한계를 보완한다. CoVe의 향후 확장 방향으로 tool-use와의 결합이 제안된다.
    • Multi-Agent Debate: 복수 LLM 에이전트의 교차 검증 방식으로, CoVe가 단일 모델로 이를 대체한다는 점에서 차별화된다.
    반응형
Designed by Tistory.