LLM 추론 실패 Part 1: 구조적 한계 -- 스케일링으로 못 고친다

LLM 추론 실패 Part 1: 구조적 한계 -- 스케일링으로 못 고친다
LLM이 실패하는 이유를 분석하는 시리즈의 첫 번째 편입니다. 이번 글에서는 모델을 아무리 키워도, 데이터를 아무리 더 줘도 해결되지 않는 구조적(fundamental) 한계 세 가지를 다룹니다.
- Reversal Curse
- Counting Failures
- Compositional Reasoning Wall
이 실패들은 Transformer 아키텍처 자체에서 비롯됩니다. 프롬프트 엔지니어링이나 스케일링으로는 근본적으로 해결할 수 없습니다. Song, Han, Goodman (2025)의 서베이 논문을 바탕으로, 7개 모델을 직접 실험한 결과를 함께 정리합니다.
1. Reversal Curse
논문이 말하는 것
"A는 B다"를 학습한 모델이 "B는 A다"를 추론할 수 있을까? Song et al. (2025)는 이를 Reversal Curse라 부릅니다. Transformer의 next-token prediction(단방향 학습)은 "A → B" 방향의 가중치만 강화합니다. "B → A"는 별도로 학습하지 않으면 추론할 수 없습니다.
더 중요한 건, 이 문제가 Zipf의 법칙 때문에 스케일링으로 해결되지 않는다는 점입니다. 학습 데이터에서 "톰 크루즈의 어머니는 메리 리 파이퍼"라는 문장은 나올 수 있지만, "메리 리 파이퍼의 아들은 톰 크루즈"라는 문장은 훨씬 드뭅니다. 유명인의 이름이 주어일 때와 무명인의 이름이 주어일 때, 데이터 분포의 비대칭이 구조적으로 존재합니다.
직접 실험한 결과
테스트 1: 실제 지식 (파라메트릭 메모리)
정방향 질문: "Who is Tom Cruise's mother?"
역방향 질문: "Who is Mary Lee Pfeiffer's son?"
정방향은 전 모델이 정답입니다. 그런데 역방향에서 극적인 차이가 나타납니다.
Claude Haiku 4.5는 솔직하게 "모른다"고 답했습니다. 이건 어떤 면에서 가장 정직한 실패입니다. Gemini Flash는 "Joaquin Phoenix"라고 답했는데, 성씨가 Pfeiffer라서 Michelle Pfeiffer를 연상하고, 거기서 Joaquin Phoenix로 점프한 것으로 추정됩니다. Gemini Flash-Lite는 더 직접적으로 "Michelle Pfeiffer"라고 답해서, 성씨 매칭 휴리스틱을 사용하고 있음을 드러냈습니다.
이 두 모델의 실패는 단순한 오답이 아닙니다. 성씨 기반의 연상 오류(surname-based associative error)입니다. "Mary Lee Pfeiffer"라는 질문에서 모델은 "Pfeiffer"를 트리거로 가장 유명한 Pfeiffer인 Michelle Pfeiffer를 활성화시키고, 거기서 연관 인물(Joaquin Phoenix)로 점프합니다. 모델이 "모르겠다"고 답하지 않고 그럴듯한 이름을 생성하는 이 패턴은, LLM이 지식의 부재를 인식하지 못하고 가장 가까운 패턴으로 빈칸을 채우려는 경향 -- hallucination의 미시적 사례 -- 을 보여줍니다. Claude Haiku의 "I don't have reliable information"이 오히려 더 바람직한 실패 방식인 셈입니다.
이 결과가 보여주는 것: 대형 모델(GPT-4o, Claude Sonnet)은 톰 크루즈/메리 리 파이퍼 관계를 양방향으로 학습했을 가능성이 높습니다. 하지만 소형 모델이나 경량 모델에서는 Reversal Curse가 명확하게 관찰됩니다.
테스트 2: 가짜 사실 (In-Context / RAG 방식)
Reversal Curse가 정말 구조적인 문제라면, 컨텍스트에 직접 정보를 넣어주면 어떨까? 5개의 가짜 사실을 만들어서 프롬프트에 포함시킨 뒤, 정방향과 역방향 모두 테스트했습니다.
예시 사실:
- "Zephyr Kowalski invented the Heliotrope Engine in 1847"
- "The Crimson Lattice theory was proposed by Ondra Havel"
정방향: "Who invented the Heliotrope Engine?"
역방향: "What did Zephyr Kowalski invent?"
결과: 7개 모델 전부, 정방향과 역방향 모두 완벽하게 정답.
이것은 매우 중요한 발견입니다. RAG(Retrieval-Augmented Generation) 방식으로 관련 정보를 컨텍스트에 넣어주면, Reversal Curse가 완전히 사라집니다. 모델이 컨텍스트 윈도우 안에 있는 텍스트를 양방향으로 참조할 수 있기 때문입니다.
하지만 이것이 Reversal Curse가 "해결됐다"는 뜻은 아닙니다. 파라메트릭 메모리(모델 가중치에 저장된 지식)에서는 여전히 비대칭이 존재합니다. RAG는 반창고이지, 치료제가 아닙니다.
기술적 근본 원인
Transformer는 next-token prediction으로 학습합니다. 입력 시퀀스의 앞 토큰들로부터 다음 토큰을 예측하도록 가중치가 업데이트됩니다.
"톰 크루즈의 어머니는 메리 리 파이퍼다"라는 문장을 학습하면:
- "톰 크루즈의 어머니는" → "메리" (강화)
- "메리 리" → "파이퍼" (강화)
하지만 역방향 "메리 리 파이퍼의 아들은 톰 크루즈다"는 별도의 문장으로 학습하지 않으면 가중치에 반영되지 않습니다. 이것은 아키텍처의 근본적 특성입니다.
알려진 완화 방법
- RAG: 가장 효과적. 관련 정보를 컨텍스트에 넣어주면 역방향 추론이 가능해짐
- 양방향 사실 노출: 학습 데이터에 "A는 B다"와 "B는 A다"를 모두 포함
- 데이터 증강: 관계를 다양한 방향으로 표현한 학습 데이터 생성
- 그래프 구조 추론: 관계를 그래프로 표현하여 방향성 없이 탐색
2. Counting Failures
논문이 말하는 것
Song et al. (2025)는 문자 Counting과 산술 연산을 LLM의 구조적 한계로 분류합니다. "심지어 추론 특화 모델에서도 여전히 어렵다(challenging even for reasoning models)"고 명시합니다.
근본 원인은 tokenization입니다. LLM은 개별 문자가 아니라 서브워드 토큰 단위로 입력을 처리합니다. "strawberry"는 모델에게 str + aw + berry 같은 토큰 조각으로 보입니다. 개별 문자 'r'이 어디에 몇 개 있는지 직접 볼 수 없는 겁니다.
직접 실험한 결과
테스트 1: "How many r's in strawberry?"
GPT-4o만 2라고 답했습니다. 나머지 6개 모델은 모두 정답. 특히 추론 모델(o3-mini)과 최신 모델들은 내부적으로 문자를 하나씩 나열하는 워크어라운드를 사용하고 있는 것으로 보입니다.
하지만 이것이 진짜 "해결"인지는 의문입니다. 더 어려운 단어로 테스트해 봅시다.
테스트 2: "How many i's in supercalifragilisticexpialidocious?"
정답: 7개 (supercalifragilisticexpialidocious)
더 긴 단어에서는 GPT-4o와 GPT-4o-mini 모두 3이라고 답해 실패했습니다. 추론 모델인 o3-mini는 내부적으로 철자를 나열하며 풀어서 정답을 맞춥니다.
여기서 핵심 포인트: 추론 모델이 정답을 맞추는 방식은 "토큰화 한계를 극복한 것"이 아니라 "토큰화 한계를 우회한 것"입니다. 내부적으로 "s-u-p-e-r-c-a-l-i-..." 식으로 한 글자씩 나열하는 추가 연산을 수행합니다. 이것은 인간이 손가락으로 세는 것과 비슷한 워크어라운드입니다.
기술적 근본 원인
BPE(Byte Pair Encoding) 토큰화는 자주 등장하는 문자 조합을 하나의 토큰으로 합칩니다.
```
"strawberry" → ["str", "aw", "berry"] (토큰 3개)
```
모델은 이 3개의 토큰을 봅니다. 개별 문자 s, t, r, a, w, b, e, r, r, y를 직접 볼 수 없습니다. "r이 몇 개?"라는 질문에 답하려면 토큰을 다시 문자로 분해해야 하는데, 이것은 토큰화의 역과정이므로 모델이 자연스럽게 할 수 있는 작업이 아닙니다.
더 긴 단어일수록 토큰 수가 늘어나고, 각 토큰 내부의 문자 구성을 추적하기가 더 어려워집니다. 이것이 "strawberry"보다 "supercalifragilisticexpialidocious"에서 더 많이 실패하는 이유입니다.
알려진 완화 방법
- 문자 단위 토큰화: 토큰을 개별 문자로 분리 (하지만 시퀀스 길이 폭증)
- 추론 모델의 철자 나열: Chain-of-Thought로 문자를 하나씩 나열 (워크어라운드)
- 외부 도구 호출: Python 코드 실행 등 외부 도구에 문자 Counting을 위임
- 바이트 수준 모델: ByT5 같은 문자 단위 모델 사용
어느 방법도 완벽하지 않습니다. 문자 단위 토큰화는 시퀀스 길이 문제로 비실용적이고, 추론 모델의 워크어라운드는 추가 연산 비용이 들며, 외부 도구는 모델 자체의 능력이 아닙니다.
3. Compositional Reasoning
논문이 말하는 것
Song et al. (2025)는 LLM이 개별 사실은 알지만, 여러 단계를 거쳐 조합하는 데 실패한다고 지적합니다. 이를 Compositional Reasoning의 한계라 합니다. 핵심 문제는 LLM에 holistic planning 능력이 부족하고, compositionality이 피상적이라는 것입니다.
직접 실험한 결과
테스트 1: 1-hop (단일 단계)
질문: "What is the capital of Japan?"
전 모델 정답. 1-hop은 문제없습니다.
테스트 2: 2-hop (2단계 조합)
질문: "What is the population of Japan's capital?"
도쿄도(東京都)의 인구는 약 1,300~1,400만 명이므로 13 million과 14 million 모두 정답으로 인정합니다. GPT-4o는 도쿄 광역권(metropolitan area) 인구 3,700만을 답해 범위 오류를 보였고, o3-mini는 빈 응답을 반환했습니다. 나머지 5개 모델은 정답을 맞췄지만, 이 질문은 매우 유명한 사실의 조합이라 난이도가 낮습니다.
테스트 3: 3-hop (3단계 조합)
질문: "What is the tallest building in the capital city of the country that hosted the 2021 Summer Olympics?"
추론 경로: 2021 올림픽 개최국 → 일본 → 수도 → 도쿄 → 가장 높은 빌딩 → 아자부다이 힐스 모리 JP 타워 (325m) 또는 도쿄 스카이트리 (634m, 전파탑 포함 시)
대부분 정답이지만, "빌딩"의 정의에 따라 답이 갈립니다. Gemini Flash-Lite는 도쿄 타워라고 답해서 명확한 오류를 보였습니다. 3-hop부터 열화가 시작되는 것을 확인할 수 있습니다.
테스트 4: 2-hop + Distractors
프롬프트:
"France is famous for its wine production. Germany is known for its engineering excellence. Japan is the country whose currency is the Yen. What is the capital of the country whose currency is the Yen?"
핵심: 프랑스와 독일에 대한 정보는 방해 요소. 실제로 답해야 하는 건 "엔화를 사용하는 나라(일본)의 수도"입니다.
이 특정 케이스에서는 전 모델이 정답을 맞췄습니다. 하지만 방해 정보의 양과 질문의 복잡도를 높이면 성능이 급격히 떨어집니다. 특히 방해 정보가 질문과 의미적으로 유사한 경우(예: 여러 나라의 통화 정보를 나열한 뒤 특정 국가의 수도를 묻는 경우) 오답률이 크게 증가합니다.
기술적 근본 원인
Compositional Reasoning 실패의 근본 원인은 세 가지입니다.
1) 계획 능력의 부재: LLM은 다음 토큰 하나를 예측하는 방식으로 작동합니다. "3단계 뒤에 필요한 정보를 지금 준비해두자"라는 사전 계획을 할 수 없습니다. 각 토큰 생성 시점에서 가장 그럴듯한 다음 토큰을 선택할 뿐입니다.
2) 주의력 분산: Transformer의 어텐션 메커니즘은 컨텍스트 내 모든 토큰에 주의를 분배합니다. 방해 정보가 많아지면, 정작 중요한 정보에 할당되는 어텐션이 줄어듭니다. 이것이 방해 정보가 성능을 떨어뜨리는 직접적인 원인입니다.
3) 피상적 compositionality: 모델이 "일본의 수도의 인구"를 맞추는 것은, "일본-수도-도쿄"와 "도쿄-인구-1400만"이라는 두 지식 조각이 학습 데이터에서 자주 함께 등장했기 때문일 가능성이 높습니다. 진정한 조합적 추론이 아니라, 자주 나타나는 패턴의 매칭입니다. 학습 데이터에서 드문 조합일수록 실패율이 급격히 올라갑니다.
알려진 완화 방법
- Chain-of-Thought (CoT): 중간 단계를 명시적으로 작성하게 하면 성능 향상
- 단계별 분해: 복잡한 질문을 여러 하위 질문으로 나누어 순차적으로 풀기
- RAG: 각 단계에 필요한 사실을 검색하여 컨텍스트에 제공
- 그래프 기반 추론: 지식 그래프를 활용하여 관계 경로를 명시적으로 탐색
- 멀티 에이전트 토론: 여러 LLM 인스턴스가 서로의 추론을 검증
종합 분석
세 가지 실패를 관통하는 공통점이 있습니다.
모두 next-token prediction 아키텍처에서 비롯된다. Reversal Curse는 단방향 학습에서, Counting은 토큰화에서, Compositional Reasoning은 계획 없는 순차 생성에서 나옵니다. 이들은 모두 "다음 토큰 하나를 예측한다"는 Transformer의 근본 설계에 뿌리를 두고 있습니다.
스케일링은 답이 아니다. GPT-4o 같은 초대형 모델도 Counting에서 실패하고, Reversal Curse가 관찰됩니다. 모델 크기를 키우면 학습 데이터의 커버리지가 넓어져서 일부 케이스가 해결되는 것처럼 보이지만, 구조적 한계 자체는 그대로입니다.
워크어라운드는 가능하지만, 근본 해결은 아니다. RAG로 Reversal Curse를 우회하고, CoT로 Counting을 우회하고, 단계별 분해로 Compositional Reasoning을 우회할 수 있습니다. 하지만 이들은 모두 추가 비용을 수반하며, 특정 조건에서만 작동합니다.
다음 편 예고
Part 2에서는 인지 편향(Cognitive Biases)을 다룹니다. Anchoring Bias, Order Bias, Sycophancy, Confirmation Bias -- RLHF와 편향된 학습 데이터에서 비롯된, 개선 가능하지만 현재 모든 모델에서 관찰되는 실패들입니다.
시리즈 목차
- 개요: LLM이 정말 똑똑할까요? AI 추론 실패 완전 가이드
- Part 1: Structural Limitations -- Reversal Curse, Counting, Compositional Reasoning (현재 글)
- Part 2: Cognitive Biases -- Anchoring, Order Bias, Sycophancy, Confirmation Bias
- Part 3: Common Sense & Cognition -- Theory of Mind, Physical Common Sense, Working Memory
- 노트북: 전체 실험 코드 (Jupyter Notebook)
참고 문헌: Song, P., Han, P., & Goodman, N. (2025). Large Language Model Reasoning Failures. Transactions on Machine Learning Research (TMLR), 2026.