AI Engineer 공간 "사부작 사부작"

모델 병합(Model Merging): 여러 두뇌를 하나로 합치는 AI 연금술 본문

Theory/Training & Fine-Tuning

모델 병합(Model Merging): 여러 두뇌를 하나로 합치는 AI 연금술

ChoYongHo 2025. 5. 19. 20:46
728x90

모델 병합: 여러 능력을 하나로 합치는 마법, Task Arithmetic과 SLERP 파헤치기

인공지능(AI) 모델의 세계는 마치 다양한 재능을 가진 예술가들이 각자의 분야에서 최고의 작품을 만들어내는 모습과 같습니다. 어떤 모델은 아름다운 그림을 그리고, 다른 모델은 감동적인 음악을 작곡하며, 또 다른 모델은 뛰어난 글쓰기 실력을 뽐냅니다. 만약 이 예술가들의 독창적인 능력들을 한데 모아, 그림도 잘 그리고 음악도 잘 만들며 글도 잘 쓰는 '만능 예술가'를 탄생시킬 수 있다면 어떨까요? 모델 병합(Model Merging) 기술이 바로 핵심입니다. 모델 병합은 기본적으로 동일한 구조를 공유하지만, 각기 다른 데이터나 작업으로 섬세하게 다듬어진(파인튜닝된) 둘 이상의 모델의 '설정값(파라미터)'을 결합하여, 추가적인 학습 시간 없이도 새로운 능력을 지닌 단일 모델을 만드는 기법입니다. 여러 분야 전문가들의 핵심 지식만을 모아 더욱 강력하고 다재다능한 전문가를 만드는 과정과 같다고 할 수 있습니다.

모델 병합, 왜 필요할까요?

우리는 왜 힘들게 만들어진 여러 모델을 다시 하나로 합치려는 걸까요? 모델 병합은 다음과 같은 목표들을 가지고 있습니다.

  • 다양한 능력의 조화: 이것이 가장 핵심적인 목표입니다. 예를 들어, 코딩 문제를 잘 푸는 모델과 인간처럼 자연스럽게 대화하는 모델을 병합하면, 사용자의 질문에 코드를 예시로 들어가며 설명하거나, 코드에 대한 심도 있는 토론을 자연스럽게 이어갈 수 있는 모델을 만들 수 있습니다. 각기 다른 '특기'를 가진 모델들을 합쳐 시너지 효과를 내는 것이죠.
  • 더 뛰어난 성능 기대: 서로 다른 환경이나 목적을 위해 학습된 모델들은 각자만의 '강점'을 가지고 있습니다. 이러한 강점들을 잘 통합하면, 개별 모델보다 더 넓은 범위의 문제에 대해 우수한 일반화 능력을 보이는, 즉 더욱 똑똑한 모델을 얻을 수 있습니다. 마치 여러 과목에서 우수한 성적을 거둔 학생들의 학습 비법들을 모아 더욱 효과적인 공부법을 개발하는 것과 같습니다.
  • 간편한 배포와 관리: 여러 개의 특화된 모델을 각각 운영하고 관리하는 것은 복잡하고 비용도 많이 들 수 있습니다. 하지만 이들을 하나의 통합된 모델로 만들면, 여러 모델을 배포하고 관리하는 대신 단 하나의 모델만 신경 쓰면 되므로 과정이 단순해지고 운영 효율성도 높아집니다. 여러 개의 작은 도구를 사용하는 대신, 하나의 잘 만들어진 '만능 도구'를 사용하는 편리함과 같다고 할 수 있습니다.

모델 병합의 마법사들: 주요 기법 소개

모델 병합에는 여러 가지 방법론이 존재합니다. 가장 단순하고 직관적인 방법부터 최근 활발히 연구되는 고급 기법들까지 다양합니다. 여기서는 대표적인 두 가지 기법인 태스크 산술(Task Arithmetic)과 구면 선형 보간법(SLERP)을 중심으로 살펴보겠습니다.

가중치 평균 (Weight Averaging): 가장 단순하고 직관적인 첫걸음

가장 기본적인 병합 방식은 각 모델의 설정값(파라미터)에 특정 비율을 곱한 뒤 합하거나, 단순히 평균을 내는 것입니다.

  • 개념: 모델 A와 모델 B가 있다면, 이 둘의 설정값을 일정 비율로 섞는다고 생각할 수 있습니다. 예를 들어, 모델 A의 영향력을 70%, 모델 B의 영향력을 30%로 두고 합치는 식입니다.
  • 비유: 빨간색 물감과 파란색 물감을 섞어 보라색을 만드는 과정과 비슷합니다. 각 물감의 양을 조절하여 원하는 보라색의 느낌을 조절하는 것처럼, 각 모델의 기여도를 조절할 수 있습니다.
  • 특징: 구현이 매우 간단하지만, 때로는 각 모델이 가진 복잡한 능력들을 섬세하게 조합하지 못해 기대만큼의 성능을 내지 못할 수도 있습니다.

태스크 산술 (Task Arithmetic): 능력치를 더하고 빼는 특별한 레시피

태스크 산술은 파인튜닝된 모델이 원래의 기본 모델로부터 '얼마나, 그리고 어떻게 변화했는지'를 나타내는 '태스크 벡터(task vector)'라는 개념을 활용합니다. 이 '태스크 벡터'가 바로 특정 작업 수행 능력을 담고 있다고 보는 것입니다.

  • 개념:
    1. 먼저, 특정 작업(예: 프랑스어 번역)에 맞게 파인튜닝된 모델과, 그 이전의 기본 모델 간의 설정값 차이를 계산합니다. 이 차이값이 바로 '프랑스어 번역 능력'이라는 '태스크 벡터'가 됩니다.
    2. 이렇게 얻어진 여러 작업의 '태스크 벡터'들을 (때로는 특정 작업의 중요도에 따라 가중치를 두어) 원래 기본 모델의 설정값에 더하거나 빼는 방식으로 여러 능력을 조합합니다.
  • 비유: 특별한 요리를 만드는 과정에 비유할 수 있습니다.
    • 원본 모델: 모든 요리의 기초가 되는 '기본 육수'.
    • 파인튜닝된 모델 A (예: 매운맛 특화 레시피): 기본 육수에 '매운 양념'(태스크 A 벡터)을 추가하여 만든 '매운탕'.
    • 파인튜닝된 모델 B (예: 감칠맛 특화 레시피): 기본 육수에 '감칠맛 소스'(태스크 B 벡터)를 추가하여 만든 '감칠맛 수프'.
    • 태스크 벡터: '매운 양념' 그 자체, 또는 '감칠맛 소스' 그 자체.
    • 태스크 산술 병합: 기본 육수에 '매운 양념'과 '감칠맛 소스'를 원하는 비율로 조합하여, 매콤하면서도 감칠맛 나는 '새로운 퓨전 요리'(새로운 능력을 가진 모델)를 만드는 것입니다. 심지어 특정 맛(예: 짠맛 태스크 벡터)을 빼서 맛을 조절할 수도 있습니다.
  • 예시: 코딩 능력을 담은 태스크 벡터와 수학 문제 풀이 능력을 담은 태스크 벡터를 추출하여, 이를 기본적인 언어 모델에 더하면 코딩과 수학 문제 풀이를 모두 잘하는 모델을 만들 수 있습니다.
  • 장점: 각 작업의 특성을 비교적 명확하게 분리하고, 원하는 대로 능력을 더하거나 빼서 조합할 수 있다는 장점이 있습니다.

구면 선형 보간법 (SLERP, Spherical Linear Interpolation): 가장 자연스러운 중간 길을 찾아서

단순히 두 모델의 설정값을 직선으로 연결하는 중간 지점을 찾는 대신, 모델의 설정값들이 놓인 복잡한 공간을 하나의 '구(공)' 표면으로 상상하고, 이 구면 위에서 두 모델 사이의 가장 짧은 곡선 경로(호)를 따라 부드럽게 중간 지점을 찾는 방식입니다.

  • 개념: 두 모델의 설정값을 각각 구면 위의 한 점이라고 생각합니다. SLERP는 이 두 점 사이를 직선으로 가로지르는 것이 아니라, 마치 구 표면을 따라 이동하듯 곡선으로 된 최단 경로를 찾아 그 경로상의 한 지점을 새로운 모델의 설정값으로 선택합니다. 이는 설정값의 '방향성'을 유지하면서 더 자연스러운 통합을 시도하는 것입니다.
  • 비유: 지구본 위에 서울과 뉴욕이라는 두 도시가 있다고 상상해 봅시다.
    • 단순 선형 보간: 서울에서 뉴욕까지 지구 중심을 뚫고 직선 터널을 파서 연결하는 것과 같습니다. 이 경로는 실제 지구 표면과는 거리가 멉니다.
    • 구면 선형 보간법 (SLERP): 서울에서 뉴욕까지 비행기를 타고 지구 표면을 따라 가장 짧은 항로로 이동하는 것과 같습니다. 이는 훨씬 자연스럽고 실제적인 경로입니다. SLERP는 모델 설정값 공간에서 이처럼 더 '자연스러운' 중간 지점을 찾아 병합하려는 시도입니다.
  • 장점: 두 모델의 특성이 매우 다르거나 설정값의 규모 차이가 클 때, 단순한 직선 보간보다 각 모델의 고유한 특성을 잘 보존하면서 부드럽게 통합된 결과를 만들어낼 수 있습니다. 다만, 한 번에 여러 모델을 병합하기보다는 주로 두 모델 간의 병합에 효과적입니다.

더욱 정교한 마법, 고급 병합 기법들

위에서 소개한 방법들 외에도, 여러 모델을 병합할 때 발생할 수 있는 문제들, 예를 들어 서로 다른 모델의 설정값들이 충돌하거나(예: 한쪽은 긍정적, 다른 쪽은 부정적 신호), 특정 설정값이 불필요하게 중복되는 경우 등을 해결하기 위한 더욱 정교한 기법들이 연구되고 있습니다.

  • TIES-Merging: 여러 모델을 병합할 때 중요한 설정값들만 남기고, 덜 중요하거나 서로 충돌하는 부분은 정리(Trim), 의견이 다른 신호는 다수결 등으로 통일(Elect Sign)한 뒤 합치는(Merge) 방식입니다. 이를 통해 정보 손실을 줄이고 성능 저하를 막으려 합니다.
  • DARE: 파인튜닝으로 변화된 설정값들 중 일부를 무작위로 버리고(Drop), 남은 설정값들의 영향력을 키워서(Rescale) 모델의 일반화 성능을 높이려는, 마치 가지치기와 유사한 아이디어의 기법입니다.

이러한 고급 기법들은 여러 모델의 지식을 더욱 효과적이고 손실 없이 통합하려는 노력의 일환입니다.

마무리하며

모델 병합 기술은 이미 학습된 AI 모델들의 지식과 능력을 추가적인 학습 시간이나 큰 비용 없이 효과적으로 결합할 수 있는 강력한 도구입니다. 마치 각 분야 최고의 전문가들이 모여 서로의 지혜를 합쳐 이전에는 해결하기 어려웠던 복잡한 문제를 해결하는 것처럼, 모델 병합은 AI가 더욱 다재다능하고 강력해질 수 있는 새로운 가능성을 제시합니다. 물론, 어떤 모델들을 어떻게 병합해야 최상의 결과를 얻을 수 있는지, 병합된 모델의 성능을 어떻게 예측하고 제어할 것인지 등 아직 탐구해야 할 영역이 많습니다. 하지만 태스크 산술, SLERP와 같은 창의적인 접근법들은 AI 모델들이 서로의 강점을 배우고 공유하며 함께 발전할 수 있는 흥미로운 방향을 보여주고 있습니다.


https://arxiv.org/abs/2212.04089

 

Editing Models with Task Arithmetic

Changing how pre-trained models behave -- e.g., improving their performance on a downstream task or mitigating biases learned during pre-training -- is a common practice when developing machine learning systems. In this work, we propose a new paradigm for

arxiv.org

https://arxiv.org/abs/2306.01708

 

TIES-Merging: Resolving Interference When Merging Models

Transfer learning - i.e., further fine-tuning a pre-trained model on a downstream task - can confer significant advantages, including improved downstream performance, faster convergence, and better sample efficiency. These advantages have led to a prolifer

arxiv.org

https://arxiv.org/abs/2311.03099

 

Language Models are Super Mario: Absorbing Abilities from Homologous Models as a Free Lunch

In this paper, we unveil that Language Models (LMs) can acquire new capabilities by assimilating parameters from homologous models without retraining or GPUs. We first introduce DARE to set most delta parameters (i.e., the disparity between fine-tuned and

arxiv.org

 

728x90