2026年最新版!Stable Diffusion LoRAの作り方と高品質モデル作成手順
ヨミアゲAI編集部
AI音声・動画制作に関する情報をお届けします
2026年6月時点において、Stable Diffusionのカスタマイズに不可欠な技術である**LoRA (Low-Rank Adaptation)**は、その軽量性と高い適応性から、キャラクター、スタイル、コンセプトの再現において広く利用されています。本記事では、Stable Diffusionで独自のLoRAモデルを作成するための具体的な手順を、最新の動向を踏まえて解説します。
2026年におけるLoRA作成の基礎と環境構築
LoRAは、大規模な基盤モデル全体を再学習する代わりに、モデルの特定の部分に小さなアダプターモジュールを追加し、そのアダプターのみを学習させることで、効率的にモデルの振る舞いを調整する技術です。これにより、学習に必要な計算リソースとストレージ容量を大幅に削減できます。
LoRA作成のための環境構築は、以下の要素が重要となります。
必要なハードウェアとソフトウェア
- GPU: NVIDIA製GPUが必須です。LoRA学習にはVRAM容量が重要で、最低8GB、安定した学習には12GB以上のVRAMが推奨されます。例えば、NVIDIA RTX 3060 (12GB) やRTX 4070 (12GB) 以上が理想的です。
- OS: Windows 10/11またはLinuxディストリビューション。
- Python: Python 3.10.x系が、2026年6月時点において多くのライブラリで最も安定して動作します。
- Git: ソースコードのクローンに必要です。
- CUDA Toolkit: NVIDIA GPUを最大限に活用するためのツールキット。GPUドライバーと互換性のあるバージョンをインストールしてください。
- 学習ツール: Kohya's GUI (kohya-ss/sd-scriptsをベースとしたGUIツール) が、その高機能性と使いやすさからデファクトスタンダードとなっています。
環境構築手順
- PythonとGitのインストール: 公式サイトからそれぞれダウンロードし、インストールしてください。Pythonのインストール時には「Add Python to PATH」にチェックを入れることを忘れないでください。
- CUDA Toolkitのインストール: NVIDIAの公式サイトから、ご使用のGPUドライバーと互換性のあるCUDA Toolkitをダウンロードし、インストールします。
- Kohya's GUIのセットアップ:
GUIを起動するには、git clone https://github.com/kohya-ss/sd-scripts.git cd sd-scripts # Python仮想環境の作成とアクティベートを推奨 python -m venv venv .\venv\Scripts\activate # Windowsの場合 # source venv/bin/activate # Linuxの場合 pip install --upgrade pip pip install -r requirements.txt pip install torch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 --index-url https://download.pytorch.org/whl/cu121 # CUDAバージョンに合わせて調整 accelerate config # 対話形式で設定gui.pyスクリプトを実行します。💡 ポイント: Python仮想環境を使用することで、他のプロジェクトとの依存関係の衝突を避けることができます。AnacondaやMinicondaの利用も有効です。 ⚠️ 注意: VRAM容量が不足していると、学習中に「CUDA out of memory」エラーが発生し、学習が中断されます。その場合は、
Batch Sizeを減らすなどの対策が必要です。
高品質なデータセットの準備と前処理
LoRAの品質は、学習に用いるデータセットの質に大きく左右されます。
画像の収集と選定
- 枚数: 対象としたいキャラクターやスタイルに応じて、20枚〜100枚程度の画像を収集します。特定の表情やポーズ、服装を学習させたい場合は、そのバリエーションを多く含めることが重要です。
- 品質: 高解像度で、ノイズが少なく、被写体がはっきりと写っている画像を選びましょう。最低512x512px以上の解像度が推奨されます。
- 多様性: さまざまな角度、表情、背景、服装の画像を混ぜることで、LoRAの汎用性が向上します。
キャプション付け (Tagging)
収集した画像には、その内容を正確に記述したキャプション(タグ)を付ける必要があります。
- 自動キャプション: BLIPやDeepBooruなどの自動キャプションツールを利用して、初期のキャプションを生成します。Kohya's GUIにはこれらのツールが統合されています。
- 手動での修正・追加: 自動生成されたキャプションは完璧ではないため、手動で以下の点を修正・追加します。
- 重要な要素の追加: 学習させたいキャラクター名、特徴的な服装、髪型、目の色など。
- 不要な要素の削除: 背景の人物やオブジェクトなど、学習させたくない要素のタグは削除します。
- タグの重み付け: 特に強調したいタグは、キャプション内で繰り返すなどの工夫も有効です。
💡 ポイント: キャプションの質がLoRAの汎用性と制御性を決定づけます。詳細かつ正確なキャプションは、LoRAが意図した通りに機能するための鍵です。
データセットの前処理
学習ツールは、画像を特定のサイズにリサイズして学習に用います。
- 解像度の統一: 学習ツール内で、画像を512x512pxまたは768x768pxにリサイズ・クロップします。アスペクト比を維持したまま中央をクロップするか、スマートクロップ機能を使用すると良いでしょう。
- ファイル名: 画像ファイル名とキャプションファイル名(.txt)は、必ず同じ名前にしてください。
LoRA学習の実行と主要パラメータ設定
データセットの準備が完了したら、Kohya's GUIを使用してLoRAの学習を実行します。
主要な学習パラメータ
LoRAの学習には多くのパラメータがありますが、特に重要なものを以下に示します。
| パラメータ | 推奨値 (2026年6月時点) | 説明 |
|---|---|---|
| ベースモデル | SD 1.5, SDXLなど | 学習元となるStable Diffusionモデル。 |
| Dataset Folder | path/to/your/dataset |
準備した画像とキャプションのフォルダ。 |
| Output Folder | path/to/output/lora |
生成されるLoRAモデルの保存先。 |
| Epochs | 10〜30 | データセット全体を学習する回数。少なすぎると未学習、多すぎると過学習の原因に。 |
| Learning Rate (Unet) | 1e-5 ~ 5e-5 | 画像生成を司るUnetの学習速度。 |
| Learning Rate (Text Encoder) | 5e-6 ~ 1e-5 | プロンプト解釈を司るText Encoderの学習速度。Unetより低めに設定することが多い。 |
| Batch Size | 1〜4 (VRAM依存) | 一度にGPUに読み込む画像の枚数。VRAMが少ない場合は1に設定。 |
| Network Rank (Dimension/Dim) | 32, 64, 128 | LoRAモデルの表現力。高いほど詳細な特徴を学習できるが、ファイルサイズが大きくなり、過学習のリスクも高まる。 |
| Network Alpha | Dimと同じか半分 | 学習の安定性に関わる。通常、Rankと同じか、Rankの半分程度に設定すると良い結果が得られやすい。 |
| Optimizer | AdamW8bit, Lion |
学習アルゴリズム。AdamW8bitはメモリ効率が良く、Lionは収束が速い傾向があります。 |
⚠️ 注意: パラメータ設定は、データセットの内容や学習させたい目標によって大きく異なります。上記の推奨値はあくまで出発点であり、最適な結果を得るためには試行錯誤が必要です。
学習手順
- Kohya's GUIの起動:
gui.pyを実行し、ブラウザでGUIを開きます。 - 「LoRA」タブの選択: LoRA学習用の設定画面に移動します。
- モデルパスの設定: ベースとなるStable Diffusionモデルのパスを指定します。
- データセットと出力パスの設定: 準備したデータセットフォルダと、LoRAモデルの出力先フォルダを指定します。
- 主要パラメータの設定: 上記で説明した
Epochs、Learning Rate、Batch Size、Network Rank/Alpha、Optimizerなどを設定します。 - 学習の開始: 設定が完了したら、「Start Training」ボタンをクリックして学習を開始します。学習の進行状況はコンソールやGUIのログで確認できます。
作成したLoRAの評価と活用
学習が完了すると、指定した出力フォルダに.safetensors形式のLoRAモデルが生成されます。
LoRAの評価
- Web UIへの配置: 生成されたLoRAファイルを、Automatic1111などのStable Diffusion Web UIの
models/loraフォルダに配置します。 - 画像生成とテスト: Web UIを起動し、プロンプトにLoRAを組み込んで画像を生成します。
<lora:your_lora_name:weight> prompt_keywords, ...your_lora_nameはLoRAファイル名、weightはLoRAの適用強度(通常0.6〜1.0の範囲で調整)です。 - 品質の確認: 生成された画像が、学習対象の特徴をどの程度再現しているか、また、汎用性があるかを確認します。
過学習と未学習の判断
- 過学習: 特定の学習画像に酷似した画像を生成しすぎる、プロンプトへの反応が悪い、汎用性がないといった症状が見られます。
- 対策:
Epochsを減らす、Learning Rateを下げる、Network Rankを減らす、データセットを増やす、キャプションをより汎用的にする。
- 対策:
- 未学習: LoRAを適用しても、対象の特徴が十分に再現されない、効果が薄いといった症状が見られます。
- 対策:
Epochsを増やす、Learning Rateを上げる、Network Rankを増やす、キャプションをより詳細にする、データセットの質と量を改善する。
- 対策:
💡 ポイント: 複数のLoRAを組み合わせることで、さらに複雑なキャラクターやシーン、スタイルを表現することが可能です。例えば、キャラクターLoRAと服装LoRAを同時に使用するなど、無限の可能性を探ってみましょう。
LoRA作成は試行錯誤のプロセスですが、高品質なデータセットと適切なパラメータ調整を重ねることで、あなたの創造性を大きく広げる強力なツールとなるでしょう。