스터디 · 2026-10-09 · 심화
합성 데이터로 학습하기: Self-Instruct부터 모델 붕괴 논쟁까지
LLM이 만든 데이터로 다시 LLM을 학습시키는 합성 데이터 학습은 Self-Instruct, Evol-Instruct, phi-1을 거치며 사람 라벨링을 줄이는 주요 방법이 됐다. 그 뒤로 '모델이 만든 데이터만 먹으면 망가진다'는 모델 붕괴 경고가 나왔고, 진짜 데이터를 버리지 않고 쌓으면 붕괴를 피할 수 있다는 반론도 나왔다. 지금 연구의 관심은 어떤 합성 데이터를 골라 쓸지로 옮겨 가고 있다.
- 합성 데이터 학습은 '생성 → 걸러내기 → 학습'의 반복이며, 성패는 생성보다 걸러내기에서 갈리는 경우가 많다.
- Self-Instruct는 사람이 쓴 시드 과제 175개에서 출발해 GPT3가 스스로 만든 지시 데이터로 GPT3 자신을 튜닝했고, Evol-Instruct는 지시를 단계적으로 어렵게 '진화'시켜 난이도 분포를 넓혔다.
- 모델 붕괴는 모델이 만든 데이터로 거듭 학습할 때 원래 분포의 꼬리(드물지만 중요한 사례)가 사라지는 현상이다.
- 진짜 데이터를 합성 데이터로 '교체'하면 붕괴가 생기지만, 진짜 데이터에 합성 데이터를 '누적'하면 붕괴를 피할 수 있다는 결과가 나왔다. 학습량이 고정된 현실적인 조건에서는 그 중간 결과가 관찰됐다.
- 최근 연구는 '얼마나 많이'보다 '무엇을 고를지'에 집중한다. 목표 과제에 대한 기여도와 데이터 묶음 단위의 상호작용을 따지는 선택 방법이 나오고 있다.
왜 필요했나: 사람이 쓴 데이터의 한계
사전학습만 마친 LLM은 다음 단어를 잘 맞힐 뿐, 사람이 시키는 일을 따르는 데는 서툴다. 그래서 '지시와 모범 답안' 쌍으로 다시 학습하는 지시 튜닝(SFT, 지도 미세조정)을 거친다. 문제는 이 데이터를 사람이 직접 써야 한다는 점이다. Self-Instruct논문는 사람이 쓴 지시 데이터가 양이 적고 다양성과 창의성이 떨어지며, 대부분 흔한 NLP 과제에 몰려 있어 튜닝된 모델의 범용성을 제한한다고 지적했다.
난이도도 문제다. WizardLM논문은 사람이 만든 지시가 쉬운 문제와 중간 난이도 문제에 치우쳐 있고 어려운 지시는 적다고 봤다. 사람 작성자는 쉽게 지치기 때문에 고난도 지시를 꾸준히 많이 만들어 내기 어렵다는 설명이다. 라벨링 비용과 시간이 많이 드는 것도 큰 부담이다.
그래서 나온 발상이 '데이터도 모델이 만들게 하자'다. 사람은 소량의 씨앗(시드)만 주고, 나머지는 LLM이 지시와 답을 대량으로 생성한다. 이렇게 만든 데이터를 합성 데이터라고 부른다. 합성 데이터 전반을 정리한 연구논문는 데이터 부족, 개인정보 문제, 높은 비용 때문에 크고 다양한 고품질 데이터를 구하기 어렵다는 점을 합성 데이터가 주목받는 이유로 꼽는다.
핵심 아이디어: 스스로 문제집을 만들어 푸는 학생
비유하면 이렇다. 학생에게 선생님이 예제 몇 문제만 보여 준다. 학생은 그 예제를 흉내 내 새 문제와 풀이를 직접 만들고, 엉터리이거나 이미 있는 문제와 거의 같은 것은 버린다. 남은 문제를 모아 문제집을 만들고, 그 문제집으로 다시 공부한다. 학생이 이미 갖고 있지만 꺼내 쓰지 못하던 능력을 '문제 형식'으로 끌어내는 셈이다.
이 비유에는 위험도 담겨 있다. 학생이 만든 문제집으로만 공부하고, 그렇게 공부한 학생이 다시 다음 문제집을 만드는 일이 반복되면 어떻게 될까? 학생이 잘 모르던 드문 유형은 문제집에서 점점 빠지고, 익숙한 유형만 남는다. 복사본을 다시 복사할수록 원본의 세부가 흐려지는 것과 비슷하다. 이것이 뒤에서 다룰 모델 붕괴의 직관이다.
결국 합성 데이터 학습의 핵심 질문은 두 가지다. 하나는 '좋은 데이터를 어떻게 만들고 걸러낼까', 다른 하나는 '합성 데이터가 쌓여도 원래 세상의 다양성을 어떻게 잃지 않을까'다.
어떻게 작동하나: 생성 → 걸러내기 → 학습
Self-Instruct논문의 파이프라인이 기본 틀이다. 처음에 사람이 쓴 과제 175개(과제마다 지시 1개와 예시 1개)로 '과제 풀'을 채운다. 그다음 네 단계를 거친다. 첫째, 과제 풀에서 몇 개를 뽑아 프롬프트로 보여 주고 언어 모델이 새 지시를 만들게 한다. 둘째, 새 지시가 분류 과제인지 판별한다. 셋째, 지시에 맞는 입력-출력 예시를 만든다. 이때 입력을 먼저 만드는 방식과 출력(정답 라벨)을 먼저 만드는 방식을 과제 유형에 따라 나눠 쓴다. 넷째, 품질이 낮거나 기존 지시와 너무 비슷한 것을 여러 규칙(휴리스틱)으로 걸러 낸다.
살아남은 과제는 다시 과제 풀에 들어가고, 다음 생성의 예시로 쓰인다. 이 반복으로 데이터가 눈덩이처럼 불어나며, 충분히 쌓이면 이 데이터로 처음 생성에 쓴 바로 그 모델을 파인튜닝한다. 논문은 이 과정을 거의 라벨링이 필요 없는 정렬 방법이라고 설명한다.
이후 방법들은 이 틀의 각 단계를 바꾼다. 생성 단계에서는 지시를 더 어렵게 바꾸거나(Evol-Instruct), 교과서 형식의 글을 만들게 하거나(phi-1), 걸러내기 단계에서는 더 정교한 선택 기준을 넣는다. 생성 모델과 학습 대상 모델이 다를 수도 있다. 예를 들어 더 큰 모델이 만든 데이터로 작은 모델을 학습시키면 사실상 Distillation(지식 증류)에 가까워진다.
발전 흐름: 더 많이, 더 어렵게, 더 교과서답게
Self-Instruct논문는 기본 GPT3에서 지시 약 52K개와 입출력 예시 약 82K개를 얻었다. 이 데이터로 GPT3를 튜닝하자 Super-NaturalInstructions 벤치마크에서 원래 모델보다 33%p(절대값 기준) 올랐고, 비공개 사용자 데이터와 사람 라벨로 학습한 InstructGPT-001과 비슷한 수준이 됐다. 전문가가 새로 쓴 지시로 한 사람 평가에서도 InstructGPT-001과의 차이는 5%p였다. 생성된 과제는 시드 과제와 겹침이 적고 전형적인 NLP 과제 분포에서도 벗어나, '다양성'이라는 원래 목표를 어느 정도 달성했다.
WizardLM논문의 Evol-Instruct는 다양성에 '난이도'라는 축을 더했다. 지시 하나를 LLM에게 다시 쓰게 하는데, 깊이 방향으로는 제약 추가, 심화, 구체화, 추론 단계 늘리기, 입력 복잡하게 만들기의 다섯 가지 조작을 쓰고, 넓이 방향으로는 주어진 지시에서 완전히 새 지시를 만드는 변이를 쓴다. 진화에 실패한 지시는 제거 단계에서 걸러 낸다. Self-Instruct 방식으로 만든 Alpaca 데이터 52K개를 출발점으로 ChatGPT로 네 차례 진화시켜 250K개 지시를 얻었고, 실제 사용자 대화 70K개로 학습한 Vicuna와 공정하게 비교하려고 그중 70K개를 뽑아 LLaMA 13B를 학습시켰다. GPT-4 자동 평가에서는 29개 기술 중 17개에서 ChatGPT 능력의 90% 이상을 보였다고 보고했다.
phi-1논문은 합성 데이터를 사후 학습뿐 아니라 학습 데이터의 중심에 놓았다. 웹에서 고른 '교과서 수준' 데이터 6B 토큰에 GPT-3.5로 만든 합성 교과서와 연습문제 1B 토큰을 더해, 파라미터 1.3B짜리 코드 모델을 A100 8장으로 4일 동안 학습시켰다. 그 결과 HumanEval pass@1 50.6%, MBPP 55.5%를 기록했고, 같은 방식으로 학습한 350M 모델(phi-1-small)도 HumanEval 45%를 냈다. 데이터의 양보다 질과 형식이 중요할 수 있다는 근거로 자주 인용된다.
합성 데이터 전반을 정리한 연구논문는 이런 성과를 모으면서도 합성 데이터의 사실성(factuality), 원본 충실도(fidelity), 편향 없음(unbiasedness)을 확보해야 하고 책임 있게 써야 한다고 강조한다. 이 연구가 짚은 조건이 지켜지지 않을 때 무슨 일이 생기는지가 다음 논쟁의 주제다.
Self-Instruct와 phi-1의 숫자
모델 붕괴 논쟁: 교체냐 누적이냐
모델 붕괴 논쟁은 Curse of Recursion논문에서 시작됐다. 이 연구는 앞으로 인터넷 글의 상당 부분을 LLM이 쓰게 되면 다음 세대 모델은 무엇을 먹고 자라게 되느냐고 묻는다. 그리고 모델이 만든 콘텐츠로 학습하면 원래 데이터 분포의 꼬리, 곧 드물게 나타나는 사례가 사라지고 이 결함은 되돌릴 수 없다고 주장했다. 이 현상을 모델 붕괴(Model Collapse)라 이름 붙이고, VAE(변분 오토인코더), 가우시안 혼합 모델, LLM에서 모두 나타날 수 있음을 보였다. 그래서 사람이 실제로 상호작용하며 남긴 데이터의 가치가 앞으로 더 커질 것이라고 결론 내렸다.
반론은 실험 가정에서 출발했다. Is Model Collapse Inevitable?논문은 앞선 연구들이 대체로 '새 데이터가 옛 데이터를 대체한다'고 가정했지만, 실제로는 데이터가 '쌓인다'고 보는 편이 더 현실적이라고 지적했다. 언어 모델을 여러 세대에 걸쳐 사전학습해 보니, 진짜 데이터를 매 세대 합성 데이터로 바꾸면 실제로 붕괴 쪽으로 가지만, 원래 진짜 데이터 옆에 세대별 합성 데이터를 계속 쌓으면 붕괴가 일어나지 않았다. 이 결과는 모델 크기, 구조, 하이퍼파라미터를 바꿔도 유지됐고, 분자 구조 생성용 디퓨전 모델과 이미지용 VAE에서도 비슷했다. 단순한 선형 모델 이론으로도, 데이터를 교체하면 반복할수록 테스트 오차가 커지지만 누적하면 반복 횟수와 상관없는 유한한 상한이 생긴다는 것을 증명했다.
최근 연구논문는 두 결론이 서로 모순되어 보인다고 짚고, 그 사이의 현실적인 조건을 디퓨전 모델에서 살폈다. 과거 데이터와 진짜 데이터는 모두 보관하지만, 학습 예산이 정해져 있어 새 모델마다 커지는 데이터 풀에서 고정된 크기만 뽑아 학습하는 조건이다. 이렇게 하면 지운 데이터는 없어도 진짜 데이터의 비율은 점점 0에 가까워진다. 2D 나선 데이터와 MNIST, Fashion-MNIST, CIFAR-10 실험에서 교체 방식은 기존 연구처럼 빠르게 망가졌고, 고정 예산 방식은 부분적으로만 망가졌다. 어떤 특징은 두 방식 모두에서 몇 세대 만에 사라졌지만, 어떤 특징은 고정 예산 방식에서 사실상 무한히 보존됐다. 붕괴는 전부 아니면 전무가 아니라 특징마다 다르게 일어날 수 있다는 뜻이다.
세 가지 학습 조건과 붕괴
교체진짜 데이터를 합성으로 바꿈
- 세대마다 빠르게 망가짐
- 분포의 꼬리가 사라짐
누적진짜 데이터 옆에 계속 쌓음
- 붕괴를 피함
- 테스트 오차에 유한한 상한
고정 예산다 보관하되 고정 크기만 학습
- 진짜 데이터 비율이 점점 줄어듦
- 부분적으로만 망가짐
- 특징마다 보존 여부가 다름
공통 모두 이전 세대 모델이 만든 데이터로 다음 모델을 학습하는 조건
요즘 어디로 가고 있나: 무엇을 고를 것인가
붕괴 논쟁 이후의 실무 질문은 '합성 데이터를 써도 되나'보다 '어떤 합성 데이터를 얼마나 넣을까'에 가깝다. TATC 연구논문는 합성 데이터가 많다고 모델이 늘 좋아지지는 않는다는 데서 출발한다. 유용한 합성 데이터는 목표 과제에 필요한 정보를 더하되, 그 이득을 깎아 먹는 오류를 끌어들이지 않아야 한다. 또 같은 예시라도 학습 세트가 커지면 가치가 달라진다. 이 연구는 선형 이론으로 합성 데이터가 쓸모 있는 조건, 넣어야 할 양, 예시 하나를 추가할 때의 한계 가치를 따졌다. 이를 바탕으로 목표 과제에 도움이 되는 후보 가운데 기존 데이터가 아직 덮지 못한 방향을 넓히는 예시를 고르는 선택 방법 TATC(Training-Aware Target Coverage)를 제안했다. 수학 추론에서 Qwen2.5-Math-1.5B-Instruct를 파인튜닝할 때 GSM8K 기준으로 여러 선택 예산에서 다른 선택 방법보다 나았다.
데이터 묶음 연구논문는 한 걸음 더 나간다. 지금의 데이터 큐레이션은 대개 샘플 하나하나의 학습 효용을 따로 추정하는데, 합성 데이터에서는 이것만으로 부족하고 샘플 사이의 상호작용을 반영한 그룹 단위 신호가 필요하다고 주장한다. 구성이 다른 합성 데이터셋들이 개별 기준으로는 구분되지 않아도 그룹 기준으로는 크게 다를 수 있고, 그룹 기준으로 고르면 특히 생성 능력에서 성능이 더 좋았다. 학습 파이프라인에 합성 데이터 비중이 커질수록, 널리 쓰이는 큐레이션 방법 가운데 그룹 신호를 반영한 것만 기준선보다 나았다.
두 연구는 Self-Instruct가 단순한 유사도 휴리스틱으로 하던 '걸러내기'를 목표 과제와 데이터 전체 구성을 고려한 '선택' 문제로 끌어올린다는 점에서 같은 방향을 가리킨다. 붕괴를 다룬 연구들이 진짜 데이터의 비율과 보관 방식을 문제 삼았다면, 이 흐름은 합성 데이터 안에서도 '어떤 조합'을 남기느냐를 문제 삼는다.
한계와 쟁점
첫째, 평가 방식에 대한 의문이다. WizardLM논문이 보고한 'ChatGPT 능력의 90% 이상'은 GPT-4 자동 평가 결과다. LLM이 만든 데이터로 학습한 모델을 다시 LLM이 채점하는 구조라서, 평가자가 비슷한 문체나 형식을 선호하면 실력이 과대평가될 수 있다. LLM-as-a-Judge 결과는 사람 평가나 정답이 있는 벤치마크와 함께 봐야 한다.
둘째, 붕괴 연구의 결론은 실험 조건에 크게 좌우된다. 교체, 누적, 고정 예산 가운데 어느 조건이 현실의 웹 크롤링이나 사내 데이터 파이프라인에 가까운지는 상황마다 다르다. 누적 실험논문의 낙관적인 결과는 진짜 데이터를 버리지 않는다는 전제에 기대고, 고정 예산 실험논문은 그 전제가 있어도 일부 특징은 잃을 수 있음을 보여 준다. 따라서 '붕괴는 없다'도 '반드시 붕괴한다'도 일반 결론으로 받아들이기 어렵다.
셋째, 품질 보장 문제다. 합성 데이터를 정리한 연구논문가 강조하듯, 합성 데이터에는 사실 오류와 편향이 섞일 수 있다. 생성 모델의 환각이 학습 데이터로 굳으면 다음 모델로 이어질 수 있다. 또 phi-1논문처럼 작은 모델이 높은 점수를 낸 사례는 코드처럼 범위가 좁고 정답을 확인할 수 있는 영역에서 나왔으므로, 다른 영역에도 그대로 통한다고 단정하기는 어렵다.
넷째, 진짜 데이터의 가치가 오히려 커진다는 역설이다. Curse of Recursion논문의 결론처럼 사람의 실제 상호작용 데이터는 점점 귀해지고, 합성 데이터가 섞인 인터넷에서 '진짜'를 가려 보관하는 일 자체가 데이터 거버넌스의 과제가 된다.
더 공부하려면
처음이라면 Self-Instruct논문의 2장(방법)부터 읽기를 권한다. 시드 과제, 지시 생성, 입력 우선/출력 우선 생성, 필터링이라는 네 단계가 이후 거의 모든 합성 지시 데이터 연구의 뼈대다. 이어서 WizardLM논문의 Evol-Instruct 그림을 보면 '어렵게 만들기'가 어떤 프롬프트 조작으로 구현되는지 감이 온다. 데이터의 질과 형식이 모델 크기를 얼마나 보완할 수 있는지는 phi-1논문이 대표 사례다.
모델 붕괴는 Curse of Recursion논문과 Is Model Collapse Inevitable?논문을 짝으로 읽어야 한다. 두 논문의 결론이 달라진 이유가 데이터를 '교체'했느냐 '누적'했느냐에 있다는 점을 확인한 뒤, 고정 예산 조건을 다룬 연구논문로 넘어가면 논쟁의 지형이 한눈에 들어온다.
실무에 적용하려면 합성 데이터 전반을 정리한 연구논문로 큰 그림을 잡고, 선택 방법을 다룬 TATC논문와 그룹 단위 큐레이션 연구논문를 읽어 '무엇을 남길지'를 정하는 기준을 세우면 좋다.
관련 용어
합성 데이터 SFT 사후 학습 Distillation 데이터 품질 중복 제거 LLM-as-a-Judge 데이터 증강
참고 문헌
핵심 논문
- Self-Instruct: Aligning Language Models with Self-Generated Instructions (2022)
- WizardLM: Empowering large pre-trained language models to follow complex instructions (2023)
- Textbooks Are All You Need (2023)
- The Curse of Recursion: Training on Generated Data Makes Models Forget (2023)
- Is Model Collapse Inevitable? Breaking the Curse of Recursion by Accumulating Real and Synthetic Data (2024)
- Best Practices and Lessons Learned on Synthetic Data (2024)
최근 연구
AI가 참고 문헌을 바탕으로 작성하고 검수를 거친 해설입니다. 정확한 내용은 원문을 확인해 주세요.