작은 언어모델에 새 능력을 하나씩 더 가르치다 보면 두 가지가 같이 어긋난다. 새로 가르치려는 능력은 잘 안 들어오고(획득 실패), 원래 잘하던 일은 잊는다(파국적 망각). 모델이 작을수록 이 줄다리기가 심하다.
LG AI·KAIST의 SynthSelf는 여기에 어긋나 보이는 수를 둔다. 작은 모델이 배울 정답 예시를, 같은 계열의 한 급 큰 모델이 작은 모델에게 익숙한 방식으로 다시 써 준다. 작은 모델은 그 결과물로 학습만 한다. 왜 정답을 그대로 주지 않고 굳이 다시 쓰며, 그 일을 왜 작은 모델 본인이 아니라 큰 모델에게 맡기나. 이 두 질문이 글의 뼈대다.
이미 학습이 끝난 모델에 능력을 계속 얹는 일을 계속 사후학습(continual post-training)이라 한다. 업종별로 모델을 길들이거나, 사람처럼 조금씩 평생 배우게 하려는 흐름이다. 걸림돌은 앞서 말한 획득과 유지가 서로를 당긴다는 데 있다. 특히 지도학습(SFT, 정답을 그대로 베끼게 하는 방식)으로 새 데이터를 먹이면 원래 하던 일의 성능이 크게 꺾이는 파국적 망각이 잘 난다. 오래 보고돼 온 현상이다.
SDFT(자기증류 미세조정)는 학습 목표를 바꿔 이 문제를 비껴갔다. 정답을 그대로가 아니라, 모델이 자기 방식으로 다시 쓴 버전을 목표로 학습시킨다. 내용은 그대로 두고 표현만 모델에게 익숙한 틀 안에 둔다. 이렇게 하면 망각이 줄고, 실제로 SDFT는 기존 방법들을 획득·유지 양쪽에서 앞섰다.
함정은 전제에 있다. SDFT가 통하려면 모델이 맥락 속 예시를 보고 배우고(인컨텍스트 학습), 지시를 따르는(지시 수행) 능력이 충분해야 한다. 큰 모델은 둘 다 되지만 작은 모델은 둘 다 약하다. 그래서 작은 모델에게 직접 재작성을 시키면 품질이 무너진다. 논문이 재어 보니 작은 모델이 다시 쓴 데이터는 평균 정확도가 60%까지 떨어졌고, 풀이 과정(CoT, 답에 이르는 단계별 추론)이 통째로 사라지기도 했다(도구 사용 도메인에서 8.2%). 저지연·온디바이스용으로 가장 요긴한 소형 모델에서 정작 이 방법이 헛도는 셈이다.
SynthSelf의 해법은 '다시 쓰기'를 작은 모델 손에서 뗀다.
1단계, 큰 모델이 다시 쓴다. 재작성을 학생 본인이 아니라 같은 계열의 바로 윗 크기 모델에게 맡긴다. 논문은 이 모델을 정렬자(aligner)라 부른다. 아직 글이 서툰 신입에게 자기 글을 직접 고치라 하는 대신, 양식이 같은 바로 윗 선배가 내용은 두고 문장만 다듬어 주는 그림이다. 선배가 너무 멀면 — 계열이 다른 거대 모델이면 — 쓰는 버릇이 달라 학생에게 오히려 낯설어진다. 그래서 같은 계열에서 최소한으로 큰 모델을 고른다.
2단계, 정답으로 거른다. 데이터를 학습 도중 즉석에서 만드는 대신 미리 오프라인에서 만들어 둔다. 미리 만들어 두면 재작성이 정답을 망가뜨리지 않았는지 검사해 통과한 것만 남길 수 있다(거부표집, rejection sampling). 작은 모델은 품질 낮은 학습자료에 유독 약해서 이 필터가 결정적이다.
3단계, 걸러진 데이터로 작은 모델을 학습시킨다.
결과부터 보자. 학생 세 크기(0.5B·1.5B·3B, B는 매개변수 10억 개를 뜻하는 단위) 평균이다.
| 지표(평균) | 기본 모델 | SFT | SynthSelf |
|---|---|---|---|
| 획득(새 능력, 4과제) | 34.2 | 52.2 | 56.4 |
| 유지(기존 능력, 14과제) | 42.8 | 40.5 | 41.7~41.8 |
새 능력은 가장 많이 올랐다. 56.4로 SFT(52.2)도, 손대기 전(34.2)도 넘는다. 유지는 41.7~41.8로 SFT(40.5)보다는 높지만 학습 전 42.8에는 못 미친다. 망각을 줄였을 뿐 없애지는 못했다. 제목의 '망각 완화'는 딱 이만큼이다.
핵심은 한 가지다. 재작성 결과가 학생에게 익숙한 표현 범위 안에 머문다는 것. 모델마다 즐겨 쓰는 표현과 풀이 방식이 있는데, 논문은 이를 분포(distribution)라 부르고, 그 안에 머무는 상태를 인디스트리뷰션(in-distribution)이라 한다.
예가 하나 있으면 손에 잡힌다. "2 더하기 3은?"에 대한 세 가지 답을 나란히 보자.
재작성에서 정답 5도, 더한다는 풀이도 그대로다. 바뀐 건 그걸 담는 꼴뿐이다. 학생이 평소 쓰던 '→ 합은 5' 형식으로 옮겨졌다. 유지되는 건 정답과 풀이의 사실, 달라지는 건 표현의 틀이다.
왜 이게 기존 능력을 덜 흔드나. 교재를 그대로 학습시키면 학생은 새 지식만이 아니라 낯선 답변 형식까지 한꺼번에 익혀야 한다. 이 형식 적응이 덤으로 얹히면서 원래 잘하던 일을 끌어내린다 — 고 설명할 수 있다. 다만 이건 논문이 관찰한 상관을 풀어낸 해석이지 증명된 인과는 아니다. 논문이 실제로 잰 것은 학습 전후로 분포가 많이 틀어질수록 망각도 획득도 나빴다는 상관관계다.
이 상관을 두 실험이 받친다. 하나, 데이터의 출처와 종류를 이리저리 바꿔도 틀어진 정도가 클수록 망각이 커지는 흐름이 일관됐다. 둘, 말뭉치 하나(OpenR1-Math-220k)를 고정하고 목표 텍스트만 세 형태로 바꿨다. 추론을 다 담은 원본(많이 틀어짐), 최종 풀이만 남긴 것(중간), 모델이 직접 풀어 정답으로 검증한 것(적게 틀어짐). 덜 틀어진 쪽일수록 수학 획득은 올라가고 코딩 같은 다른 영역의 망각은 줄었다.
여기서 큰 모델을 '빌려서' 잘된 것 아니냐는 의심이 자연스럽다. 논문은 이를 들여다보려고 통제군을 뒀다. 같은 정렬자를 쓰되 재작성은 시키지 않고 원래 질문에 그냥 답하게 한 증류(Off-PD·On-PD)다. 맞붙여 보니 SynthSelf가 획득을 5.7~16.9%p 더 올렸고, 유지는 세 방법이 비슷했다. 다만 이 격차를 '학생 방식으로 다시 쓴 효과'만 떼어 낸 결과로 읽으면 과하다. 결정적 차이는 입력에 있다 — SynthSelf의 정렬자는 정답 예시를 받아 다시 쓰지만, 통제군은 원 질문만 받고 답한다. 논문은 이 획득 향상을 정답 예시가 지식을 함께 넣어 준 효과로 설명하고, 세 방법 모두 기존 분포는 비슷하게 유지한다고 밝힌다. 향상의 출처는 재작성 그 자체라기보다 정답 예시의 지식 주입 쪽인 셈이다. 한 가지 더. 더 세지만 계열이 먼 정렬자(Qwen3.5-27B, Gemma-4-31B)는 데이터를 더 정확히 만들어 냈는데도 획득은 같거나 낮았다. 정렬자의 강함보다 학생과의 가까움이 결과를 더 잘 설명했다.
고르는 기준은 한 문장으로 준다. 학생이 '이거 내가 쓴 것 같다'고 느낄 만큼 가까우면서, 그냥 정답을 베끼는 것보다 나은 지도를 줄 수 있는 모델. 가까움과 지도 품질을 같이 만족시키는 지점이 '같은 계열에서 한 급 큰' 모델이다. 실제로 Qwen2.5 계열의 7B·14B·32B가 학생과 가장 가까웠고, 비용까지 따져 최종 실험에는 7B(SS-1)와 14B(SS-2)를 썼다.
가까움을 논문이 어떤 수치로 재는지, 실험을 어떻게 짰는지는 맨 아래 기술 보충에 모아 뒀다. 성과를 먼저 이해한 뒤 읽어도 늦지 않다.
이 방법에서 가장 흥미로운 긴장은 2단계 필터에 있다. 정렬자가 잘못 다시 쓴 샘플을 걸러 내면 학습 데이터의 품질이 오른다. 실제로 거부표집을 떼면 성능이 내려갔고, 걸러서 데이터가 줄어도(도구 사용 기준 17.1% 감소) SFT보다 적은 예시로 획득을 평균 4.2%p 더 올렸다. 이득이 데이터 양이 아니라 질에서 온다는 신호다.
그런데 같은 장치가 반대편을 깎는다. '정렬자가 틀리게 쓴 걸 버린다'는 말은 '정렬자가 약한 영역의 데이터가 통째로 빠진다'는 말이기도 하다. 정렬자가 서툰 주제일수록 그 주제의 샘플이 많이 탈락하고, 결국 학생은 그 주제를 덜 배운다. 품질을 지키려는 필터가 학습 범위를 조용히 좁히는 것이다. 그러니 필터 통과율만 볼 게 아니라 어떤 유형의 샘플이 떨어지는지를 유형별로 봐야 한다.
의학 결과가 이 긴장의 다른 쪽 끝을 보여 준다. 의학에서 SynthSelf는 통제군 대비 개선이 작았다. 저자는 정렬자가 그 지식을 이미 거의 다 알고 있어 재작성이 더 보탤 게 없었다고 본다. 정렬자가 너무 모르면 그 데이터가 필터에서 빠지고, 너무 잘 알면 다시 써도 보탤 게 없다. 적당한 간극이 있을 때 값이 가장 커진다는 얘기인데, 여기서 실무용 가설이 하나 나온다 — 정렬자가 해당 지식을 어중간하게 알 때 이 방법이 가장 쓸모 있을 수 있다. 다만 한 도메인 결과에서 끌어낸 추측이지 도입 조건으로 굳은 건 아니다.
전제도 분명하다. 더 큰 같은 계열 정렬자가 있어야 한다. 저자들은 Qwen2.5·Qwen3.5·OLMo 2·Llama 3·Gemma 4처럼 주요 오픈웨이트 계열 대부분이 크기 라인업을 갖춰 현실적 제약은 작다고 본다. 계열 밖 모델을 학생 방식에 맞게 길들이는 방향은 향후 과제로 남겼다.
제목은 '계속' 가르친다고 말하지만, 실험이 실제로 보여 준 건 한 번 가르쳤을 때의 결과다. 데이터를 만들 때 큰 정렬자를 한 번은 돌려야 하는데, 업무가 늘 때마다 이 과정을 반복하면 기존 능력이 어떻게 변하는지는 이 논문이 답하지 않는다. 획득 점수만 좇으면 반복 속에 조용히 쌓이는 망각을 놓친다. '계속 가르치되 망각은 줄인다'는 약속이 한 라운드에서는 확인됐지만, 여러 라운드를 거쳐도 버티는지는 아직 열린 질문이다.
온틀은 소기업의 반복 업무를 작은 모델로 돌리는 일을 하고, 그 중심에 도구 호출(내부 API 조회·예약·발주 같은 정해진 동작 부르기)이 있다. 그래서 이 논문은 구경거리가 아니라 바로 시험대에 올릴 거리다.
장면을 하나 잡자. 한 거래처가 '다음 주 발주를 이번 주로 당겨 달라'고 요청한다. 모델은 이 말을 알아듣고 발주 변경 기능을 정확한 인자로 불러야 한다. 이런 도구 호출에 특화된 저지연 모델을 만들려고 회사 데이터로 바로 SFT를 하면, 발주 처리는 익히지만 일반 대화나 추론 능력이 깎여 조금만 범위를 벗어난 요청에 흔들린다. 그렇다고 요청마다 거대 클라우드 모델을 부르면 저지연이라는 이유 자체가 사라진다.
SynthSelf는 이 사이를 겨눈다. 회사 데이터를 그대로 먹이는 대신, 같은 계열 한 급 큰 모델(배포 모델이 1.5B면 7B쯤)에게 '배포 모델에게 익숙한 방식으로, 정답은 그대로' 다시 쓰게 하고 정답 검증을 통과한 것만 학습시킨다. 검증은 이렇게 짠다.
이 설계가 설 수 있는지는 세 가지에 달렸다. 같은 계열 한 급 큰 모델이 있는가(없으면 성립하지 않는다). 정답 유지를 자동으로 검사할 수 있는 업무인가 — 발주 호출은 맞았는지 기계로 확인되니 잘 맞지만, 상담·요약·작문처럼 사람 판단이 필요한 일은 '정답 유지'의 정의부터 세워야 한다. 데이터 생성용 큰 모델 호출 비용을 예산에 넣었는가(서빙은 작은 모델이 맡아도 학습 단계에서 정렬자 추론이 한 번 든다).
가까움을 재는 두 지표가 있다. NLL은 학생이 어떤 글을 얼마나 자연스럽게 이어 쓸 법한지를 재고 낮을수록 가깝다. KL은 두 생성 방식이 벌어진 정도를 재고 작을수록 가깝다. Qwen2.5 계열 정렬자들은 평균 KL이 가장 낮았고, 정답만 베끼는 기준선(골드 SFT)보다도 학생에 가까웠다. 프롬프트를 똑같이 맞춘 SDFT와 견줘도 SynthSelf가 획득 18.96%p, 유지 1.68%p 앞섰다. 연산도 아꼈다. 정렬 연산은 69.9%, 데이터 생성 추론 비용은 62.9~76.9% FLOPs 줄었다(집계 틀에 따라 범위가 다르다).
비교는 두 축으로 맞붙였다. 아래는 방법론 기준선이다. 여기서 온폴리시는 학습 도중 모델이 스스로 만든 데이터로 그 자리에서 배우는 방식을 말한다.
| 방법 | 학습 목표 | 작은 모델에서의 약점 |
|---|---|---|
| SFT | 정답을 그대로 베끼기 | 망각 심함 |
| DFT·ASFT | 목표 수식을 틀어 온폴리시 효과를 흉내(ASFT가 틀어짐을 더 줄임) | 획득이 SFT조차 못 넘음(DFT는 의학에서 크게 하락) |
| SDFT | 모델이 스스로 다시 쓰기 | 재작성 품질이 낮아짐 |
| Off-PD·On-PD | 같은 큰 정렬자가 원 질문에 답(재작성 없음) | 정답 예시를 입력으로 받지 않아 지식 주입이 빠짐 |
| SynthSelf | 같은 계열 큰 정렬자가 학생 방식으로 다시 쓰기 | 큰 정렬자가 한 번 필요 |
| 구분 | 내용 |
|---|---|
| 학생(기본) 모델 | Qwen2.5-Instruct 0.5B · 1.5B · 3B |
| 정렬자 | Qwen2.5-7B(SS-1) · 14B(SS-2) |
| 획득 평가(4) | 과학(SciKnowEval Chemistry L-3) · 도구 사용(ToolAlpaca) · 의학(MedMCQA) · 과학 혼합 |
| 유지 평가(14) | 지시 수행 · 상식 · 지식 · 코드 · 수학 전반 |
| 분포-망각 상관 실험 | 23개 수학 데이터셋을 2.5M 완성 토큰으로 Qwen2.5-3B-Instruct 학습 → 무관한 5개 벤치마크(GPQA-Diamond·ARC-C·MMLU-Pro·HumanEval·MBPP) 하락을 망각으로 측정 |
기본 모델로 최신판 대신 오래된 Qwen2.5 계열을 쓴 건 데이터 오염을 줄여 '정말 새로운 데이터'로 재기 위해서고, 의학 평가를 MedMCQA로 바꾼 건 LLM이 채점하는 평가를 피해 재현성을 높이려는 선택이다. 실험이 Qwen2.5 계열과 0.5~3B에 묶여 있어 다른 계열이나 더 큰 학생에서의 거동은 이것만으로 단정하기 어렵다.
표준 증류는 큰 교사 모델의 출력을 학생이 그대로 흉내 내게 합니다. SynthSelf는 교사를 모방하는 게 목적이 아니라, 정답은 그대로 둔 채 학생이 받아들이기 쉬운 형태로 바꾸는 게 목적입니다. 베끼는 방향이 반대인 셈입니다.
없습니다. 비교 대상인 SDFT가 포맷 토큰을 버리는 skip-token 설정을 따로 최적화해야 공정한 강한 기준선이 됐던 것과 대비됩니다.
그렇습니다. 가장 확률 높은 토큰만 고르는 탐욕적 디코딩(greedy decoding)을 써서, 같은 샘플을 다시 써도 결과가 매번 같게 나오도록 고정합니다.