偶然ですが、 AnimateLCM を触っていて気付いたことがあります。
「 LCMScheduler 大事!」
たぶんこれは、 AnimateDiff だけじゃなくて LCM 系で重要な気がしてきます。
他の LCM はまだ触っていないので知らんけど
少なくとも diffusers v0.22.0 で紹介されていた LCM のモデルでは LCMScheduler が使われていそうでした。
- LCM (Latent Consistency Models) の振り返り
- 前提
- LCMScheduler と DPMSolverMultistepScheduler で試した結果
- AnimateLCM では guidance_scale=1.5 も重要だった
- まとめ
LCM (Latent Consistency Models) の振り返り
リリースノートを見る限りだと、4ステップでかなり品質の高い画像が出力されています。
つまり、僅かなステップで高品質な動画が出力されるもののようです。
その中でも AnimateLCM は AnimateDiff 向けの Latent Consistency Models ということのようです。
前提
MeinaMix のモデルを試すときは、いつも DPM++ 2M Karras 相当の DPMSolverMultistepScheduler(use_karras_sigmas=True) を使っています。
これを試していて気付いた!
LCMScheduler と DPMSolverMultistepScheduler で試した結果
以下のような結果に現れました
AnimateLCM では guidance_scale=1.5 も重要だった
通常のパイプラインで使われている guidance_scale のデフォルト値は 7.5 だと思います。
AnimateLCM のコードでは 1.5 になっていることに気づき、7.5 を指定してみました。
絵らしいものが出なくなった!
まとめ
パラメータをいじるのは手軽だけど、いじっちゃいけないところもありそうなので、
どこがどう影響するかわからず、なかなか難しいですね。。。