最終更新:ID:lJVL/qKRwg 2023年02月18日(土) 02:50:17履歴
読解不明の謎文しかないので、今はとりあえずローカルの学習入門かとしあきDiffusionを参照することを推奨。
2023-01-21版追記事項
DreamBoothエクステンションいれとると起動せえへん問題が発生中らしいで。
対応方法だけ抜粋すると
extensions\sd_dreambooth_extension
にある
requirements.txt
に
gradio==3.16.2
って追加してからWebUI起動してや。
詳しくは下記のissuesみてや。
https://github.com/AUTOMATIC1111/stable-diffusion-...
2023-01-12版説明
アップデートでいろいろ変わるので stable-diffusion-webui\models\dreambooth\モデル名\db_config.jsonをよく見ような
設定項目多いけど落ち着いて くそデカサンプル画像あり
とりあえず動く数値だけ
Instance Prompt について詳しく知りたい場合はこのページをくまなくよむとええで。日本語で分かりやすく説明してあってタダで見れるのはここくらいや。
一応補足やけど、このextensionのDreamBoothは他のDreamBoothツールやらと違って(?)stepとか正規化画像生成とかは「学習元1枚に対してなんぼか」で設定するから、「なんか15枚で4000ステップ学習したらええらしいで」みたいなの見かけてそのまま4000入れると合計60,000step学習しおるからよう注意やで。(この例やと合計4000stepやりたかったら4000÷15≒266step指定になるで)
DreamBoothエクステンションいれとると起動せえへん問題が発生中らしいで。
対応方法だけ抜粋すると
extensions\sd_dreambooth_extension
にある
requirements.txt
に
gradio==3.16.2
って追加してからWebUI起動してや。
詳しくは下記のissuesみてや。
https://github.com/AUTOMATIC1111/stable-diffusion-...
2023-01-12版説明
アップデートでいろいろ変わるので stable-diffusion-webui\models\dreambooth\モデル名\db_config.jsonをよく見ような
設定項目多いけど落ち着いて くそデカサンプル画像あり
とりあえず動く数値だけ
Instance Prompt について詳しく知りたい場合はこのページをくまなくよむとええで。日本語で分かりやすく説明してあってタダで見れるのはここくらいや。
一応補足やけど、このextensionのDreamBoothは他のDreamBoothツールやらと違って(?)stepとか正規化画像生成とかは「学習元1枚に対してなんぼか」で設定するから、「なんか15枚で4000ステップ学習したらええらしいで」みたいなの見かけてそのまま4000入れると合計60,000step学習しおるからよう注意やで。(この例やと合計4000stepやりたかったら4000÷15≒266step指定になるで)
学習させるモデルを選ぶ
学習の設定 その1
Imput > Concepts タブで
- Directories
- Dataset Directory: 学習用画像のあるディレクトリを指定する
- Classification Dataset Directory: 正則化画像のあるディレクトリを指定する
- プロンプト
- Instance Prompt:
- Class Prompt:
Instance Prompt | 無し | nanU | nanU girl | nanU Unan |
Class Prompt | 無し | 無し | girl | Unan |
- Image Genaration
- Class Images Per Instance Image: 0 ここも「学習元画像一枚に対しての枚数」なのであんまり巨大な数字を入れないように
学習の設定 その2
Input > 設定 タブで
Basic
- General
- Use LORA: LORAを使用する場合はオン sd-scripts (kohya)で出来るLoraとは別物(kohyaのほうが拡張版でkohya版がデファクトになってる)なんで要注意
- Generate Classification Images Using txt2img: オフ
- Intervals
- Training Steps Per Image (Epochs): 100(デフォ) ここの値は対象画像一枚ごとに何Step学習するかを設定する、学習元の枚数が多いと合計が非常に多くなるので注意(例えば400を指定して学習元が20枚なら8000step合計で学習する)。
- Save Model Frequency (Epochs): 適宜
- Save Preview(s) Frequency (Epochs): エラーが出る場合は0
- Learning Rate
- Learning Rate Scheduler: constant_with_warmup
- Learning Rate: 0.000002
Advanced
学習の設定 その3
Google翻訳で
Training Stable Diffusion with Dreambooth using Diffusers https://huggingface.co/blog/dreambooth#tldr-recomm...
Dreambooth Extension for Stable-Diffusion-WebUI README.md https://github.com/d8ahazard/sd_dreambooth_extensi...
SD Dreambooth Extension についての議論(バグとか動かんとか) https://github.com/d8ahazard/sd_dreambooth_extensi...
Training Stable Diffusion with Dreambooth using Diffusers https://huggingface.co/blog/dreambooth#tldr-recomm...
Dreambooth Extension for Stable-Diffusion-WebUI README.md https://github.com/d8ahazard/sd_dreambooth_extensi...
SD Dreambooth Extension についての議論(バグとか動かんとか) https://github.com/d8ahazard/sd_dreambooth_extensi...
Automatic1111版web UI とは別に環境つくらなあかんで CUIとGUIも別や
CUI https://github.com/kohya-ss/sd-scripts
GUI https://github.com/bmaltais/kohya_ss
日本語の説明がある https://github.com/kohya-ss/sd-scripts/blob/main/R...
https://note.com/kohya_ss/n/nba4eceaa4594
出力ファイルは last.ckpt か last.safetensors やで
環境構築とかその辺はLoraのページ読みや。
CUI https://github.com/kohya-ss/sd-scripts
GUI https://github.com/bmaltais/kohya_ss
日本語の説明がある https://github.com/kohya-ss/sd-scripts/blob/main/R...
https://note.com/kohya_ss/n/nba4eceaa4594
出力ファイルは last.ckpt か last.safetensors やで
環境構築とかその辺はLoraのページ読みや。
予めDocker-Desktop入れとく必要あるが比較的簡単なGUIで動くやつがあるで、ただしWSL2を有効にせなあかんから、基本的には1111_WSL2を見て「Ubuntu 22.04 をセットアップ」までは済ませなあかんで。
設定周りは上記のextensionと違ってstep数が全画像の合計を指定する形(2023/1/3頃確認時点のバージョン)やったり数字の指定がちょっとちゃうから気をつけや。
あとこいつはVRAM10GB程は必要なんとSD_V2系モデルに非対応やからそこも注意せなあかん。
GUI:https://github.com/smy20011/dreambooth-gui
Docker-Desktop使いたくないんやったら同じ作者さんがDocker向けCUI版だしとるから頑張ったらええんちゃうかな?まじ知らんけど。(こっちはSD_V2系対応済みらしいで?しらんけど)
CUI版:https://github.com/smy20011/dreambooth-docker
設定周りは上記のextensionと違ってstep数が全画像の合計を指定する形(2023/1/3頃確認時点のバージョン)やったり数字の指定がちょっとちゃうから気をつけや。
あとこいつはVRAM10GB程は必要なんとSD_V2系モデルに非対応やからそこも注意せなあかん。
GUI:https://github.com/smy20011/dreambooth-gui
Docker-Desktop使いたくないんやったら同じ作者さんがDocker向けCUI版だしとるから頑張ったらええんちゃうかな?まじ知らんけど。(こっちはSD_V2系対応済みらしいで?しらんけど)
CUI版:https://github.com/smy20011/dreambooth-docker
正則化画像アリ学習のついでに「本当はどっちなん?」という疑問から検証してみた。ただし古いwebuiとDBでの結果です…
結論から言えば
・Existing Prompt Contentsが「Description」の場合、Instance promptに[filewords]のみなら、タグ付けテキスト内にClass Token(例:cpcにしたならcpc)が記述されていれば、Instance Tokenに入力した語(例:shs)が呼び出しキーとして機能する。
・Instance promptに[filewords]を使わない場合、Instance promptに入力した語が呼び出しキーとなる。
結論から言えば
・Existing Prompt Contentsが「Description」の場合、Instance promptに[filewords]のみなら、タグ付けテキスト内にClass Token(例:cpcにしたならcpc)が記述されていれば、Instance Tokenに入力した語(例:shs)が呼び出しキーとして機能する。
・Instance promptに[filewords]を使わない場合、Instance promptに入力した語が呼び出しキーとなる。
タグ
このページへのコメント
4GBだと学習無理なのかな……
拡張Dreamboothインストールしたけどタブが出ない……
あっ、なんか出てきました
Instance promptの件では
「photo of ○○」って使うやり方もあったり
Instance prompt: photo of shs woman
Class Prompt:photo of a woman
そして、このやり方[filewords]と併用することも出来たり
併用例だと
Instance Prompt:photo of shs [filewords]
Class Prompt:photo of a [filewords]
Instance Token:shs
Class Token:woman
と言う感じで
ただ、[filewords]を使う場合
タグ付けが結構重要なんで
classと一致させると良いね
タグとClassは複数指定はあんまりおすすめしない
>複数指定はあんまりおすすめしない
この場合、Classに「girl,lady,woman」とか
タグの最初に「girl,lady,woman」とかね
なお、ladyはモデルにもよるけど
オバサン顔が出る率が高い
Kohya版のDreamBoothのGUI版を起動する場合
コマンド打つのが面倒ならバッチファイルを作って置くと便利かも
メモ帳に
powershell -NoProfile -ExecutionPolicy Unrestricted .\gui.ps1
と記述して
あとはそのファイルを「start.bat」と言う感じの名前にして
gui.ps1と同じフォルダにでも置いおけば、
そのバッチファイルから起動出来たり