💭

SORAの裏で動いているモデルを調べてみた

2024/02/25に公開

(随時更新予定です)

soraってなに?

2024/2/15に発表された動画生成のモデルです。
現時点では一般公開はされていませんが、openAI社の社長のサムアルトルマンが、Xにてプロンプトを募集して、それに答える形でざっくばらんに生成できる様子も確認されています。

これはあまりAIに触れていないことからしたらたかだか1分くらいの動画を生成できて何がすごいの?って思うと思いますが、これまでの動画生成AIでは、重力を無視したり、人を生成しても溶けて3人が1人になったりと、
時間軸に沿って人間から見ると意味不明な動画が生成されているレベルでした。

デモ動画を見る限りまともな動画が生成されているので、レベルが段違いに飛躍したようです。

そして裏でどういった学習を回したのかなどをネットで拾える範囲でまとめてみようと思います。
なので知っている人からすると驚きはないと思いますが、あまり詳しくない人に役に立てれば。

soraの構成

https://openai.com/research/video-generation-models-as-world-simulators#fn-26
基本全部ここに書いてました。。!

公開されている情報を確認すると生成のステップは以下のようです。

①動画→パッチへの変換

- 動画を構成する各画像を用意(動画は画像の集合体)
- Visual Encoderに通すことで低次元に圧縮
- 圧縮されたデータを、上図右端の1次元ベクトルに平坦化(パッチ化)

We take inspiration from large language models which acquire generalist capabilities by training on internet-scale data

と書いてあり基本方針として、インターネットサイズの言語モデルでの学習構成を、動画でも転用しているとういうことです。

パッチというのは簡単にいうと塊くらいに超ざっくり理解しています。
文章を読んでみると、画像をある塊に分割していって、時系列に並べるとのこと

②Diffusion Transformerによる動画生成

- 先ほど生成した動画の低次元ベクトルを、Diffusion TransformerというAIモデルで処理
- このDiffusion Transformerとは、Stable Diffusionなどで用いられている「拡散モデル」という生成AI技術の一種
- このモデルを簡単にいうと、「いったん画像を粗くし、もう一度その画像を修復する」という訓練を通じて、画像を生成する能力を得たモデル

またもや超ざっくり理解ですが、あらい砂嵐みたいな画像をぶっ込むと、めっちゃ綺麗な、電気屋さんのテレビで流れてる映像みたいになるイメージ

③DALL-E3のキャプショニング

- ユーザーがテキストプロンプトを入力
- テキストをLLMによって、より具体的な文章に変換
- テキストを拡散モデルに送り込み、テキストに沿った画像を生成

おしまい。ざっくりすぎるのでまた後で読んでみようと思う。

Discussion