【LoRA学習】WD 1.4 Tagger で除外したタグが消えない理由

2024年2月5日

広告

この記事の内容

WD 1.4 Tagger

除外タグに登録したのに、なぜ消えないと悩んだのは 私だけでしょうか?
コピペでは消せない除外タグの謎をアニメ・リムルテンペストを学習しながら紹介します。

今日の課題は、リムル様の画像を集めて
学習させる所までを説明するね😲
まずは、画像集めだよ🔎

キャラクター画像を集める

LoRA学習に必要な画像をネットから拾い集めます。
キャラクターの画像はキャラクターが単体で描かれている物を10枚~20枚程度を選び、1番から連番で名前を変更していきます。

この状態でも学習は出来ますが、余分な部分(服装など)を省くため、画像毎にタグを付けていきます。

画像にタグ付けする

キャラクター画像一つ一つにタグをつけて行きます、数が多いと大変面倒な作業ですがStable Diffusionの拡張機能を使えば一瞬で終わります。

Stable Diffusionの拡張機能タブを開き、拡張機能リストタブ呼び込みの順に開き検索バーに(WD 1.4 Tagger)を入力するか、コピペしてファイルを表示させます。

WD 1.4 TaggerをインストールしてStable Diffusionの設定タブを開きUIの再呼び込みをする。 おそらく表示されないのでStable Diffusionを再起動させてください。

WD 1.4 Taggerの使い方

タグ付けには単体処理と一括処理の2種類が用意さています、単体処理でタグを確認しながら作れば精度は上がりますが大変面倒ですので一括処理で作業を進めます。
まずは、単一処理タブで画像を張り付けてどの様なタブが生成されるか確認して細かな設定を終わらせます。

しきい値の設定

上の画像の下の方に(しきい値)0.35と表示されていますが、この数値を大きくするとタグが減少し、小さくすればタグが増大されます。
LoRA学習ではタグで指示された箇所は学習対象から外されてしまいますのでタグは最低限に留める方が良いのですが、統一感のない衣服は学習させないようにします。

しきい値0.35のタグは以下の通りです。

日本語訳

リムル テンペスト, 両性具有, 1その他, 青い髪, 黄色い目, ソロ, 座っている, 長い髪, 長袖, ベルト, 口を閉じた, パンツ, 目の間の髪, 前髪, コート, 視聴者を見る, 笑顔, ブーツ, 黒いズボン, 黒いコート, バックル

困りました、学習させたいキーワードが
タグに含まれています!

タグの中には学習させたいキーワード 青い髪黄色い目長い髪が含まれてしまっています。
これらを表示させない様にするには、除外タグ枠に記載して対応します。

除外タブの登録方法

タブの中の文字、黄色い目(yellow eyes)をコピペしても登録されません、なぜなら(yellow)と(eyes)の間に空白(スペース)が存在しており、実際に使われる文字と異なっているのが原因です、これらを認識させるには空白部分にアンダースコアーを入れる必要があります。
例えば(yellow eyes)なら(yellow_eyes)と入力すれば認識されるようになります。
又、複数の除外タブを入力する場合は(カンマ)で区切ると書かれていますが、ここでも(、)と(,)の違いに注意してください。英数字の(,)が正解ですので日本語入力の(、)と間違わないように!

簡単に言えば下図の%グラフに表示されている名前でなければ認識しないと言う事です。

更に簡単に登録する方法は上図の項目をコピペする 又は 選択してドロップする方法も有ります。

除外タグの登録が終わったら インタロゲートを押してタグを生成します、除外タグに登録したキーワードが消えていれば成功です。

日本語訳

リムル テンペスト, 武器, 剣, 1その他, 両性具有, ソロ, ブーツ, 鞘, シンプルな背景, 白い背景, コート, 全身, 鞘, 立っている, ベルト

青い髪黄色い目長い髪は消えているようです。

トリガーワードの設定

次は、トリガーワードの設定よ、大事な部分なので見逃さないでね!

除外タグ入力枠の上に追加タグを入力する所が有りますが そこにトリガーワードを入力します。
タブの先頭キーワードがトリガーとなる仕組みになっていますので普段、使わないキーワードを先頭に入力する様にしてください、(1 girl)などよく使うキーワードが先頭に来てしまうと(1 girl)がキャラクターに紐づけされてしまいますのでご注意ください。

リムルの場合は先頭に(Rimuru Tempest)が入りますので不要では有りますが(rimuru)と入力してトリガーとします。

ここまでが「タグの設定方法」ですがこれを各画像で行うのは非常に骨が折れます、ですので設定はそのままで一括処理に切り替えて一瞬で終わらせます。

一括処理に切り替える

設定が終われば画像を消し、(すべてのインタロゲートモデルをアンロードする)を押してタグを一旦、消します。

画像ファイルのパスの入力

デレクトリーから一括処理のタブを開いて画像ファイルのパスを入力します。

パスは画像ファイルの入ったフォルダーのパスを指定してください。

パスのコピー方法

ファイルを選択右クリックパ スのコピー 貼り付けです。

貼り付けすると下図の「入力デレクトリ」の様になります、両端の(””)が有ると認識しないので「出力デレクトリ」側の様に””を消去します。

両端の(””)を消去後に(インタロゲート)を押して全画像ファイルにタグを取り付けて準備完了です。
下図の様に画像の横にタグファイルが表示されていれば成功です、これらのファイルを使い学習していきます。

いよいよだな!

LoRA学習

【超初心者用】LoRA学習起動パッチを使用した学習環境のセットアップ方法で使用したLoRAを使って説明します。

フォルダの中の(Learning_settings)をメモ帳アプリで開いてください。

変更箇所はファイル名とepoch数と何epochごとに保存するかの設定の2点です。
まずはファイル名の入力。
ここは、お好きな名前を入力してください。ここでは「rimuru_v3」とします。

rem 学習結果のファイル名
set file_prefix="rimuru_v3"

次に、epoch数と何epoch毎に保存するかの設定です。
今回は用意した画像数(17)×繰り返し数(20)×epoch数(20)で5000程度を目安にepoch数を決めました、正確には6800回ですが、+正則化画像の数: 12とバッチ数を8まで上げていますので最終学習ステップ数は1740ステップとなります。
学習時間は22分の工程となります。

rem epoch数と何epochごとに保存するかの設定 1epoch=全フォルダの(画像数xループ数)の合計
set num_epochs=20
set save_every_n_epochs=5

学習開始

メモ帳を保管していよいよLoRAを起動します。
フォルダの中の(Learning_settings)をダブルクリックして学習を開始します。

学習が終わると「output」フィルだに「rimuru_v3.safetensors」名で出力されます。
このデーターをStable DiffusionのLoRAフォルダーとモデルのフォルダーに移して検証します。

LoRAファイルをチェックポイント(モデル)で使用した場合

正プロンプトには「rimuru, woman」だけを入力して 不プロンプトには「EasyNegativeV2」を使用します。

生成画像は以下の通りです。似ていません(>_<)

チェックポイント(モデル)+ LoRA の場合

正プロンプトには「rimuru, woman」+「<lora:rimuru_v3:1>」を入力して 不プロンプトには「EasyNegativeV2」を使用します。

生成画像は以下の通りです。オシイ(>_<)

ACertainty.ckpt(モデル)+ LoRA の場合

正プロンプトには「rimuru, woman」+「<lora:rimuru_v3:1>」を入力して 不プロンプトには「EasyNegativeV2」を使用します。

生成画像は以下の通りです。これもオシイ(>_<)

リムルの性別は中性で容姿は女性で衣服は男性なのでプロンプト無しでは厳しいかもしれません。

プロンプトの追加

まずは、LoRAで上手く学習されなかった瞳の色をプロンプトで指定します。
イメージが変わりリムルらしさが出てきました。

後は胸のふくらみなどの女性ぽさを修正します、まずはプロンプト内の「 womanl」を「boy」に変更して胸のふくらみを無くします。
又、衣類関係のプロントも追加して完成です。

最終プロント
rimuru,1 boy,1 boy, solo, long hair, light blue hair, ponytail, yellow eyes, beige fur scarf, Black clothes,long coat

いかがでしたでしょうか?
皆さんも一度チャレンジしてみてください!