Qwen3.5-9B 트리플 루프 실험
Qwen3.5-9B Triple-Loop
핵심 요약
Nanbeige 4.5 아키텍처를 활용해 Qwen3.5-9B 모델에 트리플 루프를 적용하고 성능을 개선한 실험기입니다.
- 트리플 루프 적용 — Nanbeige 4.5 아키텍처를 차용해 모델 중간 계층에 루프를 구현함
- 학습 방식 개선 — 초기 DeltaNet의 한계를 극복하고 소프트맥스 어텐션과 학습률 스케줄링을 도입함
- 성능 변화 확인 — 수학, 긴 문맥, 지시 이행 능력은 향상되었으나 추론 및 번역 성능은 다소 하락함
- 향후 계획 — 추가 GPU 크레딧을 확보하여 코사인 학습률 감쇠를 적용한 완전한 학습을 진행할 예정임
Nanbeige가 덩치에 비해 보여준 미친 성능에 꽂혀서, 모델이 자기 자신을 계속 루프 돌리면 표현력이 얼마나 좋아질지 궁금해졌어(그냥 재미로 시작함). 내 프로토타입은 Nanbeige 4.2 아키텍처에서 영감을 받아서 중간 레이어에 풀 듀얼 루프를 박은 Qwen3-0.6B였지. 더 파고들어 보니까 Nanbeige 팀이 자기네 4.5 아키텍처를 설명한 논문을 냈더라고. 중간 레이어에 트리플 루프를 썼다길래, "아 이거다" 싶어서 바로 따라 해봤음.
Lordnyx/qwen3.5-9b-triple-loop-fase1 · Hugging Face
첫 실험 때는 중간 레이어에 풀 DeltaNet을 썼어. 모델 앞부분이 루프가 알아서 처리할 컨텍스트를 잡아주길 바란 거지. 결과적으로는 여러 개의 개별 로직 컴포넌트를 쓰는 것보다 이게 훨씬 잘 먹혔는데, 정작 루프 자체가 제 역할을 못 하더라고. DeltaNet 특성이랑 작은 히든 사이즈 때문에 모델이 작업에 필요한 핵심 디테일을 자꾸 까먹고 환각만 일으키길래, DeltaNet 아이디어는 바로 버리고 그냥 풀 softmax 어텐션을 루프에 넣었더니 예상대로 잘 돌아갔어.
나중에 (ChatGPT/Claude/Gemini 도움을 받아서) 알게 된 건데, 내 학습 설정이 루프의 기여도를 깎아먹고 있었더라고. 루프 전용으로 더 낮은 학습률 스케줄을 썼어야 했어. 이걸 고치니까 루프가 단순히 답변을 '다듬는' 수준을 넘어서, 답변 생성에 직접 참여하기 시작했어. 없으면 안 될 정도로 중요해진 거지. 더 대박인 건, 쉬운 질문은 루프를 아예 건너뛰어도 된다는 거야.
최근에 Modal이라는 걸 알게 됐는데, 무료 GPU 크레딧을 30달러나 주더라고. 이걸로 Nanbeige-4.5 스타일의 트리플 루프를 적용한 Qwen3.5-9B를 돌려봤어. 사실 RL(강화학습)을 쓰고 싶었는데, 0.6B 모델에서도 효율적으로 돌리기 빡센데 9B는 말할 것도 없잖아? 그래서 그냥 휴리스틱하게 큐레이션한 에이전트/추론 데이터셋으로 Qwen3.8-27B의 로짓을 루프에 증류(distill)하는 방식을 택했지.
학습 스케줄 다 끝내기도 전에 돈이 떨어졌어. 학습 루프가 고정 토큰 타겟이 아니라 월 클락 타임(중간에 죽지 않고 깔끔하게 내보내기 위한 안전장치)에 맞춰져 있었거든. 결국 1,129 스텝 동안 약 1,500만 토큰을 처리하고 끝났어.
┌────────────┬───────────┬───────────┐
│ Step range │ KL (mean) │ Std. dev. │
├────────────┼───────────┬─────────── │
│ ~10–370 │ 0.572 │ 0.176 │
├────────────┼───────────┬─────────── │
│ ~380–750 │ 0.648 │ 0.197 │
├────────────┼───────────┬─────────── │
│ ~760–1120 │ 0.650 │ 0.227 │
└────────────┴───────────┴───────────┘
표를 보면 알겠지만, 초반 3분의 1 지점까지는 확실히 좋아지다가 그 뒤로는 노이즈 섞인 횡보를 보이면서 더 이상의 개선은 없었어(전체 구간 KL 대비 스텝 기울기: +0.000075, 사실상 0). 이건 루프의 성능 한계가 아니라 학습률 감쇠 스케줄이 없어서 그런 거야(학습 내내 고정값으로 뒀거든). 그러니까 아직 성장 가능성은 충분해. 초반에 빠르게 성능이 오른 것만 봐도 제대로만 학습시키면 루프가 금방 제 몫을 한다는 게 증명된 셈이지.
학습을 다 끝내지도 못했는데도 이 체크포인트가 베이스 모델보다 수학(+20%), 긴 컨텍스트 작업(+14%), 지시 이행(+20%)에서 앞서고, 문장을 바꿔서 질문했을 때 훨씬 일관성 있고 견고하게 답변해(+62%). 다만 추론(-10%)이랑 번역(-15%)은 오히려 떨어졌고, 코딩도 살짝 밀렸어(-2%). 이건 개인적인 평가라 표준 벤치마크에서도 똑같이 나올지는 아직 몰라. 추론 성능이 떨어진 건 전반적인 능력 저하라기보다는 정체기랑 관련된 특정 실패 사례 때문이야. 단계별 추론을 건너뛰고 단순 산수에서 틀리거나, 생성 제한 시간을 다 써버릴 때까지 반복 루프에 빠지는 현상이 있었거든.

