Stable DiffusionにおけるCFGスケールを理解し、ブログで画像品質を向上させる方法を学びます。
はじめに
CFGスケール(Classifier Free Guidanceスケール)は、Stable Diffusionがテキストプロンプトにどの程度追従するかを制御する重要なパラメーターです。これは、テキストから画像へ (txt2img)および 画像から画像へ(img2img)の両方の生成で使用できます。
このブログでは、Stable DiffusionにおけるCFGスケールについて、Stable Diffusionとの関係やその背後にある技術も含めて、包括的に紹介します。さらに、Stable Diffusionでの具体的な使い方やよくある間違いを避ける方法についても詳しく解説します。さっそくCFGスケールの世界に飛び込みましょう!
Stable DiffusionにおけるCFGスケールの理解
Stable Diffusionにおいて、CFGは「Classifier Free Guidance」スケールの略称であり、出力画像の品質を決定する上で重要な役割を果たします。
CFG(Classifier Free Guidance)の進化
当初、拡散モデルは明示的な分類器を使用して生成プロセスをガイドしていました。ノイズのある画像で分類器を訓練し、猫や犬などの特定のクラスを分類・生成することを目的としていました。しかし、これには追加のモデルが必要でした。そこで登場したのがClassifier-Free Guidanceで、画像キャプションを使用して条件付き拡散モデルを訓練します。
CFGスケールとは?
CFGスケール(Configurationスケール)は、拡散プロセスの強度を制御するパラメーターです。ピクセル値の広がり具合(分散度)を決定し、言い換えれば、Stable Diffusionがプロンプトにどの程度従うかを決定します。

CFGスケールはStable Diffusionでどのように機能するか?
デフォルトではCFGスケールの値は7に設定されており、創造的な自由度とプロンプトへの追従性のバランスを取っています。
CFGスケールとStable Diffusionの関係
Stable Diffusionは画像処理およびコンピュータグラフィックスの分野における概念で、ピクセル値を画像全体に拡散または分散させるプロセスを指します。この技術は、ぼかし、シャープ化、エッジ検出など、さまざまなエフェクトを作成するためによく使用されます。このプロセスは一連のパラメーターによって制御され、その1つがCFGスケールです。
CFGスケールは画像品質にどのように影響するか?
CFGスケールは、拡散プロセスにおいてプロンプトワードに適用される係数を決定します。低いCFGスケール値は詳細を保持できますが、望ましい拡散効果が得られない可能性があります。一方、高いCFGスケール値は強い拡散効果を生み出せますが、画像の詳細が失われる可能性があります。したがって、適切なバランスを見つけることが高品質な出力画像を実現する鍵です。

安定拡散におけるCFGスケールの調整は、望ましい結果に依存します。目的が微妙な拡散効果を生み出すことなら、低いCFGスケール値が適切です。逆に、強い拡散効果を狙う場合は、高いCFGスケール値が必要になります。
Stable Diffusion Web UIを使用する場合、CFGは1から30の正の数値に制限されています。ただし、ターミナル経由でStable Diffusionを使用する場合は、CFGを最大999まで設定でき、負の値も取ることができます。負の値は、Stable Diffusionがテキストプロンプトと逆の内容を生成することを示します。

Stable DiffusionでCFGスケールを使用する方法
Stable DiffusionでCFGスケールを使用する方法を学ぶには、プロジェクトにStable Diffusionモデルが組み込まれている必要があります。このセクションでは、プログラムにStable Diffusionを統合する方法から、段階的に説明します。
ステップバイステップガイド
Stable Diffusionをダウンロードする代わりにAPIを統合する利点は、必要に応じてモデルを訓練したり調整したりできることです。
- ステップ1: Novita AI のWebサイトにアクセスし、アカウントを作成します。
- ステップ2: 「API」に移動し、目的のAPIを見つけます。Novita AIは「** テキストから画像 」、「 画像から画像**」など、さまざまなAPIを提供しています。

- ステップ3: APIキーを取得し、プロジェクトに統合します。
- ステップ4: Stable Diffusionインターフェースに移動します。
- ステップ5: リストから使用したいStable Diffusionモデルを選択し、画像のプロンプトを入力します。Novita AIは、Stable Diffusion XLやStable Diffusion 3など、多くのモデルを提供しています。

- ステップ6: CFGスケール値を調整し、画像を生成します。
- ステップ7: さまざまなCFGスケール値を試して、最も印象的な結果をもたらす特定の値を見つけます。

CFGスケール使用時のハードウェアに関する考慮事項
Stable Diffusionのパフォーマンスと結果は、使用するハードウェアに影響を受ける可能性があります。
- グラフィックスプロセッシングユニット(GPU): Stable Diffusionを効率的に実行するには、強力なGPUが不可欠です。モデルは、画像生成に関わる計算負荷の高いタスクにGPUを活用します。
- ランダムアクセスメモリ(RAM): 十分なシステムRAMは、システム全体の応答性と大規模データセットの処理能力にとって重要です。最低16GBのRAMを推奨し、より要求の厳しいタスクには32GBを推奨します。
- オペレーティングシステム: Stable DiffusionはWindows、macOS、Linuxなどさまざまなオペレーティングシステムと互換性があります。ただし、特定のバージョンやアップデートによって互換性やパフォーマンスが影響を受ける場合があります。

Stable DiffusionにおけるCFGスケールの使用例
Stable DiffusionのCFGスケールにより、ユーザーはニーズに応じて画像生成プロセスを微調整できます。
画像品質の最適化
ユーザーはCFGスケールを調整して画像品質を最適化できます。値7は、リアリズムと入力プロンプトへの忠実性のバランスが取れているため、推奨されることがよくあります。
ネガティブプロンプト
CFGスケールはネガティブプロンプトと組み合わせて使用でき、主要なテキストプロンプトに従いつつ、特定の要素を除外した画像を生成するのに役立ちます。

ケーススタディ
ケーススタディでCFGスケール値を調整することで、ガイダンスのレベルが生成画像にどのように影響するかを観察でき、高忠実度の出力画像を実現するためのCFGスケールの重要性をさらに理解できます。
さらに、Novita AIは「画像から画像」のプレイグラウンドも提供しています。そこでケーススタディを行うことができます。

結論
結論として、CFGスケールは安定拡散において拡散プロセスの強度を制御する重要なパラメーターです。望ましい結果や元の画像の品質に基づいてCFGスケールを調整する方法を理解することで、安定拡散の結果を大幅に改善できます。画像処理やコンピュータグラフィックスの多くのことと同様に、最適なCFGスケール値を見つけるには試行錯誤のプロセスが必要であり、各プロジェクトの具体的な要件に依存します。
Novita AI は、AIの野望を実現するオールインワンのクラウドプラットフォームです。シームレスに統合されたAPI、サーバーレスコンピューティング、GPUアクセラレーションにより、AI主導のビジネスを迅速に構築・拡大するためのコスト効率の高いツールを提供します。インフラストラクチャの悩みから解放され、無料で始めましょう – Novita AIがあなたのAIの夢を現実にします。
おすすめの読み物
