潜在拡散モデルは必ずしも「サイズを大きくすれば良い」というわけではない
3つの要点
✔️ 同じ推論コストの下で、小さいモデルの方が大きいモデルよりも性能が良い
✔️ サンプラーの種類や下流タスク、蒸留の有無によらず同様の現象が見られた
✔️ 推論時のサンプリングコストとモデルサイズのトレードオフを考慮することが重要
Bigger is not Always Better: Scaling Properties of Latent Diffusion Models
written by Kangfu Mei, Zhengzhong Tu, Mauricio Delbracio, Hossein Talebi, Vishal M. Patel, Peyman Milanfar
(Submitted on 1 Apr 2024)
Comments: Published on arxiv.
Subjects: Computer Vision and Pattern Recognition (cs.CV); Machine Learning (cs.LG)
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
「大きい潜在拡散モデル=良い」ではない
本論文の内容は、「潜在拡散モデル(LDM)のスケーリング特性について、特にサンプリング効率に着目して実証的に調査した」というもの。
本研究のポイントは、以下の通りです。
- 課題①:LDMのスケーリング特性やサンプリング効率に関する調査が不足
- 課題②:LDMの学習には膨大な計算リソースが必要で、様々なモデルサイズでの学習が困難
- 課題③:モデルサイズとサンプリング効率の関係が不明
- 解決手法:様々なパラメータ数のLDMを学習し、モデルサイズとサンプリング効率の関係を調査
- ポイント:小さい推論コストにおいて、小モデルの方が大モデルよりも性能が高くなる傾向を発見
つまり、LDMをスケールアップする際は、単にモデルサイズを大きくするだけでなく、推論時のサンプリングコストとのトレードオフを考慮することが重要であると、著者らは指摘しています。
特に、「サンプリングコスト(計算コスト)が制約された状況では、小さいモデルの方が効率的にサンプリングできる可能性がある」とのこと。
潜在拡散モデルにおけるサンプリング効率に関する研究背景
潜在拡散モデル(LDM)は、画像生成やビデオ生成など、様々なタスクで優れた性能を示しています。しかし、サンプリング効率が低いという、実用上の課題を抱えています。
LDMのサンプリング効率を改善するために、これまでは主に以下のアプローチが提案されてきました。
- より高速なネットワークアーキテクチャの開発
- サンプリングアルゴリズムの改良によるサンプリングステップ数の削減
- 蒸留手法によるサンプリングステップ数の削減
しかし、「モデルサイズの観点からサンプリング効率を調査してみた」という研究は行われてきませんでした。その理由として、高品質な画像生成モデルを一から構築するには、膨大な時間とコストがかかることが挙げられます。
そのため、そもそも「様々なサイズのモデルを作るのは、リソース的に困難」だったのです。
本研究の検証内容
著者らは、866Mパラメータの「Stable Diffusion v1.5」をベースラインとして、パラメータ数が39M~5Bまで異なるText-to-Imageの潜在拡散モデル(LDM)を学習しました。
以下は、異なるモデルサイズの比較検証のために学習された、Stable Diffusionの一覧(Table 1)です。
これら全てのモデルは、残差ブロック内のフィルタ数を増やすことでスケールアップしており、他のアーキテクチャ要素は同じに保たれているとのこと。
以下は、スケーリング時の、モデルサイズごとのアーキテクチャの違いを示しています。
また、各モデルの学習では、500Kステップ、バッチサイズ2048、学習率1e-4で学習されているとのこと。また、推論時のサンプラーにはDDIM、ステップ数50、ガイダンススケール7.5と設定されています。
そして、各モデルで生成した画像の結果は、以下の通りです。
上図では、モデルサイズに比例して、画像生成の性能も向上していることが分かります。
こうした条件下のもと、ここではスケールアップしたモデルの性能評価のために、以下の6つの実験結果が報告されています。
- 学習計算リソースとLDMの性能の関係調査
- 事前学習済みLDMを用いた下流タスクでのパフォーマンス調査
- サンプリングコスト(ステップ数)とLDMの性能の関係調査
- サンプラーの種類と効率性(LDMの性能)の関係調査
- 下流タスクにおけるサンプリングコストとLDMの性能の関係調査
- 蒸留モデルと未蒸留モデルとの性能比較
Text-to-ImageのStable Diffusionのテストには、COCO 2014のバリデーションセットで30kサンプルを用いています。
また、下流タスクの性能評価のために、DIV2Kのバリデーションセットが用いられています。
学習計算リソースとLDMの性能の関係
学習に使用した計算リソースと、モデルのパフォーマンスとの関係は、以下の通りです。
左のFIDは「小さければ良い」値で、右のCLIPは「大きければ良い」値です。
結果より、1G未満の場合、計算リソースを追加することで全てのモデルの性能が向上しています。
ただし、ある程度以上の規模では、頭打ちになることも分かります。
事前学習済みLDMを用いた下流タスクでのパフォーマンス
ここでは、事前学習済みのLDMを用いて、super-resolution(高解像度化)やDreamBooth(画像生成)などの下流タスクでのスケーリング特性を検証しています。
具体的には、各LDMを用いて、上記2つの下流タスクに応じてファインチューニングした後、各下流タスクにおける性能を比較しています。
ここで用いている事前学習済みモデルについては、先述のTable 1の内容と同じです。
super-resolutionタスクにおける性能の推移結果は、以下の通りです。
上図の左のFIDについては、計算量に関係なく、モデルサイズに比例して性能が良くなっていることが分かります。つまり、ここでは「より大きな事前学習済みモデルを用いるほど、super resolutionタスクの性能が良い」ことを表しています。
しかし、上図の右のLPIPSについて見ると、サイズに関係なく、明らかに計算量に比例して性能が良くなっていることが分かります。
次に、以下の画像生成の結果を見てみましょう。
やはりモデルサイズを上げることで、結果も良くなっていることが分かります。
最後に、DreamBoothを用いた画像生成の下流タスクの結果も、見てみましょう。
やはり、モデルサイズに比例して、性能が上がっていることが分かります。
これらの結果より、事前学習済みLDMを使った下流タスクのパフォーマンスは、事前学習済みモデルの性能(パラメータ数)に比例することが分かりました。
サンプリングコスト(ステップ数)とLDMの性能の関係
ここでは、「サンプリングコスト(ステップ数)を大きくすれば、モデルサイズに関係なくLDMの性能は向上するのか」を検証しています。
そのために、まずは異なるモデルサイズとサンプリングステップ数ごとでの、最適なガイダンススケールを定める実験を行っています。
例えば、下記の図は、ガイダンススケールを1.5→8.0に等間隔に推移させていったときの、画像生成の性能の変化を表しています(上は145MパラメータのLDM、下は866MパラメータのLDMで、両者のステップ数は50)。
これにより、モデルごとに最適なガイダンススケールの値が変わることが分かると思います。
また、最適なガイダンススケールの定量的な決定には、FIDスコアが用いられています。下図では、ガイダンススケールと、Text-to-Imageにおける性能との関係性を示しています。
左図(145MパラメータのLDM)と中央図(558MパラメータのLDM)を見ると、サンプリングステップ数の増加に伴い、最適なガイダンススケールが変化しているのが分かります。
そして、右図を参考にして、「各モデルにおける、サンプリングステップごとの最適なガイダンススケール値」を決定できます。
次に、上記で決定した最適なガイダンススケールを用いて、サンプリングコスト(normalized cost × sampling steps)に対する、各LDMのパフォーマンスを比較しています。
その結果、小さなサンプリングコストにおいて、小さいモデルの方が大きいモデルよりも、FIDスコアが良いことが多いことが分かりました。
試しに、右図を参考に、Sampling Costs=6の場合と12の場合を見てみましょう。
サンプリングコスト | モデルのパラメータ数 | FID(小さいほど良い) |
---|---|---|
Sampling Costs=6 | 145M | 約19 |
866M | 約26 | |
Sampling Costs=12 | 145M | 約17 |
866M | 約20 |
上の表を見ると、少ないサンプリングコスト(推論コスト)の条件下では、小さいモデルの方が高い性能を達成していることが分かります。
その他のモデルサイズを比較しても、おおよそ同様のことが言えると思います。
また、下図を見ると、そのことが視覚的に分かります。
サンプラーの種類と効率性(LDMの性能)の関係
ここでは、サンプラーの種類に関係なく、LDMのスケーリング特性が一貫して現れることを確認するために、DDIMサンプラーに加えて、DDPMとDPM-Solver++を用いて、LDMのパフォーマンスを比較しています。
結果は以下の通りです。
左図の実線がDDMP、破線がDDIM。右図の実線がDPM-Solver++で、破線がDDIM。
結果より、性能としてはDDPM<DDIM<DPM-Solver++であることが分かりました。
また、全てのサンプラーに共通して言えるのは、「同じサンプリングコストの下では、サンプラーの種類に限らず、小さいモデルの方が大きいモデルよりもパフォーマンスが良い」ということ。
これは、同じサンプリングコスト時の、各LDMの性能を比較すれば明白です。
下流タスクにおけるサンプリングコストとLDMの性能の関係
ここでは、下流タスク、特にsuper-resolution(SR)タスクにおけるLDMのサンプリング効率について、検証されています。
結果は以下の通りです。
結果より、サンプリングステップ数が20以下(左図)の場合、同じサンプリングコストの下では、小さいモデルの方が大きいモデルよりも良い性能である傾向があると分かります。
一方、サンプリングステップ数が20を超える場合は、大きいモデルの方がサンプリング効率が高くなることが分かっています。
蒸留モデルと未蒸留モデルとの性能比較
ここでは、事前にモデルを蒸留し、それらの蒸留モデルのパフォーマンスを比較しています。
具体的には、4ステップサンプリングで全ての蒸留モデルをテストし、各蒸留モデルを正規化されたサンプリングコストで、未蒸留モデルと比較しています。
結果は以下の通りです。
結果より、4ステップサンプリングにおける全てのモデルの生成パフォーマンスが蒸留によって大幅に向上し、FIDスコアが全体的に改善されることを示しています。ただし、サンプリングコストが約8の場合、小さい未蒸留の83Mモデルが、大きい蒸留866Mモデルと同等のパフォーマンスを達成したとのこと。
この結果は、拡散モデルの蒸留の状況下でも成り立つ、LDMのスケーリングサンプリング効率をさらに裏付けるものであるでしょう。
まとめ
本記事では、潜在拡散モデル(LDM)のスケーリング特性について調査した研究をご紹介しました。
本研究の限界点の一つとしては、「本研究で示したモデルのスケーラビリティに関する主張は、本研究で調査した特定のモデルファミリーに限定される」と述べられています。
つまり、本研究で立証した事実は、本研究で用いたStable Diffusionだからこそ成り立つのかもしれない、ということです。
個人的な意見として、コンピュータのスペック的に制限がある方は、無理に大きなモデルを使用する必要がないのでは(そもそも動かせないとは思うが)と感じました。
この記事に関するカテゴリー