「正則画像」は学習効果を際立たせるものではなくて、モデルへの学習浸食を防ぐためのもの、という話。

 LORA作成時に頭を悩ませがちな「正則画像」。
 こちらについて「個人的な考え」をまとめてみました。

 経験則と多少の実験を元とした考証であって、厳密に検証したワケじゃないので、あくまで「個人的感想」ということで。

 ネットやSNSで「正則画像」を調べると、「正則画像を使うと、クラスが強調されることで学習内容がはっきりする」的な説明を見ますが、間違いだと思っています。

 SD-SCIPTのドキュメントには、正則画像について「学習によってクラスの内容が変化してしまうので、正則画像によってクラスの内容が変化するのを防ぐ」的なことしか書かれていません。
 つまり

・アリスという女の子の画像を学習すると、女の子画像を学習したAIが「1girl」という概念をアリスという女の子で上書きする。
・すると、本来は「1girl」でいろいろな女の子が出せていたけど、学習後は「1girl」でアリスしか出なくなってしまう。
・それは困るので、「1girl」を正則画像として学習することで、1girl本来の意味を残しておく。

 ということです。
 要は、アリスという教師画像とは別に、1girlという画像を学習しているにすぎません。
 実際、「1girl」で出力した正則画像を使ったLORAで、「1girl」画像を出力すると、正則画像を学習した画像が出力されるはずです。

 SD-SCRIPTのドキュメントには「特定のキャラなどを学習させる場合、正則画像を用いる必要はない」とハッキリ書いてあります。

 それも当たり前のことで、特定のキャラを出す場合、クラス内容がそのキャラ内容になっても何も困りません。
 アリスのLORAを使ったときに「1girl」でアリスが出てきても何も困らないはずです。
 むしろ、アリスを「アリス+1girl」で呼び出したときに、1girlの正則画像学習が上乗せされてアリスの再現性が損なわれることのほうが、デメリットのはずです。

 単純に考えるのであれば、正則画像は「フォルダ分けした画像を同時に学習している」程度に考えればいいと思います。
 現在主流のタグ付けで学習させる方式で考えるのなら「1girlとタグ付けした画像を、教師画像と一緒に学習している」と考えてもいいかもしれません。


 また、正則画像として透明画像を正則に使う方法もあります。
 その効果については諸説あるのですが、個人的には上の理解で説明できると思っています。

 つまり、「何もない画像を混ぜることで過学習を防ぐ」「モデルが持っているクラス画像情報を弱めることで、クラスを使った呼び出しで教師画像の学習効果を強調する」です。

 もともとの「1girl」が薄まることで学習内容が際立つようになり、結果として「透明画像は効果あり」って思われるようになったんじゃないかなぁ…と思います。
 あくまで推測ですけどw


 基本的にLORAは「特定のプロンプトで、特定の絵を出力させる」ために使うものなので、本質的には正則画像はいらないと思います。

 正則画像が必要なのは、多様な出力が必要なMODEL学習ですかねぇ…
 あとはキャラじゃなくて、絵柄全体を調整したい画風LORAとか。

 他では、過学習を抑えたいときに透明化正則使うっていう本来の意図とは違った変則的利用法もあるかもしれないというか、私ははたまにやります。
 断言はできないけど、なんとなく効果がある気がしてます。
 まぁおまじないですね。

 以上が正解かどうかは分かりませんが、LORA作成における正則画像利用を考える際の参考になれば幸いです。

この記事が気に入ったらサポートをしてみませんか?