MENU
\ ポイント最大11倍! /

【初心者向け】xyz plotの使い方。パラメータ研究に必須!

こんにちは、画像生成AIでひたすら猫のイラストを生成している じょじお(@jojio‗illust)です。

皆さんは、サンプラーやステップ数などのパラメータ調整に頭を悩ませていないでしょうか?

この記事ではパラメータ研究を超絶効率化できる「x/y/z plot」の使い方について紹介します。

この記事の対象者

Stable Diffusion WebUIユーザー(ローカル・Colab)

▲AI画像の大量ファイルをプロンプトと一緒に簡単に整理する方法はこちら。

無料のプロンプトガイド

Stable Diffusionのプロンプトエンジニアリングの基本について理解したい方には、初心者向けのプロンプトガイドを作りましたのでそちらを見てください!

目次

X/Y/Z Plotとは?

x/y/zプロットは、3つの変数(x/y/z)を使って同時に画像生成を行い、その結果をマトリクス表にする方法です。

X/Y/Z Plotのメリット

じょじお

AI画像のパラメータの組み合わせを簡単に試すことができます。

たとえばx変数の項目をVAE、y変数の値をモデルにすると、指定したモデルとVAEの組み合わせの数だけマトリクス表を作成することができます。各モデルファイルに自分の持っているVAEファイルのどれが最適なのかを簡単に調査できます。

x/y/z変数に使用できるパラメータ

パラメータ説明
Nothingなし
Seedシード値
Var. seedVariation seed
Var. strengthVariation strength
Stepsステップ数
CFG ScaleCFGスケール
Prompt S/Rプロンプトの置換
Prompt orderプロンプトの順番入れ替え
Samplerサンプラー
Checkpoint nameモデル
Hypernetworkハイパーネットワーク
Hypernet str.ハイパーネットワーク強度
Sigma Churnシグマチャーン
Sigma minシグマ最小値
Sigma maxシグマ最大値
Sigma noiseシグマノイズ
Eta
Clip skip
Denoising
Cond. Image Mask Weight
style保存したプロンプトセット。

パラメータ調整に便利なんです。

使い方の例

  • 同じプロンプトでモデルの違いを比較する。
  • 同じモデルでベストなサンプラーを探す。
  • 品質呪文の組み合わせの効果を検証する。
  • ステップ数の変化による画像の品質向上の度合いを調べる。]
  • ベストなVAEの調査
  • など。

参考

x/y/z plotの使い方

じょじお

使ってみます。
ためしに、サンプラー別にステップ数を変化させた時の影響度を見てみたいと思います。

x/y/z Plotを有効にするにはScriptプルダウンリストからx/y/z Plotを選択します。

じょじお

↑ここがスクリプトのオフオンになります。

TYPEValue
Xstep20,25,30
YSamplarEuler a, Euler, LMS, Heun, DPM2, DPM2 a, DPM++ 2S a, DPM++ 2M, DPM++ SDE, DPM fast, DPM adaptive, LMS Karras, DPM2 Karras, DPM2 a Karras, DPM++ 2S a Karras, DPM++ 2M Karras, DPM++ SDE Karras, DDIM, PLMS
Znonenone
じょじお

私は項目数が多いパラメータをY軸に選ぶようにしています。
横長の表より縦長の表の方が見やすいからです。

▲それぞれに値を入力します。

▲あらかじめパラメータが決まっている値(サンプラー名やモデル名など)については、テキストボックスの右のノートブックアイコンをクリックすると値を自動挿入できます。入力の手間を省けます。

▲X/Y/Z Plotの設定を終えたら、通常通りプロンプトを入力してGenerateボタンをクリックすれば終了です。

▲しばらくするとこのようなマトリクス表が表示されます。

じょじお

設定の数だけ画像を生成するので、その分時間もかかります。

ケース別の使用例

いくつか使用例を紹介したいと思います。

モデル別VAEの効果チェック

じょじお

モデル別に最適なVAEを探してみました。

似たようなモデルで同一プロンプトを使ったときの比較

じょじお

同じプロンプト・同じパラメータで、モデルだけ変えてみました。

Prompt S/R

じょじお

Prompt S/Rは、プロンプト内の特定のワードを、別のワードに順番に置き換えて画像を生成します。

a beautiful girl, (black clothes:1.4), (face close up), looking at viewer

▲こういうプロンプトがあって、(black clothes:1.4)のワードをいろいろ変化させることができます。

▲typeに「Prompt S/R」を選択、valuesに「(black clothes:1.4)」の後に、カンマ区切りで変化させたいワードを書きます。CSVファイルのような書き方です。

(black clothes:1.4), (red clothes:1.4), (blue clothes:1.4)

▲例えば↑のように書くと、最初にblack clothesを実行し、次にredに置換して実行、最後にblueに置換して実行します。

空の値を使う方法!

じょじお

空の値の指定方法に迷ったので共有します。

じょじお

これを知っておけばVAEなどの比較をする際に、「VAEを使用しない場合」というパターンも含めることができます。

空の値を使うには何も入力しないでカンマを使うだけです。

下記に例を示します。

VAE-A,VAE-B,

▲この場合、値は「VAE-A、VAE-B、空の値」の3つになります。最後にカンマがあるので3ん番目が空の値として認識されています。

VAE-A,VAE-B

▲この場合、値は「VAE-A、VAE-B」の2つになります。

,VAE-A,VAE-B

▲この場合、値は「空の値、VAE-A、VAE-B」の3つになります。最初にカンマがあるので、最初に空の値が入っていると認識されます。

x/y/z plotの無効化

無効にするには、WebUIのスクリプトのプルダウンリストから「None」を選択します。

オプションについて

  • Draw leged:一枚一枚画像をWebUI上に表示。チェックがオフの場合、マトリクス表だけは表示。
  • Keep -1 for Seeds:チェックするとシード値をランダムにする。

まとめ

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次