進化的アルゴリズムによる基盤モデルの構築



自動的で効率的な基盤モデル開発に向けて


概要

Sakana AIは進化や集合知などの自然界の原理を応用して基盤モデルを開発することを目指しています。私達の目標は、モデルを自ら訓練し開発することだけではありません。基盤モデルの開発を効率化、高度化、自動化するための新たな手法を生み出すことに挑戦しています。この目標に向けた第一歩として、私たちはプレプリント「Evolutionary Optimization of Model Merging Recipes (モデルマージの進化的最適化)」を公開しました。

このリリースの要点は以下の通りです。

進化的モデルマージにより作成した高性能な日本語基盤モデルEvoLLM-JPとEvoVLM-JPをGitHubリポジトリで公開しました。自然界の原理を活かした基盤モデル開発の更なる発展を願っています。また、EvoVLM-JPをすぐに試せるデモを用意しています。是非お試し下さい。


EvoVLM-JPを試せるデモを用意しています。是非こちらからお試し下さい。


私たちの手法は、勾配ベースの訓練を全く必要とせず、比較的少ない計算資源とデータで新しい基盤モデルを自動的に生成できます。これらのモデルに誤差逆伝播による勾配ベースの手法を追加で適用し、性能をさらに向上させることも原理的には可能です。しかし、今回のリリースでは、誤差逆伝播を全く使わなくても、最先端の基盤モデルを進化的に構築できることを示し、膨大なコストのかかる現在の基盤モデル開発のパラダイムに一石を投じることを目指しています。



既存のモデルをマージして新しい基盤モデルを作成する過程の可視化。進化的アプローチは、モデルを組み合わせる際に、人間の直感だけでは見落とされがちな、効果的かつ時に非直感的な方法を自動的に発見することができます。


はじめに

人類の知性は、個ではなく、集合として実現されています。我々人類は、個人としては、実のところそれほど知的でも有能でもありません。私たちの社会や経済は、異なる専門分野や専門知識を持つ多様な個人で構成される様々な機関の存在を前提としています。この膨大な集合知が、私たち一人一人の個性を形作っています。そして、私たちは各々異なる人生を歩み、唯一無二の存在となり、今度は自らが種となることで、絶え間なく拡大する集合知に貢献していくのです。

我々Sakana AIは人工知能の発展も同じように集合的な道をたどると考えています。AIの未来は、膨大なエネルギーを必要とする単一の巨大な全知全能のAIシステムではなく、それぞれが専門性や役割を持ち、互いに相互作用する小さなAIシステムの膨大な集合体で構成されることになるでしょう。そして、集合に不足している専門性や役割を補うために新しいAIシステムが開発されていくのです。

実際、オープンソースのAIエコシステムでは、既に示唆的な傾向が見られます。LlamaやMistralのようなオープンソースの基盤モデルからは、何百もの異なる方向性でファインチューニング等の拡張が施され、様々な分野に長けた新しいモデルが日々生み出されています。Open LLM Leaderboardで上位を占めるモデルの大半が、もはやLlamaやMistralのような元のオープンモデルではなく、それらのモデルをファインチューニングしたりマージしたりして作成されたモデルとなっていることは、当然とも言えます。さらに、異なるモダリティのオープンモデルを組み合わせ、ファインチューニングすることで、end-to-endで構築されたモデルに匹敵する画像言語モデル(Vision Language Model; VLM)が作られています。こういったアプローチでは、学習に必要な計算量が非常に少なく済みます。

研究者、愛好家、アーティストなどの様々な人からなる大きなコミュニティが、専門的なデータセットで既存のモデルをファインチューニングしたり、既存のモデルに少量のパラメータを追加したりすることで、新しい基盤モデルを開発しています。そして、その結果、専門性の強い高性能モデルが大量に登場しただけでなく、錬金術、あるいは黒魔術とも言えるような新しい技術である「モデルマージ」が開発されました。


モデルマージはまるで現代の錬金術です


Omar Sansevieroの上のツイートは、現在のモデルマージの技術を上手く表しています。これまでのモデルマージは、全て、情熱的な技術者の経験と直感による試行錯誤に基づいています。実際、現在Open LLM Leaderboardで上位にあるモデルは、モデルマージにより作成されたモデルばかりです。驚くべきことに、モデルマージにより作成したモデルは、追加の訓練等を全く行わなくてもそのまま動作します。そのため、モデルマージによりモデルを新たに作成することは非常にコストパフォーマンスが良く、なんとGPUを全く必要としません。そのため、多くの研究者や愛好家が、自分のモデルを作成するためにモデルマージを利用しています。モデルマージについてもっと知りたい方は、Maxime Labonneこの記事を読むことをお勧めします。


モデルマージへの進化的アプローチ

モデルマージの技術は非常に大きな可能性を秘めており、より多くの人々が基盤モデルの開発に参加できるようになりつつあります。一方で、モデルマージを使いこなすことは、開発者の直感やドメイン知識に大きく依存しており、理解の難しい「黒魔術」になりつつあります。残念ながら、人間の直感には限界があります。今後、オープンモデルやタスクの多様性が更に増すことを考えると、より体系的で論理的なアプローチが必要不可欠と言えます。

我々は、自然淘汰の仕組みから着想を得たアプローチである進化的アルゴリズムが、より効果的にモデルマージを実現するための扉を開く鍵になると信じています。進化的アルゴリズムは、膨大な可能性の空間を自動的に探索し、従来の方法や人間の直感では見落としがちな、時に意外性のある解答を発見することができます。進化的アルゴリズムの詳細については、このブログ記事をお勧めします。

下の映像は、進化的アルゴリズムの簡単な例です。2次元のシミュレーション環境下で、なるべく遠くまで移動できる車の設計を、進化的アルゴリズムにより自動的に行っています。最初は全ての車がランダムに設計され、多くのものは失敗作となります。しかし、少し前進することのできた一部の車の設計が次の世代に受け継がれます。この自然淘汰の過程を何世代にもわたって繰り返すことで、効率的に移動できる車が徐々に設計されます。最終的に得られる車の設計は非常に高性能なものになります。また、その設計はしばしば人間の直感に反した意外なものとなり、人間が設計したものとは似ても似つかないものになります。


進化的アルゴリズムを使用して設計を自動化すること自体は新しいものではありません。進化的アルゴリズムは、アンテナフロアプラン建築、宇宙船向けの丈夫で軽量な部品の設計等に活用されてきました。

前述の、異なる形状の組み合わせを見つけ、さまざまな新しい車のデザインを形成する自然選択の例と同様に、進化的アルゴリズムを適用して様々な基盤モデルの異なる部分の組み合わせを見つけることによって、新しい基盤モデルを作成することができるはずです。私たちは、この進化的アルゴリズムを活用したデザインの概念を基盤モデルを進化させるために活用しました。何百世代もの自然淘汰を通じて、ユーザーが指定したドメインにおいて非常に優れた性能を発揮する新しい基盤モデルが生み出されるのです。

この研究では、異なるモデルを組み合わせる最良の方法を発見するための進化的パラダイムである進化的モデルマージ (Evolutionary Model Merge) を提案します。この方法は、以下の2つの異なるアプローチを組み合わせています。1つ目がレイヤーのレベルでモデルをマージする方法であり、2つ目は重みのレベルでモデルをマージする方法です。

レイヤーのレベル:最初のアプローチでは、複数の既存モデルのレイヤーを選択し並び替える方法を進化的アルゴリズムを利用して発見します。これまで、モデルマージのコミュニティでは、各モデルのどのレイヤーをどのように組み合わせるかは直感と経験則に基づいて決定されていました。しかし、この組合せ最適化問題の探索空間は膨大であり、進化的アルゴリズムのような最適化アルゴリズムによる探索に適しています。以下の映像は、このアプローチの概要を描いたものです。

重みのレベル:2つ目のアプローチでは、複数のモデルの重みを数値的に混ぜ合わせる方法を進化的に探索します。新しいモデルの重みとして異なるモデルの重みを組み合わせる方法は無限に存在します。各レイヤーで異なる混合比率を使用することもできるでしょう。進化的アプローチを適用することで、複数のモデルの重みを混ぜ合わせる優れた方法を効率的に発見できます。以下は、このアプローチの概要を描いた映像です。

そして、これらのレイヤーレベルと重みレベルのアプローチの両方を組み合わせることで、更に高度なモデルマージを実現し、革新的な基盤モデルを自動的に構築することが出来ます。

これまで、コミュニティでは、人間の直感と試行錯誤によりモデルマージが行われ、高性能なモデルが生み出されてきました。進化的アルゴリズムによりこの試行錯誤を効率化・自動化することにより、モデルマージの可能性は果たしてどれ程広がるのでしょうか。特に「数学と非英語言語」あるいは「画像と非英語言語」のようなかけ離れた領域のモデルを組み合わせることは出来るのでしょうか。実際我々は、モデルマージに関する調査を開始した際、日本語の言語モデルと数学的推論のモデルを手動でマージしようとしましたが、手動での試行錯誤ではこのマージを成功させることが出来ませんでした。しかし、我々の進化的モデルマージを利用したところ、これらのモデルのマージを成功させることが出来ました。これは、この手法の強力さを物語っています。

実験を通じて、我々はこれまでにない新しい創発的な複合能力を持つモデルを作り出すことができました。ここからは、進化的モデルマージを用いて作成した新しいモデルについて説明します。非英語言語モデルを他のモデルとマージするという技術的な難しさが解決出来たことに加え、既存の基盤モデルの能力を異なる文化圏に転移することができるという発見も興味深く思います。


日本向けの高性能な基盤モデルの作成

ここまで、進化的アルゴリズムを応用して新しい基盤モデルの開発を自動化する手法である進化的モデルマージを説明してきました。私たちのアプローチは、レイヤーと重みの両方のレベルで最適化を行うことで、単一モデルの重みを超えた最適化を実現しています。

今回、この手法を用いて日本向けの高性能な基盤モデルを開発しました。具体的には、以下の3つのモデルを紹介します。

  1. 大規模言語モデル(EvoLLM-JP-v1)
  2. 画像言語モデル(EvoVLM-JP-v1)
  3. 画像生成モデル(EvoSDXL-JP-v1)


日本語大規模言語モデル (EvoLLM-JP)

我々はまず、「日本語で数学の問題を解くことができるLLM」を作成することに取り組みました。日本語に特化した言語モデルや、数学に特化した英語の言語モデルは存在しますが、日本語で数学の問題を解くことに長けたモデルは存在していませんでした。そこで、そのようなモデルを構築するため、日本語の言語モデル(Shisa Gamma 7B v1)と、数学に特化した英語の言語モデル(WizardMath 7B v1.1, Abel 7B 002)を、進化的アルゴリズムによりマージしました。

私たちの実験では、数百世代にわたって進化のプロセスを行い、最も優れた個体(同世代の中で日本語数学データの学習セットにおいて最も高いスコアを獲得したモデル)のみが次の世代を再構築するために生き残るようにします。最終的なモデルは、数百世代にわたる進化の中で最も優れた性能を発揮する(学習セットで高いスコアを獲得した)モデルです。

性能の測定には、有名なGSM8kデータセットの多言語版であるMGSMの日本語評価セットでの正答率を利用しました。なお、これは進化的アルゴリズムによる最適化に用いた学習セットとは異なります(より詳しくは論文をご参照下さい)。以下は評価の結果です。

LLMの日本語で数学の問題を解く性能の比較。MGSM-JAのカラムが正答率を示します。モデル1〜3は元のモデル、モデル4〜6は最適化されたマージモデルです。モデル7〜10は比較のために高性能な既存LLMのスコアを掲載しています。


上の表では、我々が進化的モデルマージにより構築したLLMの性能を報告しています。モデル4は重みレベルで最適化され、モデル6はモデル4を使用してレイヤーレベルでさらに最適化されています。これらのモデルの正答率は、3つのソースモデルの正答率を大幅に上回っています。これは、日本語モデルと英語の数学モデルを効果的に組み合わせることで、日本語と数学の両方の能力を持つモデルを構築することに成功したことを示しています。私たちの経験からは、専門家であっても、日本語のLLMと数学のLLMを手動で組み合わせることは非常に難しいことがわかっています。しかし、何百世代もの進化的モデルマージによって、日本語のLLMと数学のLLMを効果的に組み合わせ、両方の能力を持つモデルを構築する方法を見つけることができました。

また、数学の能力に限らず、日本語の全般的な能力を評価するため、日本語lm-evaluation-harnessを利用し評価を行いました。驚くべきことに、これらのモデルは、数学とは無関係のいくつかのタスクでも元のモデルより高いスコアを達成していることが分かりました。我々のモデルは本来これらのベンチマークで良い結果を出すように明示的に最適化されていないことは特筆に値します。

LLMの日本語の全般的な能力の比較。Avgカラムが9タスクでのスコアの平均値であり、これが大きいほど日本語の全般的な能力が高いとされています。


上の表は、lm-evaluation-harnessの評価結果の概要です。Avgカラムが、9つのタスクでのスコアの平均値を表し、日本語の全般的な能力を表す指標として広く用いられています。特に、7BのEvoLLM-JPは、この指標において非常に高いスコアを達成しています。全ての70Bパラメータ未満の日本語LLMのスコアを上回り、一部の70Bパラメータの日本語のLLMスコアすらも超えています。7Bパラメータしか持たないLLMであることを考えると、これは非常に高いスコアです。

このような偶然得られる結果は、進化的アルゴリズムを基盤モデルに適用する際、頻繁に確認されています。私たちはVLMや拡散モデルなどの他の領域にこのアプローチを適用した際にも、実験の初期段階であっても成功した結果を安定して得ることができました。

こういった評価結果から、我々が今回実験的に開発した日本語数学LLMは、汎用の日本語LLMとしても十分に優れていると考えており、EvoLLM-JPとして一般公開することにしました。詳細については、当社のGitHubをご参照ください。

以下はEvoLM-JP-7Bの回答例です。以下のような、日本の文化に関する知識と計算の能力を組み合わせる必要が有る質問にも正しく回答することが出来ます。

【質問】 今年の立春は2月3日です。節分の日付の月と日を足し合わせると、いくつになりますか?
【回答】 節分は、立春の前日です。今年の立春は2月3日、なので節分は2月2日です。 日付を足し合わせると、2 + 2 = 4になります。

また、数学が関係しない通常の質問にも以下のように自然に回答することができます。

【質問】 日本の代表的な料理を1つ教えてください。
【回答】 日本の代表的な料理は「寿司」です。 寿司は、日本の伝統的な料理で、米を使用し、様々な具材を乗せます。 寿司は、世界中で人気があり、日本の料理を代表しています。
【質問】 関西弁で面白い冗談を言ってみて下さい。
【回答】 あ、聞いてくれよ! 昨日、僕は飲んだ後、酔っ払って、電信柱にぶつかったんや。 その瞬間、僕の意識は飛んでいき、次に気が付いた時、僕は病院のベッドに寝ていたんや。 その時、僕は思ったんや。「これは神様の仕業や。僕は飲んだ後、酔っ払って、電信柱にぶつかったんや。」 そしたら、医者が来て、僕に言ったんや。「あなたは、飲んだ後、酔っ払って、電信柱にぶつかったんですね。」 僕は、「あ、聞いてくれよ! 僕は、飲んだ後、酔っ払って、電信柱にぶつかったんや。」 医者は、「それは、神様の仕業ですか?」 僕は、「いや、そんなことは思っていませんでした。」 そしたら、医者は、「それは良かった。神様の仕業だと、保険がきかないんです。」 その瞬間、僕は思ったんや。「この医者は、面白いやつだ。」


日本語画像言語モデル (EvoVLM-JP)

進化的モデルマージは、同じアーキテクチャを持つLLM同士だけでなく、異なる目的で作成された異なるアーキテクチャのモデルをマージすることもできます。その例として、日本語の画像言語モデル(Vision Language Model; VLM)を構築しました。

日本語VLMの構築にあたっては、英語のVLM(LLaVa-1.6-Mistral-7B)と日本語のLLM(Shisa Gamma 7B v1)を進化的アルゴリズムによりマージしました。このようにVLMとLLMをマージする取り組みはこれまでになく、マージを成功させるために進化的アルゴリズムによる最適化が重要な役割を果たしました。以下は評価の結果です。

VLMの性能比較。2つのデータセットを用い、画像に関する質問への正確な回答を日本語で行う能力を測定しました。数値が大きいほどこの能力が高いことを示します。(なお、Japanese Stable VLMはVA-VG-VQA-500を学習に用いているため、このデータセットで評価することは出来ません。)


JA-VG-VQA-500とJA-VLM-Bench-In-the-Wildは、どちらも画像に関する質問応答のベンチマークです。スコアが高いほど、正確な説明を日本語で回答しています。興味深いことに、我々のモデルは、ベースにした英語のVLMであるLLaVa-1.6-Mistral-7Bのみならず、既存の日本語VLMであるJapanese Stable VLMよりも高いスコアを達成することができました。

以下は、我々が作成したEvoVLM-JPによる回答の例です。両方の例について、ベースにした英語VLM(LLaVa-1.6-Mistral-7B)は不正確な回答をしてしまう一方、EvoVLM-JPは適切な回答ができます。興味深いことに、日本語LLMを英語VLMにマージすることにより、日本語の読み書きの能力が増強されただけでなく、日本に関する知識を獲得することにも成功しています。

EvoVLM-JPの応答の例です。日本特有の慣習である「鯉のぼり」に関する質問ですが、EvoVLM-JPはこれが鯉のぼりであると正しく認識することができます。


EvoVLM-JPの応答の例です。英語VLMは緑と回答しますが、EvoVLM-JPは青と回答します。緑も間違いではありませんが、日本の慣習では信号機の進行許可は「青信号」と表現され、青色と認識している人が多いでしょう。


EvoVLM-JPもモデルを公開しています。詳細については、GitHubをご参照ください。また、すぐにこのモデルを試せるデモを用意しています。是非こちらからお試し下さい。


日本語画像生成モデル (EvoSDXL-JP)

EvoLLM-JPやEvoVLM-JPでは、言語生成で用いらている自己回帰型Transformerモデルを進化的モデルマージによりマージしたモデルでした。これらに加え、我々は画像生成で昨今用いらている拡散モデルに進化的モデルマージを適用し、既に有望な結果を得ています。特に、日本語に対応し日本スタイル画像を生成可能なSDXLモデルを、わずか数ステップで推論が実行出来るように進化的アルゴリズムにより最適化することで、日本語プロンプト対応の高速画像生成モデルを構築することが出来ました。これらの結果は現時点の論文には含まれていませんが、近日中に発表する予定ですので、ぜひご期待ください。

日本語プロンプト対応の高速画像生成モデルEvoSDXL-JPで生成した画像の例。プロンプトは「味噌ラーメン、最高品質の浮世絵、葛飾北斎、江戸時代。」など。


今後の展望

このリリースでは、進化的アルゴリズムを活用した基盤モデルの構築に関する我々の初期段階の取り組みを紹介しました。ここで提示されている技術は様々な用途への可能性を持っていますが、日本にルーツを持つAIラボとして、まずは日本向けの最高クラスの基盤AIモデルを作成するためにこれらの技術を活用したいと考えました。しかしながら、今回の成果はこの技術の可能性を示したに過ぎません。このアプローチにはまだまだ多くの探求の余地があり、今回の結果は今後の長期的な研究開発の第一歩となるものと考えています。

Sakana AIの目標は、単一の基盤モデルを訓練することだけではありません。現在、私たちはNeuroevolution、集合知能、そして基盤モデルといった分野を融合するという、将来性に富んだ研究テーマに取り組んでいます。また、日本政府からNEDO/GENIACを通じてご支援を頂いており、これにより提供される大規模GPUスーパーコンピューターを活用し、我々は研究開発を更に加速させる予定です。

今後のAI開発においては、進化的アプローチにより既存のモデルを組み合わせることで新たな能力を持つモデルを構築する傾向が強まっていくでしょう。特に、ゼロから大規模な基盤モデルを訓練するコストが急激に増大している現状を考えると、このアプローチは注目に値します。多様な基盤モデルの広大なオープンソースエコシステムを活用することで、このアプローチは費用対効果に優れています。例えば、政府機関や企業などの大規模組織は、完全に独自のモデルを構築するために多大なリソースを投入する前に、プロトタイプの基盤モデルをより迅速に開発することが可能になります。これは既存のリソースからより多くの価値を引き出し、イノベーションのサイクルを加速させる方法と言えるでしょう。


Sakana AI

進化的計算と基盤モデルの更なる発展を自ら切り開きたい方は、当社の募集要項をご覧ください。