
Model Soups 논문 해설: Transformer 시대의 가중치 평균
요약
Model Soup은 여러 파인튜닝된 모델의 예측값이 아닌 가중치를 평균하여 단일 모델의 성능을 높이는 기법입니다. 앙상블과 달리 추론 비용 증가 없이 정확도와 강건성을 개선하며, 동일 사전 학습 모델에서 파인튜닝된 모델들이 공통의 저손실 영역에 존재한다는 원리를 이용합니다.
핵심 포인트
- 예측값이 아닌 가중치를 평균하여 추론 비용을 단일 모델 수준으로 유지
- Uniform soup과 Greedy soup 방식을 통해 정확도 및 분포 변화 대응력 향상
- 동일 사전 학습 모델 기반의 파인튜닝 모델들은 공통 저손실 영역에 존재함
- 추가 학습 없이 기존 체크포인트만으로 SOTA급 성능 달성 가능
- 서론
대규모 사전 학습된 모델(Pre-trained model)을 다운스트림 태스크(Downstream task)에 적응시킬 때는 학습률(Learning rate), 가중치 감쇠(Weight decay), 데이터 증강(Data augmentation), 학습 횟수 등을 변경하며 여러 모델을 파인튜닝(Fine-tuning)하고, 검증 성능이 가장 높은 1개의 모델을 채택하는 것이 일반적이다. 이 절차에서는 선택되지 않은 모델은 이후 이용되지 않는다. 하지만 이 모델들도 서로 다른 하이퍼파라미터(Hyperparameter) 하에서 학습된 유효한 해(Solution)이며, 서로 다른 예측 특성을 가지고 있을 가능성이 있다.
여러 모델의 정보를 이용하는 대표적인 방법이 앙상블(Ensemble)이다. 각 모델의 **"예측(Prediction)"**을 평균함으로써, 단일 모델보다 높은 정확도나 강건성(Robustness)을 얻는 경우가 많다. 반면, k개의 모델로 구성된 앙상블에는 원칙적으로 k번의 순전파(Forward pass)가 필요하며, 추론 시간과 메모리 사용량도 모델 수에 따라 증가한다. 고성능 사전 학습 모델일수록 이러한 추가 비용은 무시할 수 없다.
Wortsman et al. (2022)이 제안한 Model Soup는 모델의 예측이 아니라, 파인튜닝(Fine-tuning) 후의 **"가중치(Weight)"**를 평균하는 기법이다. 여러 가중치로부터 하나의 모델을 구성하기 때문에, 추론 시에 필요한 것은 통상적인 단일 모델과 동일한 1번의 순전파(Forward pass)뿐이다. 또한, 하이퍼파라미터 탐색을 통해 이미 얻은 체크포인트(Checkpoint)를 이용하는 한, Soup을 구성하기 위한 추가 학습도 필요하지 않다.

Fig.1: CLIP ViT-B/32를 ImageNet에서 파인튜닝(Fine-tuning)한 결과. 각 점은 서로 다른 하이퍼파라미터로 학습한 개별 모델을 나타내며, 그 가중치로부터 uniform soup과 greedy soup을 구성하고 있다. 가로축은 ImageNet 정확도, 세로축은 5종류의 분포 변화(Distribution shift)에 대한 평균 정확도를 나타낸다.
Fig.1에서는 학습률(Learning rate), 가중치 감쇠(Weight decay), 학습 횟수, 데이터 증강(Data augmentation), mixup, label smoothing을 변경하여 파인튜닝(Fine-tuning)한 개별 모델에 대해, 그 가중치를 평균한 Model Soup을 비교하고 있다. 모든 모델을 일률적으로 평균하는 uniform soup은 특히 분포 변화(Distribution shift)에 대한 성능을 개선하며, 검증 성능을 기준으로 모델을 선택하는 greedy soup은 ImageNet과 분포 변화(Distribution shift) 모두에서 최상의 개별 모델을 능가한다. 나아가 JFT-3B로 사전 학습한 ViT-G/14에 greedy soup을 적용한 실험에서는 ImageNet top-1 accuracy 90.94%를 달성하여, 논문 발표 시점의 SOTA를 갱신했다.
단, 뉴럴 네트워크(Neural network)의 손실 함수(Loss function)는 비볼록(Non-convex)하므로, 독립적으로 학습한 모델의 가중치를 평균한다고 해서 항상 유효한 모델을 얻을 수 있는 것은 아니다. 서로 다른 손실 분지(Loss basin)에 속하는 해를 평균하면, 두 끝점이 고정밀도이더라도 그 중간에서는 성능이 크게 저하될 수 있다. 그럼에도 불구하고 Model Soup이 기능하는 배경에는, 동일한 사전 학습 모델로부터 파인튜닝(Fine-tuning)된 해가 종종 공통의 저손실 영역(Low-loss region)에 존재한다는 성질이 있다.
또한, 평균하는 모델은 단순히 가깝기만 해서는 안 된다. 거의 동일한 해를 평균하더라도 얻을 수 있는 개선은 제한적이다. Model Soup에는 가중치를 선형 보간(Linear interpolation)해도 성능이 무너지지 않는 호환성과, 서로 다른 예측 특성을 가진다는 다양성(Diversity)이 모두 요구된다. 따라서 그 유효성을 이해하기 위해서는 가중치 공간의 손실 지형(Loss landscape)뿐만 아니라, 가중치 평균과 예측 앙상블(Prediction ensemble)의 관계까지 고려해야 한다.
본 기사에서는 먼저 uniform soup, greedy soup, learned soup의 정의와 알고리즘을 정리한다. 다음으로 파인튜닝(Fine-tuned)된 모델 간의 손실 지형(Loss landscape)과 선형 보간(Linear interpolation)을 통해 가중치 평균이 기능하는 기하학적 조건을 확인한다. 그 후, Model Soup과 로짓 앙상블(Logit ensemble)의 손실 차이를 근사하는 식을 도출하고, 보간 경로상의 손실 곡률(Loss curvature)과 예측 분포상의 로짓 분산(Logit variance)이 양자의 차이를 어떻게 결정하는지 설명한다. 마지막으로 ImageNet과 분포 변화(Distribution shift)를 중심으로 한 실험 결과로부터 Model Soup의 유효성, 적용 범위, 성립하지 않는 조건을 살펴본다.
- Model Soup의 정의와 구축법
Model Soup는 공통된 사전 학습된 (pre-trained) 모델로부터 얻은 여러 개의 미세 조정 (fine-tuned) 모델을 파라미터 공간상에서 통합하는 기법이다. 본 장에서는 일반적인 모델 선택 및 예측 앙상블 (ensemble)과의 차이점을 정식화한 후, 원 논문에서 다루고 있는 Uniform Soup, Greedy Soup, Learned Soup의 구축 방법을 설명한다.
2.1 Fine-tuning과 모델 선택의 정식화
입력을 $x$, 클래스 수를 $C$, 모델 파라미터를 $\theta \in \mathbb{R}^d$라고 하고, 신경망이 출력하는 로짓 (logit)을
$f(x; \theta) \in \mathbb{R}^C$
라고 표기한다. 사전 학습을 통해 얻은 초기 파라미터를 $\theta_0$, 미세 조정 (fine-tuning) 설정을 $h$라고 하면, 미세 조정 후의 파라미터는
$\theta = \operatorname{FineTune}(\theta_0, h)$
라고 쓸 수 있다.
여기서 $h$에는 학습률 (learning rate), 옵티마이저 (optimizer), 가중치 감쇠 (weight decay), 데이터 증강 (data augmentation), 학습 에포크 (epoch) 수, 랜덤 시드 (random seed) 등이 포함된다. 서로 다른 $k$개의 설정 $h_1, \ldots, h_k$를 사용하면, 공통의 초기값 $\theta_0$로부터
$\theta_i = \operatorname{FineTune}(\theta_0, h_i), \qquad i=1, \ldots, k$
라는 $k$개의 후보 모델을 얻을 수 있다.
검증 집합에 대한 평가 지표를 $V(\theta)$라고 하며, 값이 클수록 성능이 높다고 가정한다. 일반적인 하이퍼파라미터 탐색에서는
$i^* = \arg\max_{i \in {1, \ldots, k}} V(\theta_i)$
를 통해 최상의 후보를 선택하며, 최종 예측에는 $\theta_{i^*}$를 사용한다. 이 방법의 추론 비용은 단일 모델과 동일하지만, 선택되지 않은 $k-1$개의 모델은 사용되지 않는다.
이와 대조적으로, 로짓 앙상블 (logit ensemble)에서는 여러 모델의 출력을 평균한다.
$f^{\mathrm{ens}}(x) = \frac{1}{k} \sum_{i=1}^{k} f(x; \theta_i).$
각 모델의 예측을 통합할 수 있는 반면, 하나의 입력 $x$에 대해 $k$개의 모델을 실행해야 한다. 따라서 추론 시의 계산량은 기본적으로 $k$에 비례한다. 또한 모든 모델을 유지해야 하므로, 파라미터 저장 용량도 단일 모델의 약 $k$배가 된다. 다만, 추론을 순차적으로 수행하느냐 병렬로 수행하느냐에 따라 실행 시의 피크 메모리 (peak memory)는 달라질 수 있다.
Model Soup에서는 모델의 출력이 아닌 파라미터를 미리 평균한다. 예를 들어, 모든 후보를 동일한 가중치로 평균하는 경우,
$\theta_{\mathrm{soup}} = \frac{1}{k} \sum_{i=1}^{k} \theta_i, \qquad f^{\mathrm{soup}}(x) = f(x; \theta_{\mathrm{soup}})$
가 된다. 추론 시 실행하는 것은 평균된 파라미터 $\theta_{\mathrm{soup}}$를 가진 단 하나의 모델뿐이므로, 추론 계산량과 모델 크기는 후보 수 $k$에 의존하지 않는다.

Tab. 1: 검증 성능에 따른 단일 모델 선택, 로짓 앙상블 (logit ensemble), Uniform Soup, Greedy Soup, Learned Soup의 비교. 추론 비용은 단일 모델에 대한 상대값으로 표시함.
Tab. 1에서 보는 바와 같이, 앙상블 (ensemble)의 추론 계산량이 $O(k)$인 것에 반해, 각 Model Soup의 추론 계산량은 $O(1)$이다. 다만, 이는 최종 모델을 구축한 후의 추론 비용을 비교한 것이며, 후보가 되는 $k$개의 모델을 미세 조정 (fine-tuning)하는 비용은 공통적으로 필요하다.
또한, Model Soup의 구축 비용은 방법론에 따라 다르다. Uniform Soup는 파라미터의 산술 평균만으로 구축할 수 있지만, Greedy Soup에서는 후보를 추가할 때마다 검증 성능을 평가해야 하며, Learned Soup에서는 혼합 계수 (mixing coefficient)의 최적화가 필요하다. 따라서 "추가 학습을 필요로 하지 않는다"는 성질은, 후보 모델 전체를 다시 미세 조정 (fine-tuning)할 필요가 없다는 의미로 이해해야 한다.
일반적으로,
f\left(x;\frac{1}{k}\sum_{i=1}^{k}\theta_i\right)\neq\frac{1}{k}\sum_{i=1}^{k}f(x;\theta_i)
이다. 뉴럴 네트워크 (Neural Network)는 파라미터 $\theta$에 대해 비선형 (non-linear)이기 때문에, 파라미터를 평균한 Model Soup와 로짓 (logit)을 평균한 앙상블 (ensemble)이 동일한 예측을 반환한다고 보장할 수 없다. 두 방식이 유사한 동작을 보이는 조건에 대해서는 제4장에서 자세히 다룬다.
2.2 Uniform Soup 와 Greedy Soup
Uniform Soup와 Greedy Soup는 모두 선택된 후보 모델을 동일한 가중치로 평균한다. 여기서 Soup에 사용하는 모델의 인덱스 집합을
$\mathcal{S} \subseteq {1,\ldots,k}$
라고 하자. 이때, $\mathcal{S}$에 포함된 모델들로 구성된 동일 가중치 Model Soup를
$\theta_\mathcal{S}=\frac{1}{|\mathcal{S}|}\sum_{i\in\mathcal{S}}\theta_i$
로 정의한다.
가장 단순한 구축 방법이 Uniform Soup이다. Uniform Soup에서는 모든 후보 모델을 무조건적으로 채택하므로,
$\mathcal{S}={1,\ldots,k},\qquad\theta_{\mathrm{uniform}}=\frac{1}{k}\sum_{i=1}^{k}\theta_i$
가 된다.
Uniform Soup는 Soup의 구성 요소를 선별하기 위한 검증 집합 (validation set)을 필요로 하지 않으며 구현도 단순하다. 하지만 후보 중에 단일 성능이 낮은 모델이나 다른 후보와의 평균에 적합하지 않은 모델이 포함되어 있을 경우, 그 영향으로 인해 평균 후의 성능이 저하될 가능성이 있다.
특히, 과도하게 큰 학습률 (learning rate)로 미세 조정 (fine-tuning)된 모델은 공통의 초기값으로부터 크게 이동하여, 다른 후보 모델들과의 보간 경로 (interpolation path) 상에 높은 오차 장벽 (error barrier)을 형성할 수 있다. 이러한 모델을 무조건적으로 평균하면, 파라미터 평균이 저손실 영역 (low-loss region)의 바깥쪽으로 이동할 가능성이 있다.
이 문제에 대처하기 위해, 원 논문에서는 Greedy Soup를 제안한다. Greedy Soup는 후보 모델을 검증 성능이 높은 순서대로 조사하며, 현재의 Soup에 추가해도 검증 성능이 저하되지 않는 모델만을 채택한다.
먼저, 후보 모델을 검증 성능의 내림차순으로 정렬한다.
$V(\theta_{(1)})\geq V(\theta_{(2)})\geq\cdots\geq V(\theta_{(k)})$
여기서 $(i)$는 정렬 후의 인덱스를 나타낸다. 우선, 검증 성능이 가장 높은 후보 모델을 Soup의 초기 요소로 채택한다.
$\mathcal{S}={(1),},\qquad\theta_\mathcal{S}=\theta_{(1)}$.
현재 Soup가 $m$개의 모델로 구성되어 있다고 가정하자. 후보 모델 $\theta_{(i)}$를 추가했을 때의 파라미터 평균은 다음과 같다.
$\widetilde{\theta}=\frac{m\theta_\mathcal{S}+\theta_{(i)}}{m+1}$
이 후보 평균이
$V(\widetilde{\theta})\geq V(\theta_\mathcal{S})$
를 만족하는 경우에 한하여,
$\mathcal{S}\leftarrow\mathcal{S}\cup{(i)}$
로 후보 모델을 채택한다.
조건을 만족하지 않을 경우, 해당 모델은 제외한 채 다음 후보로 넘어간다.
이 절차는 검증 성능이 가장 높은 단일 모델 $\theta_{(1)}$에서 시작하여, 검증 성능을 저하시키는 업데이트를 수용하지 않는다. 따라서 수치 계산이나 평가의 비결정성 (non-determinism)을 무시한다면, 최종적인 Greedy Soup의 성능은 사용한 "검증 집합 상에서는" 최상의 단일 모델 성능을 밑돌지 않는다.
다만, 이 성질은 Greedy Soup 구축에 사용된 검증 집합 상에서만 성립한다. 테스트 집합 (test set)이나 분포 변화 (distribution shift) 상황에서의 성능까지 보장하는 것은 아니며, 검증 집합에 대한 과적합 (overfitting)이 발생할 가능성도 있다.
또한, Greedy Soup는 순차적인 알고리즘이므로 후보를 평가하는 순서에 의존한다. 검증 성능의 내림차순으로 정렬함으로써 최상의 단일 모델을 초기해로 확보하고 성능이 낮은 후보를 뒤로 미루고 있지만, 얻어지는 부분 집합이 전역적으로 최적 (globally optimal)이라고 단정할 수는 없다.
Greedy Soup는 모델 간의 파라미터 거리나 보간 경로(interpolation path) 상의 손실을 직접 평가하는 것은 아니다. 그럼에도 불구하고, 현재의 Soup와 평균했을 때 검증 성능을 저하시키는 모델을 배제함으로써, 다른 후보와는 다른 손실 분지 (loss basin)에 속하는 모델이나 평균에 부적절한 모델의 혼입을 간접적으로 억제할 수 있다. 이러한 선택 메커니즘이 모든 후보를 무조건적으로 평균하는 Uniform Soup와의 주요한 차이점이다.
2.3 Learned Soup와 구현상의 조건
Uniform Soup와 Greedy Soup에서는 채택된 모델을 모두 동일한 가중치로 평균한다. 이를 일반화하여, 후보 모델마다 서로 다른 혼합 계수 (mixing coefficient)를 할당한다고 하면,
$\theta(\boldsymbol{\alpha})=\sum_{i=1}^{k}\alpha_i\theta_i$
라는 파라미터를 생각할 수 있다. 여기서,
$\alpha_i\geq 0,\qquad\sum_{i=1}^{k}\alpha_i=1$
이라고 하면, $\theta(\boldsymbol{\alpha})$는 후보 모델들의 볼록 결합 (convex combination)이 된다.
Learned Soup에서는 이 혼합 계수를 검증 집합 상의 손실이 작아지도록 최적화한다. 검증 집합을
$\mathcal D_{\mathrm{val}}={(x_j,y_j)}_{j=1}^{n}$
이라 하고, $\ell$을 분류 손실 (classification loss), $\beta>0$를 로짓 (logit)의 스케일을 조정하는 계수라고 하면, 최적화 문제는 다음과 같이 나타낼 수 있다.
$\min_{\boldsymbol{\alpha},\beta};\sum_{j=1}^{n}\ell\left(\beta f\left(x_j;\sum_{i=1}^{k}\alpha_i\theta_i\right),y_j\right)$
$\alpha$와 $\beta$의 역할
$\boldsymbol{\alpha}$는 어떤 후보 모델을 어느 비율로 섞을지를 결정하는 계수이며, Model Soup의 가중치 그 자체를 구성한다.
반면, $\beta$는 구성된 Model Soup의 로짓 (logit) 전체를 확대 또는 축소하여 예측의 확신도 (confidence)를 조정하는 계수이다. 예측 클래스를 선택하는 순위는 바꾸지 않고, Softmax의 날카로움 (sharpness)만을 조정한다.
즉, $\boldsymbol{\alpha}$가 "어떤 모델을 섞을지"를 결정하고, $\beta$가 "섞은 모델을 어느 정도 확신 있게 만들지"를 결정한다.
제약 조건이 있는 최적화 (constrained optimization)를 직접 수행하는 대신, 자유 파라미터 $a_i \in \mathbb{R}$를 도입하여,
$\alpha_i=\frac{\exp(a_i)}{\sum_{r=1}^{k}\exp(a_r)}$
와 같이 소프트맥스 파라미터화 (softmax parameterization)함으로써,
$\alpha_i\geq 0,\qquad\sum_{i=1}^{k}\alpha_i=1$
을 자동으로 만족할 수 있다.
또한, 네트워크 전체에서 하나의 계수 벡터 $\boldsymbol{\alpha}$를 공유하는 방법 외에도, 층(layer)마다 서로 다른 혼합 계수를 학습하는 Learned Soup by Layer도 검토되고 있다. 층을 $l$, 모델 $i$의 제 $l$층 파라미터를 $\theta_i^{(l)}$이라고 하면,
$\theta^{(l)}=\sum_{i=1}^{k}\alpha_i^{(l)}\theta_i^{(l)}$
와 같이 층마다 서로 다른 계수 $\boldsymbol{\alpha}^{(l)}$를 할당한다.
Learned Soup는 후보 모델의 기여도를 연속적으로 조정할 수 있기 때문에 Uniform Soup나 Greedy Soup보다 유연하다. 반면, 검증 손실을 미분할 때마다 여러 모델의 파라미터로부터 새로운 모델을 구성해야 한다. 또한, 계수를 학습하는 동안에는 후보 모델의 가중치를 유지하고 있어야 하므로, 구현상의 계산량과 메모리 부하가 크다.
원 논문의 구현에서는 각 후보 모델의 파라미터를 CPU 메모리 상에서 결합하고, 구성된 파라미터를 미니 배치 (mini-batch) 단위로 GPU로 전송한다. 따라서 대규모 모델이나 후보 수가 많은 설정에서는 CPU-GPU 간의 전송이 병목 (bottleneck)이 될 가능성이 있으며, Greedy Soup보다 구현 부하가 크다.
어떤 방법을 사용하더라도, 파라미터 평균을 의미 있는 작업으로 성립시키기 위해서는 적어도 다음 조건을 만족해야 한다.
- 후보 모델의 아키텍처(Architecture)가 동일해야 한다
- 각 파라미터 텐서(parameter tensor)의 형상(shape)과 대응 관계가 일치해야 한다
- 동일한 다운스트림 태스크(downstream task)를 대상으로 하며, 출력 클래스의 순서가 일치해야 한다
- 분류 헤드(classification head)를 포함하여, 각 파라미터의 의미가 모델 간에 일치해야 한다
- 입력 전처리나 토큰화(tokenization) 등, 모델의 입출력 사양이 일치해야 한다
- 원칙적으로,
동일한 사전 학습된 파라미터로부터 파인튜닝(fine-tuning)되어야 한다
동일한 아키텍처라 하더라도, 서로 다른 초기값으로부터 독립적으로 학습한 모델에서는 은닉 유닛(hidden unit)이나 어텐션 헤드(attention head)의 치환 대칭성(permutation symmetry)으로 인해, 동일한 인덱스의 파라미터가 같은 기능을 담당한다고 보장할 수 없다. 그러한 모델들을 요소별로 평균하더라도, 기능적으로 의미 있는 중간 모델을 얻을 수 있다는 보장은 없다.
공통의 사전 학습 초기값으로부터 파인튜닝하는 것은, 후보 모델들을 인접한 저손실 영역(low-loss region)에 머물게 할 뿐만 아니라, 모델 간의 파라미터 대응 관계를 유지하는 역할도 한다. Model Soup은 단순히 같은 형상의 텐서(tensor)를 평균하는 기법이 아니라, 공통의 초기값에 의해 유지된 파라미터 대응 관계를 이용하는 기법으로 이해할 수 있다.
구현 시에는 학습 가능한 파라미터(trainable parameter) 이외의 상태에도 주의가 필요하다. 배치 정규화(Batch Normalization)의 실행 평균(running mean)이나 실행 분산(running variance)은 경사(gradient)에 의해 최적화되는 파라미터가 아니라, 학습 데이터로부터 추정된 통계량이다. 따라서 단순한 산술 평균이 적절하지 않을 수 있으며, 평균을 낸 모델에 대해 통계량을 재계산하는 방법도 고려할 수 있다.
또한, 정수형 카운터(counter)와 같이 평균 자체를 정의할 수 없는 버퍼(buffer)는 개별적으로 처리해야 한다. 출력층과 임베딩층(embedding layer)이 가중치를 공유하는 모델에서는, 동일한 텐서를 중복해서 평균하지 않도록 파라미터 공유(parameter sharing) 관계를 유지해야 한다.
최종적으로 얻어지는 Uniform Soup, Greedy Soup, Learned Soup는 모두 한 세트의 파라미터를 가진 단일 모델이다. 세 가지 방법의 차이는 추론 방법이 아니라, 여러 후보 모델로부터 최종 파라미터를 어떤 규칙으로 구성하느냐에 있다.
- 가중치 평균이 작동하는 기하학적 조건
제2장에서는 여러 파인튜닝(fine-tuned)된 모델로부터 한 세트의 파라미터를 구성하는 방법을 설명했다. 하지만 신경망의 손실 함수(loss function)는 비볼록(non-convex)하기 때문에, 성능이 높은 모델들끼리 평균을 낸다고 해서 그 중간에 반드시 성능이 높은 모델이 존재한다는 보장은 없다. 본 장에서는 동일한 사전 학습 모델로부터 파인튜닝된 해(solution)들의 위치 관계를 조사하여, Model Soup이 작동하는 기하학적 조건을 정리한다.
3.1 공유 초기값으로부터 얻어지는 저손실 영역
사전 학습된 파라미터를 $\theta_0$라 하고, 서로 다른 하이퍼파라미터(hyperparameter)나 랜덤 시드(random seed)로 파인튜닝하여 얻은 두 해를 $\theta_1, \theta_2$라고 하자. 이 두 해를 잇는 선형 보간(linear interpolation)은 다음과 같이 나타낼 수 있다.
$$\theta_\alpha = (1-\alpha)\theta_1 + \alpha\theta_2, \qquad \alpha \in [0,1]$$
$\alpha=0$일 때는 $\theta_\alpha = \theta_1$, $\alpha=1$일 때는 $\theta_\alpha = \theta_2$가 되며, $\alpha=0.5$는 두 모델을 동일한 가중치로 평균한 Model Soup에 대응한다. 보간 경로상의 손실을
$$\mathcal{L}(\alpha) = \mathcal{L}(\theta_\alpha)$$
라고 하면, 가중치 평균이 작동하기 위해서는 적어도 중간 영역에서 $\mathcal{L}(\alpha)$가 크게 상승하지 않아야 한다.
논문에서는 이 성질을 확인하기 위해, 사전 학습된 모델 $\theta_0$와 두 개의 파인튜닝된 모델 $\theta_1, \theta_2$가 이루는 2차원 평면 위에서 손실과 분류 오차를 시각화하고 있다.
먼저, 초기값으로부터 각 해까지의 변위(displacement)를
$$v_1 = \theta_1 - \theta_0, \qquad v_2 = \theta_2 - \theta_0$$
라고 하자. $v_1$을 정규화하여
$$\hat{v}_1 = \frac{v_1}{|v_1|}$$
를 얻는다. 이어서, $v_2$에서 $\hat{v}_1$ 방향의 성분을 제외하고,
$$\widetilde{u}_2=v_2-(u_1^\top v_2)u_1,\qquad u_2=\frac{\widetilde{u}_2}{|\widetilde{u}_2|}$$
라고 한다. 이를 통해 $\theta_0, \theta_1, \theta_2$가 이루는 평면의 정규직교기저 (Orthonormal basis) $u_1, u_2$를 얻을 수 있다. 이 평면 위의 파라미터는,
$\theta(a,b)=\theta_0+a u_1+b u_2$
로 나타낼 수 있다.

Gram-Schmidt 법을 통해 직교기저 $u_1, u_2$를 생성함으로써, 세 모델이 이루는 2차원 평면을 좌표화하는 조작

Fig.2: 사전 학습된 모델(Pre-trained model)과 두 개의 미세 조정된 모델(Fine-tuned model)이 이루는 평면 위의 학습 손실(Training loss), ImageNet 테스트 오차(Test error), 다섯 가지 분포 변화(Distribution shift)에 대한 평균 테스트 오차. 별표는 사전 학습된 파라미터 $\theta_0$를, 사각형은 미세 조정 후의 해 $\theta_1, \theta_2$를 나타낸다.
Fig.2의 상단에서는 동일한 학습률 (Learning rate)을 사용하고, 랜덤 시드 (Random seed)만 바꾸어 $\theta_1, \theta_2$를 얻었다. 하단에서는 한쪽 모델에 서로 다른 학습률을 사용했다. 어떤 경우든 학습 손실뿐만 아니라, ImageNet 및 분포 변화 상의 분류 오차가 분지 (Basin) 형태의 지형을 형성하고 있다.
중요한 점은 $\theta_0, \theta_1, \theta_2$ 중 어느 것도 해당 평면 위에서 최적의 점이 아니라는 것이다. 두 미세 조정된 모델 사이에는 손실과 오차가 낮은 영역이 넓게 퍼져 있으며, 선형 보간 (Linear interpolation)을 통해 양 끝점보다 성능이 높은 중간 해로 이동할 수 있는 경우가 있다.
다만, Fig.2는 고차원 파라미터 공간에서 잘라낸 2차원 단면에 불과하다. 이 시각화만으로 손실 함수 전체가 볼록 (Convex)하다거나, 임의의 미세 조정된 모델을 선형 보간할 수 있다고 결론 내릴 수는 없다. 여기서 읽어낼 수 있는 것은, 동일한 사전 학습 파라미터를 공유하는 특정 해들 사이에 낮은 손실을 가진 선형 경로가 존재한다는 경험적인 성질이다.
3.2 해의 다양성과 보간 이득 (Interpolation advantage)
두 모델이 동일한 저손실 영역에 존재하더라도, 거의 같은 해로 수렴해 있다면 가중치를 평균하는 이점은 작다. Model Soup을 통한 개선을 위해서는, 보간 경로상에서 성능이 무너지지 않아야 함은 물론, 후보 모델들이 서로 다른 해여야 한다.
모델 간의 차이를 측정하기 위해, 초기값 $\theta_0$로부터 각 해로의 변위
$v_1=\theta_1-\theta_0,\qquad v_2=\theta_2-\theta_0$
가 이루는 각 $\phi$를 고려한다.
$$\cos\phi=\frac{v_1^\top v_2}{|v_1||v_2|}$$
$\phi$가 작을 경우, 두 모델은 사전 학습된 파라미터로부터 유사한 방향으로 이동하고 있다. 반면, $\phi$가 $90^\circ$에 가까울수록 미세 조정에 의한 파라미터 업데이트 방향은 서로 다르다.
논문에서는 두 모델을 평균함으로써 얻는 개선량을 보간 이득 (Interpolation advantage)으로서 다음과 같이 정의한다.
$$A_{\mathrm{interp}}=\operatorname{Acc}\left(\frac{\theta_1+\theta_2}{2}\right)-\frac{1}{2}\Bigl(\operatorname{Acc}(\theta_1)+\operatorname{Acc}(\theta_2)\Bigr)$$
첫 번째 항은 두 가중치를 평균한 모델의 정확도 (Accuracy)이며, 두 번째 항은 두 끝점 모델의 정확도 평균이다. 따라서 $A_{\mathrm{interp}}>0$ 이라면, 가중치 평균 후의 모델이 끝점 정확도의 평균을 상회한다.
여기서 주의할 점은 $A_{\mathrm{interp}}>0$ 이 평균 모델이 최상의 끝점을 갱신했음을 의미하지는 않는다는 것이다. 예를 들어, 한쪽 끝점만 매우 높은 정확도를 가진 경우, 평균 모델이 끝점 정확도의 평균을 상회하더라도 최상의 끝점에는 도달하지 못할 가능성이 있다. 보간 이득은 어디까지나 선형 보간에 수반되는 평균적인 이득을 측정하는 지표이다.

그림 3: 초기값으로부터 두 개의 fine-tuned (미세 조정된) 모델로 향하는 변위가 이루는 각 $\phi$와 interpolation advantage (보간 이득)의 관계. 각 점은 서로 다른 random seed (무작위 시드), 학습률, 데이터 증강 (data augmentation)을 통해 얻은 모델 쌍을 나타낸다.
Fig.3에서는 $\phi$가 큰 모델 쌍일수록 interpolation advantage도 커지는 경향이 확인된다. 또한, random seed만 바꾼 경우보다 학습률이나 데이터 증강을 바꾼 경우에 서로 다른 방향으로 이동한 해(solution)를 얻기 쉽다.
이 결과는 하이퍼파라미터의 다양성이 Model Soup에 있어 유효함을 시사한다. 서로 다른 학습 조건에서 얻은 모델은 공통적인 태스크 의존적 성분 외에도, 각각 서로 다른 오차나 편향을 가질 것으로 생각된다. 가중치 평균을 통해 공통 성분을 유지하면서 각 모델에 고유한 변동이 부분적으로 상쇄된다면, 개별 모델보다 안정적인 해를 얻을 수 있다.
단, 모델 간의 각도가 크다는 사실 자체가 Model Soup가 성공하기 위한 충분조건은 아니다. 파라미터 공간(parameter space) 상의 각도는 모델의 재매개변수화(reparameterization)나 층별 스케일에 의존하며, 함수 공간(function space) 상의 예측 차이를 직접적으로 나타내는 것도 아니다. 또한, 고차원 공간에서는 두 벡터가 거의 직교하는 것 자체가 드문 일이 아니다. Fig.3이 보여주는 것은 검토된 fine-tuning 조건 범위 내에서의 경험적인 상관관계이며, 각도만으로 평균 가능성을 판정할 수 있는 것은 아니다.
3.3 높은 학습률에 의한 오차 장벽
AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기