0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Self-Flowについて

0
Posted at

かつてFluxの技術記事におけるREPAを整理したことがある。

REPAは外部のCLIPモデルが必要という欠点があり、記事内ではその代替手段を示唆されていた。その代替手段は不明だったが、Self-Flowの技術が公開されたので読んでみる。

REPA

REPAは以下のような感じで外部のCLIP Encoderが必要であるが、2通りのlatentのcos類似度損失によってDiTの一部にToken間のCLIPの意味抽出を学習させる。

image.png

Self-Flow

反面、Self-Flowは以下のような感じである。REPAと似るが外部のCLIP Encoderが不要である。
REPAと違ってこれでDiTの一部(最初の8層)に意味抽出が学習できる根拠は何もなく感じる。

image.png

DiT深さの差、MLPの有無は以下の式から推測される。

image.png

image.png

image.png

image.png

DiT深さがD=28なら$28*0.3=8.4, 28*0.7=19.6$でl=8、k=20が求まる。

random MASKとtoken相関

Self Flowではt>sであればランダムに画面の5割以下により強いノイズを付与する。

image.png

一般的にLatent DiffusionはVAEによってVAEの中間層の分布はガウス分布であるlatentにガウスノイズを加える。ガウス分布にガウス分布を加えてもガウス分布のままだからこのようなDiTは一般にガウス超球面上の移動を学習する。

一方、VAEの代わりにVQVAEを使用した場合、latentは離散的なindexになる。この場合、拡散過程として離散的なindexにノイズを課す事はできないので、この状況において拡散過程はindexの値に徐々にランダムにMASKを掛けていくことになる。一般にこのようなMASKを一個ずつ取り除いくモデルの事を自己回帰モデルという。
画像生成モデルでの回帰モデルとしては例えばPartiが知られる。

image.png

一方、LLMにおいては学習データ(テキスト)にMASKを掛けこのMASK内の離散indexを予測する手法はBERT(2018)から普遍的に見られる。つまり、LLMにおいてはMASKを一個一個予測していくという事の方が普通である。
一般に入力の離散indexはVQVAEではcodebookによってガウス分布に変換される。このため一般的なLLMのTransformersにおいてもガウス分布(MASK)からガウス分布の移動を学習しているに過ぎない。
重要なのはこのrandom MASKの予測についてはtoken間の相関を強く学習している点にある。

つまり、Self Flowがtoken間の相関(意味抽出)をDiTの最初の8層に学習できるREPAと等価に見なせるのはランダムMASKのおかげなのか、というのが自分の考察である。

メリット

Self FlowのメリットはCLIP Encoderを用意しなくていい点ですがTextEncoder(VLM)にVisionEncoderが含まれることを考えると、取り立てて凄いメリットとは言えないように思いました。
これだけなら別にREPAでよくね、と思ってましたがCLIP Encoderを使用せずとも学習できるメリットは意味抽出EncoderのないaudioやvideoでもDiTの部分学習が可能な点があります。
逆にデメリットとしてはファインチューニングコードが難しく、単純な拡散モデルのlossによるファインチューニングでは破滅的忘却が起きやすくなるのでは?と思いました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?