모델 병합에서 태스크별 특이값 에너지에 비례해 랭크를 나눠주는 SERA
Not All Task Vectors Need Equal Rank: Energy-Proportional Allocation for Model Merging
무엇인가
모델 병합은 같은 사전학습 모델에서 출발한 여러 파인튜닝 모델을 추가 공동 학습 없이 하나의 다중 태스크 모델로 합치는 문제다. 최근의 스펙트럼 병합 기법들은 태스크 벡터(파인튜닝 가중치에서 사전학습 가중치를 뺀 값)의 저랭크 구조를 활용해 단순 가중치 평균보다 나은 결과를 내지만, DC-Merge로 대표되는 이 계열은 모든 태스크에 동일한 랭크 용량을 배정한다. 이 논문은 이 균일 배분이 태스크 벡터마다 다른 스펙트럼 복잡도를 무시하는 것이라 지적한다. 어떤 태스크는 소수의 지배적인 특이 방향만으로 정보가 압축되는 반면, 어떤 태스크는 같은 에너지를 담기 위해 훨씬 많은 방향이 필요하다. 균일 배분은 압축적인 태스크에 과잉 용량을 주고, 복잡하거나 다른 태스크와 겹치지 않는 태스크에는 용량을 부족하게 주어 공유 병합 공간을 비효율적으로 쓴다는 것이 문제 제기의 핵심이다.
어떻게 동작하나
제안 방법인 SERA(Spectral Energy-proportional Rank Allocation)는 먼저 각 태스크와 각 레이어에서 태스크 델타의 특이값을 분해하고, 전체 스펙트럼 에너지의 목표 비율 t_e를 보존하는 데 필요한 최소 특이 방향 수를 원시 랭크 요구량 r_k,l^raw(t_e)로 정의한다. 특이값이 빠르게 감소하는 태스크는 작은 값을, 평평한 스펙트럼을 가진 태스크는 큰 값을 얻는다. 이때 총 랭크 예산은 기존 방식과 동일하게 B_l = K × r_base(l)로 고정한다. 각 태스크의 연속적 배분량은 r̃_k,l = B_l × r_k,l^raw / Σ_i r_i,l^raw 로 계산해 스펙트럼이 복잡한 태스크에 더 많은 몫을 준다. 랭크는 정수여야 하므로, 합이 B_l이고 각 랭크가 1과 q_l 사이인 실행 가능 집합 위로 연속 배분을 제곱오차 최소화 방식으로 투영한다. 실제 구현에서는 반올림 후 잔여분을 반올림 오차에 따라 조정하는 방식으로 처리한다.
무엇과 다른가
커버 공간 구성도 이 배분을 따른다. DC-Merge가 모든 태스크에서 같은 수의 상위 특이 벡터를 이어 붙이는 것과 달리, SERA는 태스크 k에 배정된 랭크 r_k,l^alloc 개수만큼만 특이 방향을 뽑아 좌·우 특이벡터 행렬을 만든다. 배정된 랭크의 합이 총 예산과 같으므로 선택되는 특이 방향의 총 개수는 변하지 않는다. 이어서 각 태스크의 보존된 특이값을 해당 랭크 블록 내 평균 제곱근 값 s̄_k,l = (Σ s² / r_k,l^alloc)^(1/2)으로 평활화해 소수 큰 특이값의 지배력을 낮추되 보존 에너지 총량은 유지한다. 평활화된 태스크 델타를 커버 공간에 투영한 뒤 TIES 방식의 부호 합의 연산으로 집계하는데, 이때 적응적 랭크 배분이 만든 태스크별 블록 구조를 보존하기 위해 k번째 대각 블록 크기가 r_k,l^alloc × r_k,l^alloc인 블록 대각 마스크를 곱한다. 최종 병합 델타는 커버 행렬로 재구성되고, 사전학습 가중치에 전역 병합 스케일 λ를 곱해 더해 최종 모델이 된다.
어떻게 쓰나
목표 에너지 t_e는 랭크 차별화의 강도를 좌우한다. 작으면 지배적 방향에 집중해 선택적으로 배분하고, 크면 더 넓은 스펙트럼을 보존해 균형 잡힌 배분을 만든다. 최적값은 파인튜닝 모델의 스펙트럼 구조와 병합 태스크 수에 따라 달라지므로, 저자들은 홀드아웃 검증 분할에서의 평균 정규화 정확도를 목적함수로 두고 1차원 블랙박스 최적화를 수행한다. 가우시안 프로세스 대리 모델과 기대 개선(Expected Improvement) 획득 함수를 쓰는 베이지안 최적화를 적용하고, 세 개의 사전 정의된 목표 에너지로 워밍스타트한 뒤 정규화 기대 개선이 임계값 τ = 0.01보다 작아지면 중단한다.
전제와 한계
실험은 DC-Merge의 프로토콜을 그대로 따라 CLIP 비전 인코더를 대상으로 수행했다. LoRA 파인튜닝 설정과 전체 파인튜닝 설정 모두에서 ViT-B/32, ViT-B/16, ViT-L/14 백본을 쓰고, Weight Averaging, Task Arithmetic, TIES-Merging, Consensus TA, TSV-M, Iso-CTS, DC-Merge와 비교한다. 총 랭크 예산은 DC-Merge와 동일하게 유지하고 분배 방식만 바꿨는데, 두 설정 모두 모든 백본과 태스크 규모에서 최고 평균 정확도를 기록했다. 체크포인트 의존성을 확인하기 위해 Stoica 등이 공개한 체크포인트로 ViT-B/32 8태스크 벤치마크를 평가한 결과 평균 정규화 정확도 79.6%로 DC-Merge를 1.8%p, Iso-CTS를 4.5%p 앞섰다. Ilharco 등의 체크포인트를 쓴 실험에서도 DC-Merge 대비 ViT-B/32에서 85.1에서 87.1로, ViT-B/16에서 88.8에서 90.5로, ViT-L/14에서 92.7에서 94.3으로 개선됐다. 보지 못한 태스크 일반화 실험(CIFAR100, Flowers, Pets, STL10)에서도 ViT-B/32는 본 태스크 평균 64.17에서 64.64로, 미학습 태스크 평균 74.86에서 75.94로 올랐고, ViT-L/14는 82.61에서 82.95로, 81.93에서 83.37로 개선됐다. 미학습 태스크에서의 이득이 더 컸다는 점을 저자들은 원본 태스크에 과적합되지 않은 전이 가능한 병합 업데이트를 얻었다는 근거로 해석한다.
분석 파트는 왜 이 방식이 통하는지 보여준다. 20개 태스크의 에너지 집중도를 보면 목표 에너지에 도달하는 데 필요한 특이값 비율이 태스크마다 크게 다르다. MNIST, EMNIST, SVHN 같은 숫자 관련 태스크는 스펙트럼이 매우 집중돼 적은 비율로 충분하고, Cars, Food101, SUN397은 훨씬 많은 비율을 요구한다. 실제 랭크 배분 비율을 시각화하면 MNIST, EMNIST, SVHN은 균일 배분보다 적은 랭크를, SUN397, Food101, Cars, DTD는 더 많은 랭크를 받는 식으로 에너지 집중도와 정확히 대응한다. 목표 에너지 민감도 실험에서는 t_e를 0.10에서 0.99까지 훑었을 때 모든 구간에서 DC-Merge를 앞섰고, 최적 t_e는 태스크 수가 8개일 때 약 0.55, 14개와 20개일 때 약 0.85로 오른쪽으로 이동했다. 태스크 수가 늘수록 상호 간섭이 커져 태스크별 방향 구조를 지키기 위해 더 많은 에너지를 보존해야 한다는 해석이다. 베이지안 최적화는 t_e ∈ {0.45, 0.65, 0.85} 세 점에서 시작해 한 단계만에 t_e = 0.66을 찾아냈고, 여섯 번째 평가에서 종료 기준에 도달했으며 검증 최적점이 테스트 최적점과 정확히 일치했다.
개발자 관점에서 이 논문의 실용적 의미는 명확하다. 이미 DC-Merge 같은 SVD 기반 병합 파이프라인을 쓰고 있다면, 추가 학습이나 원본 학습 데이터 없이 병합 시점에 계산 가능한 태스크 벡터의 특이값만으로 랭크 배분을 바꿔 성능을 올릴 수 있다. 다만 목표 에너지 t_e를 검증 분할로 자동 선택하는 절차가 필요하고, 이 검증 성능이 실제 배포 성능을 대표하는지 확인해야 한다. 또한 이득이 태스크별 스펙트럼 집중도에 좌우되므로, 병합 대상 태스크들의 특이값 분포를 먼저 확인해 균일 배분이 실제로 손해인지 판단하는 것이 좋다.
한계와 전제도 분명하다. 방법은 DC-Merge의 커버 공간 위에서 랭크 분배만 바꾸는 보완적 기법이며, 총 랭크 예산 자체를 늘리지는 않는다. t_e 선택에는 홀드아웃 검증 분할이 필요하고, 태스크 수가 달라지면 최적 t_e가 이동하므로 단일 고정 기본값을 쓸 수 없다. 실험은 CLIP 비전 인코더 기반의 표준 비전 병합 프로토콜에 한정돼 있어 언어 모델이나 다른 모달리티로의 일반화는 이 논문에서 검증되지 않았다. 저자들이 명시적으로 별도의 한계 절을 두고 있지는 않으며, 결론에서는 효과적인 모델 병합이 태스크 벡터를 어떻게 집계하는가뿐 아니라 각 태스크가 얼마만큼의 스펙트럼 용량을 필요로 하는가를 함께 고려해야 한다는 주장으로 마무리한다.