Upgrade to Pro — share decks privately, control downloads, hide ads and more …

20250502_ABEJA_論文読み会_スライド

 20250502_ABEJA_論文読み会_スライド

[【ABEJA】進化計算 × ニューラルネットワーク論文読み会](https://abeja-innovation-meetup.connpass.com/event/352604/) での発表スライドです。

Avatar for Tomoki Fujihara

Tomoki Fujihara

May 02, 2025
Tweet

Other Decks in Research

Transcript

  1. 進化計算 × ニューラルネットワーク論文読み会 : Evolutionary Optimization of Model Merging Recipes

    株式会社ABEJA データサイエンス部 共通基盤開発チーム 藤原 知樹 2025/05/02
  2. 藤原 知樹 / Fujihara Tomoki X:@flaton_11 所属:データサイエンス部 共通基盤開発 T 略歴:

    〜2024年3月:東北大学大学院工学研究科 博士課程前期修了 学士:音声信号処理(深層学習, 声質変換, 音素認識, 音声合成) 修士:自然言語処理(深層学習, 不適切投稿検出, SNS分析・応用) 同年4月〜:データサイエンティストとしてABEJAに新卒入社 データ分析, データ解析/パース, LLM活用/開発などの案件に従事 自己紹介 / Self introduction 2
  3. 1. 論文紹介 ◦ はじめに ◦ モデルマージとは ◦ モデルマージの研究の進展 ◦ 論文概要

    ◦ 背景 ◦ 提案手法 ◦ 結果 2. 🗻 論文を読んだ上でのモデルマージに関する疑問・気になること 3. まとめ (発表者の感想・コメントには🗻マークをつけてます) Agenda 3
  4. 紹介する論文 Evolutionary optimization of model merging recipes [Akiba et al.,

    Nature Machine Intelligence 2025] • Sakana AI のブログ (2024/3/21) • リポジトリ (手法自体の実装はなく、開発されたモデルが公開されている) • mergekit でサポートされている • 論文紹介や実際に mergekit を使って実践しているブログも ◦ 進化的モデルマージの理解と実装 ◦ 進化的モデルマージで日本語がわかるソースコード生成LLMを作ってみる • モデル開発に用いている研究も ◦ 進化的モデルマージを用いた日本語金融LLMモデルの構築 論文紹介 – はじめに 4
  5. • モデルマージとは? ◦ 複数の学習済みのモデル (やチェックポイント)の重みを算術演算や層の接続・並び替えによって 一つのモデルに統合 することで新しいモデルを構築する ◦ アンサンブル的 ・マルチタスク学習的

    な効果を期待 • メリット ◦ モデル開発コストが低い ▪ 勾配計算をしなくて済むのでリソースを節約できる (AdaMerging [Yang +, ICLR 2024] などを除く) ◦ アンサンブルと比較して、推論コストが低い ▪ モデル1個分で済む(モデルサイズが変わるマージはその限りでない) 論文紹介 – モデルマージとは? 5
  6. • チェックポイントのマージ(Stochastic Weight Averaging [Izmailov +, UAI 2018]) • Fine-tuning時に複数ハイパラで学習して、得られた複数のモデルの重みをマージ(ハイパラ探索時に

    作ったモデルの再利用 ) ◦ Model Soup [Wortsman +, PMLR2022] ◦ Model Stock [Jang +, ECCV 2024] (より少ない FT モデルで最適なマージを行う) • Fine-tuning 時に低下する汎化性能を回復 させる(WiSE-FT [Wortsman+ ,CVPR 2022]) ◦ LERP(線形補間)/SLERP(球面線形補間) ◦ WARP [Ramé +, 2024 arXiv] • 特化モデル LLM開発へのモデルマージの利用 (Task Vector / Delta Parameters のマージ) ◦ Chat Vector [Huang +, ACL 2024] / Task Arithmetic [Ilharco +, ICLR2023] ◦ TIES-merging [Yadav +, NeurIPS 2023] , DARE [Yu +, ICML 2024] • 基本的に同じ事前学習済みモデルの派生モデル同士でしか上手くマージできない ◦ 蒸留 [Wan +, ICLR 2024] ・重みの配列をアライメント[Ainsworth +, 2023 arXiv] [Entezari +, ICLR 2022]してからマージし たり、単に層を積み重ねたり(Passthrough/FrankenMerges [Kim +, NAACL 2024])して、異なる構造・事前学習のモデル 同士をマージする試みも研究が進められている ◦ おすすめ:佐藤竜馬先生のブログ(モデルパラメータの算術) 、サーベイブログ(Model Merging: A Survey) 論文紹介 – モデルマージ研究の進展 6
  7. • モデルマージにおける課題 ◦ 複数のモデル・ Task Vector のマージにおいて、最適なハイパーパラメータ /レシピ(モデル同士を どのようにマージするか)を見つけるのが難しい ◦

    特に「異なる構造・事前学習のモデル同士のマージ」の最適なレシピを人手で見つけるのは困 難 • 紹介する論文の新規性・貢献 ◦ マージレシピの最適化によって低い開発コストで高性能なモデルを構築できることを示した ◦ 特に、現在主流の重み単位のマージだけでなく、層単位で並べ替え・スキップするマージによっ て、より高性能なモデルが構築できる可能性を示した • 進化計算を何に用いているか? ◦ マージの仕方(マージレシピ / ハイパーパラメータ)の最適化 • 個人的に面白いと思ったポイント ◦ 探索時間を削減するための細かい工夫 ◦ 進化探索で最適化の結果、どのようなマージになったか?の分析 論文紹介 – 概要 7
  8. 論文紹介 – 提案手法 Parameter Space(PS)マージ • モデルの層数・パラメータ数は変わらない • 同じ構造の複数のモデルの重み同士を混ぜ合わせ て一つのモデルにする

    • 最適化対象:複数のモデルの各重みをどのような比重で混ぜ合わせるか ◦ DARE-TIES ▪ density d ∈ (0, 1]:各デルタパラメータをスパース化する度合い ▪ weight λ ∈ R:各デルタパラメータを足し合わせる時の重み 9 ,
  9. Data Flow Space(DFS)マージ Neural Architecture Search に近いが、モデルを一から学習するのではなく、学習済みのモデルを再利用 する方法を探索するのでモデル開発コストを抑えられる • モデルの層数・パラメータ数が変わる

    • 同じ構造の複数のモデルの各層を積み重ね・並べ替えて・スキップ 、一つのモデルにする • 最適化対象:何番目の層にどのモデルの何層目を使うか ◦ インジケーター配列 I :長さ T = M(全モデルの合計層数) x r(繰り返し回数) ◦ スケーリング行列 W ∈ R M x M : W i, j = 層i から層j への入力にかけるスケーリング係数 ▪ 層ごとに出力の分布が異なるため、隣接する層の順番を入れ替えるだけでも性能が低下するが、事前の 検証でスケーリングするだけで緩和できることが分かっていたため。 • 🗻 最終的なモデルの全長(層数)に制約はつけてなさそう • 🗻 PSマージと違って重みのパーミュテーションが問題にならなそう (代わりにスケーリング行列が必要になる) 論文紹介 – 提案手法 11
  10. 論文紹介 – 提案手法 12 layer_1 layer_2 layer_3 layer_p layer_1 layer_2

    layer_3 layer_q Embedding Tokenizer Embedding Tokenizer LM_Head LM_Head モデル A モデル B layer_1 layer_p Embedding Tokenizer LM_Head layer_1 layer_q layer_1 layer_p layer_1 layer_q M = p+q T = M × r 探索範囲 を狭める ために layer_1 layer_p Embedding Tokenizer LM_Head layer_1 layer_q layer_1 layer_p-1 layer_1 layer_q layer_p モデルAの Tokenizer/Embedding使用 DFS(A, B) モデルAの LM_Head 使用 最後の層をモデルA の最終層に移動※ × r ※解釈が間違ってて、単純に 最後に1層追加してるかも
  11. データセット :MGSM(GSM8kのサブセットを多言語に翻訳したもの) • GSM8k:基本的な四則演算を要する小学校レベルの文章題、計算式、回答からなるデータセット • MGSMのテストセットを学習・テスト用に分割 して使用 (公開データのtrainセットは学習に使われてることがあるため) 最適化対象 :日本語の数学問題に対して日本語で解答を生成する能力

    • 次の二つをともに満たす場合に正解とする ◦ 出力の中で最後に出てくる数字を最終回答として、それが正しい値になっていること ◦ 推論のテキストが日本語で書かれていること(fastText を用いて判定) 論文紹介 – 実験1 言語モデルの開発 16
  12. 論文紹介 – 実験1 言語モデルの開発 17 PSマージ最適化の設定 • DARE-TIES のハイパラを最適化 ◦

    (🗻解釈が間違ってなければ)3つのモデルそれぞれでMistral-7bとの差分ベクトルを作成し、この 3つ差分ベクトルを足し合わせるバランスを最適化 ◦ Transformerブロック単位ではなくモデル単位=(density, weight) x 3 models • フィットネス値は1069 件の訓練サンプル全体に対する精度 ◦ その個体が目的にどれだけ適しているかを測る指標 • Trials:1,000、1世代の個体数:4+⌊3⋅ln(6)⌋ ≈ 9 ◦ Trials はパラメータ数 x 100 以上あれば十分らしい[1] • 1,000 trials の中で訓練精度が最も高かった試行を最終モデルとして採用 [1] 芝田将, Optunaから簡単に利用できる「CMA-ES」 進化計算で最も有力な連続最適化問題のアルゴリズム
  13. DFSマージ最適化の設定 • 2つのモデル A, B をマージ ◦ モデルAの tokenizer, 入出力の埋め込み層を使う場合は、最初と最後の層はAの最初と最後の層

    を採用(互換性を維持するため) ◦ 探索時間を短縮するために、指標配列 I の初期化ではモデルAの全レイヤーが 推論経路の初期 段階で選ばれやすくなるようにバイアスをかけた • M = 64(2つのモデルの合計総数)、r = 3(繰り返し数) • 訓練データのうち、最後の 200 サンプルを検証セット(validation set) とし、それ以外のデータで最適 化を実施 • バッチサイズは 200 • 検証セットで最も高い精度を記録したモデルを最終モデルとして採用 論文紹介 – 実験1 言語モデルの開発 18
  14. • マージで数学の能力上がってる ◦ PS/ PS+DFS では元のモデルで正解していた問題に正解しつつ、正解できていなかった問題にも 正解できるようになっている • 算数読解タスクだけでなく日本語生成タスクも元の日本語モデルよりスコアが高い •

    🗻Tokenizer, Embedding が日本語モデルじゃなくていいのが少し意外だった 論文紹介 – 実験1 言語モデルの開発 19 日本語算数読解能力 日本語生成能 力 Table1※ ※論文の図表を使用させていただいております
  15. 論文紹介 – 実験1 言語モデルの開発 PSマージ最適化の結果 • Weight ◦ 重みの和が 1

    を超えてる ◦ 🗻 Density は期待値レベルでは重みに影響を与えないので、数式上は Σ weight = 1 にすると加 重平均になる(なので基本的には Σ weight = 1 が推奨されてる) ◦ 🗻 (あまり意味はなさそうだが)Σ weight x density は大体 1.0 になっている • Density ◦ 日本語モデルの Density が高い ▪ 継続事前学習+SFTで構築された Shisa Gamma 7B v1は差分ベクトルに余白が少なくあま りスパース化できない(=Density を下げれない) ▪ 🗻代わりにスパース化できる数学英語モデルの Density を下げて、 conflict を回避する形で 最適化された?Density を下げた分 Weight を上げて、一部のパラメータに強い影響を与える ように最適化された? 21 Figure3※ ※論文の図表を使用させていただいております
  16. 既存手法との比較 • Merge手法(他の文献で用いられている設定を参考に決定) ◦ DARE-TIES だけ元の3つのモデルより良いモデルに ◦ ただ、最適化した方(Ours(PS))がスコアは高い • Fine-tuning(1069

    samples x 3 epoch) ◦ MGSM(算数読解)は WizardMath, Abel より高くなっているものもあるが、日本語能力はどれも Shisa Gamma と同等以下 ◦ 学習データ数足りてなさそう 論文紹介 – 実験1 言語モデルの開発 22 Table3※ ※論文の図表を使用させていただいております
  17. DFS最適化の分析 • 13B のモデルでの実験でアブレーションを実施 • #4, 5 の比較:モデルの順番 ◦ DFS

    の際に使う2つモデルが同じでも、A・Bの順番を変えるだけで性能が変わる • #6, 7 の比較:スケーリング行列 Wの効果 ◦ スケーリング行列なしの PS+DFS は PS に劣る ◦ 🗻とはいえ極端に劣化するわけでもない 論文紹介 – 実験1 言語モデルの開発 24 Table4※ ※論文の図表を使用させていただいております
  18. DFSマージモデルの生成結果分析 • 英語数学モデルでは不正解&DFSマージモデルが正解のサンプルを分析 • 改善パターン1 ◦ 英語数学モデルは推論自体は正しかったが回答が英語になっており、不正解扱いだった ◦ DFSマージによって日本語で出力されるように調整されて正解 できるようになった

    • 改善パターン2 ◦ 英語数学モデルは日本語での推論はできていたが、日本語の問題への理解や推論が正しくできて おらず誤答していた ◦ DFSマージによって日本語の知識が補完されて正解 できるようになった • DFSマージは層の削除だけでなく層の追加も効果的に実現できている ◦ あるソースモデルに欠けている能力を他のモデルから補完 することができる ◦ それを推論経路の層構成で実現 している 論文紹介 – 実験1 言語モデルの開発 26
  19. 日本語VLM構築 • VLMのアーキテクチャは以下の三つのコンポーネントで構成 ◦ 画像特徴を抽出するためのvision encoder ❄(/🔥) ◦ 画像を説明するためのテキストを生成するためのLLM🔥 ◦

    画像特徴をLLMの埋め込み空間にマッピングするためのprojection network🔥 • マージするモデル ◦ 日本語のLLM:augmxnt/shisa-gamma-7b-v ▪ Mistral-7B-v0.1をベースにCT&SFT ◦ 英語のVLM:LLaVa-1.6-Mistral-7B ▪ Mistral-7B-Instruct-v0.2 をベースに Visual IT ▪ 🗻 Mistral-7B-Instruct-v0.2 はモデルカードだけ見ると別に Mistral-7B-v0.1 に追加の学習を して開発したモデルではなさそうだが、それだとPSマージが難しいはずなので、 Mistral-7B-v0.1 に追加のPT&SFTで開発されてるのかも 論文紹介 – 実験2 画像言語モデルの開発 27
  20. • PSマージ ◦ スコアが改善しており、良いモデルが作れてそう ◦ 🗻最終的な Density, Weight が気になる •

    DFSマージ ◦ DFS単体だとTIESと同じくらいのスコアになっている • PS+DFSマージ ◦ PSに比べて大幅な改善はできていない 論文紹介 – 実験2 画像言語モデルの開発 28 Table5※ ※論文の図表を使用させていただいております
  21. 1. マージレシピの理論的に最適な探索範囲はないのか? ◦ 経験的に良いと思われていた Σ weight = 1 が必ずしも最適ではなさそう ◦

    値の小さい重みはどういう形で性能に寄与しているのか? ▪ TIESは符号を選んで加算するため、重みの値の絶対値が元のモデルよりも大きくなりやすいがそれでいいのか? ▪ 細かいこと言うと SLERP とか実装時に演算精度的にどこから無視するか?とかも 2. 最適化すればどこまでマージできるのか? ◦ マルチタスク化:大体できそうだが、タスクよって向き不向きはありそう ◦ マルチモーダル化:多少できそう ◦ 多言語・マルチドメインの高精度化(継続事前学習モデル同士のマージ):厳しそう ◦ モデル構造/事前学習が異なるモデル同士のマージ:無理そう 3. 異なるデータセットで学習したモデル間でどの程度パーミュテーション・符号の不整合 が発生しているか? ◦ 本当にSFTよりも継続事前学習の方が不整合が大きいのか?どのくらい大きいのか? ◦ ニューラルネットワークの重みの類似度を定量的に測れるか? 🗻 論文を読んだ上でのモデルマージに関する疑問・気になること 29
  22. • 論文紹介:Evolutionary Optimization of Model Merging Recipes ◦ 探索範囲を限定しつつ、マージレシピを最適化する手法を提案 ◦

    PSマージを最適化することで、少ないリソースで高性能なモデルを開発できることを示した ◦ DFSマージでも別のモデルの能力を移植できることを示唆 ▪ 層の追加や削除によって、タスクに適したモデルを構築できる可能性 ◦ 最適化の結果、通常推奨されているマージのハイパラ設定を逸脱するケースを確認 • モデルマージ研究メインの話はどこか別の機会でできればと思っています! まとめ 30