見出し画像

論文まとめ(第4回):Evolutionary Model Merge

 さて、前回の投稿から1年弱の間隔が空いていますが、予測できていたことなので一々言い訳しません。「三日坊主も百回繰り返せば一年」と言いますので、何度でも始動すればよいのです。
 今回紹介する論文は、複数のモデルを一つに統合するモデルマージにおいて進化的アルゴリズムを適用するEvolutionary Optimization of Model Merging Recipesです。


Evolutionary Optimization of Model Merging Recipes

 モデルマージ(Model Merge)とは、複数のモデルを一つに統合する手法です。近年は大規模なデータセットで訓練された「基盤モデル」を、特定のタスクに合わせてFine-tuningする手法が主流です。例えば、ChatGPTは対話形式に特化した言語モデルとして有名ですし、数学問題や英語以外の言語に特化したモデルも開発されています。そうした異なる能力を持つモデルを一つに統合できれば、データセットの収集やモデルの訓練などの労苦を経ずに新たなモデルを作り出すことが可能になります。これがモデルマージの目的です。

 ただし、モデルマージの成否は実行者の直感と経験則に依存しており、「黒魔術」に近いと評されています。2つのモデルのパラメータを一定比率で平均する単純な方法であっても、マージ対象となるモデルや比率の設定には無数の組み合わせが存在し、実行者は直感を頼りにその中の一つを選定するしかありません。そのため、最適な設定を発見するには多くの試行錯誤が必要になります。

 そんなモデルマージを進化的アルゴリズムで効率的にやろう、というのが当論文の主張です。進化的アルゴリズム(Evolutionary Algorithm; EA)は最適化アルゴリズムの一種ですが、勾配降下法のように目的関数に対する勾配を求める必要が無いため、微分不可能な目的関数に対しても適用できるという利点があります。特定のタスクに対する精度などを目的関数として、EAでモデルマージを最適化するのが進化的モデルマージ(Evolutionary Model Merge)であり、当論文の提案手法です。

 なお、当論文ではCMA-ESと呼ばれる既存の進化的アルゴリズムを利用しており、進化的アルゴリズムに関して新しい手法を提案している訳ではない点に注意が必要です。CMA-ESの詳細は他の記事に譲りますが、ざっくり言うと目的関数を最大化する解を多変量正規分布でモデリングする手法です。分布から解の候補を複数サンプリングし、それらに対する目的関数の値をもとに分布のパラメータを更新することを繰り返して最適解を探索します。

図1 進化的モデルマージの概要(論文中Fig. 1)

 図1は進化的モデルマージの概要です。進化的モデルマージでは、重みレベルのマージ(Merging in Parameter Space)層レベルのマージ(Merging in Data Flow Space)を段階的に実施し、精度などの目的関数を最大化するモデルをEAで探索します。

図2 重みレベルのマージ(ブログより引用)

 重みレベルのマージでは、複数のモデルのパラメータを層ごとに足し合わせます(図2)。この時、パラメータを足し合わせる比率などを層ごとに調整できるため、EAによる最適化が行われます。
 なお、当論文ではTIES-MergingDAREという2つのマージ法を組み合わせて利用しています。これらの手法では、各モデルのパラメータを直接マージするのではなく、各モデルの元になった基盤モデルのパラメータに対する差分(Task Vectorと呼ばれます)を求め、それをマージします。

図3 層レベルのマージ(ブログより引用)

 層レベルのマージでは、複数のモデルから層を選択して新しいモデルを構築します(図3)。この時、生成され得るモデルの候補が膨大で最適化が困難に思えますが、実装上は最初に全ての層を一定の順で並べておき、各層を取り入れるか否かを表す二値配列を最適化することで解の候補を少なくしています。また、元のモデルとは異なる層の接続が生成された場合、入力分布のシフト(Batch Normalizationの話で出てくるあれです)が問題になります。これに対処するため、各層の入力に対するスケーリング係数を設定し、EAで最適化するようです。

 実験による検証結果は論文やブログに譲りますが、大規模言語モデル(Large Languege Model; LLM)や画像言語モデル(Vision Languege Model; VLM)を対象とした進化的モデルマージによって、

  1. 日本語LLMと数学に特化した英語LLMをマージした、日本語で数学の問題を解けるモデル(EvoLLM-JP)

  2. 英語VLMと日本語LLMをマージした、画像に関する質問に日本語で正確に応答できるモデル(EvoVLM-JP)

を生成できたと報告されています。

図4 EvoVLM-JPの応答例

 図4はEvoVLM-JPの応答例です。画像中の信号機の色について、マージ元である英語VLMは「緑」と回答するところ、EvoVLM-JPは日本の慣習に則って「青」と回答しています。このように、画像を認識・説明する能力と日本に関する知識の融合を、学習を経ずに実現できるのが進化的モデルマージの強みであると言えます。

 Sakana AIは元グーグルの研究者を中心として昨年日本で設立された企業であり、進化的アルゴリズムによる基盤モデルの構築を理念として掲げています。この論文はその記念すべき第一歩であり、画像生成モデルにおける進化的モデルマージの成果も後に控えているようです。論文はまだプレプリントの状態ですが、論文形式はNeuripsのものに見えますので、近々投稿されるかもしれません。生成されたモデルは公開されており、EvoVLM-JPのデモもあります。記事の作成に当たっては日本語ブログを参考にしました。

おわりに

 Sakana AIは経産省から計算資源を提供されていたり、一発目のプレスリリースに各種メディアが反応していたり、なかなか注目度の高い企業のようです。Sakana AIもまた日本語対応の基盤モデルの生成に注力していますから、「想い想われ」といった感じですね。
 モデルマージは「黒魔術」ですが、貧者の武器といった感じで興味深いですね。しかしながら、進化的モデルマージもまた探索空間を狭めるための細かいテクニックを数多く含んでおり、立派な「黒魔術」と言えるでしょう。アルゴリズムの実装例は公開されてないようですが、是非拝みたいもんです。
 いくらかでも記事の内容を気に入っていただけたのであれば、フォローと「スキ!」をしていただけると嬉しいです。励みになります。

この記事が気に入ったらサポートをしてみませんか?