今回は、Stable Diffusionでembeddingsとして使用できる「bad_prompt」の使い方について解説します。
Stable Diffusionで特に失敗しやすい手の表現などに有効なembeddingsですので、ぜひ活用してみてください。
また、当ブログのStable Diffusionに関する記事を以下のページでまとめていますので、あわせてご覧ください。

Stable Diffusionの導入方法から応用テクニックまでを動画を使って習得する方法についても以下のページで紹介しています。

「bad_promptとは」
「bad_prompt」とはネガティブプロンプト用に開発されているembeddingsの一つであり、これをネガティブプロンプトに適用することで、イラストの手や指の表現を改善することができます。
Stable Diffusionなどの画像生成AIで人物のイラストを生成する際、特に手や指の表現は崩れやすいので、非常に有効です。
ここで、embeddingsとは”Textual Inversionという手法で特定のスタイルを学習させたファイル”のことです。
そのほとんどが1MB以下の容量の小さいファイルサイズで配布されており、embeddingsを適用することでキャラクターの顔や表情などを変化させたり、特定の構図を生成しやすくできます。
「bad_promptの導入方法」
ここからは「bad_prompt」の導入方法について解説していきます。
embeddings「bad_prompt」のダウンロード
「bad_prompt」は、”CIVITAI“もしくは”Hugging Face”というサイトからダウンロードすることができます。
これらのサイトはStable Diffusionの各種モデルなどが網羅的に公開・発信されているプラットフォーム(Webサイト)のことです。
CIVITAIからのダウンロード
まず、CIVITAIから「bad_prompt」をダウンロードする方法を説明します。
以下のURLにアクセスし、「bad_prompt」をダウンロードします。

ダウンロードするには、まず ダウンロードボタンをクリックし、表示される”Negative”をクリックします。

Hugging Faceからダウンロード
次に、Hugging Faceから「bad_prompt」をダウンロードする方法を説明します。
以下のURLにアクセスし、「bad_prompt」をダウンロードします。

ダウンロードするには、まず”Files and versions”をクリックし、次に”bad_prompt_version2.pt”のダウンロードボタンをクリックします。

embeddings「bad_prompt」のインストール
ダウンロードが完了したら、実際にStable Diffusionに導入していきます。
ダウンロードした「bad_prompt_version2-neg.pt」というファイルを、以下の場所に移動させます。
ローカル環境
Google Colaboratory
Paperspace
「bad_promptの使用方法」
それでは「bad_prompt」の使用方法について説明していきます。
Stable Diffusion Web UIを立ち上げたら、「Generate」ボタンの下にある花札マークのボタンを押し、「Textual Inversion」タブをクリックするとダウンロードしたembeddingsが表示されます。
この中から、今回ダウンロードした「bad_prompt-neg」を選択すると、ネガティブプロンプト欄に自動的にプロンプトが入力されます。

これで「bad_prompt」を適用して画像を生成することができます。他の項目については通常と同様に入力や設定を行いましょう。
「bad_prompt」の効果の検証
ここでは、「bad_prompt」を適用していない場合と、適用した場合とで生成される画像を比較していきます。
生成条件
今回は手指の表現を確認する目的のため、「Waving gesture(手を振る)」のプロンプトを指定したいと思います。
以下、検証に使用したプロンプトです。
ポジティブプロンプト
masterpiece, best quality, 1girl, upper body, Waving gesture
ネガティブプロンプト
worst quality, low quality, bad_prompt_version2-neg
※ネガティブプロンプトの”bad_prompt_version2-neg”は「bad_prompt」適用時のみ入力
実行結果
「bad_prompt」を使用しない場合
「bad_prompt」を適用しない場合生成した画像は以下の通りです。

右手も左手も指の本数が6本ずつになってしまいました。
「bad_prompt」を使用した場合
「bad_prompt」を適用した場合生成した画像は以下の通りです。

しっかり指が5本あり、手指の表現が改善されました。
しかし、イラストをよく見てみると、イラストの画風も変わってしまっています。
「bad_prompt」は手指の表現を改善することはできますが、モデル本来の画風を維持できなくなりがちというデメリットがあります。
この点については、別の手指表現を改善するembeddingsである「negative_hand」を代わりに使用すると、モデル本来の画風を維持しやすいです。

「bad_prompt」の注意点
その他注意点として、画像生成をそれなりに繰り返していると、「bad_prompt」を適用していても手指の表現に乱れのある画像がいくつか出てきてしまいます。
「bad_prompt」などのembeddingsの効果は、モデルや各設定条件などによっても異なってくる可能性があります。万能ではないことは覚えておきましょう。
Stable Diffusionのテクニックを効率よく学ぶには?

Stable Diffusionを使ってみたいけど、ネットで調べた情報を試してもうまくいかない…



そんな時は、操作方法の説明が動画で見られるUdemyがおすすめだよ!
動画学習プラットフォームUdemyでは、画像生成AIで高品質なイラストを生成する方法や、AIの内部で使われているアルゴリズムについて学べる講座が用意されています。
Udemyは講座単体で購入できるため安価で(セール時1500円くらいから購入できます)、PCが無くてもスマホでいつでもどこでも手軽に学習できます。
Stable Diffusionに特化して学ぶ
Stable Diffusionに特化し、クラウドコンピューティングサービスPaperspaceでの環境構築方法から、モデルのマージ方法、ControlNetを使った構図のコントロールなど、中級者以上のレベルを目指したい方に最適な講座です。


画像生成AIの仕組みを学ぶ
画像生成AIの仕組みについて学びたい方には、以下の講座がおすすめです。
画像生成AIで使用される変分オートエンコーダやGANのアーキテクチャを理解することで、よりクオリティの高いイラストを生成することができます。


まとめ
今回はStable Diffusionで使用できるembeddings「bad_prompt」の使い方について解説してみました。
トリガーワードを追加するだけで、簡単に生成する画像のクオリティをアップすることができることを見て頂けたかと思います。
ぜひ活用してみてください。
また、プロンプトの作成が難しいと思われている方には、AIでプロンプトを自動生成するのがおすすめです。
「StableDiffusionのプロンプト(呪文)を自然言語処理モデルGPT-3(Catchy)で自動生成する方法」で詳細を解説していますので、あわせてご覧ください。
それでは、また次の記事でお会いしましょう。





