画像収集
最初に, 再現したいキャラクターがよく写っている画像を収集しよう.
大体30~50枚程度あれば十分.
集めた画像は専用のフォルダにまとめておこう.
因みに筆者はこのようなディレクトリ構成にして, dataset
フォルダ内に画像をまとめている.
Pixiv や Twitter (現X) などから手動で集めてもよいが, このようなツールを使うと簡単に集められる.
github.com
キャプショニング
画像を集め終わったら, 集めた画像にキャプションを付ける.
この際, さっき紹介したツールで画像をダウンロードしていたならば, 既にキャプションは付けられているのでこの手順は必要ない.
それ以外の方法で画像を集めたならこの手順を参考にキャプションを付けよう.
まず, Stable Diffusion web UI をインストールする.
インストールの手順については README の Installation and Running の項を参考にしよう.
github.com
インストールが終わって Stable Diffusion web UI がブラウザに表示されたら, Extensions のタブを開き, 更にその中の Available のタブを開こう.
そうするとオレンジ色の Load From: と書かれたボタンがあるのでクリックする.
画像中に示されたテキストボックス内に wd
と入力すれば WD 1.4 Tagger が出てくるので, その右ある Install ボタンをクリックする.
WD 1.4 Tagger のインストールが終わったら一度 Stable Diffusion web UI を再起動しよう.
再起動後には新たに Tagger というタブが追加されているはずだ.
Tagger タブを選択し, 更にその中の Batch from directory タブを選択する.
Input Directory に最初の手順でダウンロードした画像が含まれるフォルダのパスを入力する.
Output Directory には特に何も指定しなくてもよい.
Interrogator が WD14 moat tagger v2 になっているのを確認したら, オレンジ色の大きな Interrogate ボタンをクリックし, タグ付けが終わるのを待とう.
最初の実行時にはモデルをダウンロードする必要があるので少々時間がかかるが, 焦らないで待ってね.
パラメータの設定が終わったらページ最下部の Start training をクリックし, 学習が終わるまでのんびりと待とう.
学習 (ローカル編)
学習を始める前に Stable Diffusion web UI は終了しておこう.
次に学習に使用するモデルをダウンロードしよう.
今回は Pony Diffusion V6 XL を用いる.
ダウンロードにはそれなりの時間がかかるので, 次の手順を並行して行うとよい.
civitai.com
ローカルでの学習には Kohya's GUI を使用する.
インストール手順は README の Installation を参考に.
github.com
インストールが終わり, 起動したら LoRA のタブを開き, パラメータを入力していく.
まずは画像を参考に各自の環境に合わせてフォルダやモデルを指定しよう.
繰り返し回数_キャラ名
というフォルダには, dataset
フォルダの中身をコピーしておこう.
ここで 200 < 繰り返し回数 * 画像の枚数
となるように繰り返し回数を設定しよう.
例えば, 画像の枚数が30枚でキャラ名が miku ならばフォルダ名は 7_miku
にする.
次に学習のパラメータを設定していく.
ここが一番の鬼門であり, LoRA の出来栄えを左右する項目である.
以下に筆者が使用していた例を示す.
はてなブログだと画像が潰れて読めないかもしれないので, Google Drive にもアップロードしておいた.
drive.google.com
ついでに config もアップロードしたので, 使ってみてね.
drive.google.com
これは SDXL - LoRA AI_characters standard v1.1
というプリセットからいくつかの項目を変更して VRAM 消費量を削減したものだ.
筆者は VRAM が 8 GB しかない RTX 3070 を使用しているのでこのような設定にしているが, もっと強い GPU を使用しているならもっとバッチサイズを大きくして学習を速めることができる.
パラメータの設定が終わったらページ最下部にある Start training をクリックして, 学習が終わるまでのんびりと待とう.
2024-06-24追記
今説明したのよりも, ちょっと面倒だけどより高品質な学習をさせるためのパラメータあるよ~.
0uts1de.hateblo.jp
(追記おわり)
学習 (Google Colab 編)
Google Colab は無料でも使用できるが, 快適に使いたいなら Pro 以上を推奨する.
大体1回 LoRA を作成するのに L4 GPU で90分かかる.
A100 にはなかなか繋がらないので知らん.
Colab での学習にはこのノートブックを使う.
colab.research.google.com
学習パラメータは学習 (ローカル編) を参考に調整すると成功しやすいかも.
用意したデータセットを Google Drive に入れて学習を開始すれば後は待つだけ.
ただし, Pro+ でなければバックグラウンド実行はできないので, 学習中はタブを開いたままにしておこう.
(なお経験上 Pro でも5分くらい離れてもリソース確認ができなくなるだけでインスタンスは残っている.)
おしまい
4090 欲しい!!!