オリジナルキャラクターLoRAの作り方【NoobAI XL学習編】NoobAI XLのキャラクター学習

これまでに、SD1.5・SDXL・Pony・IllustriousXLのキャラクター学習を解説してきました。今回は「NoobAI XL」を使ってキャラクター学習をしていきたいと思います。NoobAI XLはベースにIllustrious‑XLを使っているので基本的にはIllustrious‑XLに近いモデルです。学習元モデルは従来のε‑Pred(epsilon-prediction)モデル「noobai‑XL v1.1 eps-pred」を使って学習します。
LoRA学習のKohya ss GUIのインストールや、データセットの作り方が分からない方は、まずは下記の記事を読んでみましょう。
また、LoRA学習がはじめての方は学習が早く終わるSD1.5モデルから為すことをおススメします。
NoobAI XLについて
NoobAI XLはLaxhar Dream Labが開発している(SDXL)ベースの生成モデルです。簡単ですが以下に概要をまとめてみました。
- 開発元:Laxhar Dream Lab
- アーキテクチャ:Illustrious‑XL v0(SDXL)ベース
- 解像度:SDXL 標準領域(例:768×1344~1344×768、1024×1024)
- プロンプト:Danbooruタグ
- 拡張互換性:LoRA、ControlNet、Img2Imgなど主要ツールとの互換性あり
- 予測形式:ε‑Pred(epsilon-prediction)(ノイズ予測)と V‑Pred(v-prediction)(速度/色予測)の両対応
- ライセンス:Fair AI Public License 1.0-SD
v‑pred(velocity prediction)をつかって画像を生成するにはComfyUIやForge、またはA1111 WebUIのdevブランチを使う必要があります。今回はε‑pred(epsilon prediction)の学習の解説になるので、v‑predの解説は別の機会に解説できたらと思っています。
Kohya ss GUIのデフォルト値を使った学習
それでは、恒例になっているデフォルトパラメーターを使って学習させてみましょう。
今回使用する学習ベースモデルは「noobai‑XL v1.1 eps-pred」を使用します。
データセット
データセットは「オリジナルキャラクターLoRAの作り方【データセット編】学習画像の制作とキャプション」で作成したデータを元に学習します。同じデータセットで学習させたい場合は、Patreonで公開していますが、有料サポーター様のみダウンロードが可能となっています。

デフォルトパラメーター
データセットの準備ができたら、下記のパラメーターを使って学習します。NoobAI XLモデルの学習用に、少しだけ値を変更しています。入力または変更が必要な部分は赤文字で記載しています。
- Pretrained model name or path:NoobAI-XL-v1.1.safetensors
- Trained Model output name:DCAI_Girl_Def_NoobAI ※モデルの出力名
- Instance prompt:dcai-girl ※今回使うキャプション方式では値は無視されますが、入力しないとエラーになるため。
- Class prompt:1girl ※上記と同じ理由で入力。
- Repeats:5 [デフォルト:40] ※学習元画像が100枚で、トータル画像を500にしたいため。
- Presets:none
- LoRA type:Standard
- Train batch size:1
- Epoch:1
- Max train epoch:0
- Max train steps:1600
- Save every N epochs:1
- Seed:123 [デフォルト:0 = ランダム] ※パラメーターをコントロールする為に適当な数字を入れます。
- LR Scheduler:cosine
- Optimizer:AdamW8bit
- Learning rate:0.0001 (1e-4)
- Text Encoder learning rate:0.00005 (5e-5) [デフォルト:0.0001 (1e-4)] ※公式ドキュメントの推奨デフォルト値に変更しています。
- Unet learning rate:0.0001 (1e-4)
- LR warmup (% of total steps):10
- Max resolution:1024, 1024 [デフォルト:512, 512] ※SDXLの解像度
- Network Rank (Dimension):8
- Network Alpha:1
学習したLoRAを使ったテスト生成


デフォルト設定で学習したLoRAを使って生成した画像が上の画像になります。下の画像は同じ設定でLoRAを使わずに生成した画像です。
この画像を見た感じしっかり学習されていそうですが、衣装の色や形が違う画像が多く生成されました。A1111 WebUIの生成設定は下記の通りです。
プロンプトmasterpiece, best quality, amazing quality, dcai-girl, 1girl, upper body, solo, looking at viewer, short hair, orange hair, brown eyes, animal ears, blue dress, (white thighhighs, thigh strap, brown footwear:0.7), meadow, sky, mountain, day, newest, extremely detailed background, extremely detailed foreground <lora:DCAI_Girl_Def_NoobAI:1>
nsfw, lowres, worst quality, low quality, bad anatomy, bad hands, 4koma, comic, greyscale, censored, jpeg artifacts, overly saturated, overly vivid
checkpoint: NoobAI-XL-v1.1.safetensors
Steps: 25
Sampler: DPM++ SDE
Schedule type: Karras
CFG scale: 3
Seed: 2985336440
Size: 1344x768
ADetailer: ON
Hires. fix: Upscaler: 4x-UltraSharp / Step: 10 / Denoising strength: 0.25 / Upscale by: 2
VAE: sdxl.vae.safetensors
Standard LoRAにConvolutionを組み込む
Convolution(畳み込み)とは、画像中の「局所特徴(模様・エッジ・形)」を抽出する演算処理をします。簡単に言うと、画像の各部分を「小さなフィルター(カーネル)」でなぞって特徴を抜き出し、この処理を何層にも重ねて、徐々に高次な情報(顔・目・服・構図など)に変換しています。
Standard LoRAでは、Linear層(Attention中心)に補正しています。Conv2D層は補正の対象外なので「服のしわや髪の動き、装飾などの微細な視覚特徴が学習されにくい。」と言われています。Conv2D層を対象にするには。追加の設定が必要になります。
LyCORISのタイプにLyCORIS/LoConというのがありますが、これはネットワークモジュールがlycoris.kohya
を使うので挙動が変わってきます(Standardの場合はnetworks.lora
)。キャラクター学習において、LyCORISの使用(例:LoHA)は品質は高いのですが、学習時間とVRAM消費が大きくなるので、RTX4090(24GB)やA100/H100(80GB)等のハイスペックGPUが必要になります。
Kohya ss GUIでStandard LoRAにConvolutionを組み込む方法
fp16とbf16について
fp16(Half Precision Floating Point)とbf16(Brain Floating Point 16)について解説します。fpとはFloating Pointの略で浮動小数点数の事を指します。一般的な計算機はfp32(単精度浮動小数点)で計算されています。これを半分にして高速化&省メモリにしたのがfp16(半精度浮動小数点)です。Googleの人工知能研究グループであるGoogle BrainがTPU向けに開発した形式の「bf16」はfp32に近い振る舞いでありながらfp16並の高速性とVRAM効率を実現させています。計算精度はfp32よりは多少劣りますが、AI(とくに深層学習)は「完璧な小数精度」よりも「たくさん計算できること」が重要なので、bf16を使うことにより、高速で安定した学習ができます。
ただし、bf16はNvidia製のGPUではAmpere以降のチップが必要になり。A100/H100やRTX 4090/4080のGPUが必要になります。RTX 30xxはAmpereですが、公式にはbf16を「限定的サポート」となっており正しい挙動にはならなく、さらには学習時間が長くなる場合があります。
下記にfp16とbf16の違いについて簡単にまとめました。
項目 | fp16(float16) | bf16(bfloat16) |
---|---|---|
精度(有効桁) | 約 3〜4 桁 | 約 3〜4 桁(同じ) |
ダイナミックレンジ(桁数の幅) | 狭い(落ちやすい) | 広い(fp32 並み) |
AI学習での推奨 | VRAM節約重視 | 安定性・互換性重視 |
SDXL/LoRAとの相性 | 普通(NaN出やすい) | 非常に良い(崩れにくい) |
bf16の設定方法
bf16の設定方法はAccelerate launchセクションにあるResource Selectionの中の「Mixed precision」をbf16
に切り替えます。

切り替えたらModelセクションにある「Save precision」で保存方法を選択できるのですが、個人用LoRAでお使いのGPUがRTX40xx以上をお持ちの方はbf16
、インターネットに公開や汎用性が必要ならfp16
で保存します。

Standard LoRA/Convとbf16をつかったLoRA学習
では、先ほど解説したStandard LoRA/Convとbf16を使って、学習していきましょう。入力または変更が必要な部分は赤文字で記載しています。また、前回のIllustriousの記事で紹介した「Prodigy+Cosine Annealing」も使用しています。Prodigyの設定はNoobAI XLの学習が鈍かったのでd_coef=2.0
にして強めに学習しています。
学習パラメーター
学習結果

A1111 WebUIの生成パラメーターはデフォルト設定で学習したLoRAと同じパラメーターになっています。
ディテールも在り良い品質で学習できたと思います。
同系統のチェックポイントモデルに適用する
NoobAI XL(ε‑pred)系統のチェックポイントであれば今回学習したLoRAを適用する事ができます。以下にLoRAを適用したサンプルを載せておきます。生成パラメーターは下記のパラメーターを使っています。
プロンプトmasterpiece, best quality, amazing quality, dcai-girl, 1girl, upper body, solo, looking at viewer, short hair, orange hair, brown eyes, animal ears, blue dress, (white thighhighs, thigh strap, brown footwear:0.7), open arms, happy, meadow, sky, ocean, beach, day, newest, extremely detailed background, extremely detailed foreground <lora:DCAI_Girl_NoobAI:1>
nsfw, lowres, worst quality, low quality, bad anatomy, bad hands, 4koma, comic, greyscale, censored, jpeg artifacts, overly saturated, overly vivid
Steps: 25
Sampler: DPM++ SDE
Schedule type: Karras
CFG scale: 3
Seed: 1878814088
Size: 1344x768
ADetailer: ON
Hires. fix: Upscaler: 4x-UltraSharp / Step: 10 / Denoising strength: 0.25 / Upscale by: 2
VAE: sdxl.vae.safetensors








一部に手の表現がおかしい画像もありますが、基本的にはディテールのある綺麗な画像を生成できました。
最終結果のLoRAはCivitaiにて公開していますので興味のある方はダウンロードしてみましょう。
まとめ
今回は、NoobAI XL(ε‑pred)モデルを使ったキャラクターLoRA学習について詳しく解説しました。NoobAI XLはまだ登場して時間がたっていないからか、派生モデルの数はあまり多くはありません。しかし、Illustrious-XLをベースにしたこのモデルは、SDXLの高解像度出力やDanbooru形式プロンプトへの対応など、扱いやすさと汎用性を兼ね備えています。
また、Standard LoRAにConvolutionを組み込むことで細部の表現力を強化し、bf16やProdigy+CosineAnnealingLRといった高度な学習手法も導入。実際の生成結果からも、安定した品質とディテール再現性が確認できました。
最後までお読みいただきありがとうございます。
もし少しでも参考になったら、ぜひ「いいね」で応援してください!