Stable DiffusionのSampling method(サンプラー)ってなに?違いを比較検証!
- ※当ブログはアフィリエイト・アドセンスによる収益で運営されています。
こういったお悩みにお答えします。
Stable Diffusionでイラストを生成するうえで重要な役割を持つSampling method(サンプラー)。適していないものを選んでしまうと、イラストの質が下がったり生成時間がやたら長くなったりとデメリットがあるんです。
でも、やたらたくさんの種類があってどれを選べばいいのかわからないですよね。
この記事では
- 【結論】おすすめのSampling method(サンプラー)はDDIM
- Sampling method(サンプラー)とは:サンプリング時のアルゴリズム
- 押さえておきたいSampling method(サンプラー)の特徴2つ
- もっとスムーズにイラストを生成したいなら…
- 生成した大量のイラストを簡単に管理する方法
- Sampling method(サンプラー)に関するよくある質問
これらについて解説していくので、最後まで読むとSampling methodの違いがわかり、あなたに合ったものを選ぶことができます。
初心者の方・Stable Diffusionに関してわからないことがある方は以下の記事も読んでみてください。Stable Diffusionのダウンロード方法や使い方について詳しく解説しています。
>>【完全初心者用ガイド】Stable Diffusionの使い方を徹底解説!
【結論】おすすめのSampling method(サンプラー)はDDIM
はじめに結論ですが、筆者が最もおすすめするSampling methodはDDIMです。
その理由は、DDIMは高速かつ少ないstep数でも高品質のイラストを生成できるため。Sampling step数を15~20くらいにしてぶん回すとガチャ効率が最大になりそうです。
なお次点でおすすめするSampling methodは
- Euler
- DPM++ 2M Karras
このあたり。両者とも速度はDDIMと同じくらいで、20~30くらいのstep数なら高品質のイラストを生成できます。正直、DDIMと比べてそれほど大きな差ではないでしょう。
なお同じSeed値で他のモデルと比較するときなど、イラストの再現性を求める場合は特にこの2つがおすすめ。DDIMは収束しないため、他モデルと比較しづらい可能性があります(詳しくは後述)。
再現性うんぬんはレアケースの話なので、『迷ったらDDIM』くらいに考えておくのがおすすめです。
モデルが推奨するSampling methodを確認
使用するモデルのダウンロードページに指定があれば、迷わずにそれを使いましょう。
出典元:Hugging Face
推奨するSampling methodを指定しているモデルも多いです。意外と見落としている・忘れている場合があるので確認してみてください。
Sampling method(サンプラー)とは:サンプリング時のアルゴリズム
-
※この記事ではSTABLE DIFFUSION ARTを参考に執筆しています。もっと詳しい情報が知りたい方は上記の神サイトをご覧ください。
Sampling methodを一言で説明すると『ノイズを除去(サンプリング)するときのアルゴリズム』です。
Stable Diffusionがイラストを生成する手順は、人間が絵を描くときとは全く違います。
私たち人間が絵を描くときは、真っ白なキャンバスに筆や鉛筆で線を描いていくでしょう。
その一方、Stable Diffusionはノイズだらけの画像からノイズを除去していくことで絵を描いています。Sampling stepの回数だけノイズを引き算していって、残ったものが絵になるイメージ。
文章だけだとわかりづらいと感じる方もいると思うので、実際にSampling stepごとの違いを見てみましょう。
これはSeed値を固定した状態で、DDIMでstepごとのイラストの違いを比較したものです。step1・2までは完全にただのノイズ画面ですよね。
一方、こちらはSampling methodをDDIMからEulerに変えて同じ実験をした動画です。DDIMと比べてノイズ除去の仕方が違うのがおわかりいただけるのではないでしょうか。
これがSampling methodが持つサンプリングアルゴリズムの差なのです。
押さえておきたいSampling method(サンプラー)の特徴2つ
押さえておきたいSampling methodの特徴は以下の2つです。
- Ancestral samplersは収束せず、再現性が低い
- 普段使いするなら、再現性よりも速さと品質が大事
順番に解説していきます。
Ancestral samplersは収束せず、再現性が低い
Sampling methodの中には『Ancestral(=祖先・先祖) samplers』と呼ばれるものがあり、これを使用するとイラストが収束しません。
Ancestral samplersは
- Euler a
- DPM2 a
- DPM++ 2S a
- DPM++ 2S a Karras
名前に『a』がついているものに加え、DDIMやPLMSなども含まれます。
『収束ってなんだよ』という話なのですが、これはSampling stepごとにイラストの形が変わることを指します。
具体的に、先ほどお見せしたDDIMのstep比較動画から抜粋すると
step7の時点ですでに最終形に近いイラストができていますが
step8~10ではいきなり絵柄が大きく変わります。
その後Step11~18あたりまでは安定するものの
step20では髪色が茶色になるなどの変化が見られました。
このランダム性によってイラストの再現性が低くなってしまう、というのがAncestral samplersのデメリット。
普通にイラストを量産するうえではあまり問題にならないと思いますが(そもそもstepごとの比較なんてしませんし)、同じ構図が求められるシチュエーションに不向きだということは覚えておきたいですね。
パッと思いつくのは『同じ構図で他のモデルと比較したい』というようなシーンでしょうか。
DDIMやEuler aなどのAncestral samplersだけポーズが変わってしまうと、モデルによる差を比較しづらいですからね。
普段使いするSampling methodは、再現性よりも速さと品質が大事
普段イラストを生成するときに重要視するのは、結局きれいなイラストをサクッと生成してくれるかどうかでしょう。
その観点でもっともおすすめなのがDDIM。知覚品質(Perceptual quality)を比較したこちらのグラフをご覧ください。
グラフ縦軸の数値が低いほど品質が高いのですが、DDIM(水色)は7~8くらいの少ないstep数でも高品質を実現しています。Euler(黒色)よりも早く品質が上がるという結果のようですね。
実際に検証してみると
う~~~ん、どうでしょうか。DDIMがそこまで早く高品質になるか?というのはちょっと疑問の残る結果でした。DDIMの方ではstep8~10でぜんぜん違うイラストを描いていますしね。
step数が少ないときの品質はそこまで差がないのでは?というのが筆者の感想です。
環境や使用モデルにも左右されると思うので、STABLE DIFFUSION ARTの結果も総合してDDIMをおすすめとしています。筆者の環境でも、DDIMが悪いという結果ではありませんしね。
繰り返しになりますが、イラストの再現性が必要ならDDIMではなくEulerやDPM++ 2M Karrasなどの方がおすすめ。使い分けていきましょう。
もっとスムーズにイラストを生成したいなら…
もしあなたがもっと快適にAIイラストを生成したいなら、グラボを見直してみるのがおすすめです。
グラボはAIイラストを生成するうえで最も重要なパーツ。いくらCPUやメモリが高性能でもグラボがしょぼかったら致命的です。
本格的に取り組んでいくのなら、グラボにはケチらず投資しましょう。最低でも12GBのVRAMは確保しておきたいところ。VRAMが2GB・4GBくらいしかない古いグラボだと高解像度化や学習に大きな支障が出てしまいます。
コスパを重視する方・予算が5万円以下の方はRTX 3060一択と言っていいでしょう。
もう少し予算が確保できて、さらにハイスペックなグラボに興味がある方は以下の記事もお読みください。きっとあなたに合ったグラボが見つかりますよ。
>>【コスパ重視】Stable Diffusionにおすすめのグラボ3選!
PCごと買い替えを検討している方は以下の記事をお読みください。快適にStable Diffusionを使えるマシン3選を紹介しています。
>>Stable Diffusionにおすすめのパソコン3選と推奨スペックを解説!
生成した大量のイラストを簡単に管理する方法
Stable Diffusionで生成した大量のイラストを効率的に管理するなら『Eagle』というツールがおすすめ。
イラストを生成するとメタデータが自動でEagleに送られ、タグやメモとして保存されます。このタグを使うことで検索や管理がとても楽ちん。
例えば『a dog』というタグで検索すると、そのプロンプトで生成されたイラストだけを表示することができます。『あのイラストどんなプロンプトで生成したっけ?』『LoRAのトリガーワード忘れた』なんて迷わずに済みますよ。
Eagleは本来『約4,000円・買い切り型』の有料ツールですが、30日間の無料体験ができるので、とりあえず試してみてください。
Sampling method(サンプラー)に関するよくある質問
Karrasってなに?
Karrasはノイズ除去のやり方をちょっと改良した版。
初期のstepでは多めに、最後に近いstepでは少なめにノイズを除去することでイラストの品質がちょっと上がるらしい。
特にデメリットもないので、同じシリーズ(DPM2とDPM2 Karrasなど)であればKarras推奨です。
『++』ってなに?
改良されてバージョンアップした証。
もともとあったDPMが改良されてDPM+、さらに改良されてDPM++になりました。
『Stable DiffusionのSampling method(サンプラー)ってなに?違いは?』のまとめ
- Sampling methodとはノイズ除去のアルゴリズム
- 再現性重視ならEulerかDPM++ 2M Karrasあたりがおすすめ
- 普段使いに効率的なのはDDIM
ここまでお読みいただきありがとうございました!
他にもわからないことがあったら以下の記事をお読みください。初心者向けにStable Diffusionの使い方を一から解説しています。