見出し画像

AI絵。LoRAってシンプルでいいね。

はじめに


このノートは、LoRAってシンプルでいいねというノートです(直球
LoRAは、AIの追加学習を低コストで行うことができるツールで、画像の内容やスタイルを好みに変えることができます。
NMKD Stable Diffusion GUIを使う場合、LoRAの使い方は簡単で、効果も高いです。
この記事では、そのLoRAの実際の使用例などを紹介します。ゲームなどへAI絵の活用する際に、ぜひ参考にしてください。
なお、Stable DiffusionをつかうのでGeForceのVRAM 8Gあたりがあったほうがよいです。入門用として GeForce RTX 3060 VRAM 12G版がおすすめです。

NMKD Stable Diffusion GUIについて

NMKD Stable Diffusion GUIは、WindowsでStable Diffusionを簡単に利用できるアプリケーションです。
インストールと簡単な設定は窓の杜に記事があります。

インストールしたら、プロンプト(英語)を入れてGenerateすればAI絵が出力されます。

NMKD Stable Diffusion GUIの画面

公開するAI作品に関しての宣言

・追加学習(Dreamboothなど)、絵の変換(Image to Image)元に他者の著作物を許可なく読み込みません。
・キーワードに作品や作者、会社名等を使いません。
・他者の著作物に似たときは使いません。

1. LoRaの学習方法

NMKD Stable Diffusion GUIでLoRAの学習をする手順です。
(1) 学習させる絵を用意します。
 通常5枚以上のモデルを用意します。サイズは512x512にしました。
 もちろん自分で描いた絵を使うことができますが、私はAI絵を生成しているなかから好みのものをピックアップしています。

学習させる絵(通常5枚以上)

(2) 学習したファイルを作成します。
 学習ボタンをクリックして LoRA Training画面を開きます。

学習ボタン(Train LoRA Model)
LoRAの学習設定

以下を設定します。
・Base Model: もとになるモデルを指定します。
・Project Name: LoRAモデルの名前を設定します。
・Dataset Folder: 先程用意したモデルが格納されているフォルダを指定します。

とりあえず Start Training をクリックすれば拡張子がsafetensorsとなっているLoRAモデルファイルが作成されます。

2. LoRAを適用したAI絵の出力方法

モデル指定画面のLoRAの項目に、先程のローラモデルファイルがあるフォルダを指定します。
そうすると、LoRA Filesからモデルが選べるようになります。

LoRAモデルファイルのリスト

これでLoadにチェックしたモデルファイルが出力に影響するようになりますので、あとはいつものようにGenerateするだけです。シンプル。

3. LoRAの効果について

ではLoRAを適用した絵と、そうでない絵を比べてみましょう。
girl, portrait でシンプルな女性の絵を9枚ずつ出力しました。シードはあわせてあります。

1) マージモデル(アニメモデル50%+実写系モデル50%)

LoRAなし(マージモデル)
LoRAあり(マージモデル)

どれも、目と肌の色が学習対象の絵に若干影響を受けているように思えます。

2) アニメモデル

LoRaなし(アニメモデル)
LoRAあり(アニメモデル)

こんどは目と、髪が学習対象の絵に影響を受けているように思えます。影響の度合いは、こちらのほうが大きいようですね。

3) 実写系モデル

LoRAなし(実写系モデル)
LoRAあり(実写系モデル)

実写系モデルは、効きがあまりはっきりしない場合が多いようです。おそらく、出力された絵とLoRAで学習した絵の因果関係が少ないのでしょう。

4) 2倍LoRA
LoRaのおもしろいところのひとつに、Weightによって効きを調整できることがあります。ためしに2.0にしたときは以下のようになります。(マージモデル)

2倍LoRA(マージモデル)

特に目の影響が強くなっていることがわかりますね。このように、LoRAは適用の度合いを調整できるのが面白く、かつ実用的ではないかと思います。

4. LoRAを使った作例について

少しプロンプトを作り込んだ作例で比較してみます。
1) 作例A

Model A (アニメ・実写マージモデル、ほぼ50%同士)

LoRAで学習した絵に影響をうけ、リアルな雰囲気を残しつつ、目を中心にアニメチックになっていることがわかります。
一応、プロンプトも記しておきますね。

girl, masterpiece , depth of field , big gradient eye, portrait, short hair, moles under the eyes , sheer décolletée , cute and dreamy backgrounds, art nouveau, backlight, contrapost, from below
(意図は「少女。背景はぼかす。大きくてきれいな目。髪はショートヘアで、ほくろがある。シースルーのデコルテを着ている。アールヌーボー風。ライトは逆光」)

プロンプト

2) 作例 B

Model B (アニメ75%・実写25%のマージモデル)

こちらもLoRAで学習した絵に影響をうけ、特に目はモデル元来の絵から置き換わっていることがわかります。元絵はバランスのよい顔ですが、LoRAの絵もあまり破綻なく目が大きくっていると思います。
そのせいで若干幼く感じるようになったのと、表情がかわってしまっているのは残念です。

おわりに

LoRAの学習は思ったより簡単でしたね。しかも DreamBoothに比較して学習が速く、用意する絵も少なくてすみ、パラメータもそれほど悩む必要がないのがすばらしいと思います。
効果については出力された絵を比較していただいてわかるように、よく効く場合とそうでもない場合がありますが、それなりに素直な効果が発生しているなと思います。

立ち絵などに使う場合は、キャラクターごとにLoRAモデルファイルを作るのが良いと思いますが、その場合はそれなりに工夫が必要かもしれません。

いずれにせよ、追加学習の手間がだいぶ減ったことで、またAI絵の敷居が下がりました。ゲーム制作者にとってよい道筋になるとうれしいですね。

ではまた。ゲーム制作者魂がともにあらんことを。(k1t)

いいなと思ったら応援しよう!