LoRA自作入門(Kohya SS):自分だけのキャラ・画風LoRAを一から作る方法

Kohya SSを使ったLoRA学習の入門ガイド。学習データの準備・キャプション・設定のポイント・よくある失敗と対処法まで、初めてLoRAを作る方向けに手順をわかりやすく解説します。

LoRA自作入門(Kohya SS):自分だけのキャラ・画風LoRAを一から作る方法 のサムネイル

この記事の要点

  • LoRA学習の成否は「学習データの質」で8割決まる。枚数より品質と一貫性
  • 画像は20〜30枚程度でも十分。ノイズの多い大量データより厳選した少数が強い
  • 学習率とステップ数を上げすぎると過学習になり、何を生成しても同じ絵になる
  • 作ったLoRAは必ずseed固定で重みを振って検証する

はじめに:既存LoRAでは出せない「自分だけの表現」を作る

Civitaiには膨大な数のLoRAが公開されていますが、「好みのキャラクターのLoRAがない」「特定の画風を再現できるLoRAが見つからない」という状況は必ず訪れます。そこで重要になるのが LoRAの自作です。

自分でLoRAを作れると、オリジナルキャラクターのLoRA、自分の好みに特化した画風LoRA、特定の衣装・シチュエーション用LoRAなど、Civitaiには存在しない表現が可能になります。

本記事では、Kohya SS(kohya-ss/sd-scripts)を使ったLoRA学習の入門手順を解説します。

関連記事:LoRAの選び方2026


LoRA学習に必要な環境

VRAM要件

VRAM学習可能なモデル推奨バッチサイズ
8GBSD1.5系LoRA1
12GBSD1.5 / SDXL(要最適化)1〜2
16GBSDXL系LoRA1〜2
24GBSDXL系LoRA2〜4

VRAM 8GBでも --gradient_checkpointing--xformers を使えばSD1.5系のLoRA学習が可能です。SDXL(Illustrious/NoobAI)のLoRAを作るなら12〜16GB以上を推奨します。

推奨環境

  • Python 3.10.x
  • CUDA 11.8 または 12.1
  • PyTorch 2.x
  • Windows 10/11 または Linux

Kohya SSのセットアップ

インストール手順(Windows)

# 1. リポジトリのクローン
git clone https://github.com/bmaltais/kohya_ss.git
cd kohya_ss

# 2. 仮想環境の作成と有効化
python -m venv venv
venv\Scripts\activate

# 3. 依存関係のインストール(GUIスクリプトを使用)
.\setup.bat

setup.bat を実行すると必要なパッケージが自動インストールされます。

GUIの起動

.\gui.bat

ブラウザで http://localhost:7860 が開きます。これがKohya SSのGUIです。


データセットとキャプション準備のイメージn*参考イメージ:学習前のデータ準備フロー*n

学習データの準備

学習データの品質がLoRAの品質を直接決めます。ここが最も重要なステップです。

画像枚数の目安

LoRAの種類推奨画像枚数
キャラクターLoRA15〜30枚
スタイルLoRA30〜100枚
衣装・物体LoRA10〜20枚
NSFWシーン特化20〜50枚

少なすぎると汎化性能が低下し、多すぎると学習が不安定になります。まずは20枚程度から試してみましょう。

画像の品質基準

  • 解像度:512×512以上(推奨:768×768〜1024×1024)
  • 品質:ぼやけ・ノイズ・著しい崩れがないもの
  • 多様性:同一ポーズ・表情のみにならないよう、バリエーションを持たせる
  • NSFWLoRA:ターゲットのシーン・衣装・ポーズを幅広くカバーする

フォルダ構成

training_data/
└── 20_character_name/    # 数字 = 繰り返し回数、文字列 = trigger word
    ├── image_01.png
    ├── image_01.txt       # キャプションファイル
    ├── image_02.png
    ├── image_02.txt
    └── ...

フォルダ名の先頭の数字(20)は、1エポックあたりその画像を何回使うかを示します。画像が少ない場合は大きくして補います。


キャプション(タグ付け)の方法

キャプションは各画像に対応する .txt ファイルで、画像の内容を説明するタグを記述します。

WD14 Taggerを使った自動タグ付け

Kohya SSにはWD14 Taggerが統合されており、自動でDanbooruタグを付けられます。

  1. Utilities タブ → WD14 Captioning
  2. 画像フォルダを指定
  3. Caption extension.txt に設定
  4. Run captioning を実行

手動でキャプションを編集する

自動タグ付けの後、不正確なタグを修正します。特に重要なポイント:

  • Trigger wordを一番先頭に入れる(キャラ名など)
  • 学習させたくない特徴(背景など)はタグから削除
  • LoRAに覚えさせたい特徴は残す・追加する
mycharacter, 1girl, long hair, blue hair, red eyes, white shirt, ...

キャプション設計のコツ

  • キャラLoRA:キャラの固有特徴(髪色・目色・トレードマーク)はあえてキャプションに含めない(または trigger word にまとめる)ことで、LoRAがその特徴を「覚える」
  • スタイルLoRA:スタイル名を trigger word にし、コンテンツタグ(キャラ・背景など)は細かく書く
  • NSFWLoRA:NSFWコンテンツタグを明示的に含める

Kohya SS の主要設定解説

GUIの LoRA タブで設定します。

基本設定

パラメータ推奨値(SD1.5)推奨値(SDXL)説明
network_dim32〜6432〜64LoRAのランク。高いほど表現力が上がるがファイルサイズも増加
network_alphadimの半分〜同値dimの半分〜同値学習率のスケール調整
learning_rate1e-45e-5〜1e-4学習率。高すぎると崩れる
lr_schedulercosine_with_restartscosine_with_restarts学習率スケジューラー
max_train_steps1500〜30002000〜4000総学習ステップ数
train_batch_size1〜21バッチサイズ

推奨オプション

  • --gradient_checkpointing:VRAM節約
  • --xformers:高速化
  • --save_every_n_steps=500:途中保存(過学習確認用)

キャラクターLoRAの学習手順

  1. 画像フォルダを用意(15〜30枚)
  2. WD14 Taggerで自動タグ付け
  3. trigger word(例:mycharacter)をキャプション先頭に追加
  4. キャラの固有特徴タグ(髪色・目色等)をキャプションから削除
  5. Kohya SS設定:network_dim=32, learning_rate=1e-4, max_train_steps=2000
  6. 学習を開始し、500ステップごとに中間チェック

学習中は定期的に生成テストを行い、過学習(見本画像に引っ張られすぎる状態)を確認します。


スタイル・画風LoRAの学習手順

スタイルLoRAはキャラLoRAとは設計思想が異なります。

  • 画像枚数:30〜100枚(スタイルの多様性が重要)
  • キャプション:コンテンツタグを詳しく書き、スタイルタグ(trigger word)のみ一貫させる
  • network_dim:64〜128(スタイルはより多くの情報が必要)
  • 学習ステップ:3000〜5000(多め)
mystyle, 1girl, long hair, smile, casual clothes, park background

NSFW向けLoRA学習のコツ

NSFWLoRAを作る場合の追加ポイントです。

データセット選び

  • ターゲットシーンを幅広くカバーする(多様なポーズ・アングル)
  • 品質の低い画像は学習精度を下げるため除外
  • 最低でも20枚、可能なら40〜50枚確保

タグ設計

NSFWタグをキャプションに明示的に含めます。ただし、trigger word を使って「通常の生成には影響しない」設計にすることを推奨します。

my_nsfw_trigger, rating:explicit, nude, [ポーズ・シーンのタグ]

trigger word なしでは動かないようにすることで、通常の生成への干渉を防ぎます。


よくある失敗パターンと対処法

失敗1:過学習(サンプル画像をそのままコピーするような出力になる)

原因:学習ステップが多すぎる、または学習率が高すぎる 対処:ステップ数を減らす(500〜1000ステップ試す)。学習率を半分に下げる

失敗2:崩れが激しい

原因:学習率が高すぎる、またはデータセットの品質が低い 対処learning_rate=5e-5 まで下げる。品質の低い画像を除外する

失敗3:汎化性能が低い(trigger word なしでも反応してしまう)

原因:キャプションに固有特徴が残っていてLoRAが汎化できていない 対処:キャラの固有特徴をキャプションから削除する

失敗4:VRAMが足りない

対処--gradient_checkpointing を有効化。バッチサイズを1に。--cache_latents を使う


学習カーブ監視のイメージn*参考イメージ:loss推移を見ながら調整する場面*n

学習結果の評価と調整

学習したLoRAは重みを 0.5〜1.0 の範囲で試して、効果と安定性のバランスを確認します。

<lora:my_lora:0.7>, trigger_word, 1girl, ...

500ステップ、1000ステップ、2000ステップなどの中間保存を比較して、最適なステップ数を特定しましょう。多くの場合、「ちょうどいい」ポイントは最大ステップより手前にあります。

関連ガイド

学習データの権利については AI画像生成の著作権・法律ガイド2026 を必ず確認してください。無断学習した出力の販売は重大なリスクを伴います。

よくある質問

LoRA学習には何枚の画像が必要ですか?

20〜30枚程度でも十分に機能します。重要なのは枚数ではなく質と一貫性です。狙いと関係ない要素(違う画風、違うキャラ、低品質な画像)が混ざっていると、それも一緒に学習されて品質が落ちます。数を集めるより、狙いに合致した画像だけを厳選するほうが結果は良くなります。

過学習(オーバーフィッティング)とは何ですか?どう防ぎますか?

学習データに過剰に適合してしまい、何を生成しても学習画像とほぼ同じ絵しか出なくなる状態です。プロンプトを変えても反応しなくなります。防ぐには、学習率とステップ数を下げる、学習データの多様性を増やす、途中経過のエポックを保存して過学習前のものを採用する、といった対策があります。

学習にはどれくらいのVRAMが必要ですか?

設定にもよりますが、SD1.5系のLoRA学習なら8GB程度から可能です。SDXL系のLoRA学習はより多くのVRAMを要求します。VRAMが足りない場合は、解像度を下げる、バッチサイズを1にする、勾配チェックポインティングを有効にする、といった設定で消費を抑えられますが、学習時間は延びます。

学習したLoRAが効きません。

学習不足(ステップ数が少なすぎる)か、キャプション(タグ付け)が適切でない可能性があります。まず重みを1.0まで上げて効果が出るか確認してください。それでも効かないなら学習不足です。逆に重み0.5でも過剰に効くなら過学習です。必ずseedを固定して重みを振り、効き方を確認してください。

学習に使う画像の著作権はどうなりますか?

他人の著作物を無断で学習データに使用し、その出力を公開・販売する行為は、権利侵害となるリスクがあります。特に特定の作家の絵柄を再現する目的での学習は、倫理面でも問題視されています。自分で作成した画像や、権利処理済みの素材を使用してください。実在人物の写真を学習させることも避けてください。

AIでエロコンテンツを作るときの参考に(FANZAの人気作品)

以下はAI生成物ではなく、FANZAで人気の同人作品です。どんな題材・構図・シチュエーションが支持されているのかを押さえておくと、AIでエロコンテンツを作るときの狙いが定まります。

まひると沼田〜罠にハメられた彼女〜2

まひると沼田〜罠にハメられた彼女〜2

★5(レビュー17件)・69P

880円 FANZAで見る
複製マ○コ2〜真面目なマ○コ編〜

複製マ○コ2〜真面目なマ○コ編〜

★5(レビュー17件)・54P

770円 FANZAで見る
クンニしたい女とクンニされたい女

クンニしたい女とクンニされたい女

★5(レビュー17件)・54P

385円 FANZAで見る
カノジョの発情スイッチ3

カノジョの発情スイッチ3

★5(レビュー14件)・66P

495円 FANZAで見る
ビジネスセックスマナーエアコン編・エスカレーター編・男装週間アナルスペシャル月島編

ビジネスセックスマナーエアコン編・エスカレーター編・男装週間アナルスペシャル月島編

★5(レビュー14件)・81P

1,980円 FANZAで見る

※ 本セクションはアフィリエイト広告(FANZA)を含みます。掲載作品はAI生成物ではありません。価格・配信状況は変わる場合があるため商品ページで最新情報をご確認ください。

次へ