콴다의 AI Tutor Qutor와 GPT-4로 2023년 수능 수학 문제 풀기

지금까지 세상에 없던 문제들은 어떻게 풀 수 있을까?

Peyton Kim
Team QANDA

--

며칠 전, 2024년도 대학 입시를 위한 대학수학능력시험, 수능이 진행되었습니다. ‘수능 한파’라는 말이 있을 정도로 수능 당일에는 매우 추운 경우가 많은데요, 올해에도 이런 추위를 뚫고 전국의 수험생들이 한 시에 모여 시험을 치렀습니다. 하지만 이날 문제를 푼 것은 수험생들만이 아니었습니다. 콴다팀은 이번 수능 시험을 활용해 OpenAI의 large language model (LLM)인 GPT의 수학 문제 해결 능력이 어디까지 발전했는지 평가해 보기로 하였습니다. 또한, 콴다가 GPT를 기반으로하여 서비스하고 있는 문제풀이 튜터인 Qutor(구 ‘Poly’)역시 함께 평가해 보았습니다.

결과적으로, GPT를 바로 사용했을 때보다 콴다의 검색엔진을 추가로 활용하는 Qutor를 사용했을 때 더 많은 문제를 풀 수 있었고, 학습에도 더 적합한 결과를 얻을 수 있었습니다.

왜 수능인가요?

GPT는 machine learning을 기반으로 한 하나의 알고리즘이기 때문에, 성능에 대한 평가는 수시로 이루어질 수 있습니다. 그럼에도 이번 수능 시험을 활용하여 새롭게 평가를 진행한 이유는 수능 시험에 출제되는 수학 문제들이 ‘완전히 새로운 문제’들이기 때문입니다. GPT는 우리에게 매우 다양한 정보를 제공하고, 그 다양성이 우리를 놀래키곤합니다. GPT의 답변이 이러한 다양성을 가질 수 있는 이유는 GPT가 인터넷상에 존재하는 수많은 데이터를 활용하여 학습되었기 때문입니다. 이런 특징 덕분에 우리는 GPT는 매우 높은 활용도를 제공하지만, GPT의 성능 평가 측면에서는 이야기가 조금 다릅니다. 학습에 사용된 데이터가 너무도 많아서, 모든 데이터를 검수하거나 점검해 보는 것은 불가능에 가깝습니다. 더구나 GPT의 개발사인 OpenAI는 모델의 학습에 활용된 데이터에 대해서 공개하지 않기 때문에, 알려진 정보가 많지 않습니다. 이러한 불투명성은 모델의 성능을 평가하는 입장을 더욱 난처하게 합니다.

그럼에도 불구하고 GPT와 같은 LLM의 수학 문제 해결 능력을 평가하는 것은 중요한 과제입니다. 모델의 현재 수준과 약점을 파악하여 더욱 발전된 모델을 학습시키기 위해서는 모델의 능력을 정확하게 평가할 필요가 있습니다. 이를 위해 많이 사용되는 데이터셋으로는 GSM8K [1]와 MATH [2]가 있습니다.

GSM8K와 MATH 데이터셋의 예시 [1, 2]

GSM8K 데이터셋은 8,500개의 초등학교 수준 수학 문제로 구성되어 있습니다. 이 문제들은 전형적인 초등학교 수학 질문을 대표하는 만큼, 기본적인 산술 연산을 다루며, 각 문제를 해결하기 위해 2단계에서 8단계까지의 다단계 추론이 필요하게 구성되어 있습니다. MATH 데이터셋은 12,500개의 상대적으로 난이도가 높은 수학 경시 문제들로 구성되어 있습니다. 이 데이터셋들의 각 문제에는 단계별로 구성된 완전한 해결 방법이 포함되어 있습니다. 이러한 풀이 과정은 인공지능 모델을 훈련하는 데 특히 유용하게 사용되고 있습니다. 인간의 추론 과정을 모방한 Chain-of-Thought 기법이나, 프로그램을 활용하는 Program-of-Thought 같은 기법들이 이 데이터셋을 이용해 연구되고 있습니다.

하지만 GSM8K나 MATH와 같은 공개 데이터셋의 경우, 테스트셋까지 LLM의 학습에 활용되었을 가능성이 있고, 실제로 이러한 의혹들이 제기되고 있습니다. 모델의 개발자들이 의도하지 않았더라도 모델을 학습시키는 과정에서 학습 데이터를 모두 확인할 수 없는 상황이라면 테스트셋이 학습에 활용되었을 가능성을 확실하게 배제할 수 없습니다. 이러한 상황은 LLM의 수학 해결 능력을 평가하는 데 있어 큰 문제점으로 작용하는데, 모델들이 이미 알려진 문제에 대한 답안을 ‘외우는’ 방식으로 문제를 해결할 수 있다는 우려가 있기 때문입니다. 따라서, LLM의 수학 문제 해결 능력을 정확하게 평가하기 위해서는 새로운 평가 데이터셋의 개발이 필요합니다. 새로운 데이터셋은 기존에 공개된 데이터셋과는 다른, 독특하고 창의적인 문제들로 구성되어야 합니다. 모델의 학습에 활용되었을 가능성이 ‘거의 없는’ 문제들이 필요합니다. 이를 통해 LLM이 단순히 기억에 의존하는 것이 아닌, 실제로 문제를 이해하고 해결하는 능력을 갖추고 있는지를 검증할 수 있습니다.

이런 점을 감안하면, 우리나라의 수능은 LLM의 수학 문제 해결 능력을 평가하기에 매우 적합한 문제입니다. 수능 문제들은 난이도와 출제 영역이 골고루 분포되어 있을 뿐 아니라, 시중의 문제집에서 발견할 수 없는 새로운 문제들로 이루어져 있기 때문입니다.

실험 조건

실제로 수능을 치르는 수험생들은 확률과 통계, 미분과 적분, 기하와 벡터 총 3개의 과목 중 하나를 선택하게 됩니다. 하지만 GPT를 위한 이번 실험에서는 3개의 과목에서 출제된 모든 문제를 활용하였습니다. 결과적으로 총 46문항(152점)이 이번 실험에서 활용되었습니다. 일부 문제들은 주어진 그림의 존재가 풀이에 크게 도움이 될 것으로 보이지만, 이론적으로 수능 시험은 문제의 문구가 풀이에 필요한 모든 정보를 담고 있으므로, 제공된 그림의 유무는 이번 실험에서 고려되지 않았습니다.

일부 문제는 주어진 그림이 필수적으로 보이기도 합니다.

실험은 GPT는 가장 최근 발표된 ‘gpt-4–1106-preview’ 모델을 사용하였으며, API를 활용하여 진행하였습니다. 실제 수능은 객관식과 단답형 문제가 섞여있지만, GPT는 모든 문제를 주관식으로 풀도록 하였습니다. 채점의 경우 답을 formatting하는 데에서 오는 성능 저하를 막기 위해 수능의 정답과 직접 비교하였고, 풀이 과정을 제외한 답안의 일치 여부만을 채점하였습니다.

GPT-4 의 성적: 50점 / 152점

결론적으로 이야기하자면, “gpt-4–1106-preview” 모델의 성적은 152점 만점에 50점이었습니다. 우리가 피부로 느끼는 GPT의 성능과 비교해보면 다소 낮은 점수였지만, 수능의 난이도를 고려해보면 왠지 수긍이 되는 점수이기도 한 것 같습니다.

먼저 가장 쉽다고 생각되는 1번 문제와 GPT의 풀이를 보겠습니다.

2024년 수능 수학 1번 문항
2024년 수능 수학 1번 문항에 대한 GPT의 풀이

비록 1번 문제로 난이도가 매우 높지는 않지만, 자세한 설명과 함께 올바른 풀이를 제공하는 것을 알 수 있습니다. GPT가 수학 문제를 해결함에 있어서 계산에 약하다는 의견이 있지만, 이 경우 계산도 틀리지 않고 잘 수행한 것을 알 수 있습니다. 하지만 난이도가 조금씩 상승하면서 틀리는 문제들이 생기기 시작했습니다.

다음은 4점이 배점된 11번 문제와 GPT의 풀이입니다.

2024년 수능 수학 11번 문항
2024년 수능 수학 11번 문항에 대한 GPT-4의 풀이

아쉽게도 GPT는 정답을 맞추는 데에 실패하였습니다. 오답의 이유를 살펴보면, 주어진 식의 공차 d를 구하는 과정에서 각 항의 분모를 통분할 때 실수를 저질렀습니다. 이 실수 감안하고 보더라도, d를 구하는 과정에서 16의 세제곱근을 계산해야 했고, 그 과정에서 값이 나누어떨어지지 않자 가장 가까운 정수인 2 또는 -2로 d의 값을 근사해 버렸습니다. 이상적으로 생각해 보면, 16의 세제곱근을 계산해야하는 단계에서 앞선 풀이에 무언가 잘못된 부분이 있음을 인지하고, 그 부분으로 되돌아가 다시 풀기 시작하는 과정이 필요했지만 그러지 못했습니다. GPT가 스스로 생성한 답을 다시 고치지 못하는 것은 이미 알려져있고, 해결해야하는 문제입니다. 실제로도 이를 해결하기 위해서 python 코드를 활용하여 답을 verify하는 등의 시도가 제안되고 있지만, GPT의 생성 알고리즘이 ‘확률적 추론’에 기인하고 있는 만큼 근본적인 해결책이 되기는 어려울 것으로 보입니다.

GPT의 풀이에서 자주 보이는 또 다른 특징은, ‘사람이라면 하지 못하는 소수점 계산과 근사에 매우 능하다’라는 점입니다. 사람은 무리수나 복잡한 형태의 수식을 직접 계산할 수 없기 때문에, 문자와 분수를 적극적으로 활용하게 되고, 수능 수학 문제 역시 여기에 적합한 문제들이 출제됩니다. 그렇기에 위와 같은 상황에서 “16의 세제곱근을 계산해야 한다” 라는 사실만으로 사람은 “나의 풀이가 어딘가 잘못되었구나” 라는 것을 인지할 수 있습니다. 하지만 계산에 자신감이 있는 GPT에게 “16의 세제곱근을 계산해야한다”라는 사실은 그리 대수로운 일이 아닙니다. 위의 그림에서 알 수 있듯이, 16의 세제곱근은 2.5198420997.. 이기 때문이죠.

콴다의 문제 풀이 튜터 Qutor: 77점 / 152점

콴다 데이터베이스에 없는 문제도 Qutor가 해결해줄 수 있다

GPT는 많은 분야에서 높은 성능을 보여주지만, 그 성능을 더욱 끌어올리기 위한 다양한 방법들이 있습니다. OpenAI가 제공하는 code interpreter나, 수많은 시도가 진행되고 있는 prompt engineering도 그 일환으로 볼 수 있습니다. 또한 web이나 별도의 검색엔진을 통해 GPT의 성능을 향상시키는 retrieval augmented generation (RAG)기법도 활발하게 연구되고 있습니다. 콴다팀 역시 이러한 기술을 활용하여 문제 풀이 튜터인 Qutor를 출시하였고, 지속적으로 발전시켜가고 있습니다.

콴다의 검색엔진과 GPT가 함께 수능 수학 문제를 어떻게 될까요? 총점 50점이었던 GPT의 성적은 77점으로 상승했습니다. 콴다가 가지고 있는 데이터베이스에 주어진 문제와 유사한 문제들을 검색하여 그 풀이와 함께 제공할 수 있었기 때문에 기존에는 풀지 못했던 문제도 해결할 수 있게 되었습니다. 아래의 그림을 보면, 위의 예시로 들었던 11번 문제 역시 성공적으로 풀어냈습니다.

2024년 수능 수학 11번 문항에 대한 Qutor의 풀이

또 한 가지 특징으로 보자면, 학생들이 실제로 학습을 위해 활용할 수 있도록 개발되었기 때문에, 풀이 과정에 대한 표현과 포멧의 가독성이 GPT를 그대로 활용했을 때와 비교했을 때보다 향상된 것을 알 수 있습니다.

수능 시험에 있어서 콴다의 검색 엔진을 활용하면 성능이 향상된다는 점은 큰 의미가 있습니다. 콴다는 대용량의 데이터베이스를 보유하고 있기 때문에, 어떤 문제를 질문하더라도 이미 콴다가 해당 문제를 보유하고 있을 가능성이 높습니다. 그러나 수능은 조금 다릅니다. 위에서 언급한 것처럼 수능 문제는 현 시점에서 콴다 검색에서는 찾을 수 없는 완전히 새로운 문제들 입니다. 그럼에도 불구하고 문제 풀이의 성능이 향상되었다는 점은 “콴다의 데이터베이스가 가지고 있지 않은 문제도 Qutor가 해결해줄 수 있다”라는 것을 의미합니다. GPT 이전의 콴다 검색은 세상에 존재하는 ‘모든 문제’를 보유하는 것을 목적으로 하였습니다. 그래야 학생들이 질문하는 모든 문제를 해결해줄 수 있었기 때문입니다. 하지만 GPT의 등장으로 이러한 관점을 조금 완화시킬 수 있었습니다. 이번 수능에서 점수가 향상된 것에서 알 수 있듯이, ‘모든 문제’를 보유하는 것에서 ‘모든 유형의 문제’만 보유하면 학생들의 질문을 해결해줄 수 있을 것입니다. 즉, GPT의 등장으로 인해 콴다가 보유한 데이터베이스의 확장성이 매우 향상되었다고 볼 수 있습니다.

콴다는 학생들의 검색량을 분석하며 데이터베이스의 크기를 지속적으로 키워나가고 있습니다. 학생들이 많이 검색하는 문제가 데이터베이스에 존재하지 않는다면, 이 문제를 데이터베이스에 추가하여 검색 실패의 경험을 줄입니다. 유저의 경험을 위해 설계된 이 flywheel 덕분에 수능이 끝나고나면, 수능 기출 문제들은 콴다의 데이터베이스에 곧 추가될 가능성이 높습니다. 수능은 학생들에게 아주 인기있는 문제들이기 때문입니다. 또한, 이번 수능 문제를 응용한 새로운 문제들도 시간이 지남에 따라 출시될 것이고, 이 문제들 역시 콴다의 데이터베이스에 쌓일 것입니다. 그렇게되면 수능 문제를 해결하고자 할 때, Qutor는 더욱 다양하고 유사한 문제를 제공받을 것이고 지금보다 더 높은 점수를 득점하게 될 것입니다. 시간이 지남에 따라 콴다의 성장과 함께 Qutor의 성적이 조금씩 상승해가는 것을 지켜보는 것도 하나의 재미가 될 것 같습니다.

콴다팀은 GPT를 활용할 뿐 아니라 Llama-2로 대표되는 open-source LLM을 학습/배포하는 등 다양한 분야의 연구 및 개발을 진행하고 있습니다. 수능 시험을 활용한 이번 실험 역시 연구의 일환으로, 사용된 데이터는 약간의 가공을 거쳐 Huggingface에 공개할 예정입니다. Machine learning 분야에서 수학은 “논리적인 추론이 가능한가”를 평가하는 하나의 척도로 사용되곤 합니다. 앞으로 새롭게 등장할 인공지능이 대한민국의 수능에서는 과연 얼마나 좋은 모습을 보여줄 수 있을까요? 정확한 예측을 할 수는 없지만, 콴다팀이 거기에 크게 기여할 수 있기를 기대합니다.

Reference

[1] Training Verifiers to Solve Math Word Problems.
[2] Measuring Mathematical Problem Solving With the MATH Dataset.

🌏콴다 팀에서는 글로벌 Top AI Tutor를 함께 만들어 갈 AI Researcher를 찾고 있습니다!➡️ 공고 확인하기

--

--