project
Snap Video - SnapchatのAI動画生成モデル
Snap Videoは、Snap Inc.の研究チームが開発したAI動画生成モデルです。その目的は、テキストによる説明に基づいて動画を合成することです。ユーザーは説明文を入力することができ、モデルはそのテキストに基づいて動画を生成します。
Snap Videoとは何ですか?
Snap Videoは、Snap(ソーシャルメディアプラットフォームSnapchatを運営する企業)の研究チームが開発したAI動画生成モデルです。その目的は、テキストによる説明から動画を合成することです。ユーザーは説明文を入力することができ、モデルはそのテキストに基づいて対応する動画コンテンツを生成します。動画コンテンツは冗長性と複雑性が高いため、Snap Videoはテキストによる説明から、高品質で時間的に一貫性があり、動きの忠実度が高い動画を生成するという課題を解決することを目指しています。ユーザー調査によると、Snap VideoはPikaやRunway Gen-2といった動画生成モデルと同等、場合によってはそれらを上回る性能を発揮することが示されています。
スナップビデオの公式サイト
- 公式プロジェクトホームページ:https://snap-research.github.io/snapvideo/
- arXivの研究論文:https://arxiv.org/abs/2402.14797
Snap Videoの主な機能
- 動画優先モデルSnap Videoは、動画コンテンツ生成専用に設計されたモデルであり、動画の時間的な連続性と動きの処理に特化した最適化が施されています。これは、画像生成モデルを拡張した他の多くのモデルとは異なり、動画処理において制約が生じる可能性があります。
- 拡張EDMフレームワークこのモデルは拡張しますEDMフレームワークこれにより、ビデオデータにおける空間的および時間的な冗長性をより適切に処理できるようになり、ビデオ生成の品質が向上します。
- 高効率トランスフォーマーアーキテクチャSnap Videoは、TransformerベースのFITアーキテクチャを採用しており、特にビデオ生成タスクや高解像度ビデオの処理において、シーケンシャルデータの処理や長期的な依存関係の把握に非常に効果的です。
- 高速なトレーニングと推論U-Netなどの従来型アーキテクチャと比較して、Snap Videoは学習と推論が高速で、より効率的に動画を生成できます。
- 高解像度ビデオ生成Snap Videoは高解像度のビデオコンテンツを生成できます。これは、より多くの詳細や複雑な動きを処理する必要があるため、従来のテキストからビデオを生成するモデルでは困難でした。
- 統合時空間モデリングSnap Videoは、空間的次元と時間的次元の両方をモデル化することで、複雑な動きと高い時間的一貫性を備えた動画を生成します。
Snap Videoの技術アーキテクチャ
- 拡張EDMフレームワークSnap Videoは、高解像度ビデオ生成に対応するためにEDMフレームワークを拡張したものです。もともと画像生成用に設計されたEDMフレームワークは、データ拡散プロセスをシミュレートすることで新しいデータサンプルを生成します。Snap Videoは、入力スケーリング係数(σin)を導入することでEDMの順方向拡散プロセスを調整し、元の解像度での信号対雑音比(SNR)を維持することで、高解像度ビデオ生成におけるパフォーマンスを維持します。
- コンバータアーキテクチャSnap Videoは、特にシーケンシャルデータの処理に適した、非常に効率的な深層学習モデルであるTransformerベースのアーキテクチャを採用しています。Transformerは、自己注意機構と相互注意機構を通じて、入力データ内のグローバルな依存関係を捉えます。Snap Videoでは、Transformerを使用してビデオフレームを処理し、動きの一貫性のあるビデオを生成します。
- FIT建築Snap VideoはFIT(Far-reaching Interleaved Transformers)このアーキテクチャは、高解像度画像および動画合成のために特別に設計されたトランスフォーマーアーキテクチャです。FITは、入力データの圧縮表現を学習し、学習可能な潜在空間上で計算を実行することで、パフォーマンスに大きな影響を与えることなく入力次元を増やすことを可能にします。この圧縮表現により、Snap Videoは高解像度動画データを効率的に処理できます。
- 統合時空間モデリングSnap Videoは、動画生成時に空間的次元と時間的次元の両方を考慮することで、動画内の動的な変化や動きを捉えることを可能にします。この統合的なモデリング戦略により、動画の時間的な一貫性と動きの品質が向上します。
- 2段階カスケードモデル高解像度動画を生成するために、Snap Videoは2段階のカスケードモデルを採用しています。第1段階では低解像度動画を生成し、第2段階ではこれらの動画を高解像度にアップサンプリングします。このカスケード方式により、パフォーマンスを維持しながら高品質な動画を生成することが可能です。
- 訓練と推論プロセスSnap Videoは、トレーニング時にLAMBオプティマイザとコサイン学習率スケジューリングを使用します。推論時には、モデルは決定論的サンプラーを使用してガウスノイズからビデオサンプルを生成し、分類器フリーガイダンスを適用してテキストとビデオのアライメントを改善します。
- 状態情報Snap Videoは、生成プロセス中に、テキストの説明、ノイズレベル、フレームレート、解像度などの条件情報を使用します。これらの情報は、生成プロセスを制御するための追加の読み取り操作を通じてモデルに提供されます。