Stable Diffusionの重みを階層別に付けられる拡張機能『LoRA Block Weight』の使い方

LoRA

「LoRA Block Weightを使ってみたいけど、使い方が分からない」といった疑問を持っている方も多いのではないでしょうか。

こういった疑問にお答えするため、この記事ではLoRA Block Weightの導入方法や使い方を解説していきます。

実際にLoRA Block Weightを使った結果も紹介しているので、読んで参考にしてください。

※Stable Diffusionの立ち上げ方・使い方については、以下の記事で詳しく解説しています。

スポンサーリンク

拡張機能「LoRA Block Weight」とは?

「LoRA Block Weight」とは、LoRAの階層を調査できる拡張機能です。応用させれば、LoRAの重みを調整して、顔や服など一部分のみに反映させられます。

LoRAは17階層に位分かれており、それぞれの階層が顔や服、背景などに反映される仕組みです。

例えば「Yae Miko | Realistic Genshin LORA」を調査すると、以下のようなプリセットが表示されます。

NONE:0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
ALL:1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
INS:1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
IND:1,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0
INALL:1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
MIDD:1,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0
OUTD:1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0
OUTS:1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1
OUTALL:1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1
ALL0.5:0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5

上記10項目のプリセットがLoRAの階層で、0や1といった数字が適用されているかを表しています。

「0」が適用されていない階層で、「1」が適用されている階層です。

しかしどの階層がどこに影響しているかは分かりません。「LoRA Block Weight」を使って画像を生成すれば、以下のような画像が生成されます。

見比べると、それぞれの画像に違いがあるのが分かりますね。

このように「LoRA Block Weight」を使えば、どの項目がどこに反映されているかが、画像で比較できるわけです。

Stable Diffusionの画像生成を最速で学びたいあなたへ!
  • Stable Diffusionの基礎を2時間でマスター!
  • 高スペックPCがない方向けに徹底解説。
  • ControlNetなど、必須級の拡張機能も網羅。
  • 今話題のSDXL、AI動画生成も。
  • 特典として、大人気「おすすめ拡張機能・モデル解説」「プロンプト大全」つき!
\このボタン限定!70%オフキャンペーン実施中!/
70%オフキャンペーン実施中!/

拡張機能「LoRA Block Weight」の導入方法

以下の手順で、「LoRA Block Weight」をStable Diffusionに導入します。

  1. Stable Diffusionを立ち上げる
  2. 「Extension」→「Install from URL」と進む
  3. https://github.com/hako-mikan/sd-webui-lora-block-weightをコピペ
  4. 「Install」をクリック
  5. 「Installed」のタブに移動し、「Apply and restart UI」をクリック
  6. 再起動されて導入完了

まずStable Diffusionを立ち上げて、「Extension」→「Install from URL」と開きます。

Install from URL内に「URL for extension’s git repository」の項目があるので、以下のURLをコピペしてください。

https://github.com/hako-mikan/sd-webui-lora-block-weight

URLをコピペしたら「Install」をクリックします。

「Installed」内に「sd-webui-lora-block-weight」の項目があればインストールされているので、「Apply and restart UI」をクリックして再起動すれば導入完了です。

今回紹介するLoRA Block Weight以外にも、優秀な拡張機能があるので、興味がある方は以下の記事を参考にしてください。

romptn Q&Aで画像生成の悩みを解決しよう!
  • Stable Diffusionのエラーが解決しない
  • 画像生成がうまくできない
  • おすすめのモデルが知りたい
など、AIに関するお悩みがあれば投稿してみてください。
詳しい人が解決してくれるかもしれません。

拡張機能「LoRA Block Weight」の使い方

まず、下の方にある「LoRA Block Weight」の項目を開いてください。

開くと、以下の画像のような画面が表示され、「LoRA Block Weight」で階層の調査を行います。

調査方法は、主に「Effective Block Analyzer」か「XYZ plot」のどちらかを使います。使うのは、使いやすい方でOKです。

「Effective Block Analyzer」の使い方

「Effective Block Analyzer」は、以下の手順で使います。

  1. 「Effective Block Analyzer」にチェック
  2. 「black」「change X-Y」にチェック
  3. 「difference threshold」「Range」は20に
  4. 「number of seed」は1
  5. LoRAのプロンプトに” :1:lbw=XYZ”を追加 (一例: <lora:YaeMiko_Test:1:1:lbw=XYZ>
  6. 画像を生成(約1分)

「XYZ plot」の使い方

「XYZ plot」は、以下の手順で使います。

  1. 下にある「LoRA Block Weight」を開く
  2. 「XYZ plot」にチェック
  3. 「X types」を『Original Weights』に変更
  4. 「Y Types」に”NONE,ALL,INS,IND,INALL,MIDD,OUTD,OUTS,OUTALL,ALL0.5”をコピペ (上に表示されている)
  5. LoRAのプロンプトに”1:lbw=XYZ”を追加(一例” <lora:YaeMiko_Test:1:1:lbw=XYZ>”)
  6. 生成

実際に「LoRA Block Weight」を試してみた!

今回LoRA Block Weightを利用して、顔だけにLoRAを適用させてみました。まずLoRA Block Weightで画像を生成します。

全ての階層を適用させている「ALL」と、顔が近い画像を探しましょう。比較すると、「MIDD」が一番近いと感じました。

MIDDのプリセットの”1,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0”を、以下のようにLoRAのプロンプトに追加します。

 <lora:YaeMiko_Test:1:1:lbw=1,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0>

結果が、以下の画像です。

 <lora:YaeMiko_Test:1:1:lbw=1,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0>, 1 girl,standing pose,face up,looking at viewer,facing front,break,smile,(open mouth:1.3),black hair,Blue eyes, acing front,evening walk

顔や髪型は近いですね。

続いて、服が近い「OUTD」で、服を再現してみました。

 <lora:YaeMiko_Test:1:1:lbw=1,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0>, 1 girl,standing pose,face up,looking at viewer,facing front,break,smile,(open mouth:1.3),black hair,Blue eyes, acing front,evening walk

なんとなく服は似ている、という結果でした。

このように、一部だけLoRAを適用させれるので、いろいろ試してみてください。

まとめ

いかがでしたでしょうか?

今回は、LoRA Block Weightについて解説してきました。

今回のポイントをまとめると、以下のようになります。

  • 「LoRA Block Weight」は、LoRAの階層を調査する拡張機能
  • 応用で、顔や服などの一部だけにLoRAを適用させられる

LoRA Block Weightで調査した結果とプロンプトを組み合わせて、一部だけにLoRAを適用させた画像を生成してみてください。

romptn Q&Aで画像生成の悩みを解決しよう!
  • Stable Diffusionのエラーが解決しない
  • 画像生成がうまくできない
  • おすすめのモデルが知りたい
など、AIに関するお悩みがあれば投稿してみてください。
詳しい人が解決してくれるかもしれません。