Generic selectors
Search in title
Search in content
Post Type Selectors
コラム
AI用語集

モデルマージとは何か

用語:モデルマージ

一言で:モデルマージとは、複数の学習済み・微調整済みモデルの重みや差分を一つのparameter setへ統合する手法群で、単純なweight averagingでは通常、同一architectureに加えてcommon initialization/baseなどのweight correspondence、または明示的なalignmentが重要になります。

AI用語の分類:AIエージェント・開発・運用

モデルマージ(model merging)は、複数の学習済みモデルの重み、または共通のbase modelからの重み差分を組み合わせ、一つのparameter setへ統合する手法群です。open-weight LLMの世界では、同じ基盤モデルから別々にfine-tuningされたモデルをまとめ、複数タスクの能力や性格を一つのモデルへ統合しようとする用途でよく使われます。

重要なのは、モデルマージが「複数モデルを同時に動かす」ことではない点です。推論時に複数モデルの出力を統合するensembleとは異なり、最終的には一つの重み集合を作ります。一方で、「同じarchitectureならweightを同じ位置どうしで平均すればよい」と考えるのも危険です。

単純な重み平均が意味を持つための条件

二つのモデルが同じarchitectureなら、parameter tensorのshapeは対応しやすくなります。しかし、shapeが同じことと、同じindexのweightが同じ機能を担っていることは別問題です。

ニューラルネットワークには、hidden unitやchannelを入れ替えても同じ関数を表せるpermutation symmetryがあります。独立したrandom initializationから学習した二つのネットワークでは、機能的には似た表現を学んでいても、内部のunit配置が異なることがあります。その状態で同じindexのweightをそのまま平均すると、対応していない要素どうしを混ぜて性能を壊す可能性があります。

AinsworthらのGit Re-Basinは、この問題を明示的に扱い、一方のモデルのunitをpermutationして別モデルへalignmentしたうえでweight-space mergingを行う方法を示しました。つまり、「同一architecture」は必要条件になり得ても、naive averagingの十分条件ではありません。[1]

一方、同じpretrained checkpointからfine-tuningした複数モデルは、初期位置を共有しているためweightsの対応が保たれやすく、単純平均や補間が機能することがあります。Model Soupsは、同じpretrained modelから異なるhyperparameterでfine-tuneした複数checkpointのweight averagingが有効になり得ることを示した代表例です。[2]

Task Arithmeticではcommon baseが構造上の前提になる

Task Arithmeticでは、共通のpretrained modelを \(W_0\)、あるtaskへfine-tuningしたmodelを \(W_i\) とすると、その差分 \(W_i – W_0\) をtask vectorとして扱います。複数のtask vectorを足し合わせ、baseへ加えることで複数の振る舞いを統合しようとします。[3]

ここでは共通のbase checkpointが計算式そのものに入っています。異なるbaseから作った二つのfine-tuneをそのままtask vectorとして比較すると、「何からの差分か」が揃いません。したがってTask Arithmeticを使ったmergeを読むときは、各checkpointが同じbaseから派生しているかを確認する必要があります。

TIES-Mergingもcommon-base由来の更新を扱う

TIES-Mergingは、複数のfine-tuned modelを統合するときに、parameter update同士の干渉を減らすための方法です。小さな更新をtrimし、更新方向のsign conflictを調整し、合意した方向を中心にmergeします。[4]

このとき扱うのも、base modelからfine-tuningによって生じたtask-specificな更新です。したがって、代表的なTask Arithmetic/TIESの設定では、同じpretrained/base modelから派生したcheckpointを比較可能な差分として扱うことが重要です。

ただし、ここから「モデルマージは必ず同じbaseでなければ不可能」と一般化してはいけません。

異なるinitializationのモデルはマージできないのか

絶対に不可能というわけではありません。Git Re-Basinのようにpermutation matchingを行い、独立に学習された同一architectureのモデルを同じweight-spaceの基準へそろえてからmergeする研究があります。ほかにもactivation matching、weight matching、re-basinなど、内部表現やparameter correspondenceをそろえる研究があります。

つまり、same baseは多くの実務的merge、とくにtask-vector系手法では非常に重要な前提ですが、model merging全体の絶対条件ではありません。異なるinitializationやbaseを扱う場合には、「何を対応づけてからmergeしているのか」が追加の確認事項になります。

そしてalignmentを行えば必ず成功するわけでもありません。architecture、training history、task差、loss landscapeなどによって、merge後の性能は大きく変わります。

能力は単純な足し算ではない

Aモデルが数学に強く、Bモデルがコードに強いとしても、AとBを50:50で混ぜれば両能力がそのまま維持されるとは限りません。fine-tuningで生じた更新が同じparameterで衝突することがあるからです。

TIES-Mergingがtrim、sign election、mergeという処理を導入したのも、このinterferenceを減らすためです。モデルマージ研究では、単純平均、Fisher-weighted averaging、Task Arithmetic、TIESなど、何をどの係数で統合するかについて複数の方法があります。

したがって「mergeした」という事実だけで性能向上を判断してはいけません。merge後のモデルは新しいparameter configurationであり、実測評価が必要です。

モデルマージと蒸留・ensembleの違い

蒸留では、teacher由来の出力や表現を学習信号としてstudentを訓練します。モデルマージは、既存のweightsやweight deltasを直接統合することが中心です。

ensembleは、複数モデルを個別に保持し、推論時にそれぞれを実行して出力を組み合わせます。モデルマージは一つのparameter setに統合するため、成功すればensembleのように推論コストを複数モデル分へ増やさずに済みます。

ただし、一部のmerging methodはvalidation data、coefficient tuning、alignment procedureなどを必要とします。「追加のフル再学習がない」ことと「一切の調整やデータが不要」であることは同義ではありません。

安全性や性格も単純に平均されない

モデルマージは、知識やタスク能力だけを選択的に統合する魔法ではありません。応答スタイル、安全調整、拒否傾向、言語特性などに関係するweightsも同時に変わります。

そのため「安全なモデルAと高性能なモデルBを混ぜたから、安全かつ高性能」という推論は成立しません。merge後は新しいモデルとして、安全性、指示追従、hallucination、各専門能力を再評価する必要があります。

元の文脈で何を見るか

モデルカードや紹介文で「merge」とあれば、まずarchitectureだけでなく、各元モデルがどのbase/checkpointから派生したかを確認します。同じbaseからのfine-tunesなら、Task ArithmeticやTIESのようなtask-vector系手法と整合しやすくなります。

別baseや独立学習モデルをmergeしている場合は、weight matching、permutation alignment、re-basin、activation alignmentなど、対応関係をそろえる工程があるかを確認します。単に「architectureが同じ」とだけ書かれているなら、それだけでnaive weight averagingの妥当性は判断できません。

次に、merge method、係数、各元モデル、base、merged modelを同じ条件で比較した評価を見ます。平均スコアだけでなく、最良単体モデルとの比較、能力ごとの劣化、安全性の再評価も重要です。

モデルマージの価値は、既存checkpointを再利用して一つのモデルへ能力を組み合わせられる可能性にあります。しかし、成立条件は「同じshape」より深く、common baseか、weightsが機能的に対応しているか、対応していない場合にどのalignmentを使ったかまで確認して初めて、元の研究や製品説明を正しく読めます。

注・出典

  1. Ainsworth, Hayase, Srinivasa (2023), Git Re-Basin: Merging Models modulo Permutation Symmetries ↩
  2. Wortsman et al. (2022), Model soups: averaging weights of multiple fine-tuned models improves accuracy without increasing inference time ↩
  3. Ilharco et al. (ICLR 2023), Editing Models with Task Arithmetic ↩
  4. Yadav et al. (NeurIPS 2023), TIES-Merging: Resolving Interference When Merging Models ↩

AI協働制作について

本記事は、著者が独自に設計した指示、参照資料、出典確認規則、著作権確認および監査工程を組み込んだChatGPT等の生成AIを、情報収集の補助、資料整理、構成検討、草稿作成、文章校正および監査補助に使用して制作しました。記事の対象範囲、情報源の採否、構成、解釈および最終表現は著者が判断し、最終稿を承認しています。著者は、本記事の正確性、独自性、引用、著作権処理および公開内容について責任を負います。制作工程の詳細は「AI協働制作方針」をご覧ください。

おすすめ