원문: https://arxiv.org/pdf/2309.11495
ABSTRACT
대규모 언어 모델에는 '할루시네이션'이라고 부르는 문제가 있습니다. 이는 그럴듯하지만 사실은 틀린 정보를 만들어내는 현상을 말합니다. 연구자들은 이 문제를 해결하기 위해 'Chain-of-Verification(COVE)' 방법을 개발했습니다.
COVE 방법은 다음과 같은 4단계로 이루어집니다.
1. AI가 먼저 초안 답변을 작성합니다.
2. 그 초안의 사실 여부를 확인하기 위한 질문들을 계획합니다.
3. 다른 답변들에 영향을 받지 않도록 독립적으로 그 질문들에 답합니다.
4. 마지막으로 검증된 최종 답변을 생성합니다.
연구자들은 이 방법을 여러 종류의 태스크에 적용해 보았습니다. 예를 들어, Wikidata에서 가져온 목록 기반 질문, 책을 참고하지 않고 답하는 MultiSpanQA, 그리고 긴 글 생성 등에 사용했습니다.
결과적으로 COVE 방법은 이런 다양한 태스크에서 AI가 '할루시네이션'을 일으키는 경우를 줄이는 데 효과가 있었습니다.
이 방법의 핵심은 AI가 스스로 자신의 답변을 검증하고 수정하는 과정을 거친다는 것입니다. 이를 통해 더 정확한 정보를 제공할 수 있게 되는 것입니다.
1 INTRODUCTION
기존 문제점
대규모 언어 모델(AI)은 때때로 그럴듯해 보이지만 사실은 틀린 정보를 만들어냅니다. 이를 '할루시네이션'이라고 부릅니다.
해결 방법: Chain-of-Verification (CoVe)
이 문제를 해결하기 위해 연구자들이 CoVe라는 방법을 개발했습니다. 이 방법은 다음과 같은 단계로 이뤄집니다.
a) AI가 먼저 답변을 작성합니다.
b) 그 답변을 확인할 질문들을 만듭니다.
c) 그 질문들에 독립적으로 답합니다.
d) 확인된 정보를 바탕으로 최종 답변을 수정합니다.
왜 효과가 있나요?
- 개별 확인 질문들은 보통 원래 답변보다 더 정확한 정보를 제공합니다.
- 원래 답변을 보지 않고 질문에 답하면, 틀린 정보를 반복하는 것을 피할 수 있습니다.
결과
이 방법은 여러 종류의 태스크(목록 기반 질문, 책 없이 답하기, 긴 글 쓰기 등)에서 AI의 '할루시네이션' 문제를 줄이는 데 효과가 있었습니다. 요약하면, CoVe 방법은 AI가 스스로 자신의 답변을 검증하고 수정하는 과정을 통해 더 정확한 정보를 제공할 수 있게 해줍니다.
2 RELATED WORK
할루시네이션 문제
AI 언어 모델이 그럴듯하지만 사실이 아닌 정보를 생성하는 문제를 '할루시네이션'이라고 합니다. 이는 여러 분야에서 나타나며, 모델의 크기를 키우는 것만으로는 해결되지 않았습니다.
해결 방법들
연구자들은 이 문제를 해결하기 위해 크게 세 가지 방법을 사용하고 있습니다.
a) 훈련 시 수정
- AI 모델을 처음 만들 때부터 환각을 줄이도록 훈련시킵니다.
- 예: 강화학습, 대조학습 등을 사용합니다.
b) 생성 시 수정
- AI가 답변을 만들 때 더 신중하게 생각하도록 합니다.
- 예: 여러 번 답변을 만들어 비교하거나, 자신의 답변에 대해 질문을 하고 확인합니다.
c) 외부 도구 사용
- AI 모델 외부의 도구를 사용해 정보를 확인합니다.
- 예: 사실 확인 도구를 사용하거나, 외부 문서를 참조합니다.
관련 연구
논리나 수학 문제를 풀 때 AI의 추론 능력을 향상시키는 연구도 있습니다. 이는 직접적으로 할루시네이션 문제를 다루지는 않지만, AI가 더 정확한 답변을 할 수 있게 도와줍니다.
요약하면, 연구자들은 AI가 잘못된 정보를 만들어내는 '할루시네이션' 문제를 해결하기 위해 다양한 방법을 시도하고 있습니다. 이는 AI를 훈련시키는 방법을 개선하거나, AI가 답변을 만들 때 더 신중하게 만들거나, 외부 도구의 도움을 받는 등의 방식으로 이루어지고 있습니다.
3 CHAIN-OF-VERIFICATION
CoVe의 기본 가정
- 이 방법은 기본적인 AI 언어 모델을 사용합니다.
- 이 AI는 때로 실수를 할 수 있지만, 주어진 지시를 이해하고 수행할 수 있어야 합니다.
- 중요한 점은 이 AI가 자신의 답변을 검증하고 수정할 수 있어야 한다는 것입니다.
CoVe의 4가지 주요 단계
a) 기본 답변 생성
- 질문에 대한 첫 번째 답변을 만듭니다.
b) 검증 계획
- 첫 번째 답변에 대해 확인해볼 질문들을 만듭니다.
c) 검증 실행
- 만든 질문들에 하나씩 답하면서 원래 답변과 비교합니다.
d) 최종 검증된 답변 생성
- 검증 결과를 반영하여 수정된 최종 답변을 만듭니다.
방법의 특징
- 모든 단계는 같은 AI 모델을 사용하지만, 각 단계마다 다른 방식으로 질문을 합니다.
- 특히 검증 실행 단계(c)에서는 여러 가지 방법을 시도해볼 수 있습니다.
예를 들어, 모든 질문을 한 번에 답하거나, 두 단계로 나누거나, 각 질문을 독립적으로 답할 수 있습니다.
- 이렇게 더 복잡한 방식으로 나누어 처리하면 결과가 더 좋아질 수 있습니다.
3.1 BASELINE RESPONSE
Baseline Response
- 이는 CoVe 방법의 첫 번째 단계입니다.
- 동시에 이 응답은 CoVe 방법이 개선하고자 하는 대상이기도 합니다.
과정
- 사용자의 질문이 주어집니다.
- AI 언어 모델(LLM)은 일반적인 방식으로 왼쪽에서 오른쪽으로 텍스트를 생성합니다.
- 이 때 특별한 기술이나 방법을 사용하지 않습니다.
특징
- 이 기준 응답은 종종 '할루시네이션' (사실이 아닌 정보를 생성하는 문제)을 포함할 수 있습니다.
- CoVe 방법의 목적은 이러한 할루시네이션을 찾아내고 수정하는 것입니다.
향후 단계
- 이후의 CoVe 단계들은 이 기준 응답에서 발생할 수 있는 할루시네이션을 식별하고 수정하는 데 집중합니다.
실험에서의 역할
- 연구자들은 이 베이스라인 응답과 CoVe 방법을 거친 최종 검증된 응답을 직접 비교합니다.
- 이를 통해 CoVe 방법의 효과를 측정할 수 있습니다.
3.2 PLAN VERIFICATIONS
검증 질문 생성 과정
- AI는 원래 질문과 기본 답변을 바탕으로 검증 질문들을 만듭니다.
- 이 질문들은 기본 답변에 있는 사실들을 확인하기 위한 것입니다.
예시
- 만약 AI가 "미국-멕시코 전쟁은 1846년부터 1848년까지 있었다"라고 답했다면,
- 검증 질문은 "미국-멕시코 전쟁은 언제 시작하고 끝났나요?"가 될 수 있습니다.
검증 질문의 특징
- 정해진 형식이 없습니다. AI가 자유롭게 질문을 만들 수 있습니다.
- 원래 답변의 표현과 꼭 비슷할 필요는 없습니다.
검증 질문 생성 방법
- 연구자들은 AI에게 몇 가지 예시(답변과 그에 대한 검증 질문)를 보여줍니다.
- AI는 이 예시들을 참고해서 새로운 검증 질문을 만듭니다.
- 아주 뛰어난 AI라면 예시 없이도 이 작업을 할 수 있을 것입니다.
실험 세부사항
- 구체적인 예시들은 논문의 8번 섹션에서 볼 수 있습니다.
3.3 EXECUTE VERIFICATIONS
검증 질문 답변 과정
- AI가 만든 검증 질문들에 대해 답변을 합니다.
- 이 과정에서 외부 도구(예: 검색 엔진)를 사용하지 않고 AI 자체의 능력만 사용합니다.
검증 실행의 네 가지 방법
a) 결합(Joint) 방식
- 질문 만들기와 답변하기를 한 번에 합니다.
- 단점: 원래 답변의 실수를 그대로 반복할 수 있습니다.
b) 2단계(2-Step) 방식
- 질문 만들기와 답변하기를 분리합니다.
- 장점: 원래 답변의 실수를 반복할 가능성이 줄어듭니다.
c) 분리(Factored) 방식
- 각 질문을 완전히 독립적으로 답변합니다.
- 장점: 다른 답변들의 영향을 받지 않아 더 정확할 수 있습니다.
- 단점: 더 많은 계산 능력이 필요할 수 있습니다.
d) 분리+수정(Factor+Revise) 방식
- 분리 방식으로 답변한 후, 추가로 원래 답변과 비교 검토합니다.
- 장점: 불일치를 더 잘 찾아낼 수 있습니다.
불일치 확인
- 검증 답변과 원래 답변을 비교하여 차이점을 찾습니다.
- 예: 텍사스 합병 연도에 대한 불일치를 발견할 수 있습니다.
3.4 FINAL VERIFIED RESPONSE
최종 검증된 답변 생성
- 이는 CoVe 방법의 마지막 단계입니다.
- 목표는 검증 과정을 거쳐 개선된 최종 답변을 만드는 것입니다.
과정
- AI는 이전의 모든 단계를 고려하여 최종 답변을 만듭니다.
- 고려하는 요소들:
* 원래의 기본 답변
* 검증 질문들과 그에 대한 답변들
* (Factor+Revise 방식을 사용했다면) 불일치 감지 결과
방법
- AI에게 몇 가지 예시를 보여주고 이를 참고해 최종 답변을 만들게 합니다.
- 이 예시들은 AI에게 어떻게 정보를 수정하고 개선해야 하는지 보여줍니다.
목적
- 이 단계에서 AI는 발견된 오류나 불일치를 수정합니다.
- 결과적으로 더 정확하고 신뢰할 수 있는 답변을 만들어냅니다.
4 EXPERIMENTS
CoVe가 할루시네이션을 줄이는 데 얼마나 효과적인지 측정하기 위해 다양한 실험적 벤치마크를 사용합니다. 이를 여러 기준 모델들과 비교합니다.
4.1 TASKS
여기서 벤치마크는 다양한 범위를 포함합니다. 필요한 답변이 일련의 개체들인 목록 기반 질문부터, 여러 개의 자유 형식 문장으로 이루어진 장문 생성이 답변인 경우까지 다양합니다.
4.1.1 WIKIDATA
실험 데이터
- Wikidata API를 사용해 자동으로 질문들을 만들었습니다.
- 질문 형식: "어떤 [직업]을 가진 사람들이 [도시]에서 태어났나요?"
- 예시: "보스턴에서 태어난 정치인들은 누구인가요?"
답변의 특징
- 답변은 사람들의 이름 목록입니다.
- Wikidata에서 정답 목록을 가져옵니다.
실험 규모
- 총 56개의 테스트 질문을 만들었습니다.
- 각 질문에 대해 Wikidata에는 보통 약 600개의 정답이 있습니다.
- 하지만 AI는 보통 이보다 훨씬 짧은 목록을 만듭니다.
성능 측정 방법
- 정밀도(precision)를 주로 사용합니다.
- AI가 만든 답변 중 맞은 것의 비율을 계산합니다.
- 또한 AI가 만든 정답과 오답의 평균 개수도 보고합니다.
이 실험의 목적은 AI가 특정 도시에서 태어난 특정 직업의 사람들을 얼마나 정확하게 찾아낼 수 있는지 측정하는 것입니다. 이를 통해 CoVe 방법이 AI의 답변 정확도를 얼마나 향상시키는지 확인할 수 있습니다.
4.1.2 WIKI-CATEGORY LIST
실험 데이터
- QUEST 데이터셋을 사용했습니다.
- 이 데이터셋은 위키피디아의 카테고리 목록을 바탕으로 만들어졌습니다.
질문 만들기
- 카테고리 이름 앞에 "Name some"을 붙여 질문을 만들었습니다.
- 예시:
* "Name some Mexican animated horror films" (멕시코 애니메이션 공포 영화 몇 가지를 말해보세요)
* "Name some Endemic orchids of Vietnam" (베트남 고유종 난초 몇 가지를 말해보세요)
실험의 특징
- 이 실험은 앞선 Wikidata 실험보다 더 어렵습니다.
- 질문의 주제가 매우 다양하고 구체적이기 때문입니다.
실험 규모
- 총 55개의 테스트 질문을 만들었습니다.
- 각 질문에는 8개의 정답이 있습니다.
성능 측정 방법
- Wikidata 실험과 마찬가지로 정밀도를 주로 사용합니다.
- AI가 만든 답변 중 맞은 것의 비율을 계산합니다.
- 또한 AI가 만든 정답과 오답의 평균 개수도 보고합니다.
이 실험의 목적은 AI가 매우 구체적이고 다양한 주제에 대해 얼마나 정확한 목록을 만들 수 있는지 측정하는 것입니다. 이를 통해 CoVe 방법이 더 복잡하고 어려운 질문에 대해서도 AI의 답변 정확도를 향상시킬 수 있는지 확인할 수 있습니다.
4.1.3 MULTISPANQA
실험 데이터
- MultiSpanQA라는 읽기 이해 벤치마크를 사용했습니다.
- 이 데이터셋은 Natural Questions 데이터셋에서 파생되었습니다.
MultiSpanQA의 특징
- 하나의 질문에 여러 개의 독립적인 답변이 필요합니다.
- 답변들은 주어진 텍스트의 여러 부분에서 나옵니다.
실험 설정
- '클로즈드북' 방식을 사용했습니다. 즉, AI에게 참고 문서를 제공하지 않았습니다.
- 따라서 AI가 자체적으로 알고 있는 사실에 기반한 질문들만 선택했습니다.
실험 규모
- 총 418개의 테스트 질문을 사용했습니다.
- 각 답변 항목은 최대 3개의 단어로 이루어집니다.
예시 질문
- 질문: "누가 최초의 인쇄기를 발명했고, 몇 년도였나요?"
- 답변: "요하네스 구텐베르크, 1450년"
이 실험의 목적은 AI가 여러 개의 짧은 답변이 필요한 사실 기반 질문에 얼마나 정확하게 대답할 수 있는지 측정하는 것입니다. 이를 통해 CoVe 방법이 AI의 사실 지식 정확도를 얼마나 향상시킬 수 있는지 확인할 수 있습니다.
4.1.4 LONGFORM GENERATION OF BIOGRAPHIES
실험 목적
- 이번에는 CoVe 방법이 긴 글 생성에서도 잘 작동하는지 확인합니다.
실험 내용
- 인물 전기(biography) 생성 실험을 수행했습니다.
- Min et al. (2023)이 제안한 벤치마크를 사용했습니다.
실험 방법
- AI에게 간단히 "Tell me a bio of [인물 이름]" (누구의 전기를 말해주세요)라고 요청합니다.
- AI는 이 요청에 따라 해당 인물의 전기를 생성합니다.
성능 평가 방법
- FACTSCORE라는 지표를 사용했습니다.
- 이 지표는 Min et al. (2023)이 개발한 것입니다.
- FACTSCORE는 검색 기능이 강화된 언어 모델을 사용해 AI의 답변을 사실 확인합니다.
- 구체적으로 "Llama + Retrieval + NP"라는 모델을 사용합니다.
- 이 방법은 사람의 판단과 잘 일치한다고 알려져 있습니다.
실험의 의의
- 이 실험을 통해 CoVe 방법이 짧은 답변뿐만 아니라 긴 글 생성에서도 사실적 정확성을 향상시킬 수 있는지 확인할 수 있습니다.
이 실험은 AI가 인물의 전기를 얼마나 정확하게 생성할 수 있는지, 그리고 CoVe 방법이 이 정확성을 얼마나 개선할 수 있는지 측정하는 것입니다. 이를 통해 CoVe의 효과를 더 넓은 범위의 작업에서 검증할 수 있습니다.
4.2 BASELINES
베이스라인 모델
- Llama 65B라는 강력한 오픈 소스 모델을 사용했습니다.
- 모든 실험에서 'greedy decoding'이라는 방식을 사용했습니다.
실험 방법
- Llama 65B는 지시 학습을 받지 않았기 때문에, 각 작업마다 몇 가지 예시를 보여주는 방식을 사용했습니다.
- 이것이 CoVe가 개선하려는 주요 기준점입니다.
CoVe의 적용
- CoVe도 같은 Llama 65B를 기반으로 하지만, 검증 질문과 최종 검증 답변의 예시를 추가로 제공합니다.
- CoVe의 여러 변형(특히 'joint'와 'factored' 버전)을 모든 작업에서 비교했습니다.
다른 비교 대상
- Llama 2라는 지시 학습을 받은 모델과도 비교했습니다.
- 이 모델에 대해 '제로샷'(예시 없이) 성능과 '단계별 사고' 방식을 추가한 성능을 측정했습니다.
문제점과 해결 방법
- 지시 학습을 받은 모델들이 불필요한 내용을 생성하는 문제가 있었습니다.
- 이를 해결하기 위해 "답변만 쉼표로 구분해 나열하세요"라는 지시를 추가했습니다.
- 또한 명명된 개체 인식(NER) 모델을 사용해 답변을 추출하는 후처리 과정을 추가했습니다.
전기 생성 작업에서의 추가 비교
- InstructGPT, ChatGPT, PerplexityAI 등 다른 모델들의 결과와도 비교했습니다.
이 연구는 CoVe 방법의 성능을 다양한 기준점과 비교하여 평가했습니다. 기본 모델, CoVe의 변형들, 다른 고급 AI 모델들과의 비교를 통해 CoVe의 효과를 종합적으로 검증하려 했습니다.
4.3 RESULTS
연구 질문
- CoVe가 AI의 '할루시네이션' (잘못된 정보 생성)을 줄일 수 있는가?
- CoVe가 정확한 정보는 유지하면서 잘못된 정보만 수정할 수 있는가?
주요 결과
- 목록 기반 작업: CoVe는 정확도를 크게 향상시켰습니다.
- 책 없이 답하기: CoVe는 전반적인 성능을 개선했습니다.
- 긴 글 생성: CoVe는 사실 정확도를 크게 높였습니다.
다른 방법들과의 비교
- 지시 학습을 받은 모델들이나 단계별 사고 방식은 '할루시네이션' 문제를 잘 해결하지 못했습니다.
- CoVe는 ChatGPT, PerplexityAI 등 다른 유명 모델들보다 더 좋은 성능을 보였습니다.
CoVe의 작동 원리
- 짧은 검증 질문들이 긴 답변보다 더 정확하게 답변됩니다.
- AI가 만든 검증 질문들이 미리 정해진 규칙으로 만든 질문들보다 더 효과적입니다.
- 열린 형태의 질문이 예/아니오 형태의 질문보다 더 좋은 결과를 냅니다.
CoVe의 개선된 버전들
- '분리(factored)' 방식과 '2단계' 방식이 '결합(joint)' 방식보다 더 좋은 성능을 보였습니다.
- 추가적인 명시적 추론 단계를 포함한 '분리+수정(factor+revise)' 방식이 가장 좋은 성능을 보였습니다.
요약하면, CoVe 방법은 다양한 작업에서 AI의 '할루시네이션' 문제를 줄이고 정확도를 높이는 데 효과적이었습니다. 특히 AI가 스스로 검증 질문을 만들고 답하는 과정이 중요한 역할을 했습니다.
5 CONCLUSION
CoVe(Chain-of-Verification)
- 이는 AI가 자신의 답변을 검토하고 수정하는 방법입니다.
- 목적은 AI가 만들어내는 '할루시네이션'(잘못된 정보)을 줄이는 것입니다.
주요 발견
- AI는 원래 질문에 답할 때보다 검증 질문들에 더 정확하게 답할 수 있습니다.
- 검증 과정을 여러 개의 간단한 질문으로 나누는 것이 효과적입니다.
개선된 방법 - 분리된(factored) CoVe
- AI가 이전 답변을 보지 않고 각 검증 질문에 답하도록 합니다.
- 이 방법은 같은 실수를 반복하는 문제를 줄여줍니다.
전체적인 결과
- CoVe 방법은 AI에게 자신의 답변을 검증하도록 요청하는 것만으로도 성능을 크게 향상시켰습니다.
향후 연구 방향
- CoVe에 외부 도구 사용 기능을 추가하는 것이 가능합니다.
- 예를 들어, 검증 단계에서 정보 검색 기능을 사용하면 더 나은 결과를 얻을 수 있을 것입니다.
CoVe는 AI가 스스로 자신의 답변을 검증하고 수정하는 과정을 통해 더 정확한 정보를 제공할 수 있게 하는 효과적인 방법입니다. 이 연구는 AI의 '환각' 문제를 해결하는 데 중요한 진전을 이뤘으며, 앞으로 더 발전할 가능성이 있습니다.
6 LIMITATIONS
CoVe의 한계
- '할루시네이션'(잘못된 정보 생성)을 완전히 없애지는 못합니다.
- 여전히 틀린 정보를 만들 수 있지만, 기존 방법보다는 개선되었습니다.
다루지 않은 '할루시네이션' 유형
- 이 연구는 주로 사실 관계의 오류만 다뤘습니다.
- 잘못된 추론 과정이나 의견 등에서 발생하는 '환각'은 다루지 않았습니다.
CoVe의 장단점
- 장점: 사용자가 AI의 결정 과정을 더 잘 이해할 수 있습니다.
- 단점: 더 많은 계산 능력이 필요합니다.
CoVe의 개선 한계
- AI 모델의 전반적인 능력에 따라 개선의 상한선이 정해집니다.
- AI가 자신이 아는 것과 모르는 것을 구별하는 능력이 중요합니다.
향후 연구 방향
- 외부 도구 사용: AI가 자신의 지식 외의 정보를 얻을 수 있게 하는 연구가 있습니다.
- 이러한 기술을 CoVe와 결합하면 더 좋은 결과를 얻을 수 있을 것입니다.
요약하면, CoVe는 AI의 '환각' 문제를 줄이는 데 효과적이지만 완벽하지는 않습니다. 이 방법은 AI가 더 신중하게 생각하도록 만들어 성능을 개선하지만, AI의 기본 능력에 따른 한계가 있습니다. 앞으로 외부 도구 사용 등 다른 기술과 결합하면 더 나은 결과를 얻을 수 있을 것으로 기대됩니다.
7 COVE - FURTHER DETAILS
8 PROMPT TEMPLATES
8.1 GENERATE BASELINE RESPONSE
8.2 PLAN VERIFICATIONS
8.3 EXECUTE VERIFICATIONS
8.4 GENERATE FINAL VERIFIED RESPONSE
8.5 FACTOR+REVISE: IDENTIFY WHICH FACTS ARE CONSISTENT
댓글