【要約】【初学者向け】ゼロから理解する拡散モデル③DiT — デノイザーをU-NetからTransformerへ [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
従来の拡散モデル開発者は、デノイザとしてU-Netを用いる手法に依存してきた。しかし、モデルの巨大化に伴い、以下の課題に直面していた。
- ・U-Netの強い帰納バイアス(局所性・平行移動不変性)が、大規模データにおけるスケーリングの足かせとなる懸念。
- ・モデル規模や計算量を増やしても、性能の伸びが予測しにくいスケーリング特性の欠如。
- ・画像生成タスクにおいて、計算資源を投入した際の性能向上が非効率になる可能性。
// Approach
研究者は、デノイザを「入力と同じ形状の写像」と定義し、アーキテクチャをTransformerへ刷新する手法を提案した。
- ・パッチ化(Patchify):画像をパッチに分割し、トークン列として扱う。
- ・Transformerブロックの採用:自己注意機構を用い、画像全体のグローバルな関係性を学習する。
- ・AdaLN-Zeroの導入:時刻とクラス情報を6つの変調パラメータで注入し、ゼロ初期化により学習初期を恒等写像として安定させる。
- ・本体と部品の分離:拡散過程(確率過程)を固定したまま、デノイザのみを差し替える設計。
// Result
大規模モデルの開発者にとって、DiTは計算資源を性能に直結させる強力な武器となった。
- ・スケーリング特性の実現:計算量(Gflops)の増加に対し、FIDが素直に改善することを確認。
- ・学習効率の向上:CIFAR-10の実験において、U-Netよりも高速な学習を実現。
- ・応用範囲の拡大:Sora(動画生成)やRDT-1B(ロボット制御)など、次世代基盤モデルの標準部品として定着。
Senior Engineer Insight
> 拡散モデルの設計思想が「確率過程(本体)」と「デノイザ(部品)」に分離された点は極めて重要だ。DiTにより、デノイザをスケーラブルなTransformerへ置き換えることで、計算資源を性能に直結させる道が開かれた。実戦では、小規模データではU-Netの帰納バイアスが有利だが、大規模な計算リソースを投入する基盤モデル開発では、DiTを選択するのが定石となる。スケーラビリティを前提としたアーキテクチャ選定が、モデルの限界値を決定づける。