LoRAとは?Stable Diffusionのクォリティを上げるのに必須の「追加武装」
Stable Diffusionを操作していく中で、クォリティの高い作例を見ていると必ずいつか行き当たる「LoRA」とか言う謎。
本記事ではその概要と使い方について備忘録的に記録していく。
目次
LoRAとはなにか
LoRA=既存のモデルに学習させる「追加結果」
LoRAとはLow-Rank Adaptationのことで、低めの程度でアダプションするよ〜というもののこと。
モデルそのものよりは一個下のレベルで、出したい方向にちょっとよせたるよ〜と私は理解している。
LoRAは出したい傾向を追加的に注入するために使うもの
Stable Diffusionではまず学習結果の大本となるモデルを「Acertain Things」とか「ChilloutMix」だとかで選択して画像を出力することになる。これらのモデルは「2次元のイラストに強い」とか「まるで3次元のコスプレイヤーのようだ」とか、学習元の画像・モデルの性格によって傾向があり、目的によって選ぶ。
その上で、たとえば「初音ミク風のイラストにしたい」とか、「魔法少女のようなコスプレを出力したい」と思ったときに、たしかにイラストや三次元コスプレに強かったとしても、ツインテールが長くてネギをもってるだとか、フリフリのスカートにステッキがあるだとか、そういった特有の要素までたくさん学習しているとは限らない。
そうしたモデルに対しての具体的な特徴、出したい傾向などを追加的に注入するために、LoRAが活用される。
LoRAとはつまり1つのオリジナルプロンプトワードである
最終的にLoRAは「インスタンスプロンプト」という、世に存在しないオリジナルの適当なプロンプト(cncとか)をもって呼び出す形で使用するっぽい。
つまりこれは、「思い通りのイメージを適用するためのオリジナルプロンプト」を追加する作業に違いない。
学習済みのLoRAの使い方
使用したい学習済みLoRAをダウンロードしフォルダに配置する
自分で学習させたLoRAを使う方法ももちろんあります。
あとは「特定のコスプレ」「韓国のインフルエンサー顔」など学習したものが色々あるようなので、使いたいものをDLしてきてLoRAフォルダに格納します。(Stable Diffusion WEB UIの場合)
トリガーワードとオフセット値で適用する
それぞれのLoRAには「トリガーワード」が設定されている。
それは前述したインスタンスプロンプト、つまりオリジナルのプロンプトワードであり、プロンプトにこのワードをいれることでLoRAを適用するというわけだ。
またオフセット値も設定することができ、反映度の強さをこの値で調整することもできるようだ。
他の学習方法との違い
出典:https://www.reddit.com/r/StableDiffusion/comments/10cgxrx/wellresearched_comparison_of_training_techniques/
こんな感じでDreamboothとかとはちょっと考え方が違うようですよ。
少しずつ重み付けする感じかな?
参考サイト
としあきさんのwiki。質問とかも活発になされています。
https://wikiwiki.jp/sd_toshiaki/LoRA
自分でLoRAを使って学習させたい人はこちらも参考
https://kurokumasoft.com/2023/02/24/stable-diffusion-lora/
全般的な使い方を丁寧に紹介されています
コメント
この記事へのコメントはありません。
この記事へのトラックバックはありません。