차례로 이어지는 규칙, 여러 단계를 묶어 푸는 추론
기호와 구조와 개념을 단계별로 엮어 푸는 다단계 규칙 연결 틀을 Solver 1부터 3까지의 흐름과 폴백 구조, ARC-AGI-2 수치의 조건 중심으로 읽는다.
원문 논문 보기
A Multi-Stage Rule-Chaining Framework for Compositional and Interpretable Cognitive Reasoning은 arXiv에 공개된 연구로 arXiv 번호 2609.10654로 등록되어 있습니다. 원문 링크는 제목 아래에 걸어두었습니다.
이 연구가 내세우는 주장은 하나의 문장으로 정리됩니다. 기호와 구조와 개념 수준에 걸친 합성 추론을 여러 단계의 규칙 연결로 나누어 풀면, 과제별 조율 없이도 사람이 따라갈 수 있는 형태로 일반화를 끌어올 수 있다는 것입니다. 이 글에서는 그 문제의식에서 출발해 세 개의 Solver가 일하는 방식과 차례로 물러서는 폴백 구조, 그리고 보고된 수치가 말하는 것과 말하지 않는 것을 차례로 따라갑니다.
안녕하세요, 패트릭 입니다.
제가 이 논문을 집어 든 이유는 제목에 들어 있는 단어 때문이 아니라, 요즘 계속 마음에 걸리던 장면 때문입니다. 모델이 답은 곧잘 맞히는데, 왜 그렇게 풀었는지 물으면 설명이 흐려지는 그 장면이죠. 여러분도 비슷한 경험을 해보셨을 텐데, 데모에서는 그럴듯해 보이던 결과가 조건을 조금만 바꾸면 맥없이 무너지는 경우가 대표적입니다. 그렇다면 답을 맞히는 일과 이유를 따라갈 수 있게 푸는 일은 어떻게 다를까요. 오늘은 Abstraction and Reasoning Corpus, 즉 ARC라는 오래된 시험대를 다시 꺼내 든 한 연구를 통해 그 차이를 함께 살펴보겠습니다.
왜 외운 답은 처음 보는 문제 앞에서 멈출까
ARC라는 시험은 처음 보면 장난처럼 보입니다. 작은 색깔 격자 몇 개가 입력으로 주어지고, 그 규칙을 알아내 빈 격자를 채우면 되니까요. 그런데 막상 풀어보면 이 시험이 꽤 짓궂다는 것을 알게 됩니다. 외워둘 문제가 없기 때문입니다. 매번 규칙이 새로 나오는데 예시는 두세 개뿐이라, 그 적은 단서로 보이지 않는 규칙을 찾아내야 하죠.
생각해보면 사람도 비슷하게 배웁니다. 자전거를 배울 때 넘어지는 법부터 몸으로 익히듯이, 적은 예시에서 통하는 감각을 뽑아내기 때문입니다. 그런데 많은 모델은 반대 방향으로 배웠습니다. 방대한 예시를 보고 패턴을 외우는 데에는 능숙하지만, 두세 개의 예시에서 처음 보는 규칙을 꺼내는 데에는 서툴렀죠. 그래서 ARC는 오랫동안 모델의 체면을 구기는 시험으로 남았습니다. 점수가 아니라 이해를 묻기 때문입니다.
저는 이 지점에서 논문의 문제의식이 정확하다고 봅니다. 저자들이 말하는 인지적 일반화라는 것이 결국 처음 보는 규칙을 적은 예시에서 찾아내는 능력이기 때문입니다. 그런데 여기서 재미있는 질문이 생깁니다. 처음 보는 규칙을 찾으려면 모델이 무엇을 달리해야 할까요. 더 크게 외우면 될까요, 아니면 푸는 순서를 달리해야 할까요. 이 논문은 두 번째 답을 고릅니다. 한 번에 맞히는 대신 단계를 나누어 풀겠다는 것이죠.
한 번에 맞히는 대신 차례로 묻는다는 것은 무슨 뜻일까
이 연구가 제안하는 틀은 이름 그대로 여러 단계의 규칙 연결입니다. 기호 수준과 구조 수준과 개념 수준이라는 서로 다른 층위의 판단을 한 모델이 한 번에 처리하지 않고, 세 개의 풀이 단계가 차례로 이어받도록 나누었다는 데에 의미가 있습니다. 앞 단계가 만든 흔적은 다음 단계로 넘어가고, 뒤 단계는 그 흔적을 다시 쓰면서 자신의 판단을 덧붙이죠.
이 장치를 공장에 비유해볼 수 있는데, 한 명의 장인이 처음부터 끝까지 만드는 대신 세 명의 장인이 순서대로 손을 대는 셈이기 때문입니다. 첫 번째 장인이 재료의 결을 읽으면, 두 번째 장인은 조각을 맞추고, 세 번째 장인은 전체 짜임을 확인하는 식입니다. 물론 실제 공장처럼 완전히 독립된 구조는 아닙니다. 앞사람의 메모가 다음 사람의 작업대 위에 그대로 놓여 있기 때문입니다. 그래서 저는 이 구조를 분업이라기보다 이어달리기에 가깝다고 봅니다. 바통이 아니라 메모를 넘기는 이어달리기 말이죠.
문제는 그다음입니다. 단계를 나눈다는 말이 말처럼 쉽지 않기 때문입니다. 자칫하면 단계만 늘어나고 책임만 흩어질 수 있습니다. 어느 단계에서 틀렸는지 알 수 없으면, 나누기 전보다 디버깅이 더 어려워지기 때문입니다. 그래서 단계를 나눈 연구는 항상 같은 질문을 받습니다. 각 단계가 정확히 무엇을 맡았고, 그 단계가 실패하면 다음 단계는 어떻게 아는가 하는 질문입니다. 다행히 이 논문은 그 질문에 답할 준비를 하고 있습니다. 세 Solver의 역할이 비교적 또렷하게 갈리기 때문인데요.
가장 먼저 원자 규칙을 꺼내는 손은 무엇을 볼까
첫 번째 Solver는 결정적인 규칙 발견 모듈로 소개됩니다. 여기서 결정적이라는 말은 운에 맡기지 않는다는 뜻에 가깝습니다. 확률적으로 찍는 대신, 격자 안에서 반복적으로 확인되는 변환을 원자 규칙이라는 작은 단위로 꺼내놓기 때문입니다. 기하와 색과 물체라는 세 가지 눈으로 격자를 본다고 이해하면 되는데요.
기하라는 눈은 도형이 어떻게 움직였는지를 봅니다. 뒤집혔는지, 돌아갔는지, 커졌는지 작아졌는지를 따지기 때문입니다. 색이라는 눈은 색깔이 바뀐 자리를 보는데, 어떤 색이 어떤 조건에서 다른 색으로 바뀌었는지를 세는 방식이라 단순히 색을 세는 것이 아니라 바뀌는 조건을 함께 읽습니다. 그리고 물체라는 눈은 격자 안에서 뭉쳐 다니는 덩어리를 찾습니다. 색이 이어진 칸들을 하나의 물체로 묶고, 그 물체가 어디로 갔는지를 쫓는 것이죠.
월요일 아침에 퍼즐을 푸는 장면을 떠올려보겠습니다. 예시 격자 두 개를 나란히 놓고 눈을 좁히면, 파란 막대가 오른쪽으로 한 칸씩 밀려 있다는 것이 보이기 시작합니다. 그런데 자세히 보니 파란 막대만 움직인 것이 아니라, 빨간 점이 파란 막대에 닿으면 노란색으로 바뀝니다. 저는 이 대목에서 첫 번째 Solver의 성격을 이해했습니다. 한 번에 전체 답을 쓰지 않고, 밀기라는 움직임과 닿으면 바뀌기라는 조건을 따로 적어두기 때문입니다. 이렇게 적어둔 작은 규칙들이 뒤 단계의 재료가 되죠.
그렇다면 이 단계만으로 답이 나올까요. 쉬운 문제에서는 그럴 수도 있겠죠. 그런데 규칙이 하나로 끝나지 않으면 이야기가 달라집니다. 움직임과 색 변화가 겹치거나, 여러 물체가 서로 다른 방향으로 움직이면, 작은 규칙들을 어떻게 묶을지가 남기 때문입니다. 그래서 다음 손이 필요해지는데, 저는 이 지점에서 논문의 순서 감각이 좋다고 봤습니다.
흩어진 조각을 다시 맞추는 손은 어떻게 일할까
두 번째 Solver는 패턴 합성 엔진으로 소개됩니다. 첫 번째 단계가 작은 규칙들을 꺼내놓는 일이라면, 이 단계는 그 규칙들을 가지고 출력 격자를 다시 지어 올리는 일을 맡기 때문입니다. 블록을 합치고, 반복을 찾고, 공간적인 어림짐작을 동원해 빈칸을 채우는 식이죠.
여기서 블록 합치기라는 말은 생각보다 직관적입니다. 예시에서 쪼개져 있던 조각들이 출력에서는 하나의 덩어리로 합쳐지는 경우가 있기 때문입니다. 반복 찾기 역시 비슷한데, 같은 무늬가 가로로 세 번, 혹은 세로로 두 번 이어지는 장면을 떠올리시면 됩니다. 그리고 공간 어림짐작이라는 것은 거창한 말이 아니라, 대칭을 맞추거나 빈 곳을 메우는 일상의 감각에 가깝습니다. 퍼즐을 맞출 때 모서리부터 채우는 것처럼요.
이 과정을 이삿짐 정리에 비유해볼 수 있습니다. 첫 번째 손이 상자에 옷과 책과 그릇을 따로 담아 라벨을 붙여두었다면, 두 번째 손은 새집 구조를 보고 상자를 어디에 풀지를 정하기 때문입니다. 옷은 안방에, 책은 서재에 두듯이, 각 규칙이 격자의 어디에 들어가야 할지를 정하는 셈입니다. 그런데 상자 라벨이 틀렸으면 어떻게 될까요. 옷 상자에 그릇이 들어 있었다면, 아무리 정리를 잘해도 새집은 어긋나죠. 그래서 두 번째 단계의 성패는 첫 번째 단계의 메모 품질에 묶여 있습니다. 저는 그래서 이 구조를 낙관적으로만 읽지 않았습니다. 앞에서 틀리면 뒤에서도 틀리기 쉬운 구조이기 때문입니다.
다만 논문이 말하는 대로 이 단계가 앞 단계의 흔적을 그대로 쓴다는 점은 분명한 장점입니다. 흔적이 남아 있으면 어디서 어긋났는지를 물을 수 있기 때문입니다. 저는 이 숫자보다 그 뒤의 구조가 더 중요하다고 봅니다. 합성이라는 말 자체보다, 합성에 쓰인 재료가 어디에서 왔는지 추적할 수 있다는 점이 이 구조의 진짜 값이기 때문입니다.
격자 너머의 짜임을 읽는 눈은 왜 필요할까
세 번째 Solver는 구조적 추상화 층으로 소개됩니다. 앞에서 기하와 색과 조각을 다루었다면, 여기서는 격자 안에 겹겹이 들어 있는 관계를 읽기 때문입니다. 어느 덩어리가 어느 덩어리 안에 들어 있는지, 전체와 부분이 어떻게 맞물리는지를 보는 것이죠.
이 단계가 필요한 이유는 문제의 층위가 달라지기 때문입니다. 어떤 ARC 문제는 칸을 옮기는 것으로 풀리지 않습니다. 규칙 자체가 한 겹이 아니라 여러 겹으로 되어 있기 때문입니다. 바깥 상자 안의 안쪽 상자, 그 안의 점 같은 장면을 떠올려보시면 됩니다. 바깥 상자가 커지면 안쪽 점의 위치도 함께 바뀌는데, 이런 문제는 칸 단위로 보면 규칙이 안 보이고 짜임 단위로 보면 비로소 보이죠.
러시아 인형을 생각하면 이해가 쉽습니다. 가장 큰 인형 안에 중간 인형이 있고, 그 안에 작은 인형이 들어 있는 것처럼요. 가장 작은 인형만 보면 전체 규칙을 알 수 없고, 인형들이 서로를 품는 방식을 봐야 이해가 되기 때문입니다. 세 번째 Solver가 맡은 일이 바로 그 품는 방식을 읽는 일입니다. 앞의 두 단계가 눈앞의 움직임을 쫓았다면, 이 단계는 한 걸음 물러서서 전체 구성을 보는 셈이죠.
여기서는 조금 조심해서 읽을 필요가 있습니다. 구조를 본다는 말이 자칫 모든 문제를 추상적으로 푼다는 뜻으로 들릴 수 있기 때문입니다. 그런데 논문이 설명하는 순서를 보면 그렇지 않습니다. 세 번째 단계는 처음부터 나서는 것이 아니라, 앞의 두 단계가 답을 내지 못했을 때 비로소 불려 나오는 위치에 있기 때문입니다. 저는 이 배치가 솔직하다고 봤습니다. 어려운 도구를 먼저 꺼내지 않고, 쉬운 도구로 안 될 때만 꺼내기 때문입니다. 그렇다면 그 차례 정하기는 어떻게 이루어질까요. 그 이야기가 다음 장면으로 이어집니다.
앞에서 막히면 뒤가 이어받는 순서는 어떻게 정해질까
세 Solver는 나란히 놓고 투표하는 방식이 아니라 차례로 이어받는 폴백 계층 안에서 움직입니다. 먼저 첫 번째 단계가 시도하고, 그 결과가 충분하지 않으면 두 번째 단계가 앞의 흔적을 들고 이어받고, 그래도 모자라면 세 번째 단계가 다시 그 흔적을 들고 나서기 때문입니다.
이 흐름에서 제가 가장 흥미롭게 본 부분은 흔적을 버리지 않는다는 점입니다. 각 단계는 자신의 판단만 남기는 것이 아니라, 이전 단계가 무엇을 보고 무엇을 놓쳤는지를 함께 넘겨받기 때문입니다. 그래서 뒤 단계는 빈손으로 시작하지 않습니다. 앞 단계가 어디까지 왔는지를 보고, 그다음 질문을 던질 수 있습니다. 마치 병원에서 진료 기록을 넘겨받는 것처럼요. 처음 본 의사가 남긴 메모가 다음 의사의 진료를 빠르게 만드는 셈입니다.
그런데 여기서 되묻고 싶어집니다. 충분하지 않다는 것은 누가 어떻게 판단할까요. 예시 격자에 대입했을 때 들어맞는지로 판단하는 것이 가장 자연스럽겠지만, 예시가 두세 개뿐인 ARC에서는 그 판단 자체가 흔들릴 수 있습니다. 예시에 우연히 들어맞는 규칙이 정답이 아닐 수도 있기 때문입니다. 논문이 이 판단의 세부 기준을 얼마나 단단하게 세웠는지는 주어진 자료만으로는 끝까지 확인하기 어렵습니다. 저는 이 대목을 이 틀의 허리라고 봅니다. 폴백이라는 말이 그럴듯하게 들리지만, 실제로는 언제 물러서고 언제 이어받을지를 정하는 문턱값이 전체 성패를 쥐기 때문입니다.
그럼에도 이 설계가 주는 감각은 분명합니다. 한 번의 판단에 모든 것을 걸지 않고, 실패를 다음 단계의 재료로 쓰기 때문입니다. 실패를 숨기지 않고 기록으로 남긴다는 점에서, 이 구조는 해석 가능성이라는 약속과 직접 연결되죠.
흔적을 남기는 일이 해석 가능성과 어떻게 이어질까
이 논문이 내세우는 또 하나의 약속은 사람이 따라갈 수 있는 추상화입니다. 합성 추론이라는 말이 자칫 추상적으로 들리지만, 여기서는 비교적 구체적인 뜻으로 쓰이기 때문입니다. 작은 규칙들을 묶어 더 큰 규칙을 만들고, 그 묶는 과정을 밖에서 볼 수 있게 남긴다는 의미입니다.
저희가 새로운 AI 아키텍처를 볼 때도 benchmark 숫자만 보지는 않습니다. 실제로 무엇이 바뀌었고, 그 변화가 시스템에서 어떤 비용 구조를 만드는지를 함께 보기 때문입니다. 같은 태도로 이 논문을 보면, 흔적을 남긴다는 설계가 운영의 언어로 번역됩니다. 어느 단계에서 어떤 규칙이 선택됐는지를 보여줄 수 있으면, 틀렸을 때 어디를 고쳐야 할지도 물을 수 있기 때문입니다. 검은 상자 하나가 틀렸다는 말과, 두 번째 단계의 합성에서 블록 경계를 잘못 읽었다는 말은 고치는 방법이 완전히 다르죠.
물론 흔적이 남는다고 해서 곧바로 이해가 되는 것은 아닙니다. 기록이 길어지면 오히려 읽기 어려워질 수 있기 때문입니다. 진짜 질문은 기록의 길이가 아니라 기록의 층위입니다. 기하와 색과 물체라는 눈으로 나눈 기록은 사람이 평소에 퍼즐을 볼 때 쓰는 말과 가깝습니다. 뒤집혔다, 합쳐졌다, 안에 들어 있다는 말은 엔지니어가 아니어도 따라갈 수 있죠. 저는 이 대목에서 논문이 말하는 사람과 정렬된 추상화라는 표현을 곧이곧대로 받아들이기보다, 기록의 말이 일상과 가깝다는 정도로 읽는 편이 맞다고 봤습니다.
그렇다면 흔적은 어디까지 믿을 수 있을까요. 모델이 답을 맞힌 뒤에 그럴듯한 이유를 덧붙인 것인지, 아니면 그 이유로 답을 만든 것인지가 남기 때문입니다. 논문이 말하는 흐름은 후자에 가깝습니다. 규칙을 먼저 꺼내고 그 규칙으로 격자를 짓는 순서이기 때문입니다. 이 순서를 지키는 한, 흔적은 사후 변명이 아니라 작업 일지에 가깝습니다. 다만 이 순서를 바깥에서 검증할 방법은 주어진 자료만으로는 제한적입니다. 그래서 숫자를 볼 때도 같은 태도가 필요합니다. 숫자보다 먼저 조건을 읽어야 하죠.
보고된 숫자를 그대로 믿기 전에 무엇을 물어야 할까
논문에서 전해진 수치는 겉으로 보면 꽤 시원합니다. 학습 구간에서 1000개 가운데 995개를 통과했고, ARC-AGI-2의 시험 구간에서는 240개 가운데 230개를 풀었다고 합니다. 여기에 더해 120개 가운데 105개를 따로 평가해 전체 정확도가 95퍼센트를 넘었다는 대목도 있습니다. 같은 모델에 같은 질문을 던져도 결과가 크게 달라질 수 있다는 것을 경험으로 알고 있기에, 저는 이 숫자를 보자마자 곧바로 해석을 시작하기보다 먼저 조건을 묻는 쪽을 택했습니다.
먼저 학습 구간 995라는 숫자는 성격이 다릅니다. 학습이라는 말은 규칙을 익히는 구간에 가깝고, 시험이라는 말은 처음 보는 문제에 가깝기 때문입니다. 학습 구간에서 거의 다 맞혔다는 것은 틀의 표현력이 넓다는 뜻으로는 읽을 수 있지만, 일반화를 증명하는 뜻으로는 그대로 읽기 어렵습니다. 진짜 시험은 처음 보는 문제에서 치러지니까요. 그래서 저는 995보다 230이라는 숫자에 더 오래 머물렀습니다. 240개 가운데 230개라면 비율로는 95퍼센트를 훌쩍 넘는 셈인데, ARC 계열 시험의 악명을 생각하면 쉽게 넘길 숫자가 아니니까요.
그런데 여기서 다음 질문이 바로 생깁니다. 240개는 전체 시험을 대표할까요. 주어진 자료만으로는 그 240개가 어떻게 골라졌는지를 알기 어렵습니다. 무작위로 뽑은 것인지, 특정 유형을 모은 것인지에 따라 숫자의 뜻이 달라지기 때문입니다. 120개 가운데 105개라는 별도 평가도 마찬가지입니다. 105를 120으로 나누면 87.5퍼센트인데, 전체 정확도가 95퍼센트를 넘었다는 서술과 나란히 놓으면 계산이 곧바로 맞아떨어지지 않습니다. 아마도 평가 구간이나 가중치를 달리한 서술일 텐데, 주어진 요약만으로는 그 내역을 확정하기 어렵습니다. 저는 그래서 이 숫자를 실패로 읽지 않고, 조건을 더 물어야 하는 숫자로 읽었습니다.
(참고로 ARC 계열 시험은 버전마다 문제 구성과 채점 방식이 조금씩 달라서, 숫자를 옮겨 적을 때 분모가 무엇인지가 특히 중요하다고 합니다.)
이 대목에서 논문을 깎아내리고 싶은 것은 아닙니다. 오히려 반대입니다. 숫자가 크면 클수록 분모와 절차를 함께 봐야 하기 때문입니다. 저는 이 숫자보다 그 뒤의 구조가 더 중요하다고 봅니다. 230이라는 결과가 폴백의 어느 단계에서 주로 나왔는지, 쉬운 문제는 앞에서 끝났고 어려운 문제만 뒤로 갔는지가 밝혀지면, 숫자는 점수가 아니라 설계의 증거가 되기 때문입니다.
과제별 조율 없이 풀었다는 말은 어디까지 닿을까
논문은 이 틀이 과제별 조율에 기대지 않았다고 말합니다. 다시 말해 문제마다 따로 손보지 않았다는 의미입니다. 이 서술이 중요한 이유는 ARC의 취지와 맞닿아 있기 때문입니다. 문제마다 따로 고치면 그 문제는 풀리겠지만, 처음 보는 문제를 푸는 능력이라고 부르기는 어렵기 때문입니다.
이 말을 일상의 장면으로 옮겨보면, 시험 전날 족보를 외우는 것과 처음 보는 문제를 푸는 것의 차이와 비슷합니다. 족보를 외우면 그 시험에서는 점수가 잘 나오지만, 문제가 바뀌면 다시 외워야 하죠. 반면 푸는 법을 익히면 문제가 바뀌어도 따라갈 수 있습니다. 논문이 말하는 조율 없음은 후자에 가깝습니다. 문제마다 답지를 고치는 대신, 문제를 푸는 순서를 고정해두었기 때문인데요.
여기서 실제 시스템 관점에서 보면 다음 질문이 바로 생깁니다. 조율이 없다는 것은 정말 손을 대지 않았다는 뜻일까요, 아니면 손대는 방식을 틀 안에 미리 넣어두었다는 뜻일까요. 세 Solver의 역할 나누기와 폴백 순서 자체가 일종의 사전 설계이기 때문입니다. 문제마다 고치지 않는 대신, 문제를 푸는 틀을 미리 정해둔 셈이죠. 저는 이 차이를 부인하고 싶지 않습니다. 미리 정해둔 틀이 넓게 통하면 그것도 일반화의 한 형태이기 때문입니다. 다만 그 틀을 정할 때 ARC의 성격을 어느 정도 염두에 두었을지는 물을 수 있습니다. 격자와 색과 물체라는 눈 자체가 ARC의 생김새와 잘 맞물리기 때문입니다.
그래서 저는 이 주장을 절반의 신뢰로 읽었습니다. 과제별 조율 없이 풀었다는 말을 문자 그대로 믿기보다, 조율의 위치가 문제별 손질에서 틀 설계로 옮겨갔다고 읽었기 때문입니다. 이렇게 읽으면 다음 질문도 자연스럽습니다. 격자가 아닌 문제로 가면 이 틀은 어떻게 될까요. 언어나 계획 문제에서도 같은 세 단계가 통할까요. 주어진 자료는 그 답까지 주지 않습니다. 다만 기호와 구조와 개념을 나누어 잇는다는 생각 자체는 격자 바깥에서도 써먹을 수 있는 뼈대라고 봅니다.
다음에 제가 보고 싶은 장면들
여기까지 읽고 나면 남는 질문이 있습니다. 이 흐름은 어디까지 이어질 수 있을까요. 저는 크게 세 가지 장면이 궁금합니다.
첫째는 단계별 기여를 나눈 기록입니다. 240개 가운데 230개라는 결과가 어느 단계에서 나왔는지를 보고 싶습니다. 쉬운 문제는 첫 번째 손에서 끝났는지, 어려운 문제는 세 번째 눈까지 갔는지가 궁금하기 때문입니다. 만약 대부분의 문제가 첫 단계에서 풀렸다면, 이 틀의 진짜 힘은 뒤 단계가 아니라 앞 단계의 눈썰미에 있는 셈입니다. 반대로 뒤 단계로 갈수록 어려운 문제가 풀렸다면, 폴백이라는 설계가 값을 한 것입니다. 숫자를 나누어 보여주는 것만으로도 해석의 결이 달라질 텐데요.
둘째는 틀린 문제의 얼굴입니다. 240개 가운데 풀지 못한 10개, 그리고 1000개 가운데 통과하지 못한 5개가 어떤 문제였는지가 궁금합니다. 규칙이 겹겹이 꼬인 문제였는지, 예시 자체가 모호했던 문제였는지를 보면 이 틀의 경계가 드러나기 때문입니다. 실패를 보면 설계자의 다음 수가 보이기도 합니다. 흔적을 남기는 구조라면 실패한 흔적 역시 남을 텐데, 그 흔적을 공개하면 바깥에서도 어디를 고쳐야 할지 물을 수 있습니다.
셋째는 격자 바깥의 시험입니다. 기호와 구조와 개념을 잇는다는 생각은 격자에만 묶일 이유가 없습니다. 같은 뼈대로 다른 종류의 합성 문제를 풀면 어떻게 될까요. 저는 앞으로 이 틀을 볼 때 점수보다 이 뼈대의 이동 가능성을 보고 싶습니다. 한 시험에서 이긴 설계와 여러 시험에서 통하는 설계는 다르기 때문입니다.
답보다 푸는 순서를 남기는 쪽으로
처음으로 돌아가 보겠습니다. 저는 이 논문을 답을 잘 맞히는 기술로 읽지 않았습니다. 푸는 순서를 정해두고, 그 순서를 다른 사람도 따라갈 수 있게 남기려는 시도로 읽었기 때문입니다. 작은 규칙을 먼저 꺼내고, 그 규칙으로 격자를 다시 짓고, 그래도 안 되면 짜임을 다시 보는 순서 말입니다. 표면적으로 보면 단순합니다. 실제로는 그렇지 않습니다. 순서를 정한다는 것은 실패했을 때 어디로 돌아갈지를 정한다는 뜻이기 때문입니다.
다행히 막는 방법만큼 단순한 처방은 여기에도 있습니다. 답이 맞았는지만 묻지 말고, 어느 단계에서 어떤 규칙으로 맞혔는지를 함께 물어야 합니다. 그렇게 물으면 점수는 하나가 아니라 셋으로 갈라집니다. 앞 단계의 눈썰미와 중간 단계의 합성과 뒤 단계의 짜임 읽기가 각각 드러나기 때문입니다. 앞으로 모델이 더 어려운 합성 문제를 풀수록, 개별 모델 하나가 답을 맞히는지만 보는 것을 넘어 푸는 순서가 남는지를 함께 살펴봐야 할 것 같습니다.
그렇다면 사람의 역할은 무엇일까요. 저는 이 질문을 열린 채로 두고 싶습니다. 답을 맞히는 일이 기계에 넘어갈수록, 사람이 할 일은 답을 고르는 일이 아니라 푸는 순서를 묻는 일이 되기 때문입니다. 어떤 규칙을 먼저 꺼냈는지, 왜 그 순서로 이었는지를 묻는 일 말입니다. 이 논문이 남긴 가장 좋은 장면도 결국 그 질문 앞이라고 봅니다.