인공지능과 논리

인공지능(AI)가 식을 프로그램으로 쓰면 계산 실수는 줄어들까?

Program of Thoughts는 언어모델이 계산까지 문장으로 이어 쓰는 대신, 추론을 실행 가능한 프로그램으로 표현하고 계산은 외부 실행기에 맡깁니다.

복잡한 문장제에서 AI가 해결 전략은 맞게 세우고도 긴 곱셈에서 실수할 수 있습니다. Chen 등은 추론과 계산을 한 줄의 자연어 연쇄에 함께 맡기는 대신, 문제의 관계를 프로그램으로 표현하고 계산은 외부 실행기에 넘기는 Program of Thoughts(PoT)를 제안했습니다. 확인한 arXiv v4는 2022년 처음 제출된 뒤 2023년 10월 개정됐고 Transactions on Machine Learning Research에 게재됐습니다.

학술 자료의 내용

연구를 읽는 두 가지 질문

어떤 모델과 과제에서 비교했나?

연구는 주로 Codex를 사용해 다섯 수학 문장제 데이터셋과 세 금융 질의응답 데이터셋에서 few-shot과 zero-shot 설정을 비교했습니다. 프롬프트는 변수를 정의하고 식을 코드로 작성하게 하며, Python 실행 결과를 최종 답으로 사용했습니다. 논문은 PoT가 Chain-of-Thought보다 평가한 데이터셋 평균에서 약 12%포인트 높은 성능을 보였다고 보고합니다. self-consistency와 결합한 결과도 제시하지만, 데이터셋·프롬프트·당시 모델에 묶인 결과입니다. [1]

프로그램이면 답을 믿어도 되나?

실행기가 산술을 정확히 수행해도 모델이 문제를 잘못 번역하면 정확한 오답이 나옵니다. 변수 의미, 단위, 조건 분기, 반올림 규칙, 입력 데이터가 프로그램에 올바르게 들어갔는지 검토해야 합니다. 또한 원 연구는 Codex 중심의 2022~2023년 환경을 다루며 최신 모델이나 모든 논리 과제의 성능을 보증하지 않습니다. 코드 실행은 계산 검증 경로를 만들지만 의미 해석과 안전한 실행 환경은 별도 문제입니다. [1]

그림으로 생각하기

할인과 배송비를 식으로 분리하기

가상 문제는 ‘한 권 12,000원인 책 3권을 사고 전체 금액의 10%를 할인한 뒤 배송비 2,500원을 더한다’입니다. 아래 활동에서 수량·할인율·배송비를 바꾸면 프로그램 모형이 중간값과 최종값을 다시 계산합니다. 실행되는 것은 페이지 안의 단순 산술 함수이며 실제 언어모델이나 외부 API가 아닙니다.

자연어를 ‘subtotal = price × quantity’, ‘discounted = subtotal × (1-rate)’, ‘total = discounted + shipping’으로 나누면 계산 경로를 확인할 수 있습니다. 그러나 배송비가 할인 전 기준인지, 할인 대상인지 문제 해석을 잘못하면 코드는 일관되게 잘못된 답을 냅니다.

LTCT AI 활동에서는 모델이 만든 프로그램과 실행 결과를 함께 보여 주고, 학생이 변수 의미·단위·연산 순서를 검사하게 할 수 있습니다. 정답만 맞힌 경우와 해석·식·계산이 모두 맞은 경우를 구분해 평가합니다.

문장제에서 변수와 식을 추출해 제한된 프로그램을 실행하고 의미 검산으로 돌아가는 네 단계 흐름도.
LTCT가 Program of Thoughts v4의 추론-계산 분리 원리를 바탕으로 새로 그린 개념도입니다. 논문 그림이나 모델 출력물을 복제하지 않았습니다. 그림 크게 보기 ↗
직접 조작하며 생각하기

입력값을 바꾸어 식과 실행 결과를 함께 확인하세요

실제 AI나 외부 실행기를 호출하지 않는 제한된 산술 모형입니다.

실행 가능한 계산 기록
단계결과
단가×수량36,000원
할인 적용32,400원
배송비 포함34,900원

최종 결과 34,900원 · 식의 의미는 별도로 검산하세요.

어디까지 말할 수 있을까요?

  • 확인한 버전은 arXiv v4와 TMLR 2023 게재본이며 주로 Codex와 여덟 수치 데이터셋을 사용했습니다. 현재 모든 모델·언어·과제로 일반화할 수 없습니다.
  • 코드 실행은 산술 오류를 줄일 수 있지만 문제 번역, 단위, 데이터 선택, 보안 오류를 자동으로 해결하지 않습니다.

원문에 근거한 한계와 LTCT의 적용 범위 검토입니다. [1]

배운 내용을 수업에 적용하기

교육 현장과 연결해 보면

AI 수치 추론을 평가할 때 문제 해석, 변수 정의, 식 구성, 실행 결과, 검산을 다섯 단계로 분리할 수 있습니다.

교육용 실행기는 제한된 산술만 허용하고 실제 AI 호출이 아님을 표시하며, 학생이 입력을 바꿔 식과 결과의 연결을 확인하게 할 수 있습니다.

한 번 더 생각하기

프로그램이 오류 없이 실행되면 추론도 옳은가요?

생각을 비교할 해설 펼치기

아닙니다. 프로그램 문법과 계산이 맞아도 현실 문제를 잘못 옮길 수 있습니다. 실행 성공은 계산 단계의 증거이고, 의미 해석은 별도로 검토해야 합니다.

원문과 출처 정보

한국어 제목은 이해를 돕기 위한 LTCT 번역입니다. 한글 제목 뒤 괄호에 원제를 함께 표기했습니다. 저자·학술지·원문 버전은 원문 서지정보를 기준으로 확인할 수 있습니다.

  1. 사고 프로그램 프롬프팅: 수치 추론 과제에서 계산과 추론 분리하기 (Program of Thoughts Prompting: Disentangling Computation from Reasoning for Numerical Reasoning Tasks)

    Wenhu Chen, Xueguang Ma, Xinyi Wang & William W. Cohen (2023). Transactions on Machine Learning Research; arXiv:2211.12588.

    자료 성격
    공개 AI 연구 논문 · TMLR 게재본
    읽은 버전
    arXiv v4, 2023-10-23; 2022-11-22 v1
    확인 범위
    v4 공개 HTML 전체의 PoT 방법, Codex 설정, 여덟 데이터셋, few-shot·zero-shot 표, self-consistency, 오류 분석과 한계 확인
    원문 확인일

이 글은 한국어 해설이며 원문 전문 번역이 아닙니다. 도식과 활동의 제작·재구성 범위는 각 그림과 본문에 표시했습니다. 자료 선정과 출처 기준