私の連絡先情報
郵便管理者@information.bz
2024-08-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
新しい知恵のレポート
編集者:アラン
【新しい知恵の紹介】最近、カリフォルニア大学アーバイン校などの研究者は、遅延マスキング、MoE、階層拡張などの戦略を使用して、拡散モデルのトレーニング コストを 1,890 米ドルに削減しました。
普及モデルのトレーニングにはどれくらいの費用がかかりますか?
以前の最も安価な方法 (Wuerstchen) の費用は 28,400 ドルで、Stable Diffusion のようなモデルは一桁高価です。
大型モデルの時代では、ほとんどの人はそれらで遊ぶ余裕がありません。あらゆる種類のヴィンセントの女性が欲しい場合は、メーカーに頼ってその重みを引き継いでもらう必要があります。
この膨大なコストを削減するために、研究者はさまざまな解決策を試みてきました。
たとえば、元の拡散モデルではノイズから画像に移行するのに約 1,000 ステップかかりますが、約 20 ステップかそれ以下に削減されました。
普及モデルの基本モジュールが Unet (CNN) の DiT (Transformer) に徐々に置き換えられると、Transformer の特性に基づいた最適化も行われました。
たとえば、パイプラインなどのアテンションにおける一部の冗長な計算をスキップするなどの定量化です。
最近、カリフォルニア大学アーバイン校やその他の機関の研究者らは、「お金を節約する」という目標を大きく前進させました。
論文アドレス: https://arxiv.org/abs/2407.15811
——わずか 1,890 ドルで、11 億 6,000 万のパラメータ拡散モデルをゼロからトレーニングできます。
SOTAに比べて一桁レベルが向上しており、一般の人でも事前トレーニングを体験できる期待が持てる。
さらに重要なのは、コスト削減テクノロジーがモデルのパフォーマンスに影響を及ぼさないことです。11 億 6,000 万個のパラメーターにより、次のような非常に優れた結果が得られます。
外観と操作性に加えて、モデルのデータ指標も優れています。たとえば、以下の表に示されている FID スコアは、Stable Diffusion 1.5 および DALL・E 2 に非常に近いです。
対照的に、ヴュルストチェン氏のコスト削減計画は、テストのスコアが理想的とは言えませんでした。
お金を節約するためのヒント
「1ドルを伸ばす」という目標のもと、研究者らは普及モデルの基本モジュールであるDiTから着手した。
まず第一に、シーケンスの長さは Transformer の計算コストの敵であり、排除する必要があります。
画像の場合、パフォーマンスに影響を与えずに、計算に参加するパッチの数を最小限に抑える (また、メモリのオーバーヘッドも減らす) 必要があります。
画像タイルの数を減らすには、各ブロックのサイズを大きくする方法と、パッチ (マスク) の一部を削除する方法があります。
前者はモデルのパフォーマンスを大幅に低下させるため、マスクする方法を検討します。
最も単純なマスク (単純なトークン マスキング) は、畳み込み UNet でランダムにトリミングされたトレーニングに似ていますが、画像の非連続領域でのトレーニングが可能です。
以前の最も先進的な方法 (MaskDiT) は、出力の前に復元および再構成構造を追加し、追加の損失関数を通じてそれをトレーニングし、学習を通じて失われた情報を補うことを目指しています。
どちらのマスクも、計算コストを削減するために、最初にほとんどのパッチを破棄します。情報の損失により、Transformer の全体的なパフォーマンスが大幅に低下します。MaskDiT がそれを補おうとしても、あまり改善されません。
——情報を失うことは望ましくありませんが、情報を失わずにインプットを減らすにはどうすればよいでしょうか?
遅延マスク
この論文では、マスクの前の前処理にパッチミキサーを使用し、破棄されたパッチの情報を残りのパッチに埋め込むことで、高いマスクのパフォーマンス低下の影響を大幅に軽減する遅延マスキング戦略を提案します。
このアーキテクチャでは、パッチ ミキサーはアテンション レイヤーとフィードフォワード レイヤーの組み合わせによって実装され、モデル全体の損失関数は次のようになります。
MaskDiT と比較すると、追加の損失関数は必要なく、全体的な設計とトレーニングがより簡単になります。
ミキサー自体は非常に軽量な構造であり、コスト削減の基準を満たしています。
微調整
マスキング率が非常に高いと、拡散モデルが画像内の全体構造を学習する能力が大幅に低下し、トレーニングからテストへの分布シフトが導入されるため、著者は事前トレーニング後に少量の微調整 (マスク解除) を実行しました。 (マスク) )。
さらに、微調整により、マスクの使用によって生じる望ましくない生成アーティファクトを軽減できます。
MoE と階層化された拡張機能
MoE は、トレーニング コストを大幅に増加させることなく、モデルのパラメータと表現力を増やすことができます。
著者らは、専門家が選択したルーティングに基づく簡素化された MoE レイヤーを使用しており、エキスパート間の負荷のバランスをとるための追加の補助損失関数を必要とせずに、各エキスパートがトークンへのルートを決定します。
さらに、著者らは、Transformer ブロックの幅 (つまり、注目層とフィードフォワード層の隠れ層のサイズ) を線形に増加させる階層的スケーリング方法も検討しました。
ビジョン モデルのより深い層ほど複雑な機能を学習する傾向があるため、より深い層でより多くのパラメーターを使用すると、パフォーマンスが向上します。
実験装置
著者は、パッチ サイズ 2 の DiT の 2 つのバリアント、DiT-Tiny/2 と DiT-Xl/2 を使用しています。
すべてのモデルは、コサイン学習率減衰と高重み減衰を備えた AdamW オプティマイザーを使用してトレーニングされました。
モデルのフロントエンドは、Stable-Diffusion-XL モデルの 4 チャネル変分オートエンコーダー (VAE) を使用して画像特徴を抽出します。さらに、大規模トレーニングにおける最新の 16 チャネル VAE のパフォーマンス (保存バージョン)。 )もテストされました。
著者らは、すべての拡散モデルの統一トレーニング設定として EDM フレームワークを使用し、FID と CLIP スコアを使用して画像生成モデルのパフォーマンスを測定します。
テキスト エンコーダには最も一般的に使用される CLIP モデルが選択されましたが、T5-xxl などの大きなモデルはテキスト合成などの困難なタスクではより優れたパフォーマンスを発揮しますが、ここではコストを節約する目的で使用されません。
トレーニングデータセット
2,200 万の画像とテキストのペアを含む 3 つの実際の画像データセット (Conceptual Captions、Segment Anything、TextCaps) が使用されます。
SA1B は実際の字幕を提供しないため、ここでは LLaVA モデルによって生成された合成字幕が使用されます。また、著者らは、1,500 万の画像とテキストのペアを含む 2 つの合成画像データセット (JourneyDB と DiffusionDB) を大規模トレーニングに追加しました。
小規模アブレーションの場合、研究者らは、大規模な COYO-700M データセットから 10 個の CIFAR-10 クラスの画像をサブサンプリングすることで、cifar-captions と呼ばれるテキストから画像へのデータセットを構築しました。
評価する
すべての評価実験は、DiT-Tiny/2 モデルと cifar-captions データセット (解像度 256 × 256) を使用して実行されました。
各モデルは、AdamW オプティマイザーと指数移動平均 (最後の 10K ステップの平滑化係数 0.995) を使用して、60K の最適化ステップでトレーニングされました。
遅延マスク
実験のベースラインでは上記で説明した Naive マスキングが選択されましたが、この記事の遅延マスキングではバックボーン ネットワークの 10% 未満のパラメーター数で軽量のパッチ ミキサーが追加されました。
一般に、失われるパッチが多いほど (マスキング率が高いほど)、モデルのパフォーマンスは低下します。たとえば、MaskDiT のパフォーマンスは 50% を超えると大幅に低下します。
ここでの比較実験では、デフォルトのハイパーパラメーター (学習率 1.6×10e-4、重み減衰 0.01、コサイン学習率) を使用して 2 つのモデルをトレーニングします。
上図の結果は、遅延マスキング手法により、FID、Clip-FID、および Clip スコアの 3 つの指標が改善されたことを示しています。
さらに、マスキング率が増加するにつれて、ベースラインとのパフォーマンスの差が拡大します。マスキング率が 75% の場合、ナイーブ マスキングでは FID スコアが 16.5 に低下しますが、本手法では 5.03 に達し、マスキングなしの FID スコア (3.79) に近づきます。
ハイパーパラメータ
LLM のトレーニングの一般的な考え方に従って、ここでは 2 つのタスクのハイパーパラメーターの選択を比較します。
まず、フィードフォワード層では、SwiGLU 活性化関数が GELU よりも優れています。次に、重みの減衰が大きくなると、画像生成のパフォーマンスが向上します。
さらに、LLM トレーニングとは異なり、この記事の拡散モデルは、AdamW の 2 次モーメント (β) に高い移動平均係数を使用すると、より良いパフォーマンスを達成できます。
最後に、著者らは、学習率を可能な限り最大値まで上げながら、少数のトレーニング ステップを使用することで (トレーニングが不安定になるまで)、画像生成パフォーマンスも大幅に向上することを発見しました。
ミキサーの設計
通常、奇跡を達成するために一生懸命働くのは正しいことであり、著者は、より大きなパッチ ミキサーを使用した後もモデルのパフォーマンスが向上し続けることも観察しました。
ただし、お金を節約するために、ここでは依然として小型ミキサーが選択されます。
著者らはノイズ分布を (-0.6, 1.2) に変更し、字幕と生成された画像の間の位置合わせを改善しました。
以下の図に示すように、75% のマスキング率の下で、異なるパッチ サイズを使用した場合の影響も調査しました。
連続領域の数が増えると (パッチが大きくなると)、モデルのパフォーマンスが低下するため、各パッチをランダムにマスクするという元の戦略が維持されます。
階層化されたスケーリング
この実験では、DiT-Tiny アーキテクチャの 2 つのバリアント (1 つは一定の幅、もう 1 つは階層的にスケールされた構造) をトレーニングしました。
どちらの方法も Naive マスキングを使用し、Transformer のサイズを調整して、同じトレーニング ステップとトレーニング時間を実行しながら、2 つのケースでのモデルの計算能力が同じになるようにします。
上の表の結果から、3 つのパフォーマンス指標すべてにおいて、階層型スケーリング手法がベースライン定幅手法よりも優れていることがわかります。これは、階層型スケーリング手法が DiT のマスキング トレーニングにより適していることを示しています。
参考文献:
https://arxiv.org/abs/2407.15811