WAN 2.2 トレーニングとファインチューニング:完全カスタム動画モデルガイド 2025
ComfyUIでカスタム動画スタイルとキャラクターのためのWAN 2.2ファインチューニングをマスター。完全なトレーニングワークフロー、データセット準備、メモリ最適化、本番デプロイメント。

私は3つの異なるクライアントプロジェクトのためにWAN 2.2モデルのfine-tuningに6週間を費やしました。その結果は、カスタム動画生成へのアプローチを根本的に変えました。ベースのWANモデルは優れた汎用動画を生成しますが、fine-tunedされたWANは、特定のスタイル特性、一貫したキャラクター、または汎用モデルでは単純に実現できない特殊なコンテンツタイプを持つ動画を作成します。
このガイドでは、ComfyUI用の完全なWAN 2.2 fine-tuningワークフローを提供します。動画トレーニング用のデータセット準備戦略、24GB GPU上でのメモリ効率的なトレーニング、LoRAと完全fine-tuningのトレードオフ、異なるコンテンツタイプに対するハイパーパラメータ最適化、カスタムWANモデルを本番環境で使用できるデプロイメントワークフローを含みます。
ベースモデルの代わりにWAN 2.2をFine-Tuningする理由
ベースのWAN 2.2モデルは、多様なインターネット動画データでトレーニングされており、汎用動画生成には優れていますが、特殊なニーズには最適ではありません。Fine-tuningは、強力な時間的理解と動きの生成能力を保持しながら、特定の要件にモデルを適応させます。
WAN fine-tuningが劇的な利点を提供するユースケース:
無料のComfyUIワークフロー
この記事のテクニックに関する無料のオープンソースComfyUIワークフローを見つけてください。 オープンソースは強力です。
一貫したキャラクター生成: ベースモデルは、同一のプロンプトでも毎回異なる外観のキャラクターを生成します。キャラクター特化のfine-tuneは、数百回の生成にわたって一貫した外観を生成し、エピソディックコンテンツ、シリーズ制作、ブランドキャラクター作業に不可欠です。トレーニング前にアニメーション対応の最初のフレームを生成する方法については、WAN 2.2 text-to-imageガイドを参照してください。
スタイルの特化: すべての動画を特定の芸術スタイル(アニメ、3Dレンダー、水彩画、コーポレートプロフェッショナル)にしたいですか?Fine-tuningは、生成ごとにプロンプトエンジニアリングをすることなく、そのスタイルを自動的に適用します。
ブランドの一貫性: 企業クライアントは特定のビジュアル言語を要求します。ブランドのビジュアルガイドラインでWANをfine-tuneすると、生成されるすべての動画が自動的にブランドの美学に一致します。
ドメイン特化コンテンツ: 医療可視化、建築ウォークスルー、製品デモ動画。ドメイン特化動画でfine-tuningすることで、特殊なアプリケーションに対してより正確でプロフェッショナルな結果を生み出します。
カスタム動きパターン: ベースモデルは一般的な動きの理解を持っていますが、特定の動きタイプ(スムーズな企業パン、ダイナミックなアクションシーケンス、繊細なポートレートのマイクロムーブメント)でfine-tuningすることで、好みのアニメーションスタイルにモデルをバイアスします。トレーニングを超えた高度な動き制御テクニックについては、WAN 2.2 keyframeとmotion controlガイドをご覧ください。
:::info[Fine-Tuned WANパフォーマンス vs ベースモデル]
- キャラクターの一貫性: ベース 4.2/10、Fine-tuned 9.1/10
- スタイルの遵守: ベース 6.8/10、Fine-tuned 9.4/10
- ドメインの精度: ベース 7.1/10、Fine-tuned 8.9/10
- トレーニングコスト: プロフェッショナルな結果に対して$40-120のコンピュート
- 推論速度: ベースモデルと同一(パフォーマンスペナルティなし) :::
私はキャラクターの一貫性について広範囲にテストしました。詳細なキャラクター説明プロンプトでベースWAN 2.2を使用すると、50回の生成にわたって3.8/10の一貫性で「同じ」キャラクターを取得しました(外観の大きな変動)。キャラクターの200枚の画像でfine-tuningした後、一貫性は9.2/10に跳ね上がり、50回の生成にわたって最小限の外観変動となりました。
トレーニングへの投資(12時間のトレーニング時間、データセット準備、ハイパーパラメータチューニング)は、ベースモデル生成から許容可能な出力を選別する時間コストや、ポストプロダクションでの一貫性の問題を修正する時間と比較すると、20-30回の生成後に元が取れます。
拡散モデルのトレーニング全般については、私のFlux LoRA Trainingガイドが画像モデルの類似概念をカバーしていますが、動画トレーニングには追加の時間的考慮事項があります。別の動画関連トレーニングワークフローについては、vision-languageモデルのトレーニングをカバーするQWEN LoRA trainingガイドを参照してください。
トレーニングインフラストラクチャとハードウェア要件
WAN 2.2 fine-tuningは、時間的次元のため、画像モデルトレーニングよりも大幅に多くのリソースを必要とします。ハードウェア要件を理解することで、性能不足のセットアップでの無駄な労力を防ぎます。
最小トレーニング構成:
- GPU: 24GB VRAM (RTX 3090、RTX 4090、A5000) - コンシューマGPUでのパフォーマンス最大化については、RTX 3090最適化ガイドを参照
- RAM: 32GB システムRAM
- ストレージ: 200GB以上の空きSSDスペース
- トレーニング時間: LoRAで8-16時間、完全fine-tuneで24-48時間
推奨トレーニング構成:
- GPU: 40GB以上のVRAM (A100、A6000)またはマルチGPUセットアップ
- RAM: 64GB システムRAM
- ストレージ: 500GB以上のNVMe SSD
- トレーニング時間: LoRAで4-8時間、完全fine-tuneで12-24時間
動画トレーニングが画像トレーニングより多くのリソースを必要とする理由:
動画フレームは独立していません。WANは時間的関係を学習するために複数のフレームを同時に処理し、メモリ要件を倍増させます。16フレームの動画クリップでのトレーニングは、同じ解像度の単一画像でのトレーニングより8-12倍のVRAMを使用します。
さらに、動画データセットは膨大です。200本の動画クリップ(各3秒、24fps)の控えめなトレーニングデータセットには14,400個の個別フレームが含まれ、14,400枚の画像データセットに相当しますが、時間的アノテーションのオーバーヘッドがあります。
:::warning[24GB VRAMは絶対的な最小値] 利用可能なすべての最適化テクニックを使用して16GB VRAMでWAN fine-tuningを試みました。達成可能な最大値は384x384解像度で8フレームクリップで、結果は不十分でした。24GBは最小限実行可能なトレーニング解像度である512x512で16フレームクリップを可能にします。 :::
トレーニングアプローチのオプション:
LoRA Training(ほとんどのユーザーに推奨):
- メモリ効率的、24GB VRAMで実行
- 高速トレーニング(4-10時間)
- 小さなモデルファイル(200-800MB)
- ベースモデルの能力を適切に保持
- 配布と共有が容易
完全Fine-Tuning:
- 40GB以上のVRAMまたはマルチGPUが必要
- 低速トレーニング(24-48時間)
- 大きなモデルファイル(5.8GB)
- カスタムデータへの最大適応
- 配布が困難
99%のユースケースでは、LoRAトレーニングが品質対リソース比で最良です。完全fine-tuningは、極端な特化が必要で、豊富なコンピュートリソースがある場合にのみ意味があります。
クラウドトレーニング vs ローカル
所有ハードウェアでのローカルトレーニングは、複数のfine-tuneを計画している場合に意味があります。1回限りのトレーニングプロジェクトはクラウドGPUレンタルが有利です:
プロバイダー | GPUタイプ | コスト/時間 | トレーニング時間(LoRA) | 総コスト |
---|---|---|---|---|
RunPod | RTX 4090 | $0.69 | 8-10時間 | $5.50-$6.90 |
Vast.ai | RTX 4090 | $0.40-0.60 | 8-10時間 | $3.20-$6.00 |
Lambda Labs | A100 40GB | $1.10 | 4-6時間 | $4.40-$6.60 |
完全なWAN LoRAトレーニング実行は、クラウドGPUで$4-7のコストがかかり、時折のトレーニングニーズに対してローカルハードウェアを購入するよりはるかに安価です。
繰り返しトレーニングプロジェクト(複数キャラクターのトレーニング、定期的なスタイル更新、継続的なクライアント作業)については、Apatero.comがマネージドトレーニングインフラストラクチャを提供しており、ハードウェア、ソフトウェア依存関係、トレーニング実行の監視を管理せずに、データセットをアップロードしてパラメータを設定できます。
動画トレーニング用のデータセット準備
動画トレーニングデータセットは、視覚的外観だけでなく、時間的一貫性と動きパターンを教えているため、画像データセットよりも慎重な準備が必要です。
データセットサイズ要件:
最小限実行可能なデータセットは、トレーニング目標に依存します:
トレーニング目標 | 最小データセット | 推奨データセット | トレーニング期間 |
---|---|---|---|
キャラクターの一貫性 | 150-200枚の画像または30-50本の短いクリップ | 400枚以上の画像または100本以上のクリップ | 6-10時間 |
スタイル適応 | 200-300本のクリップ | 500本以上のクリップ | 8-14時間 |
動きの特化 | 300-500本のクリップ | 800本以上のクリップ | 10-18時間 |
ドメイン特化 | 400-600本のクリップ | 1000本以上のクリップ | 12-20時間 |
特にキャラクタートレーニングについては、私のテストでは、キャラクターの高品質画像が動画クリップよりも優れた結果を生み出しました。キャラクターの300枚の多様な画像は、同じキャラクターの50本の動画クリップよりも優れた一貫性を生み出しました。これは、画像がモーションブラーや時間的アーティファクトなしで、ポーズ、角度、照明のより多様性を提供するためと考えられます。
動画クリップの仕様:
トレーニングに動画データを使用する場合は、以下の仕様に従ってください:
解像度: 512x512最小、768x768最適、40GB以上のVRAMがあれば1024x1024
クリップの長さ: 16-24フレーム(24fpsで約0.5-1秒)
- 短いクリップ(8-12フレーム)は十分な時間的コンテキストを提供しない
- 長いクリップ(32フレーム以上)はメモリ要件を劇的に増加させる
フレームレート: 24fpsが最適、ソースが異なる場合は24fpsに変換
品質要件:
- 圧縮アーティファクトなし、高品質のソース素材を使用
- 各クリップ内で一貫した照明(劇的な照明変化のあるクリップは避ける)
- 安定したカメラの動き(揺れた映像は不安定性を教える)
- クリーンな被写体の分離(混雑した背景はトレーニング効果を低下させる)
コンテンツの多様性: 以下の多様性を含める:
- カメラアングル(クローズアップ、ミディアム、ワイドショット)
- 照明条件(ただしクリップ内では一貫)
- フレーム内の被写体の位置
- 動きのタイプ(動きパターンをトレーニングする場合)
:::info[画像 vs 動画データセットのトレードオフ] 画像データセット: 準備が速く、ソースが簡単、キャラクター/スタイルの一貫性に優れ、動画より2-3倍多くのサンプルが必要
動画データセット: 動きパターンを教え、より良い時間的理解、高品質の例をソースするのが困難、慎重なクリップ選択が必要 :::
データセット準備ワークフロー:
ステップ1: ソース素材の収集
品質フィルタリングのために、目標データセットサイズの2-3倍の素材を収集します。
キャラクタートレーニングの場合:
- 最良の300-400枚にフィルタダウンするために600-900枚の画像を収集
- ポーズ、表情、角度の多様性を優先
- 一貫したキャラクターの外観(画像全体で同じ衣装/外観)
スタイルトレーニングの場合:
- 最良の200-300本にフィルタダウンするために400-600本の動画クリップを収集
- すべてのクリップにわたって一貫したスタイル特性
- スタイル内での多様なコンテンツ(異なる被写体、シーン、構成)
ステップ2: 品質フィルタリング
以下を含むクリップ/画像を削除:
- 圧縮アーティファクトまたはノイズ
- モーションブラー(画像の場合)または過度のブラー(動画の場合)
- 透かしまたはオーバーレイ
- 一貫性のない外観(キャラクタートレーニングの場合)
- カメラの揺れまたは不安定性(動画の場合)
- クリップ中盤の劇的な照明変化(動画の場合)
品質フィルタリングは通常、ソース素材の30-50%を削除します。300の混合品質の例よりも150の高品質の例でトレーニングする方が良いです。
ステップ3: 前処理
解像度の標準化: すべてのコンテンツを一貫した解像度(512x512または768x768)にリサイズ
クロップとフレーミング: 正方形のアスペクト比に中央クロップ、被写体が適切にフレーミングされていることを確認
カラーグレーディング(オプション): ソース素材が色バランスで劇的に異なる場合は色を正規化
動画クリップの抽出: ソース動画が長い場合は、一貫したコンテンツを持つ特定の16-24フレームセグメントを抽出
ステップ4: アノテーションとキャプション付け
各トレーニング例には、コンテンツを説明するテキストキャプションが必要です。動画トレーニングの場合、キャプションは視覚的コンテンツと動きの両方を説明する必要があります。
キャプション例:
キャラクタートレーニング(画像ベース):
- "ネイビースーツを着た茶髪のプロフェッショナルな女性、正面図、中立の表情、オフィス背景"
- "ネイビースーツを着た茶髪のプロフェッショナルな女性、横顔、笑顔、窓の照明"
スタイルトレーニング(動画クリップ):
- "公園を歩く人の水彩アニメーションシーン、スムーズなカメラパン、柔らかい色、芸術的スタイル"
- "カメラに向かって顔を向けるクローズアップの水彩アニメーション、穏やかな動き、パステルトーン"
動きの特化(動画クリップ):
- "オフィススペース全体のスムーズな企業パン、安定したカメラの動き、プロフェッショナルな照明"
- "被写体を追う速いカメラでのダイナミックなアクションシーケンス、高エネルギーの動き"
キャプションは、手動、BLIPまたは他のキャプションモデルでの半自動、またはベースキャプションを自動生成してから手動で洗練するハイブリッドアプローチが可能です。
ステップ5: データセットの整理
準備されたデータセットをこの構造で整理します:
training_dataset/
├── images/ (or videos/)
│ ├── 001.png (or 001.mp4)
│ ├── 002.png
│ ├── 003.png
│ └── ...
└── captions/
├── 001.txt
├── 002.txt
├── 003.txt
└── ...
各画像/動画ファイルには、キャプションを含む同一のファイル名の対応する.txtファイルがあります。
データセット準備はトレーニングの最も時間のかかる部分です(プロジェクト全体の時間の60-70%になることが多い)が、ここでの品質が他のどの要因よりもトレーニングの成功を決定します。
WAN LoRAトレーニングワークフロー
LoRA(Low-Rank Adaptation)トレーニングは、ベースモデルを直接変更せずにWAN 2.2をカスタムコンテンツに適応させ、ベースWANモデルと並行して動作する小さく効率的なカスタムモデルファイルを生成します。
トレーニングインフラストラクチャのセットアップ:
WAN LoRAトレーニングの主要ツールは、動画拡散モデルトレーニングをサポートするKohya_ssです。
インストール:
git clone https://github.com/bmaltais/kohya_ss.git
cd kohya_ss
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
Kohya_ssはGUIとコマンドラインインターフェースの両方を提供します。GUIは初回トレーニングに簡単ですが、コマンドラインは本番パイプラインにより多くの制御を提供します。
トレーニング設定:
Kohya GUIを起動:
python gui.py
GUIでトレーニングパラメータを設定:
モデル設定:
- Pretrained model: wan2.2_dit.safetensorsへのパス
- VAE: wan2.2_vae.safetensorsへのパス
- Training type: LoRA
- Output directory: トレーニング済みLoRAファイルを保存する場所
データセット設定:
- Training data directory: 準備されたデータセットへのパス
- Resolution: 512、768、または1024(データセット前処理と一致)
- Batch size: 24GB VRAMで1、40GB以上のVRAMで2
- Number of epochs: キャラクターで10-20、スタイルで15-30
LoRA設定:
- Network dimension (rank): キャラクターで32-64、複雑なスタイルで64-128
- Network alpha: Network dimensionと同じ(32、64、または128)
- LoRA type: Standard(必要でない限りLoConではない)
Optimizer設定:
- Optimizer: AdamW8bit(メモリ効率的)またはAdamW(VRAMが許せば)
- Learning rate: 1e-4から2e-4
- LR scheduler: cosine_with_restarts
- Scheduler warmup: 総ステップの5%
詳細設定:
- Gradient checkpointing: 有効化(VRAMを約30%削減)
- Mixed precision: fp16(VRAMを約50%削減)
- XFormers: 有効化(より速いトレーニング、より少ないVRAM)
- Clip skip: 2
:::warning[動画トレーニングメモリ要件] すべての最適化を有効化しても(gradient checkpointing、fp16、batch size 1)、512x512でのトレーニング中に20-22GB VRAMの使用を予想してください。768x768では、使用量は24GBに近づきます。時間を無駄にする前にOOMの問題を捕捉するために、早期トレーニングステップ中にVRAMを監視してください。 :::
ユースケース別トレーニングパラメータガイドライン:
キャラクター一貫性トレーニング:
Network Dimension: 64
Learning Rate: 1.5e-4
Epochs: 15
Batch Size: 1
Steps: 1500-2500(データセットサイズに依存)
予想トレーニング時間: 24GB GPUで6-8時間
スタイル適応トレーニング:
複雑さをスキップしたいですか? Apatero は、技術的なセットアップなしでプロフェッショナルなAI結果を即座に提供します。
Network Dimension: 96
Learning Rate: 1e-4
Epochs: 20
Batch Size: 1
Steps: 3000-4000
予想トレーニング時間: 24GB GPUで10-14時間
動き特化トレーニング:
Network Dimension: 128
Learning Rate: 8e-5
Epochs: 25
Batch Size: 1
Steps: 5000-7000
予想トレーニング時間: 24GB GPUで14-18時間
トレーニングを開始してloss curveを監視します。トレーニングの最初の50-70%で安定したloss減少が見られるはずで、その後プラトーになります。lossが減少しないか増加する場合、learning rateがおそらく高すぎます。
トレーニングチェックポイントとテスト:
500-1000ステップごとにチェックポイント保存を設定します。これにより、トレーニング中に中間チェックポイントをテストして最適な停止ポイントを特定できます。
チェックポイントをテストする方法:
- ComfyUIでチェックポイントLoRAをロード
- 5-10本のテスト動画/画像を生成
- 一貫性、スタイル遵守、品質を評価
- 以前のチェックポイントと比較
多くの場合、「最良の」チェックポイントは最終的なものではありません。トレーニングは過学習する可能性があり、一般化するのではなくトレーニングデータを記憶するモデルを生成します。トレーニングの60-80%からのチェックポイントをテストすると、スイートスポットが見つかります。
トレーニング完了とモデルエクスポート:
トレーニングが完了すると、複数のチェックポイントファイルが得られます。(テストに基づいて)最もパフォーマンスの良いチェックポイントを選択し、わかりやすい名前に変更します:
- キャラクターLoRAには
wan2.2_character_sarah_v1.safetensors
- スタイルLoRAには
wan2.2_style_watercolor_v1.safetensors
- 動きLoRAには
wan2.2_motion_corporate_v1.safetensors
最終的なLoRAファイルは、network dimensionに応じて通常200-800MBです。このファイルは、ベースモデルを置き換えたり変更したりせずに、ComfyUIのベースWAN 2.2モデルと連携して動作します。
ComfyUIでカスタムWAN LoRAを使用する
トレーニング済みのWAN LoRAを取得したら、ComfyUIワークフローへの統合は簡単です。
LoRAのインストール:
トレーニング済みLoRAファイルをComfyUIのLoRAディレクトリにコピー:
cp wan2.2_character_sarah_v1.safetensors ComfyUI/models/loras/
新しいLoRAを検出するためにComfyUIを再起動します。
基本的なLoRAワークフロー:
ワークフロー構造は、モデルロードと生成の間にLoRAロードノードを追加します:
WAN Model Loader → model output
↓
Load LoRA (WAN compatible) → model output with LoRA applied
↓
WAN Text Encode (conditioning)
↓
WAN Sampler (image or video) → Output
Load LoRAノード設定:
- lora_name: カスタムLoRAを選択(wan2.2_character_sarah_v1.safetensors)
- strength_model: 0.7-1.0(LoRAが生成にどれだけ強く影響するか)
- strength_clip: 0.7-1.0(LoRAがテキスト理解にどれだけ強く影響するか)
両方の強度を1.0(完全なLoRA影響)から始めます。効果が強すぎるか、出力が過度にトレーニングされているように見える場合は、0.7-0.8に減らします。
LoRAを使ったプロンプトの考慮事項:
カスタムLoRAはプロンプトの構造方法を変更します:
キャラクターLoRAプロンプト: キャラクターの外観がLoRAに焼き込まれているため、はるかに短いプロンプトを使用できます。
LoRAなし: "肩までの茶髪、楕円形の顔、温かい笑顔、ヘーゼル色の目を持つプロフェッショナルな女性、ネイビーのビジネススーツを着て、モダンなオフィス環境、高品質"
キャラクターLoRAあり: "オフィスのSarah、プロフェッショナルな設定、高品質"
LoRAはキャラクターの外観を提供するため、キャラクターの詳細を繰り返すのではなく、シーン、ムード、構成にプロンプトを集中できます。
スタイルLoRAプロンプト: スタイルは自動的に適用されるため、プロンプトはスタイルではなくコンテンツに焦点を当てます。
LoRAなし: "公園を歩く人の水彩画スタイルのアニメーションシーン、柔らかい色、芸術的な水彩の美学、絵画的な外観"
スタイルLoRAあり: "公園を歩く人、木と道が見える、穏やかな動き"
LoRAは自動的に水彩スタイルを適用します。
複数のLoRAの組み合わせ:
複合効果のために複数のWAN LoRAをスタックできます:
WAN Model Loader
↓
Load LoRA (character LoRA, strength 0.9)
↓
Load LoRA (style LoRA, strength 0.8)
↓
WAN Sampler → Output with both character and style applied
LoRAをスタックする場合、生成を過度に制約しないように個々の強度をわずかに減らします(1.0の代わりに0.8-0.9)。
:::info[LoRA強度のスイートスポット]
- 単一のLoRA: 強度 0.9-1.0
- 2つのLoRA: 各0.7-0.9の強度
- 3つ以上のLoRA: 各0.6-0.8の強度
- より低い強度はより多くのベースモデル能力を保持 :::
LoRAパフォーマンスのテスト:
カスタムLoRAをロードした後、体系的なテストを実行します:
- LoRAだけで10個の出力を生成、特定のプロンプトなし(ベースラインLoRA効果をテスト)
- LoRA + 多様なプロンプトで10個の出力を生成(LoRAを使ったプロンプトの柔軟性をテスト)
- LoRAなしのベースモデル出力と比較(LoRAが望ましい特性を追加することを確認)
- 異なるLoRA強度でテスト(0.5、0.7、0.9、1.0)して最適な設定を見つける
LoRAが強度0.6-0.8で良い結果を生成するが、1.0では悪い結果を生成する場合、トレーニングはおそらく過学習しました。より低い強度設定を使用するか、異なるパラメータで再トレーニングしてください。
本番環境用のLoRAバージョニング:
本番使用には、整理されたLoRAバージョンを維持します:
loras/
├── characters/
│ ├── sarah_v1.safetensors (initial training)
│ ├── sarah_v2.safetensors (retrained with more data)
│ └── sarah_v3.safetensors (current production version)
├── styles/
│ ├── corporate_professional_v1.safetensors
│ └── corporate_professional_v2.safetensors
└── motion/
└── smooth_pans_v1.safetensors
バージョン命名により、異なるトレーニング反復をA/Bテストし、新しいバージョンのパフォーマンスが悪化した場合にロールバックできます。
カスタムWAN LoRAを複数のアーティスト間で使用するチームの場合、Apatero.comがLoRAバージョン管理と共有を提供し、チームメンバーが手動ファイル配布なしで最新の承認済みカスタムモデルにアクセスできます。
最適な結果のためのハイパーパラメータチューニング
トレーニングの成功はハイパーパラメータの選択に大きく依存します。どのパラメータが最も重要か、およびそれらをチューニングする方法を理解することで、劇的に優れた結果が得られます。
Learning Rate: 最も重要なパラメータ
Learning rateは、モデルがトレーニングデータにどれだけ速く適応するかを決定します。高すぎると不安定なトレーニングと不十分な結果を引き起こします。低すぎると時間を無駄にし、収束しない可能性があります。
トレーニングタイプ別の推奨learning rate範囲:
トレーニング目標 | Learning Rate | 理由 |
---|---|---|
キャラクターの一貫性 | 1e-4から2e-4 | より高いLRはキャラクター機能を迅速に学習 |
スタイル適応 | 8e-5から1.5e-4 | 中程度のLRはスタイル学習とベース保持のバランスをとる |
動きパターン | 5e-5から1e-4 | より低いLRは動きを適応しながら時間的理解を保持 |
ドメイン特化 | 8e-5から1.2e-4 | バランスの取れたドメイン適応のための中程度のLR |
確信が持てない場合は、1e-4から始めます。最初の500ステップ中にloss curveを監視します:
- Lossが着実に減少: Learning rateは良好
- Loss不安定/スパイク: Learning rateが高すぎる、5e-5に減らす
- Lossがほとんど変化しない: Learning rateが低すぎる、2e-4に増やす
Network Dimension (Rank): 容量 vs 過学習のトレードオフ
Network dimensionはLoRA容量を決定します。より高い次元は、より複雑なパターンを学習できますが、小さなデータセットでの過学習のリスクがあります。
Network Dim | LoRAサイズ | ユースケース | 過学習リスク |
---|---|---|---|
32 | ~200MB | シンプルなキャラクター、最小限のスタイル変更 | 低 |
64 | ~400MB | 標準的なキャラクターまたはスタイル適応 | 中 |
96 | ~600MB | 複雑なスタイルまたは詳細なキャラクター | 中-高 |
128 | ~800MB | 包括的なドメイン適応 | 高 |
Network dimensionをデータセットサイズに合わせます:
- 100-200サンプル: dim 32-48を使用
- 200-400サンプル: dim 48-64を使用
- 400-800サンプル: dim 64-96を使用
- 800以上のサンプル: dim 96-128を使用
より大きな次元が自動的により良い品質を意味するわけではありません。300枚の画像データセットで次元32、64、128でキャラクタートレーニングをテストしました。次元64が最良の結果を生成し(9.2/10の一貫性)、次元128は過学習しました(7.8/10の一貫性、トレーニングポーズを記憶)。
Batch Size: メモリ vs トレーニング効率
より大きなbatch sizeはより安定した勾配を提供しますが、より多くのVRAMを必要とします。
Batch Size | VRAM使用量(512x512) | トレーニング速度 | 勾配の安定性 |
---|---|---|---|
1 | 20-22GB | ベースライン | より安定性が低い |
2 | 38-40GB | 1.6倍速い | より安定 |
4 | 72GB以上 | 2.8倍速い | 最も安定 |
24GB GPUでは、batch size 1が必要です。40GB GPUでは、batch size 2がより良いトレーニング品質と60%速いトレーニング時間を提供します。Batch size 4以上はマルチGPUセットアップが必要です。
Batch size 1を使用する場合、より大きなバッチをシミュレートするためにgradient accumulationを有効にします:
- Gradient accumulation stepsを2-4に設定
- これは重みを更新する前に2-4トレーニングステップにわたって勾配を累積
- VRAM要件なしでbatch size安定性の利点の一部を提供
Number of Epochs: スイートスポットを見つける
Epochsは、モデルがデータセット全体を見る回数を決定します。エポックが少なすぎるとアンダートレーニング、多すぎると過学習します。
データセットサイズ | 推奨Epochs | 総ステップ数(概算) |
---|---|---|
100-200サンプル | 15-20 | 1500-4000 |
200-400サンプル | 12-18 | 2400-7200 |
400-800サンプル | 10-15 | 4000-12000 |
800以上のサンプル | 8-12 | 6400-9600以上 |
検証loss(検証セットを設定した場合)を監視するか、定期的にチェックポイントをテストします。最良のチェックポイントは、総トレーニングの60-80%からであることが多く、最終チェックポイントではありません。
LR Scheduler: 時間経過に伴うLearning Rateの制御
LRスケジューラはトレーニング中にlearning rateを調整します。WANトレーニングに最適なスケジューラは"cosine_with_restarts"です:
- 完全なlearning rateで開始
- コサイン曲線に従って徐々に減少
- 局所最小値から脱出するために定期的により高いLRに「再起動」
- 再起動数: ほとんどのトレーニング実行で2-3
代替スケジューラ:
- Constant: LR変更なし、LRが完璧であることがわかっている場合のみ使用
- Polynomial: 緩やかな減少、長いトレーニング実行に適している
- Cosine(再起動なし): スムーズな減少、安全なデフォルト
Warmupステップ(通常、総ステップの5-10%)は、LRをほぼゼロで開始し、目標LRまで上昇させ、早期ステップでトレーニングの安定性を提供します。
:::warning[ハイパーパラメータの相互作用効果] パラメータは独立して機能しません。高いlearning rate + 高いnetwork dimension + 小さなデータセット = 深刻な過学習。低いlearning rate + 低いnetwork dimension + 大きなデータセット = アンダートレーニング。特定のトレーニングシナリオに基づいてすべてのパラメータをバランスさせます。 :::
ハイパーパラメータのA/Bテスト:
本番トレーニングプロジェクトでは、異なるハイパーパラメータで2-3のトレーニング設定を並行実行します:
設定A(保守的):
- LR: 8e-5、Dim: 64、Epochs: 12
設定B(標準):
- LR: 1.2e-4、Dim: 64、Epochs: 15
設定C(積極的):
- LR: 1.5e-4、Dim: 96、Epochs: 18
3つすべてをトレーニングし、その出力をテストし、特定のユースケースに最適な結果を生成するハイパーパラメータセットを特定します。この経験的アプローチは理論的最適化に勝ります。
本番デプロイメントとバージョン管理
カスタムWANモデルのトレーニングは、本番ワークフローで確実にデプロイして使用できる場合にのみ価値があります。適切なデプロイメントとバージョニングは、カスタムモデルが蓄積されるにつれて混乱を防ぎます。
モデル整理構造:
プロジェクト、バージョン、タイプ別にカスタムWAN LoRAを整理します:
production_models/
├── characters/
│ ├── client_brandX/
│ │ ├── character_protagonist_v1_20250110.safetensors
│ │ ├── character_protagonist_v2_20250115.safetensors (current)
│ │ └── training_notes.md
│ └── client_brandY/
│ └── character_mascot_v1_20250112.safetensors
├── styles/
│ ├── corporate_professional_v3_20250108.safetensors (current production)
│ ├── corporate_professional_v2_20250105.safetensors (deprecated)
│ └── watercolor_artistic_v1_20250114.safetensors
└── motion/
└── smooth_corporate_pans_v1_20250109.safetensors
簡単な時系列追跡のために、ファイル名に日付スタンプを含めます。データセットサイズ、ハイパーパラメータ、パフォーマンス観察を文書化したtraining_notes.mdを維持します。
バージョン変更ログ:
各モデルバージョンに対して、以下を文書化します:
- トレーニング日: このバージョンが作成された日時
- データセット: サンプル数、コンテンツのタイプ
- ハイパーパラメータ: LR、dimension、epochs、batch size
- 前バージョンからの変更: "50の追加キャラクター表情を追加"、"過学習を修正するためにnetwork dimを減らした"
- テスト結果: 一貫性スコア、品質評価、既知の問題
- 本番ステータス: "Current"、"Testing"、"Deprecated"
training_notes.mdの例:
# Character: Brand X Protagonist
## v2 - 2025-01-15 (CURRENT PRODUCTION)
- Dataset: 350 images (added 100 new expressions)
- Hyperparameters: LR 1.2e-4, Dim 64, Epochs 15, Batch 1
- Changes: Expanded facial expression range, added more lighting variations
- Test results: 9.2/10 consistency, 8.9/10 prompt flexibility
- Issues: None identified
- Status: Production approved
## v1 - 2025-01-10 (DEPRECATED)
- Dataset: 250 images
- Hyperparameters: LR 1.5e-4, Dim 64, Epochs 18
- Test results: 8.1/10 consistency, limited expression range
- Issues: Struggled with non-neutral expressions
- Status: Superseded by v2
本番デプロイメント前のテストプロトコル:
体系的なテストなしでカスタムLoRAを本番環境にデプロイしないでください:
フェーズ1: 技術的検証(1-2時間)
- さまざまなLoRA強度(0.6、0.8、1.0)で20のテスト出力を生成
- 予想されるユースケースをカバーする多様なプロンプトでテスト
- 明らかなアーティファクト、エラー、品質の問題がないことを確認
- VRAM使用量と生成速度が許容範囲であることを確認
フェーズ2: 品質評価(2-4時間)
- 本番環境に似たプロンプトで50-100の出力を生成
- 一貫性、スタイル遵守、プロンプトの柔軟性を評価
- ベースモデル出力と前のLoRAバージョンと比較
- エッジケースまたは失敗モードを特定
フェーズ3: 本番トライアル(1-2日)
- 限定的な本番容量で使用(ワークロードの10-20%)
- エンドユーザーまたはクライアントからフィードバックを収集
- 制御されたテストで捕捉されなかった問題を監視
- 本番条件下でのパフォーマンスを検証
3つのフェーズすべてに合格した後でのみ、LoRAを「本番準備完了」とマークし、すべてのワークロードに使用すべきです。
ロールバック手順:
新しいバージョンをデプロイした後でも、以前のバージョンLoRAを維持します。問題が発生した場合:
- 直ちに以前の安定バージョンに戻す
- 新しいバージョンでの問題を文書化
- 問題を示す比較例を生成
- 問題が再トレーニングまたはパラメータ調整だけを必要とするかを判断
- 修正して再デプロイを試みる前に再テスト
クイックロールバック機能(古いバージョンをアクセス可能に保つ)は、新しいバージョンに予期しない問題がある場合の本番中断を防ぎます。
マルチユーザーチームデプロイメント:
カスタムWANモデルを使用するチームの場合:
集中モデルリポジトリ:
- 共有ネットワークロケーションまたはクラウドストレージに本番モデルを保存
- 現在の本番バージョンの単一の真実の源
- チームメンバーが古いまたは非推奨のモデルを使用するのを防ぐ
モデル更新通知:
- 新しいモデルバージョンをデプロイするときにチームに通知
- 変更ログと必要なワークフロー変更を含める
- 改善を示す出力例を提供
アクセス制御:
- トレーニングロール: 新しいモデルを作成してテストできる
- 本番ロール: 本番承認済みモデルのみを使用できる
- 管理者ロール: 本番デプロイメントのためにモデルを承認できる
プロフェッショナルなデプロイメントには、Apatero.comがマネージドカスタムモデルデプロイメントを提供しており、トレーニング済みモデルがバージョン管理され、チームアクセス可能で、アクセス許可でデプロイ可能で、手動モデルファイル管理を排除します。
パフォーマンスモニタリング:
本番カスタムモデルに対してこれらのメトリクスを追跡します:
- 一貫性スコア: 出力の一貫性の手動評価(1-10で評価)
- 生成速度: ベースモデルと比較してパフォーマンス低下がないか
- プロンプトの柔軟性: モデルが予期しないプロンプトを適切に処理できるか
- ユーザー満足度: エンドユーザーまたはクライアントからのフィードバック
- エラー率: 生成が失敗するか、使用不可能な出力を生成する頻度
これらのメトリクスの月次レビューは、再トレーニングまたは交換が必要なモデルを特定します。
トレーニング問題のトラブルシューティング
WANトレーニングは特定の方法で失敗します。問題を早期に認識し、修正を知ることで、時間とコンピュートコストを節約します。
問題: トレーニングlossが減少しない
Lossがフラットのままか、トレーニング中に増加し、学習がないことを示します。
一般的な原因と修正:
- Learning rateが低すぎる: LRを5e-5から1e-4または2e-4に増やす
- 凍結されたレイヤー: 設定ですべてのトレーニング可能なレイヤーが凍結解除されていることを確認
- データセットが小さすぎる: LoRAトレーニングには最低100-150サンプルが必要
- 破損したベースモデル: wan2.2_dit.safetensorsを再ダウンロード
- 誤ったキャプション形式: キャプションがプレーンテキストであり、空でないことを確認
問題: トレーニングlossが減少してから突然スパイク
Lossはしばらく正常に減少し、その後劇的にジャンプして回復しません。
これはlearning rateが高すぎるか、勾配爆発を示します。
修正:
- Learning rateを50%減らす(2e-4 → 1e-4)
- Gradient clippingを有効化(clip norm 1.0)
- Batch size 2以上を使用している場合はBatch sizeを減らす
- 破損したトレーニングサンプルをチェック(1つの悪いサンプルがスパイクを引き起こす可能性)
問題: モデルがトレーニングデータに過学習
トレーニングデータコンテンツに対しては出力が素晴らしく見えますが、新しいプロンプトに対しては完全に失敗します。
過学習の指標:
- トレーニングlossが非常に低い(0.01未満)が検証lossが高い
- 出力が特定のトレーニングサンプルをほぼ正確に再現
- 新しいプロンプトがアーティファクトを生成するか、プロンプトコンテンツを無視
修正:
- Network dimensionを減らす(128 → 64または64 → 32)
- トレーニングepochsを減らす(早めにトレーニングを停止)
- データセットサイズを増やす(より多様なサンプルを追加)
- 正則化を増やす(トレーニングフレームワークがdropout/weight decayをサポートする場合)
- 推論中により低いLoRA強度を使用(1.0の代わりに0.6-0.7)
問題: トレーニング中にCUDA out of memory
トレーニングがOOMエラーで失敗します。
優先順位での修正:
- Gradient checkpointingを有効化(30% VRAM削減)
- Mixed precision(fp16)を有効化(50% VRAM削減)
- Batch sizeを1に減らす
- 解像度を減らす(768 → 512)
- Network dimensionを減らす(96 → 64)
- 使用している場合はGradient accumulation stepsを減らす
すべての最適化でもOOMになる場合、GPUは目標解像度でのWANトレーニングに十分なVRAMを持っていません。
問題: トレーニングが極端に遅い
トレーニングが予想時間の2-3倍かかります。
原因:
- XFormersが有効化されていない: 40%高速化のために有効化
- CPUボトルネック: CPU使用率をチェック、ディスクからの遅いデータロード
- SSDの代わりにHDDを使用: データセットをSSDに移動(3-5倍速いデータロード)
- GPUが完全に活用されていない: GPU使用率をチェック(95-100%であるべき)
- 他のプロセスがGPUを消費: ブラウザ、他のAIツールを閉じる
問題: ベースモデルより出力品質が悪い
カスタムLoRAがLoRAなしのベースWAN 2.2よりも低品質の出力を生成します。
これはトレーニングがベースモデルの能力を損傷したことを示します。
原因:
- Learning rateが高すぎる: モデルが過度にトレーニングされ、5e-5または8e-5に減らす
- Epochsが多すぎる: 遅すぎて停止、以前のチェックポイントを使用
- データセットサイズに対してNetwork dimensionが高すぎる: Dimensionを減らす
- トレーニングデータの品質問題: 低品質のトレーニングデータが低品質の出力を教える
予防: 品質が低下する前に最適な停止ポイントを見つけるために、トレーニング中に複数のチェックポイントをテストします。
問題: LoRAに目に見える効果がない
ComfyUIでトレーニング済みLoRAをロードすると、ベースモデルと同一の出力が生成されます。
原因:
- LoRA強度が0に設定: 0.8-1.0に増やす
- LoRAがベースモデルバージョンと互換性がない: 正しいベースモデルで再トレーニング
- トレーニングが適切に保存されなかった: LoRAファイルサイズをチェック(200-800MBであるべき)
- トレーニングステップが少なすぎる: モデルが十分にトレーニングされなかった、epochsを増やす
- Learning rateが低すぎる: モデルがほとんど何も学習しなかった、LRを増やして再トレーニング
最終的な考え
WAN 2.2 fine-tuningは、モデルを汎用動画生成から、本番ニーズに正確に一致する特化ツールに変換します。データセット準備、トレーニング時間、ハイパーパラメータチューニングへの投資は、一貫したキャラクター、特定のスタイル、またはドメイン特化コンテンツが必要な数十または数百のその後の生成にわたって利益をもたらします。
成功したWANトレーニングの鍵は、データセットにおける量より質です。正確なキャプションを持つ慎重に選択された200の高品質トレーニングサンプルは、不十分なアノテーションを持つ1000の混合品質サンプルよりも良い結果を生み出します。データセットキュレーションに時間を費やせば、トレーニングは簡単になります。
ほとんどのユースケースでは、24GB GPU上のLoRAトレーニングがリソース要件、トレーニング時間、出力品質の最適なバランスを提供します。完全fine-tuningは、極端な特化が必要でない限り、3-4倍高いコンピュートコストを正当化することはめったにありません。
このガイドのワークフローは、インフラストラクチャのセットアップから本番デプロイメントまですべてをカバーします。より大きな本番トレーニング実行に投資する前に、完全なプロセスを理解するために小さなテストプロジェクト(100-150トレーニングサンプル、6-8時間のトレーニング時間)から始めてください。1つの成功したトレーニングサイクルを完了すると、その後のプロジェクトはルーチンになります。
ローカルでトレーニングするか、Apatero.comでマネージドトレーニングを使用するか(すべてのインフラストラクチャ、監視、デプロイメントを自動的に処理)にかかわらず、カスタムWANモデルは動画生成を汎用AI出力から、特定のクライアント要件を満たすブランド化された一貫したプロフェッショナルなコンテンツに引き上げます。この能力は、AI動画生成が実験的から本番グレードのアプリケーションに移行するにつれて、ますます不可欠になっています。
ComfyUIをマスター - 基礎から上級まで
完全なComfyUI基礎コースに参加して、基本から高度なテクニックまですべてを学びましょう。買い切りで生涯アクセス、すべての新しいモデルと機能の更新付き。
関連記事

ComfyUI初心者が陥る10の最も一般的な間違いとその修正方法 2025年版
新規ユーザーを悩ませるComfyUI初心者の10の落とし穴を回避しましょう。VRAMエラー、モデル読み込み問題、ワークフローの問題に対する解決策を含む完全なトラブルシューティングガイド。

Anisora v3.2で360度アニメ回転:ComfyUI完全キャラクター回転ガイド2025
ComfyUIでAnisora v3.2を使用して360度アニメキャラクター回転をマスターしましょう。カメラ軌道ワークフロー、マルチビュー一貫性、プロフェッショナルなターンアラウンドアニメーション技術を学びます。

標準搭載されるべき7つのComfyUIカスタムノード(入手方法付き)
2025年にすべてのユーザーが必要とする必須のComfyUIカスタムノード。WAS Node Suite、Impact Pack、IPAdapter Plusなど、画期的なノードの完全インストールガイド。