0. Intro
LLM의 추론 능력(reasoning)을 향상하기 위한 다양한 프롬프트 테크닉이 연구되고 있습니다.
그중 Something of thoughts 시리즈들을 알아보려고 합니다.
이번에 소개해드릴 것은 2가지입니다.
- Chain of Thought (CoT)
- Tree of Thoghts (ToT)
1. Chain of Thought
Chain of Thoughts (CoT)는 중간에 추론 단계를 둠으로써 LLM이 복잡한 추론을 가능하게 해 줍니다.
예시에서는 few-shot으로 계산 과정을 단계적으로 알려줬습니다.
비교적 간단한 방법이고 LLM이 문제를 해결해 가나는 과정을 알 수 있다는 장점이 있는 것 같습니다.
또한 zero-shot으로 "천천히 한 단계씩 생각해 보자"라고 한 줄 추가함으로써 CoT를 사용할 수 있다고 합니다.
"Let's think step by step", "First, (*1)"등등
여러 가지 zero-shot CoT 템플릿들을 활용하면 그렇지 않은 것보다 성능이 나은 것을 봤을 때 chain of thought는 간단히 LLM의 성능을 높일 수 있는 방법인 것 같습니다.
2. Tree of Thoughts
앞에 소개드린 CoT는 답을 내리는 과정이 한 번에 한 단계씩 결정을 내리는 패턴에 국한됩니다.
실제 사람이 추론하는 과정을 생각해 보면 여러 가지 답의 방향을 고려하면서 답이 틀리면 이전 단계로 돌아가는 백트랙킹 과정이 있습니다.
따라서 ToT는 문제 해결 과정을 여러 가능성을 탐색하고 최적의 해결책을 찾아가는 과정을 트리 구조로 표현한 것입니다.
예시
다음과 같이 공의 위치를 묻는 문제를 물어봤습니다. (GPT-3.5)
공을 컵에 넣은 후 침실에서 컵을 뒤집었으니 컵은 침실에 떨어질 것이고 답은 bedroom이어야 합니다.
하지만 ChatGPT는 정원(garden)이라고 오답을 내놨습니다.
이것을 ToT 프롬프트를 이용해서 해결해 보겠습니다.
세 명의 전문가를 두어 마치 사람이 문제 해결을 위해 여러 아이디어를 생각하고 그 중 최적의 해결책을 찾는 과정을 보여줍니다. 또한 중간에 답이 틀리면 그만두는 과정도 포함했습니다.
보시면 여러 턴의 대화 끝에 bedroom으로 정답을 맞혔습니다.
실험결과에서도 앞선 CoT에 비해 성능이 높게 나온다고 합니다.
GPT-4에서만 답변할 수 있던 질문을 GPT-3.5에서도 답변할 수 있게 추론 능력을 향상한다는데 의의가 있는 것 같습니다.
이 외에도 Graph of Thoughts, Everything of Thoughts이 있으니 찾아보시면 좋을 것 같습니다.
참고
https://arxiv.org/pdf/2305.10601.pdf
https://arxiv.org/pdf/2201.11903.pdf
'AI/ML > NLP' 카테고리의 다른 글
[Paper Review] 생성 AI로 만들어졌는지 판단하기 (DetectGPT) (1) | 2023.11.26 |
---|---|
[Paper Review] LoRA: Low-Rank Adaptation of Large Language Models (1) | 2023.05.14 |
[Paper Review] Don’t Stop Pretraining (0) | 2022.10.23 |
[Review] OpenAI의 DALL-E2 공개 (0) | 2022.04.24 |
[Paper Review] RoBERTa: A Robustly Optimized BERT Pretraining Approach (0) | 2022.03.13 |