【検証】NMKD版DreamBooth 250~8000stepsでrateを変え同一の学習元画像で比較する | 経済的生活日誌

【検証】NMKD版DreamBooth 250~8000stepsでrateを変え同一の学習元画像で比較する

DreamBooth検証ソフトウェア

DreamBooth GUIをWindowsで使えるNMKD版DBのキャラ学習用の最適設定は何か実践研究各Qualityをlearning rate 1倍と0.5倍で試し、デフォルトSteps最大値の2倍まで追加で検証してみました。同一の4枚の画像をnai.ckptにそれぞれ学習させた10パターンを比較しました。

0,簡潔な結論 DBキャラ学習に最適な設定はこれだ!

とりあえず今回の検証で至った結論をシンプルに記します。

  • 学習元が4枚なら、実用上はsteps 1000で十分
  • learing rate0.50倍だとかなり学習ペースが落ちる
  • キャラ学習なら、学習元画像は全て異なる色の単色が望ましい
  • 1000steps以降は変化に乏しいが、stepsを重ねるほど背景の混入率が下がる
  • 8000steps,0.50倍で学習させればキャラだけを正確に学習する

2,学習の比較を行った際の設定

NMKD版DB GUIでの学習時設定

対象は千石撫子です。

https://www.monogatari-series.com/bakemonogatari/chara/c04.html

学習させたのは次の4枚、1枚は公式立ち絵で他は段ボールより。

背景は、黄色単色・白単色・黒単色・紅葉

服装メインで顔も写しつつといった具合に切り抜いた512四方の画像4枚です。

これらを以下の設定でそれぞれ学習させました。

赤太文字が今回良かった設定です。あくまで学習元4枚という前提です。

NMKDでの名前
(Quality)
stepsLearning
rate
所要時間
(3090にて)
規定なし2500.56分
LOW2501.06分
規定なし5000.512分
規定なし10000.525分
MEDIUM10001.025分
規定なし20000.550分
規定なし40000.51時間20分
VERY HIGH40001.01時間20分
規定なし80000.53時間

HIGH(2000steps,1.0倍)をやり忘れてましたねOrzごめんなさい…

なお規定なしというのは、NMKD version1.7.0以降で追加された学習パラメータの手動設定によるものです。

version1.6.x では4択から選ぶだけだったので、かなり柔軟になりましたね。

Learning rateは今回の検証では0.5か1.0でやってますが、0.1刻みで2.0まで好きに変更できます

これでもwebUI1111版拡張機能より断然設定項目少ないので、検証は相対的に容易です。

なおストレージ残量が湯水の如く消えて行く。。。

DreamBoothの始め方はこちらを参考にしてください。

生成時設定 webUI(1111版)でのx/y plot設定

  • 変更するのはプロンプト・モデルのみ

共通条件

  • Steps: 28,
  • Sampler: DPM2 a Karras,
  • CFG scale: 7.5,
  • Size: 512×768,
  • Clip skip: 2,
  • ENSD: 31337,

2,出力された画像比較 実際のX/Y prot画像

ブログの画像は読み込み高速化のために自動で圧縮されてしまうので、14MBもの1枚のpng画像は貼れませんでしたOrz

画像を縦分割して載せておきます。上下に切れ端みたいなのが残ってますごめんなさい。

Seedが2種類それぞれ固定で、ckptファイルごとの出力結果です。

モデルファイル名は「前略 000stepx0-50– 後略.ckpt」などとなっています。
「250step」などがsteps数を表し、
「0-50」はlearning rate0.50倍、「1-00」は1.0倍であることを表しています。

NMKDのDB GUIは出力ファイル名にlearning rateを含めてくれないので手動で追加しました

(表記ゆれごめんなさい)

プロンプトが上書きした単語のみの場合

プロンプトは「test-nade,」のみ。

考察

この結果だけを見ると一番キャラ再現できているのは1000ステップ1.0倍のこちらですね。

steps数を高く、learning rateを下げることで過学習になりにくく、より特徴を捉える丁寧なキャラ学習ができるというのが通説ですが、この結果を見るにかなり早い段階で学習ができていて、それ以降変化に乏しいようにも見られます。

4枚の画像には1000stepsで十分なのかもしれません。

また、例えば4000steps,0.50倍では左側、帽子が忘れられています

1000/2000/4000steps,1.0倍および8000steps,0.50倍では帽子が出力できていることから、「steps x learning rate」の単純な掛け算で結果が決まるわけではないことが分かりますね。

仮に「steps x learning rate」で決まるなら2000×1.0でも4000×0.50でも同じ結果になることため、そりゃそうだろ!という考察ですが。

では、ある程度短いプロンプトをつけてみましょう。

簡単なプロンプトを加えた場合(NAIデフォルトの呪文付き)

ポジティブプロンプト「masterpiece, best quality,nade-test,kneeling, looking at viewer, looking at viewer,」

ネガティブプロンプト「lowres, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, jpeg artifacts, signature, watermark, username, blurry, artist name」

NAIデフォルトのプロンプトと、姿勢と目線について付け加えました。

ネガティブプロンプトはNAIデフォルトのみ。

考察

今回は1000steps,learning rate0.50倍が好みです。

輪郭線や瞳が美しい。

何気に250steps,0.50倍さえ微塵も「マスピ顔」じゃないのDB強力すぎでは?!

ところで明らかに4枚の画像を数千steps回すのは悪手みたいですね。全体的に過学習気味な絵柄だし。。。
あと4000steps,1.0倍などの右画像にある謎の文字っぽいのは何⁈

逆に言えばこのレベルの過剰なstepsでも、絵柄がノイズとか抽象画のようにグッチャグチャになるのではなく、人物がはっきりしているためDBくんは扱いやすいとも言えます。

学習元の4枚のうち、3枚はそれぞれ背景色の異なる単色で、残り1枚が紅葉でした。

背景をプロンプトに入れていないのに葉っぱ散りまくっているのは紅葉の1枚のためでしょう。

学習元4枚の背景が全て似通っていると背景変更が難しくなりそうですね。

次は紅葉とは程遠い海辺などを背景にしてみましょう。

背景を付け足した場合

帽子にパーカー姿の撫子を学習したため海には似合いませんが…

海辺に立つとパーカーが日差しよけで、ワンピース風の水着に見えてくる不思議。

考察

今回は秋っぽい背景が混入してしまっているため、rate問わず2000steps以下の全てと、rate0.50倍4000stepsは駄目ですね。

実用時は「🍂(落ち葉の絵文字)」をネガティブプロンプトに入れれば解決はしますが、今回はあくまでも【検証】ですから…
背景ではなく、学習させたいキャラクターのみを正確に学習できている設定値を探るのが目的のため。

8000steps,0.50倍だけが秋っぽさとは無縁です。

他のckptは左画像の背景に落ち葉があったり、紅葉した葉のようなものが右画像の帽子付近にあるため、背景まで含めて学習してしまったと判断しました。

撫子がオレンジ色のパーカーを羽織っているので、DBくんもそりゃ秋っぽくしたくなっちゃいますよね…中々酷なことをしてしまったぜ。

まとめ 検証から得られた結論

  • 学習元が4枚なら、実用上はsteps 1000で十分
  • learing rate0.50倍だとかなり学習ペースが落ちる
  • キャラ学習なら、学習元画像は全て異なる色の単色が望ましい
  • 1000steps以降は変化に乏しいが、stepsを重ねるほど背景の混入率が下がる
  • 8000steps,0.50倍で学習させればキャラだけを正確に学習する

今回は全体的に過学習気味な絵柄でしたが、失敗事例もまた検証にはつきものでしょう。
願わくばこの失敗を礎により優れたNMKD版DB設定を探究する方が居られますように!!

また、キャラ学習に必要なsteps数はおぼろげながら見えてきたので成果もありました。

学習元が4枚なら基本1000steps,1.0倍で十分で、それ以降殆ど変化はないものの
いっそ8000stepsまで回すと学習精度が上がっているということがわかりました。

DreamBoothの始め方はこちらを参考にしてください。

AI関連記事まとめ

NAIをローカルに導入してみる関連(win10/win11向け)

多分日本語の解説記事では最も丁寧に解説している記事です。

グラボをまだ持っていない買い替えたいが選ぶ基準がわからない!という時はこちらをご覧ください

わかりにくいwebUI(1111版)のアップデート手順を丁寧に解説した記事もごらんください

ツールやtips,モデルがまとまっているページを探す

有用なリンク集・備忘録です。

声優を学習した音声読み上げAI MoeGoe GUI(Windows向け)

GUIで手軽に導入でき、どんな台詞も好きなキャラに読み上げて貰えます。

GPT2日本語生成モデルをWindowsで試す

その他AI関連記事

AI
画像生成AI(NovelAI ,Waifu Diffusionなど)や、音声生成AI(MoeGoe GUI)、文章生成AI(GPT-2)に関連する情報をまとめました。
タイトルとURLをコピーしました