WaveSpeedでZ-Image Turbo LoRAを学習する:データセット、ステップ、よくある間違い

WaveSpeedでZ-Image Turbo LoRAを学習する:データセット、ステップ、よくある間違い

ねえ、相棒。僕はDoraです。

先週、ヘッダー画像のセットに対して小さく、一貫したスタイルが欲しかった。ストック画像は違う感じがするし、プロンプトを手動で調整すると常にズレていった。だから、ずっと避けてきたことを試してみた:WaveSpeed内のZ-Image Turboで高速LoRAを使うこと。面倒な設定と大量の試行錯誤を期待していた。でも、思ったより簡単だった。楽ではないが、きちんとしている。 2026年1月の2晩でWaveSpeed上にZ-Image Turbo LoRAをトレーニングした方法、何がうまくいって何がうまくいかなかったか、そして再利用する設定をここに示す。最後の一パーセントを絞り出すためのガイドではない。頭をクリアに保ち、結果を予測可能にしてくれた堅実なベースラインだ。

データセットのルール

収集したもの

小さく保った:明確なビジュアルスタイル(くすんだ、シャープなライン、優しい紙のテクスチャ)のための45画像。30~120画像の間で良い結果が出ている。20以下だと過適合になる傾向:150を超えるとLoRAよりもファインチューンを多く訓練していることになり、Z-Image Turboのスピード優位性が平坦になり始める。

多様性が量より重要

セットを分割した:

  • 70%「コア見た目」画像(教えたいスタイル)、
  • 30%コンテキスト多様性(LoRAがスタイルを1つのシーンに結びつけないように異なるオブジェクト/背景)。

角度、照明、アスペクト比はさまざま。5°のシフトで同じオブジェクトを3枚撮ったような、ほぼ重複するものは避けた。

サイズとフォーマット

  • 解像度:短辺が768px。Turboモデルは1024に対応できるが、768は訓練を軽くして、私のテストでアーティファクトを減らした。
  • フォーマット:PNGまたは高品質JPEG。メタデータをストリップした。大きな組み込みプロファイルは時々色をわずかに混乱させた。
  • トリミング:被写体を支配的に保つがすべての時間の中心にないようにトリミング。対称性はモデルを自満させる。

キャプション作成のコツ

2つのパスを試した:最初は自動タグ付け、その後は軽い編集。自動キャプションは70%までやってくれた。最後の30%が重要だった。

キャプションを短く、一貫性を保つ

  • 1~2文またはコンパクトなタグリスト。
  • スタイルトークン(以下詳細)とクラス単語を述べる。
  • すべてを説明しない。安定していて重要なもの だけを名前付け。

使用した例:

  • 「soka-style、机の上のセラミックマグの最小限のイラスト、柔らかい紙のテクスチャ、くすんだパレット。」
  • 「soka-style、粘土鉢の単純な植物、サイドライト、クリーンなネガティブスペース。」

クラス単語が役立つ

スタイルを教える場合は、クラス単語を使用(イラスト、写真、ポートレート、プロダクトショット)。オブジェクト/キャラクターを教える場合は、それが何か(マグ、バックパック、プランナー)を使用。これはLoRAを一般化するのに役立つ。クラス単語がないと、初期の実行ではLoRAはレイアウトに付着していた。

形容詞で過適合しない

2番目のパス後に繰り返される形容詞を削除した。すべてのキャプションが「暖かく、居心地が良く、柔らかい」と言っている場合、モデルはあなたがそれを望まないときでもそのムードにロックされる。トーンのために1つの形容詞を保った。

ネガティブシグナル

本当に重要な場合は、いくつかのキャプションに軽いネガティブを追加した:「ハード影がない」。どこでもではなく、コントラストが生画像で間違っていた場所。多くのネガティブは推論中にそれを意固地にした。

小さな注記:テストとして5画像のキャプションなしを試した。結果はわずかにノイジーになった。ひどくないが、一貫性が重要な場合はキャプションをスキップしない。

トレーニングパラメータのベースライン

これらはWaveSpeedでZ-Image Turboで堅実な結果をくれた設定。私は3つの短いトレーニング(デフォルトGPUで約18~22分ずつ、ワークスペース内)を実行した。実行時間は異なる場合がある。

再利用したコア設定

  • ベース:Z-Image Turbo(2026年1月現在の最新)
  • LoRAランク(dim):細かいスタイルで16:スタイルがより多くのパンチが必要な場合は32。16に決めた。
  • アルファ:ランク(16)または半分(8)に一致。それを一致させた。
  • 学習率:1e-4から開始。スタイルが付着しない場合は2e-4。1e-3は私のテストで高速に焼き過ぎた。Hugging Faceのロラトレーニングドキュメントは、ほとんどの安定した拡散モデルで1e-4から開始することを推奨している。
  • バッチサイズ:2~4。ステップを合理的に保つために4を使用した。
  • エポック/ステップ:データに対して1~2フルパスを目指す。45画像×10リピート÷バッチ4≈エポックあたり112ステップ。私は2エポック(≈224ステップ)を訓練した。3エポック以上は背景を暗記し始めた。
  • スケジューラー:コサインまたはウォームアップ付き定数。5%ウォームアップでコサインを使用した。
  • 精度:利用可能な場合はbfloat16。ここでは問題なかった。

正則化画像

スタイルLoRAの場合、正則化を常に追加するわけではない。オブジェクトまたはキャラクターの場合、50~100クラス画像(プレーン「マグ」、「ポートレート」)を追加して、解剖学と形状を正直に保つ。Turboでは、これは植物のショットで奇妙な手のような葉を著しく減らした。

チェックポイントと保存

50~80ステップごとに保存を有効にした。最も甘いスポット(私のセットではステップ180周辺)にロールバックできた。後のステップはよりクリーンに見えたが、プロンプトの柔軟性が低かった。

クイックサニティチェックが必要な場合:最初に60~90ステップ実行。完璧ではありませんが、データセットが正しい教訓を教えているかどうかを教えてくれます。

トリガーワード

スタイルを固定するために、ユニークなトークンを使用した:「soka-style」。「kavli-ark」または「mivva」のようなものを使用できます。短い、作成され、実在の単語と衝突する可能性は低い。

キャプションの書き方

  • キャプションをトークンで1回開始:「soka-style、最小限のイラスト…」
  • クラス単語を追加:イラスト、写真、レンダー、マッチするもの。
  • データセット全体で一貫性を保つ。

プロンプト方法

  • ポジティブ:「木製の机の上のセラミックマグのプロダクト写真、soka-style、柔らかい紙のテクスチャ、くすんだ色」
  • ネガティブ:「ハード影、強い粒度、テキスト透かし、色収差」

トリガーワードを避けるべき時

非常に特定のオブジェクト(ブランドボトル、マスコット)を訓練している場合は、キャプション内でトークン+クラス単語(「mivva-bottle」)を使用しますが、すべての推論プロンプトにトークンを強制する必要はありません。私のテストでは、Turboは訓練分布を尊重しました:時々クラス単語だけで十分でした。シーンが複雑になったときトークンは役に立った。

1つの奇妙な点:2つのスタイルトークンをスタッキングするとモデルが混乱した(「soka-style、nova-style」)。濁った混合が得られた。一度に1つのトークンの方がクリーナーだった。

検証画像

検証は私が幽霊を追うのを救った。

固定シードと小さなグリッド

気になる3つのプロンプトを設定し、実行全体で固定に保った:

  1. 「机の上のセラミックマグ、soka-style、柔らかい紙のテクスチャ、くすんだ色」
  2. 「窓の近くの葉のある植物、soka-style、サイドライト、クリーンな背景」
  3. 「プランナーとペン、soka-style、トップダウン、やさしい影」
  • シード:固定(12345を使用)。プロンプトあたり1つのシード。
  • ステップ:Turboで20~28。30を超えると過シャープになり始めた。
  • CFG:3.5~6。4.5がバランスのためにお気に入り。
  • サンプラー:DPM++ 2M Karrasまたはまともなオイラーバリアント。両方が機能した。
  • サイズ:訓練作物とのパリティのために768×768。

また、トークンなしで同じセットを1回レンダリングして、スタイルが優勢すぎるかどうかを確認した。2番目の実行では、マグは「紙質」に見えたままだった トークンなし、スタイルを難しく押していることのヒント。LoRA重みを0.6に下げるとそれを修正した。

可能であれば、訓練中に軽量検証パネルを開いたままにする。同じ3つのプロンプトが更新されるのを見ることは、ランダムサンプルを目玉焼きするよりも落ち着いている。

修正

何が間違っていて、それを修正したか。

背景の過適合

  • 症状:同じ紙のテクスチャが関連のないシーンに表示される。
  • 修正:イメージあたりのリピートを減らす(10から6に)、6~10個のニュートラルな背景を追加、推論時のLoRA重みを下げる(0.6~0.75)。

ベージュへの色ドリフト

  • 症状:午後遅くのフィルターのようにすべてが温まる。
  • 修正:キャプション内の繰り返される「暖かい/柔らかい/快適」形容詞を削除:6つのクーラートーンの画像を追加:データセット内のホワイトバランス多様性を設定:ネガティブに「過度に暖かいトーン」を追加。

脆いプロンプト

  • 症状:小さなプロンプト変更は構成を崩す。
  • 修正:オブジェクトタイプとレイアウトのデータセット多様性を増やす:若干低いLR(2e-4ではなく1e-4)でトレーニング:スタイルが複雑な場合はランク32を試す。

公開と再利用

このLoRAの訓練がほぼ管理可能だったのは、主にWaveSpeedを構築してプロセスのイライラする部分を削除したためです。スクリプトを配線するかGPUにベビーシッターを置く代わりに、小さなデータセットをアップロードでき、短いTurbo LoRAトレーニングを実行し、チェックポイントを比較し、フローを破らずにプロジェクト全体でモデルを再利用できました。

スタイルドリフト、過適合、または「良い実行」の追跡を失うことにうんざりしている場合。 → WaveSpeedでZ-Image Turbo LoRAをトレーニング 3番目の実行が堅実に感じられたとき、WaveSpeedの内側にプレーンモデルカード付きでLoRAを公開した:

  • 用途:細かい紙のテクスチャスタイル、くすんだパレット、クリーンな形。
  • 用途ではない:フォトリアルポートレート、高光沢製品、重いテキストオーバーレイ。
  • うまくいった設定:重み0.6~0.85、CFG〜4.5、20~26ステップ、768出力。
  • 2つの良いプロンプトと1つの注意。
  • バージョンノート:2026年1月訓練、ランク16、LR 1e-4、〜224ステップ。

ライセンスをシンプルに保ち、3つの検証画像を追加した。将来の自分は過去の自分に具体性に感謝する。

再利用

  • スタッキング:このスタイルLoRAを別のオブジェクトLoRAとスタッキングできましたが、一度に1つのスタイルだけを保った。スタッキングする必要がある場合は、組み合わせた重みを1.0未満に保つ。
  • マージ:チェックポイントに焼き込まなかった。全体的なポイントは柔軟性だった。
  • チーム:LoRAリンクと3つの固定検証プロンプトを共有した。レビューの行き来を減らした。人々は同じ参照を見ました。

WaveSpeedまたはZ-Image Turboに新しい場合は、公式ドキュメントは最初の実行の前に眺める価値があり、特に学習率とランクに関する彼らのメモ。最初のパス後に眺めて、もっと早くやっておけばよかったと思った。

また、「ちょっとLoRAを訓練するだけ」と断言したが、2晩後にすべての画像が「永遠のベージュフィルター」または「強制された紙のテクスチャ背景」を身につけているのに気付いたことがありますか?

早く、45画像をWaveSpeedにダンプし、Z-Image Turbo LoRAを試してください。その後、戻ってきて私に教えてください:ヘッダーの一貫性を保存しましたか、それともすべてのオブジェクトに「神秘的なテクスチャ触手」を発芽させましたか?