【Stable Diffusion】Sampling stepsってなに?stepごとの違いを比較!
- ※当ブログはアフィリエイト・アドセンスによる収益で運営されています。
- Stable Diffusionの画面に
Sampling stepsってあるけど、これなに? - Sampling stepsってどのくらいイラストに影響するの?
- 結局いくつに設定すればいいのか教えて!
こういったお悩みにお答えします。
Stable Diffusionでイラストを生成するうえで重要な役割を持つSampling steps。step数が多いほどイラストの品質は高くなっていくのですが…そのぶん時間もガッツリ持っていかれます。
結局step数をいくつに設定すればいいのか知りたいですよね。
この記事では
- Stable DiffusionでのSampling stepsとは?
- 【結論】おすすめのSampling step数
- もっとスムーズにイラストを生成したいなら…
- 生成した大量のイラストを簡単に管理する方法
これらについて解説していくので、最後まで読むとあなたに合った適切なSampling stepsの値を判断できるようになります。
初心者の方・Stable Diffusionに関してわからないことがある方は以下の記事も読んでみてください。Stable Diffusionのダウンロード方法や使い方について詳しく解説しています。
>>【完全初心者用ガイド】Stable Diffusionの使い方を徹底解説!
Stable DiffusionでのSampling stepsとは?
Sampling stepsをざっくり説明すると『ノイズを除去する回数』です。
Stable Diffusionでは、ノイズ画像からノイズを除去していくことによってイラストを生成します。
真っ白なキャンバスに絵を描くわけではなく
このようなノイズだらけの画像からイラスト生成がスタートしているんですね。
Stable Diffusionで入力されたSampling stepsの数が多いほど、1回の作業あたりのノイズ除去量は少なくて済みます。そのため、より丁寧にノイズが除去できるイメージ。
例えば、Samplind stepsが『1』だと
こんなに品質の低いイラストが…。
一方、同じ条件でSampling stepsを『40』にすると
『めっちゃ丁寧に書き込まれてるな~』という感じですよね。
このようにSampling stepsの数が多いほど、質の高いイラストを生成することができます。その代わりstep数に応じて作業時間がかかるため、品質と時間のどちらを優先するかでstep数を決めたいですね。
なおSampling methodによるノイズ除去の仕組みは以下の記事で詳しく解説しています。
>>Stable DiffusionのSampling method(サンプラー)ってなに?違いを比較検証!
【結論】おすすめのSampling step数
結論としては
- 通常グループに属するSampling method:15~20step
- 2次ソルバーに属するSampling method:10~15step
このように設定するのがおすすめ。
2次ソルバー(2nd order solvers)とは、1回の作業で2回のノイズ除去を行うSampling methodの総称です。1stepで2回分の仕事をする代わりに、時間も約2倍かかるのが特徴です。
そのため通常のSampling methodと2次ソルバーのSamling methodを一緒くたに考えても意味がありません。
それぞれのグループに属する具体的なSampling methodは
Sampling method | |
通常グループ | ・Euler a ・Euler ・DPM++ 2M ・DPM fast ・LMS Karras ・DPM++ 2M Karras ・DDIM ・PLMS ・UniPC |
2次ソルバー | ・Heun ・DPM2 ・DPM2 a ・DPM++ 25 a ・DPM++ SDE ・DPM2 Karras ・DPM2 a Karras ・DPM++ 25 a Karras ・DPM++ SDE Karras |
こんな感じです。あなたが普段使っているSampling methodはどちらに属していますか?
一例として、通常グループのEulerと2次ソルバーのHeunを比べてみましょう。
同じstep数で比べたとき、2次ソルバーであるHeunの方が明らかに品質が高くなります。特にstep5~10あたりで大きな違いがありますね。
画像を切り抜いてみるとこんな感じです。Eulerの方はイラストがまだぼやけている印象。
動画の後半になると両者の絵柄が収束し、かなり近づいてきます。
このように、通常⇔2次ソルバーの間で大きな差があるのがおわかりいただけたでしょうか。2次ソルバーは1stepあたり2回の仕事をしているわけなので、品質が上がるのは当然と言えるでしょう。
そのぶん、生成時間はHeunの方が約2倍かかっています。step40とかクソ長かった…。
この結果を見たうえで、筆者は
『通常グループのSampling method(Euler)なら15~20stepくらいでいいかな』
『2次ソルバー(Heun)なら10~15stepあればよさそう』と判断しましたが、あなたはどうでしょうか?
上の動画を見ながら、あなたにとって最適なstep数を判断してもらえれば幸いです。
使ってないんだけど…
他のSampling methodに関しても、今回の動画は参考になるでしょう。同じグループに属しているSampling method同士なら、step数と品質の関係についてそこまで大きな差はないと考えています。
同じ通常グループに属するEulerとDDIMを比較すると
どちらも10後半くらいのstep数からいい感じのイラストになっています。
そのため、DDIMを使う場合でもおすすめはやはり15~20step。Eulerと変わりません。
あなたが普段使っているSampling methodが通常グループに属しているならEulerの結果を、2次ソルバーに属しているならHeunの結果を見てもらえれば目安になるでしょう。
ホントは全Sampling methodについて動画を作りたいんですが…お金も時間もないのでご容赦を。
これらの結果を総合して
Sampling method | おすすめのstep数 | |
通常グループ | ・Euler a ・Euler ・DPM++ 2M ・DPM fast ・LMS Karras ・DPM++ 2M Karras ・DDIM ・PLMS ・UniPC |
15~20step |
2次ソルバー | ・Heun ・DPM2 ・DPM2 a ・DPM++ 25 a ・DPM++ SDE ・DPM2 Karras ・DPM2 a Karras ・DPM++ 25 a Karras ・DPM++ SDE Karras |
10~15step |
こんな感じで結論づけようかなと思います。
あなたの環境や使用モデル・求める品質によって最適はstep数は変わってくるので、筆者個人の意見として参考にしてください。
30step以上は時間のわりに品質が上がらないのでコスパが悪く、おすすめはしません。
もっとスムーズにイラストを生成したいなら…
もしあなたがもっと快適に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 stepsってなに?stepごとの違いを比較!』のまとめ
- Sampling stepsとはノイズを除去する回数
- 通常と2次ソルバーに分けて考えよう
- 通常:15~20steps・2次:10~15stepsがおすすめ
ここまでお読みいただきありがとうございました!
他にもわからないことがあったら以下の記事をお読みください。初心者向けにStable Diffusionの使い方を一から解説しています。