2024年2月16日に公開されたOpenAIのSora、サービスリリースの前に動画作品と倫理と論文を公開してきました。
今後もどんどん進化しそうですね。
いままで動画生成を頑張ってきたクリエイターの皆さん、研究者のみなさん、「動画は10年かかる」との主張を鵜呑みにしてきたみなさん。
https://twitter.com/CEOfromBCG/status/1758303663192510640
日本の研究は無駄!演算基盤をもっと!
という気持ちになっちゃいますよね。
(僕は動画はすぐできるとわかっていたし、演算基盤だけが問題とも思っていないのですが)
ちょうど昨日、森勢先生がこんなつぶやきを書いていらっしゃいました。
まあそれはそうなんですが「ものすごい速さと深さで研究すればいいのでは」という気持ちも無きにしもあらずです。
それについてはこのブログの中盤にエビデンスを紹介しますが、ともかく技術を理解していきましょう。
公式文書が出ています
Video generation models as world simulators
We explore large-scale training of generative models on video data. Specifically, we train text-conditional diffusion models jointly on videos and images of variable durations, resolutions and aspect ratios. We leverage a transformer architecture that operates on spacetime patches of video and image latent codes. Our largest model, Sora, is capable of generating a minute of high fidelity video. Our results suggest that scaling video generation models is a promising path towards building general purpose simulators of the physical world.
世界シミュレータとしてのビデオ生成モデル
動画データに対する生成モデルの大規模な学習を探求します。具体的には、様々な時間、解像度、アスペクト比の動画や画像に対して、テキスト条件付き拡散モデルを共同で学習します。動画と画像の潜在コードの時空間パッチ上で動作する変換器アーキテクチャを活用します。我々の最大のモデルであるSoraは、1分間の忠実度の高い動画を生成することができます。この結果は、ビデオ生成モデルのスケーリングが、物理世界の汎用シミュレータを構築するための有望な道であることを示唆しています。
【AI動画生成】Sora 要素技術解説|抹茶もなか
https://zenn.dev/mattyamonaca/articles/e234e57834d7ad
Stable Video Diffusion(こっちはちゃんと論文読み切ってないのでもしかしたら違うかも)はあくまでベースは画像生成であり、そこに時間経過(フレーム推移)を認識できるレイヤーを追加し、直前のフレームと整合性が取れるような画像を生成するモデルでした。
その中で
“Stable Video Diffusion: Scaling Latent Video Diffusion Models to Large Datasets”の論文で、
In ourwork, we follow the former approach and show that the resulting model is a strong general motion prior, which can easily be finetuned into an image-to-video or multi-view synthesis model. Additionally, we introduce micro-conditioning [60] on frame rate. We also employ the EDM-framework[48] and significantly shift the noise schedule towards highe rnoise values, which we find to be essential for high-resolution finetuning. See Section 4 for a detailed discussion of the latter.
私たちの研究では、前者のアプローチに従い、結果として得られるモデルが、画像からビデオ、またはマルチビュー合成モデルに簡単に微調整できる、強力な一般的動き事前分布を持つことを示します。さらに、フレームレートに関するマイクロコンディショニング[60]を導入します。また、EDM-framework[48]を採用し、ノイズスケジュールを高ノイズ値へ大幅にシフトします。後者の詳細な議論についてはセクション4を参照。
4.4. Frame Interpolation: To obtain smooth videos at high framerates, we finetune our high-resolution text-to-video model into a frame interpolation model. We follow Blattmann et al.[8] and concatenate the left and right frames to the input of the UNet via masking. The model learns to predict three frames with in the two conditioning frames, effectively increasing the framerate by four. Surprisingly, we found that a very small number of iterations(≈10k) suffices to get a good model. Details and samples can be found in App. D and App.E,respectively.
4.4. フレーム補間: 高フレームレートで滑らかな動画を得るために、高解像度テキスト-動画モデルをフレーム補間モデルに微調整します。Blattmannら[8]に従い、左右のフレームをマスキングによってUNetの入力に連結します。このモデルは2つの条件フレームで3つのフレームを予測することを学習し、フレームレートを効果的に4つ増加させます。驚くべきことに、非常に少ない反復回数(≒10k)で良いモデルが得られることがわかりました。詳細とサンプルはApp. DとApp.Eにそれぞれあります。
Preserve Your Own Correlation: A Noise Prior for Video Diffusion Models
D5にその詳細がありますが、「クロスアテンション・コンディショニングのCLIPテキスト表現を、対応する開始フレームと終了フレームのCLIP画像表現に置き換えることで、長さ2のコンディショニング系列を形成しました。AdamW[56]を使用し、学習率10–4、減衰率0.9999のエクスポネンシャル移動平均を組み合わせ、Pmean=1、Pstd=1.2のシフトノイズスケジュールを使用して、空間分解能576×1024の高画質データをモデル化します。 驚くべきことに、私たちは、256という比較にならないほど小さなバッチサイズで訓練したこのモデルが、わずか10回の繰り返しで、極めて高速に収束し、一貫性のある滑らかな出力を得ることを発見しました」とあるので、この論文の段階で、UNetとCLIPを使って時間方向の学習ができていることは発見できていたけど、 先行研究の論文(PYoCo:Preserve Your Own Correlation: A Noise Prior for Video Diffusion Models) で、「Video Diffusionにおいて素朴に画像ノイズ事前分布を映像ノイズ事前分布に拡張すると、最適な性能が得られない」ことが発見されていたので、その部分を検証しているため、という理解をしています。
Despite tremendous progress in generating high-quality images using diffusion models, synthesizing a sequence of animated frames that are both photorealistic and temporally coherent is still in its infancy. While off-the-shelf billion-scale datasets for image generation are available, collecting similar video data of the same scale is still challenging. Also, training a video diffusion model is computationally much more expensive than its image counterpart. In this work, we explore finetuning a pretrained image diffusion model with video data as a practical solution for the video synthesis task. We find that naively extending the image noise prior to video noise prior in video diffusion leads to sub-optimal performance. Our carefully designed video noise prior leads to substantially better performance. Extensive experimental validation shows that our model, Preserve Your Own Correlation (PYoCo), attains SOTA zero-shot text-to-video results on the UCF-101 and MSR-VTT benchmarks. It also achieves SOTA video generation quality on the small-scale UCF-101 benchmark with a 10× smaller model using significantly less computation than the prior art.
拡散モデルを用いた高品質な画像生成の進歩は目覚しいものがありますが、写実的で時間的にコヒーレントな一連のアニメーションフレームの合成は、まだ始まったばかりです。画像生成のための10億スケールのデータセットは市販されていますが、同じスケールの同様のビデオデータを収集することはまだ困難です。また、動画拡散モデルのトレーニングは、画像拡散モデルよりも計算コストがかかります。この研究では、動画合成タスクの実用的なソリューションとして、事前に訓練された画像拡散モデルを動画データで微調整することを検討します。我々は、映像拡散において、素朴に画像ノイズ事前分布を映像ノイズ事前分布に拡張すると、最適な性能が得られないことを発見しました。我々の注意深く設計されたビデオノイズ事前分布は、大幅に優れた性能をもたらします。広範な実験的検証により、我々のモデルであるPreserve Your Own Correlation (PYoCo)は、UCF-101とMSR-VTTベンチマークにおいて、SOTAゼロショットテキストからビデオへの結果を達成しました。また、小規模なUCF-101ベンチマークでは、従来技術よりも大幅に少ない計算量で、10倍小さなモデルでSOTAビデオ生成品質を達成しました。
Preserve Your Own Correlation: A Noise Prior for Video Diffusion Models (ICCV 2023)
Songwei Ge, Seungjun Nah, Guilin Liu, Tyler Poon, Andrew Tao, Bryan Catanzaro, David Jacobs, Jia-Bin Huang, Ming-Yu Liu, Yogesh Balaji ICCV 2023
けっこう最近の論文で、動画拡散モデルについて「画像ノイズ事前分布を映像ノイズ事前分布に拡張すると、最適な性能が得られない」という形で否定されています。
This technical report focuses on (1) our method for turning visual data of all types into a unified representation that enables large-scale training of generative models, and (2) qualitative evaluation of Sora’s capabilities and limitations. Model and implementation details are not included in this report.
Much prior work has studied generative modeling of video data using a variety of methods, including recurrent networks,1,2,3 generative adversarial networks,4,5,6,7 autoregressive transformers,8,9 and diffusion models.10,11,12 These works often focus on a narrow category of visual data, on shorter videos, or on videos of a fixed size. Sora is a generalist model of visual data-it can generate videos and images spanning diverse durations, aspect ratios and resolutions, up to a full minute of high definition video.
本テクニカルレポートでは、(1)生成モデルの大規模な学習を可能にする、あらゆる種類の視覚データを統一された表現に変換する手法、(2)Soraの能力と限界の定性的評価に焦点を当てます。モデルと実装の詳細は本レポートには含まれていません。
多くの先行研究では、リカレントネットワーク1,2,3、生成的敵対ネットワーク4,5,6,7、自己回帰変換器8,9、拡散モデル10,11,12など、様々な手法を用いて映像データの生成的モデリングが研究されています。Soraは映像データの汎化モデルであり、様々な時間、アスペクト比、解像度にまたがる動画や画像を生成することができます。
Scaling transformers for video generation:
Sora is a diffusion model21,22,23,24,25; given input noisy patches (and conditioning information like text prompts), it’s trained to predict the original “clean” patches. Importantly, Sora is a diffusion transformer.26 Transformers have demonstrated remarkable scaling properties across a variety of domains, including language modeling,13,14 computer vision,15,16,17,18 and image generation.27,28,29
In this work, we find that diffusion transformers scale effectively as video models as well. Below, we show a comparison of video samples with fixed seeds and inputs as training progresses. Sample quality improves markedly as training compute increases.
ビデオ生成のためにtransformersをスケーリング:
Soraは拡散モデル21,22,23,24,25であり、入力されたノイズの多いパッチ(およびテキストプロンプトのような条件付け情報)が与えられると、元の「きれいな」パッチを予測するように学習されます。トランスフォーマーは、言語モデリング、13,14コンピュータビジョン、15,16,17,18、画像生成など、様々な領域で顕著なスケーリング特性を示しています27,28,29。
この研究では、拡散変換がビデオモデルとしても効果的にスケーリングすることを発見しました。以下では、固定されたシードと入力を持つビデオサンプルの、トレーニングの進行に伴う比較を示します。トレーニングの計算量が増えるにつれて、サンプルの品質は著しく向上します。
Video-to-video editing
Diffusion models have enabled a plethora of methods for editing images and videos from text prompts. Below we apply one of these methods, SDEdit,32 to Sora. This technique enables Sora to transform the styles and environments of input videos zero-shot.
ビデオからビデオへの編集拡散モデル
拡散モデルは、テキストプロンプトから画像や動画を編集するための多くの方法を可能にしました。以下では、これらの手法の一つであるSDEdit[32]をSoraに適用します。この手法により、Soraは入力映像のスタイルや環境をゼロショットで変換することができます。
ここで、冒頭のOpenAIのテクニカルレポートを読み直してみます。
そう、SoraはDiffusion Modelで構成されている。ノイズ除去をどの次元で行っているかについては実装が公開されていないし、おそらく決め込んでいるわけではないようだけど diffusion transformers が動画のモデルとしてスケーリングする可能性については確信があるようで、「In this work, we find」と言っているが、それはちょっと言い過ぎな気もする。diffusion transformers がスケーリング則に従うという話と、過去の研究で「うまくいきませんでした→改善しました」の繰り返しがある中で「transformersを巨大にしたから解決しました」という印象だけを残すのは、OpenAIとしてバイアスと重みをかけた表現であるようにも見える。
ちなみに論文[32]で引用されている SDEdit は「SDEdit: Guided Image Synthesis and Editing with Stochastic Differential Equations」CVPR2021のこと。
Stable Diffusionよりも前に、Stanfordでこの論文を書いた主著者の Chenlin Meng さんは、 動画生成技術の研究所Pika Labs を立ち上げています
以下は個人的な理解ですが、ゼロショットのビデオ生成と、時間方向の拡散モデルによるフレーム補間は同じアプローチではなく、むしろ逆の要素があります。今回の もなかさん の主旨である 「UNetとdiffusionではなくvideo transformerで実現した」、というところは主旨として間違いではないですが、実際のところそれらの技術なくして成立もしていません。 この分野の各社の研究公開が盛んに行われていて、加えて、OpenAIの組織的な研究統合、西海岸的なリソース集中で、Transformersを更にスケールさせたという意味で功を奏したというところは同意したいところです。
世界を光や影など含んだ物理モデル(これはCGの研究における事前計算とかライトトランスポート問題に近いかも)、加えて移動や運動(人物のジョギングなど)のキネティックな運動力学モデル、自然界の水面や波面、桜吹雪のようなモデルを全て学習して、(動画や静止画での連続ではなく)3次元的な点群で表現して、それを時間方向に拡散させていくと、これができあがります!Video Transformersの出来上がりです、もちろんゼロショットの言語からの生成モデルも突っ込めますし画像理解もできますから今後も(フェイク動画以外の)使い道も多そうです、
Originally published at https://note.com on February 17, 2024.