멀티태스크 코드 LLM을 위한 데이터 혼합 vs 모델 병합 전략 비교
초록
본 논문은 2B·7B 규모의 Qwen Coder와 DeepSeek Coder를 대상으로 코드 생성과 요약 두 작업을 동시에 수행할 수 있는 소형 코드 LLM을 만들기 위한 두 가지 접근법—데이터 혼합 기반 단일 미세조정과 개별 전문 모델 병합—을 비교한다. 실험 결과, 7B 모델에서는 모델 병합이 전체 성능을 가장 잘 유지하며, 경우에 따라 전문 미세조정 모델을 능가한다. 반면 2B 모델에서는 데이터 혼합이 더 효율적이다. 또한 층별 가중치 변화를 분석해 각 전략의 메커니즘을 설명한다.
상세 분석
이 연구는 코드 LLM 분야에서 아직 충분히 탐구되지 않은 “데이터 혼합 vs 모델 병합”이라는 근본적인 질문에 답하고자 한다. 먼저 Qwen 2.5‑Coder와 DeepSeek‑Coder 두 모델군을 각각 1.5 B/7 B 파라미터 규모로 선택하고, 코드 생성(KodCode)과 코드 요약(CodeXGLUE) 두 과업을 대상으로 슈퍼바이즈드 파인튜닝(SFT)을 수행한다. 데이터 혼합 방식은 두 데이터셋을 단순히 합쳐 하나의 SFT 과정을 거치는 반면, 모델 병합 방식은 각 과업에 대해 별도로 파인튜닝한 체크포인트를 MergeKit을 이용해 Linear, TIES, DARE, DELLA 네 가지 최신 병합 기법으로 결합한다.
성능 평가는 HumanEval·HumanEval+·MBPP·MBPP+의 Pass@1과 CodeXGLUE 요약의 BLEU‑4·chrF++·ROUGE‑L·METEOR를 사용한다. 7 B 규모에서는 병합 모델이 전체적으로 가장 높은 Pass@1을 기록했으며, 특히 Qwen 7 B 모델은 DELLA 기반 병합으로 92.7 %를 달성해 동일 과업에 대해 개별 파인튜닝된 90.9 %를 넘어섰다. 이는 병합이 서로 다른 과업의 지식을 보존하면서도 시너지 효과를 낼 수 있음을 시사한다. 반면 2 B 규모에서는 데이터 혼합 SFT가 평균적으로 더 높은 요약 BLEU와 Pass@1을 보여, 작은 모델에서는 파라미터 용량이 제한적이므로 한 번에 여러 과업을 학습하는 것이 오히려 효율적임을 확인했다.
가중치 분석에서는 각 모델에 대해 베이스 모델 대비 층별 L2 거리(가중치 변동)를 측정했다. 데이터 혼합 SFT는 전 층에 걸쳐 0.71.3 정도의 높은 변동을 보이며, 이는 모델이 다양한 데이터 분포를 동시에 학습하기 위해 파라미터 공간을 크게 재구성함을 의미한다. 반면 병합 기법은 0.30.8 수준으로 더 보수적인 변화를 보였으며, 특히 DARE와 DELLA는 대부분의 층을 거의 변형시키지 않고 핵심 파라미터만 선택적으로 조정한다. 이러한 차이는 병합이 “작업 별 특화된 가중치”를 유지하면서도 충돌을 최소화하는 메커니즘을 가지고 있음을 뒷받침한다. 또한 DeepSeek 모델이 Qwen 모델보다 전체적으로 큰 L2 변동을 보였는데, 이는 기본 모델의 사전 학습 성능 차이와 관련이 있어, 베이스 모델이 과업에 덜 최적화돼 있을수록 더 큰 파라미터 조정이 필요함을 암시한다.
결론적으로, 모델 규모와 데이터 양에 따라 최적 전략이 달라진다. 7 B 이상에서는 모델 병합이 성능 저하 없이 다중 과업을 구현할 수 있는 가장 효율적인 방법이며, 2 B 이하에서는 데이터 혼합이 더 간단하고 효과적이다. 이러한 인사이트는 에이전트 기반 시스템이나 비용 제한이 있는 배포 환경에서 작은 코드 LLM을 설계할 때 실용적인 가이드라인을 제공한다.
댓글 및 학술 토론
Loading comments...
의견 남기기