본문 바로가기
IT/인공지능

[LLM][프롬프트엔지니어링] CoT(Chain of Thought)

by 드인 2024. 5. 7.

CoT(Chain of Thought)


1. CoT(Chain of Thought)란

 CoT(사고의 연쇄)대규모 언어 모델(LLM)이 복잡한 문제를 해결하기 위해 중간 단계의 추론 과정을 거치는 방법론을 말합니다. 이 방법은 모델이 단순히 답을 제시하는 것을 넘어서, 어떻게 그 결론에 도달했는지를 설명하는 과정을 포함합니다. 

 

Chain-of-Thought Prompting Elicits Reasoning in Large Language Models 논문

https://arxiv.org/abs/2201.11903

 

Chain-of-Thought Prompting Elicits Reasoning in Large Language Models

We explore how generating a chain of thought -- a series of intermediate reasoning steps -- significantly improves the ability of large language models to perform complex reasoning. In particular, we show how such reasoning abilities emerge naturally in su

arxiv.org

 

2. CoT 방법론

CoT를 적용하는 방법론은 모델이 문제를 해결하는 과정에서 중간 단계의 추론 과정을 명시적으로 표현하도록 합니다.

(복잡한 수학 문제를 해결할 때, 모델은 각 단계를 차례대로 설명하며 최종 답안에 도달함)

https://arxiv.org/abs/2201.11903

 

CoT 작동 프로세스

  1. 문제 이해하기: 모델은 먼저 제시된 문제를 이해하고, 문제 해결을 위해 필요한 정보를 식별합니다.
  2. 필요한 정보 수집: 문제 해결에 필요한 데이터(정보, 지식 등)를 모델이 내부적으로 수집하거나 추론합니다.
  3. 중간 추론 과정: 모델은 수집한 정보를 바탕으로 중간 단계의 추론을 수행합니다. 모델은 여러 가지 가능한 해결 방법을 고려하고, 각각에 대한 장단점을 분석할 수 있습니다.
  4. 최종 결론 도출: 중간 추론 과정을 통해 얻은 정보와 분석을 종합하여 최종 결론을 도출합니다.

CoT의 장점

  • 해석 가능성: CoT 방법론은 모델이 어떻게 결론에 이르렀는지를 설명함으로써, 사용자가 모델의 동작 방식을 이해할 수 있게 합니다.
  • 정확성 향상: 복잡한 문제 해결할 때 중간 추론 과정을 거치면서 오류를 줄이고, 더 정확한 답변을 도출할 수 있습니다.

CoT의 단점

  • 자원 소모: CoT 방법론을 사용하여 문제를 해결할 때, 각 단계의 추론 과정을 명시적으로 표현해야 하기 때문에, 더 많은 연산 자원과 시간이 소요될 수 있습니다. 
  • 과잉 추론(Overthinking): CoT 방법론이 단순한 문제에 대해 불필요하게 복잡한 추론 과정을 거쳐서 비효율적일 수 있습니다.

 

3. CoT 적용 예시

  • 수학 문제 해결: CoT를 사용하여 모델은 복잡한 수학 문제를 단계별로 분해하고, 각 단계마다의 추론 과정을 설명하면서 최종 답안에 도달합니다.
문제: "만약에 당신이 10개의 사과를 가지고 있고, 친구에게 3개를 주었다면, 당신은 몇 개의 사과를 가지고 있나요?"
CoT 해결 과정
1. 나는 처음에 10개의 사과를 가지고 있었습니다.
2. 친구에게 3개를 줬습니다.
3. 10개에서 3개를 빼면, 10 - 3 = 7개가 됩니다.
4. 따라서, 나는 7개의 사과를 가지고 있습니다.
  • 논리적 추론: 이야기나 문장의 논리적인 연결을 찾아내는 문제에서, 모델은 각 사건의 연결 고리를 추론하며, 그 과정을 순차적으로 설명합니다.
문제: "모든 꽃은 식물입니다. 장미는 꽃입니다. 장미는 식물입니까?"
CoT 해결 과정
1. 모든 꽃은 식물이라는 전제가 있습니다.
2. 장미는 꽃의 한 종류입니다.
3. 따라서, 장미도 식물입니다.
  • 지식 기반 질문: 특정 지식을 요구하는 질문에 답할 때, 모델은 관련 지식을 차례로 설명하고, 이를 바탕으로 최종 답변을 제시합니다.
문제: 커피가 인체에 미치는 영향은 무엇인가요?
CoT 해결 과정
1. 커피가 인체에 미치는 영향을 이해하기 위해, 여러 측면에서 그 효과를 차례로 살펴보고, 종합적인 결론을 내립니다.
2. 정신적 효과:커피의 주요 성분인 카페인은 중추신경계를 자극해 주의력과 집중력을 향상시킬 수 있습니다.
3. 심혈관계에 대한 영향:단기적으로 커피를 섭취하면 심장 박동수가 증가하고 혈압이 상승할 수 있습니다.
4. 소화계에 대한 영향:커피는 소화 촉진제로 작용할 수 있으며, 특히 카페인은 위산 분비를 증가시켜 소화를 돕습니다.
5. 장기적인 건강 효과:연구에 따르면, 커피는 2형 당뇨병, 특정 유형의 암, 파킨슨병 및 알츠하이머병의 위험을 감소시킬 수 있습니다.
6. 최종 결론: 커피는 다양한 방식으로 인체에 영향을 미치며, 그 효과는 긍정적인 측면과 부정적인 측면 모두를 포함합니다. 개인의 건강 상태, 커피 섭취량 및 습관에 따라 그 영향은 다를 수 있으므로, 개인별로 적절한 커피 섭취량을 결정하는 것이 중요합니다.

 

4. CoT 효과 및 활용 방안

  • 해석 가능성 향상
    • 추론 과정의 투명성: CoT를 사용하면 모델이 각 추론 단계를 명시적으로 표현하므로, 사용자는 모델이 어떻게 결론에 도달했는지 이해할 수 있습니다.
    • 오류 발견 및 수정 용이: 추론 과정이 명확하게 드러나기 때문에, 모델이 잘못된 결론에 도달했을 경우, 어떤 단계에서 오류가 발생했는지 쉽게 파악하고 수정할 수 있습니다.
  • 신뢰성 제고
    • 논리적 근거 제공: CoT는 모델이 답변을 도출하기까지의 논리적 근거를 제공함으로써, 제시된 답변의 신뢰성을 높입니다. 
    • 결정 과정의 검증 가능: 사용자는 모델의 추론 과정을 따라가며, 각 단계의 타당성을 검증할 수 있습니다.