論文読書 Back to basics - Let denoising generative
Contribution Summary
Tianhong Li, Kaming Heらは、ノイズ予測が高次元すぎることからピクセル空間での自己完結型モデルの作成は難しいという課題のため、低次元多様体の性質を利用できると考えられる画像そのものの予測へと舵を切ることを提案し、実際に高次元空間では画像をそのまま予測して、それを低次元に圧縮するアーキテクチャを組むほうが精度が向上するということがわかった。
Motivation
現在の拡散モデルは、VAEによる潜在空間に対して、各tにおける画像のノイズ、もしくはフローというノイズと画像の差を予測する。しかし、画像は本来は、明るさが連続していたりエッジが連続していたり、低次元多様体に存在していると考えられるのに対し、ノイズは完全ランダムでそのような多様体から外れた場所にいるため、学習のための情報量がより多く必要だと考えられる。潜在空間に次元を落としているために、問題が起きていないが、実際に多様体を学ぶことはできておらず、自己完結性が次元の呪いにより妨げられている。この低次元多様体に目を向け、ピクセル空間におけるViTの適用のみにより、実際にクリーンな画像を予測することでの学習を可能にする。
自己完結型のモデルを作ることによって、他のアプリケーション分野で開発されたアーキテクチャの進歩の恩恵を受けられるようになる。つまり、VAEを使わずともタンパク質とかそういった別の分野に応用が効く。
Method
損失空間と予測空間を分けて、何を予測するのかと、損失はどこで計算するのかをわけた。256x256の結果と64x64の結果を表示。シークエンス長は16x16になるようにした。(つまりpatchサイズが16のものと、4のもの。)
これにより、予測空間の影響と損失空間の影響を分けて、予測空間は何がいいのかを比較した。特に高解像度化の影響をみるために、patch sizeを少しずつ大きくし、それに伴いもとの画像も大きくしてシークエンス長を揃えた。1つのpatchのデータ次元で比較した。
Insight
特に高解像度では、x-predが圧倒的に精度高かった。lossはv-lossが一番よかったが、大きな差はなさそうだった。さらに、ボトルネック的なアーキテクチャにすることで精度が向上した。モデルサイズを小さく抑えながら精度を向上させている。画像が低次元多様体に存在しており、それをうまく活用できていると考えられる。
Unknown: 残った課題
もともとフロー予測やノイズ予測がよかった理由が特に述べられていなかったと思います。低次元画像の場合はなんでフロー予測のほうがよかったのかは非常に気になります。また潜在表現を介した予測についての影響がどう働くのかはわかっていません。VAEにしている時点でノイズ入り入力画像の多様体を学習していることから、ノイズが学習しやすくなっているのでしょうか。
Reflection
初めて拡散モデルについて勉強したとき、画像に対して学習しないで、ただのノイズを学習するのは高次元でパターンがないから難しいように感じていました。入力データには当然少しのパターン+ノイズが含まれているので、そこからノイズを学ぶという内容でしょうが、画像のパターンのほうがより豊富な表現であり、ヒトが行うと考えても、ノイズ入りの画像からノイズを予測するよりもとの画像を予測するほうが簡単なので、ノイズを予測するのは直感に反していましたが、この感覚に沿った形となりました。
Discussion