STaR, V-STaR, Quiet-STaR — 자기학습 추론(Self-Taught Reasoning)
가능한 한 가장 작은 자기 개선(Self-Improvement) 루프는 근거(Rationale) 안에 자리합니다. 모델이 사고 사슬(Chain of Thought; CoT)을 생성하고, 그중 정답에 도달한 것만 남긴 뒤, 그 데이터를 가지고 다시 미세 조정(Fine-Tune)합니다. 이것이 바로 STaR입니다. V-STaR는 검증기(Verifier)를 추가해 추론 시점(Inference-Time) 선택 품질을 끌어올립니다. Quiet-STaR는 근거 생성을 모든 토큰 단위로 밀어 넣습니다. 셋 다 실제로 동작합니다. 다만 어느 쪽도 마법은 아닙니다. 이 루프는 우연히 정답에 도달한 지름길(Shortcut)까지 함께 보존해 버립니다.
유형: Learn
언어: Python (stdlib, bootstrap 루프 시뮬레이터)
선수 학습: Phase 13 · 01-03 (추론과 사고 사슬; Reasoning and CoT), Phase 15 · 01 (장기 과업 설계; long-horizon framing)
소요 시간: 약 60분
문제
모델에게 추론을 가르치는 가장 직관적인 방법은, 사람이 직접 작성한 추론 흔적(Reasoning Traces)을 모아 학습 데이터로 쓰는 것입니다. 그러나 이 방식은 비싸고 느리며, 사람이 고품질 사고 사슬을 얼마나 작성해 줄 수 있느냐에 따라 상한선이 정해집니다.
STaR(Self-Taught Reasoner, Zelikman et al., 2022)는 이렇게 묻습니다. 모델이 자기 근거를 직접 작성하게 하고, 이미 알려진 정답으로 채점하면 어떨까요? 루프는 다음과 같이 구성됩니다.
- 추론 흔적과 답을 함께 샘플링합니다.
- 최종 답이 맞으면 그 흔적을 보관합니다.
- 보관한 흔적으로 모델을 미세 조정(Fine-Tune)합니다.
- 위 과정을 반복합니다.
실제로 동작합니다. GSM8K와 CommonsenseQA 모두에서, 사람이 새로 작성한 주석 없이도 성능이 개선되었습니다. 하지만 이 루프에는 내장된 편향이 있습니다. 정답을 만들어 낸 근거라면, 그 추론 자체가 타당한지와 무관하게 모두 보존됩니다. V-STaR(Hosseini et al., 2024)는 학습된 검증기를 도입해 이 문제를 보완하고, Quiet-STaR(Zelikman et al., 2024)는 같은 아이디어를 토큰별 내부 근거(per-token internal rationales)로 일반화합니다.
개념
STaR: 잘 작동한 것 위에서 부트스트랩(Bootstrap)하기
약한 추론 능력을 가진 기반 모델(Base Model)에서 출발합니다. 각 학습 문제마다 근거와 답을 함께 샘플링합니다. 답이 정답 레이블(Label)과 일치하면 (problem, rationale, answer) 세 쌍(Triple)을 보관합니다. 보관한 데이터 집합으로 모델을 미세 조정한 뒤, 이 과정을 반복합니다.
중요한 변형이 하나 있습니다. 모델이 어떤 문제도 풀어 내지 못한다면, 그 문제로부터는 아무것도 배울 수 없습니다. STaR는 이를 해결하기 위해 합리화(Rationalization) 단계를 추가합니다. 모델이 실패한 문제에 대해서는 정답을 힌트로 주입하고, 그 답으로 이어지는 근거를 다시 생성하도록 합니다. 이렇게 만들어진 합리화된 근거(Rationalized Rationale)도 학습 집합에 함께 추가됩니다.
원 논문(Zelikman et al., 2022)의 결과는 다음과 같습니다. GPT-J 기반 모델은 합리화를 포함한 STaR 반복 라운드를 거치면서 GSM8K에서 정확도가 5.8%에서 10.7%로 올라갔습니다. 절대값으로 약 5%포인트(percentage points; %p) 개선입니다. CommonsenseQA에서는 STaR로 학습한 GPT-J 6B가 72.5%에 도달했고, 이는 사람이 직접 주석한 근거로 미세 조정한 GPT-3 175B(약 73%)와 비슷한 수준입니다. 약 30배 더 큰 모델에 필적하는 성능을 낸 셈입니다.
V-STaR: 직접 선호 최적화(DPO)로 검증기 학습하기
STaR는 틀린 근거를 그대로 버립니다. 그러나 Hosseini et al.(2024)은 틀린 근거도 데이터가 된다는 점을 지적합니다. (근거, "이것이 맞는가") 형태의 모든 쌍은 검증기를 학습하는 데 사용할 수 있습니다. 이들은 직접 선호 최적화(Direct Preference Optimization; DPO)를 정답 풀이와 오답 풀이(Solution) 양쪽에 적용해 순위 매김 모델(Ranker)을 만듭니다. 추론 시점에는 한 문제에 대해 N개의 근거를 샘플링한 뒤, 검증기가 가장 높게 평가한 근거를 골라 답을 채택합니다.
보고된 차이는 GSM8K와 MATH에서 기존 자기 개선 기준선(Self-Improvement Baseline) 대비 +4에서 +17%p입니다. 이득의 대부분은 생성기를 추가로 미세 조정한 데서 나온 것이 아니라, 검증기를 추론 시점 선택에 활용한 데서 발생했습니다.
Quiet-STaR: 토큰별 내부 근거
Zelikman et al.(2024)은 이렇게 묻습니다. 모델이 문제와 답 사이에서만 근거를 만드는 것이 아니라, 매 토큰 위치마다 짧은 내부 근거를 만들도록 학습하면 어떨까요? Quiet-STaR는 모델이 예측할 토큰 앞마다 숨겨진 "생각(Thought)"을 먼저 내보내도록 학습한 뒤, 학습된 가중치(Mixing Weight)를 사용해 생각을 반영한 예측(Thought-Aware Prediction)과 기본 예측(Baseline Prediction)을 섞습니다.
결과는 다음과 같습니다. Mistral 7B는 과제별 미세 조정 없이도 제로샷(Zero-Shot) 평가에서 GSM8K 정확도가 5.9%에서 10.9%로, CommonsenseQA는 36.3%에서 47.2%로 절대 개선되었습니다. 모델은 "언제 더 생각해야 하는지"를 배웠습니다. 어려운 토큰에는 더 긴 내부 근거가 붙고, 쉬운 토큰에는 거의 붙지 않습니다.
세 방법이 공유하는 안전 우려
세 방법 모두 최종 답을 학습 신호(Gradient Signal)로 사용합니다. 잘못된 추론, 지름길 활용, 일반화되지 않는 패턴을 통해 정답에 도달한 근거조차 모두 양의 방향으로 강화됩니다. 분포 안(in-distribution) 문제에서는 지름길도 잘 통합니다. 분포 밖(out-of-distribution; OOD) 문제에서는 조용히 무너집니다.
V-STaR의 검증기는 근거에 순위를 매기는 법을 학습해 이 문제를 일부 완화합니다. 하지만 그 검증기 역시 같은 정답 레이블 집합으로 학습되므로, 잘 정돈된 오답 추론을 정직한 불확실성보다 더 선호하도록 배워 버릴 수 있습니다. 더 안전한 설계는 STaR 방식 데이터에 다음 두 가지를 결합하는 것입니다. (a) 중간 단계에 보상을 주는 과정 지도 보상 모델(Process-Supervised Reward Model), (b) 단순한 지름길을 깨뜨리도록 따로 떼어 둔(Held-Out) OOD 평가입니다.
비교
| 방법 | 학습 신호 | 추론 비용 | 데이터 낭비 | 알려진 실패 모드 |
|---|
| STaR | 맞으면 (rationale, answer) 보관 | 1x | 틀린 근거를 모두 버림 | 지름길(shortcut) 근거 |
| STaR + 합리화(rationalization) | 위 방식 + 정답 힌트 재시도 | 1x | 더 적음 | 합리화된 근거가 그럴듯하지 않을 수 있음 |
| V-STaR | STaR + 정답·오답 양쪽으로 학습한 DPO 검증기 | Nx (best-of-N) | 최소 | 검증기가 자신감 있는 오답을 강화할 수 있음 |
| Quiet-STaR | 토큰별 근거 + 혼합 가중치(mixing weight) | 1.5-3x | 최소 | 여전히 답 조건부 학습 신호 |
2026년 스택(Stack)에서의 위치
STaR 자체는 오래된 방법입니다. 그러나 같은 패턴은 2025-2026년의 거의 모든 곳에서 다시 나타납니다. 검증 가능한 수학 문제에 대한 강화학습(Reinforcement Learning; RL)을 적용한 DeepSeek-R1, Kimi-k1.5, o1은 STaR의 답 조건부 학습 신호를 대규모로 확장한 사례입니다. 과정 보상 모델(Process Reward Model; Lightman et al., 2023과 OpenAI의 "Let's verify step by step")은 과정 지도(Process-Supervised) 방식의 대안입니다. AlphaEvolve(3강)는 정답 레이블 대신 프로그램 평가기(Evaluator)를 사용하는 코드용 STaR이고, Darwin Godel Machine(4강)은 에이전트의 골격(Scaffolding) 자체를 대상으로 한 STaR입니다.
STaR를 이해하면 이 모든 흐름이 자연스럽게 연결됩니다. STaR는 가능한 한 작고 최소한의 자기 개선 루프이기 때문입니다.
사용해보기
code/main.py는 간단한 산술 과제 위에서 시뮬레이션된 STaR 루프를 실행합니다. 다음과 같은 점을 직접 관찰할 수 있습니다.
- 부트스트랩 라운드가 진행될수록 정확도가 어떻게 올라가는지.
- 지름길이 어떻게 끼어드는지. 시뮬레이터에는 분포 안 문제에서 40% 확률로 정답에 도달하지만 일반화가 나쁜 "lazy" 근거 부류(Class)가 포함되어 있습니다. STaR가 이런 근거를 그대로 보관하는지 확인해 보세요.
- 검증기(V-STaR 방식)가 추론 시점에는 도움이 되지만, 학습 도중 들어와 버린 지름길을 완전히 걷어 내지는 못한다는 점.
산출물 만들기
outputs/skill-star-loop-reviewer.md는 자기학습 추론 파이프라인에 학습 연산 자원(Compute)을 투입하기 전에, 그 설계를 검토하고 감사(Audit)할 수 있도록 돕습니다.
연습문제
-
(쉬움) 시뮬레이터를 실행해 보세요. 지름길(shortcut) 빈도를 먼저 0으로 두고 실행한 뒤, 0.4로 바꿔서 다시 실행해 보세요. 두 실행 모두 학습 분포 안에서 90%를 넘는다고 하더라도, 최종 정확도는 얼마나 차이가 나나요?
-
(중간) 시뮬레이터에 따로 떼어 둔(Held-Out) OOD 평가를 추가해 보세요. 학습과 다른 분포에서 문제를 뽑고, 부트스트랩으로 학습한 모델을 분포 안(in-distribution) 집합과 OOD 집합 양쪽에서 평가합니다. 두 집합 사이의 격차(gap)를 수치로 측정해 보세요.
-
(중간) Quiet-STaR 논문(arXiv:2403.09629) 3장을 읽으세요. "end-of-thought" 토큰과 혼합 가중치(mixing-weight) 헤드(Head)를 각각 세 문장 정도로 설명해 보세요.
-
(중간) STaR의 "맞으면 보관(keep-if-correct)" 필터를, 각 근거 단계에 독립적으로 보상을 주는 과정 지도(Process-Supervised) 방식과 비교해 보세요. 레이블링 비용(Labelling Cost) 차이와, 결과 품질에서 예상되는 차이를 함께 정리해 보세요.
-
(어려움) 배포된 모델에서 지름길 근거(Shortcut Rationale)를 잡아낼 수 있는 평가 한 가지를 설계해 보세요. 완벽할 필요는 없습니다. STaR 루프가 강화하기 쉬운 가장 단순한 지름길만이라도 깰 수 있으면 충분합니다.
핵심 용어
| 용어 | 흔한 설명 | 실제 의미 |
|---|
| STaR | "자기학습 추론기(Self-Taught Reasoner)" | 모델이 만든 근거 중 정답에 도달한 것으로 미세 조정하고, 이 과정을 반복하는 방식 |
| 합리화(Rationalization) | "힌트가 있는 재시도" | 기반 모델이 실패한 문제에 정답을 주입하고, 그 답으로 이어지는 근거를 다시 생성하게 하는 방식 |
| V-STaR | "검증기 기반 STaR(Verifier STaR)" | 정답과 오답 근거 모두로 직접 선호 최적화(DPO) 검증기를 학습한 뒤, 추론 시점 선택에 사용 |
| Quiet-STaR | "토큰별 근거" | 모든 토큰 위치에서 숨겨진 생각을 만들고, 기본 예측(Baseline Prediction)과 혼합 |
| 답 조건부 학습 신호(Answer-Conditioned Gradient) | "결과 기반 신호" | 학습 루프가 추론 단계가 아니라 최종 답을 보상함 |
| 과정 보상 모델(Process Reward Model) | "단계 수준 검증기" | 결과가 아니라 단계별 정확성(Correctness)으로 학습한 보상 모델. STaR와 대비됨 |
| 지름길 근거(Shortcut Rationale) | "정답은 맞지만 추론은 틀린 풀이" | 일반화되지 않는 패턴으로 정답 레이블에 도달한 근거. STaR는 이를 그대로 보관함 |
더 읽을거리