生成AIストリーム

日本特化型画像生成AI「JSDXL」で和風画像の魅力を探求してみた!

「Japanese Stable Diffusion XL」の真価を引き出す

「Japanese Stable Diffusion XL」で生成した日本画風画像

 2023年11月17日11時、StabilityAI社から「Japanese Stable Diffusion XL」(以下JSDXL)がリリースされました。

 昨年8月に世界を一変させた画像生成AI「Stable Diffusion」をオープンモデルでリリースしたStabilityAI社は日本に拠点があり、日本でも特色ある開発を行っています。11月には数多くの日本語モデルがリリースされました。

 今回リリースされた『JSDXL』はどのような特徴を持っているのでしょうか。単なる翻訳とは異なるのでしょうか。

試してみよう

 今回のこの記事では3つの方法を紹介します。

【方法1】 HuggingFace公式の「Spaces」を使う(全ての人におすすめ)

様々な機械学習モデルが公開されているSNS「HuggingFace」の「Spaces」にて利用できるようになっています。

 「HuggingFace」の中の人のアカウントで日本語を歓迎する発言が発信されています。

 「Spaces」での運用は有料なので、どこかに費用を負担してくれている方がいらっしゃるようです。ありがたいことです。

【方法2】 「Google Colab Pro」を使う(中上級者向け)

 上記の公開「Spaces」が使えない時、「Google Colab Pro」のアカウントがある人は、自分で機械学習モデルのデモ用Webアプリ向けPythonライブラリ「Gradio」のUIを立ち上げて利用できます。

 まずは「HuggingFace」上で公開されているnbを確認します。

JSDXLのライセンスに同意する必要がある

 このモデルは商用利用可能ですが、利用規約を読み、名前、在住国と所属、メールアドレス等を入力する必要があります(これを行わないと、次のステップでモデルをダウンロードできません)。

 利用規約の要点は以下の部分です。

By downloading, using, or distributing any portion or element of this model, you agree to be bound by the agreement described in the LICENSE file.

(意訳)
このモデルのいかなる部分または要素をダウンロード、使用、または配布することにより、あなたはライセンスファイルに記載されている契約に拘束されることに同意するものとします。

実際のライセンスファイルはこちらにあり合意後に読むことがで可能

 実際のライセンスファイルはこちらにあり、合意後に読むことができます。

 続いて「Google Colab」で共有されているサンプルコードを自分のアカウントで実行します。

 GPUを必要としますので、「Google Colab Pro」のアカウントでGPUインスタンスを選んで実行してください。

 最後の段階まで進むと、「Gradio」のURLが生成されますのでそちらから利用できます。

【方法3】StabilityAI 社が提供のテスト用Gradio環境を使用する(初心者向け・期間限定)

 「Stable Community Japan」の「Discord」で質問しながら、お試し環境で遊んでみることができます。

discord招待リンク

 こちらのリンクでテスト用のWebサイト(「Gradio」)にアクセスできます。

「窓の杜」を生成してみた

 方法を3つ紹介しましたが無料で利用できる上に、生成速度を含めた体感は方法1か方法3のほうがいいかもしれません。さすが有料のNVIDIA A10が使われていることもあり、2枚を生成するのにだいたい17秒ぐらいです。

 「Discord」のコミュニティ内ではこんな感じの作品が交流されています。

mkshing さんによる作例:「花に囲まれた日本女性のポートレート」
D̷ELL さんによる作例:「最高品質の画像、美しい少女、美麗なイラスト、手に花束、背景は光に溢れている、アニメ、二次元」、ネガティブプロンプト「低品質、最悪の品質、醜い、三次元、実写」、cfg_scale:7.5、size ratio:1.75、seed:1040547626

モデルの特性をつかむ!テクニック紹介

 さて、リリースされたJSDXLですが、いままでの「Stable Diffusion」や「SDXL」とも異なる特性があるようで、思い通りの画像を生成させるには少しコツが必要でした。ここでは、JSDXLでの作品例を新しい画像生成モデルに出会ったときのテクニックとともに、紹介していきます。

 まず基本的な使い方です。[Enter your prompt]欄に自分の希望する生成したい画像のキーワードを入れて[Run]を押して待ちます。これだけです。

「ハチワレ猫のぬいぐるみ」を生成してみた

 「ハチワレ猫」は英語では「Tuxedo cat」といわれますが、「タキシードキャット」だと、顔が八の字になっていない猫が生成されたり、猫がタキシードを着ていたりします。「ぬいぐるみ」も日本語独特の雰囲気を持ったワードなので、JSDXLならではの生成ができていると感じます。

「タキシードキャット」では猫がタキシードを着ていたりする
※なお、この公開された試用サーバーはNSFW(Not Safe For Work:職場では安全ではない)といったフィルター処理は施されていませんので、あくまで体験試用、間違っても「裸の女性」などは生成しないでください。紳士淑女の皆様は、あくまでも責任と節度のあるAIの試用・使用をお願い致します。

「Advanced options」の項目

  • cfg_scale:CFGとは「Stable Diffusion」用語で「Classifier Free Guidance」の略です。「どれくらい与えられたプロンプトに忠実に従うか?」のパラメーターです。7.5がデフォルト値になっています。大きすぎたり小さすぎると画像が破綻しますので、5~6ぐらいにすると多様性が増え、9~10ぐらいにすると理論上忠実になっていくはずですが、JSDXLについては7.5から動かさないぐらいが良さそうです
  • size_ratio:縦横比です。例えば横長のハガキサイズにする場合は「1.46」となり、「0.5」とすると掛け軸のようになります
  • n_samples:一度に生成する画像の数のようです。ソースを見ると1~5の値を取りそうですが、最大3画像が生成できるようです
  • seed:「Stable Diffusion」は画像を乱数から生成しますが、これを固定することで同じ系の画像を得やすくなります。デフォルトでは[random]ですがこれを[sampling info]で表示される値にすることで、同じ系を繰り返して生成実験することができます
  • negative prompt:「この画像は生成したくない」というネガティブな命令を日本語で指定します。例えば「イラスト」とすることで、実写画像が出やすくなります。逆に「写真」とするとイラストが多く出ます。本稿では略して「NP」と呼びます
「Advanced options」

 実際に試してみた印象ですが、cfg_scaleもNPも絶対ではなく、だいたい1/3(10回中3回)忠実に生成するといった印象です。気長にたくさん生成してみることをおすすめします。

 生成される画像の人物の顔も、実に東洋的、日本的です。本稿では「和顔」と呼ぶことにします。

和顔で日本画風な浴衣美人が生成されました

 もちろんうまく行かないダメな例も相当にあるのでJSDXLでの「勝ち筋」を探っていきましょう。また、他のWordToTextによる画像生成と同様、他者の商標侵害や類似性・依拠性(偶然似てしまったのではなく、原作があってこその類似画像の生成)については特に注意をしてください。

「浴衣」を生成できます

 例えば「海」も、非常に太平洋っぽく出てきます。「太平洋」とすると、極稀にNSFWな感じの画像が生成されました。おおひらひろし、といった名前の人物がいらっしゃるのでしょうか。こんど彼を見かけたらシードをメモっておこう…。

「太平洋」とすると、極稀にNSFWな感じの画像が生成されてしまう

 「山」、海に対してちょっと日本っぽくはない感じです。特に植生が日本の山ではなさそう。一方で「高尾山」とすると、とても高尾山っぽい風景が生成されます。「高尾山ロープウェイ」とすると、今度はロープウェイが強くなります。どうも2要素ぐらいが得意で、後ろのワードに引っ張られる傾向が強い印象です。

「山」ではあまり日本的な山を生成しづらい

「渋谷」で実験してみよう

 いろいろ試してみると日本語の地名がなかなかおもしろい結果を生成します。「渋谷」とすると片鱗はありますが。「渋谷駅前」とするとぐっと良くなります。

 ここで、実験をしてみます。

上段「駅前渋谷」→よくない(駅前が強い)、中段「渋谷,駅前」→よくない(駅前が強い)、下段「渋谷の駅前」→よくない(駅前が強い)
上段「渋谷駅前交差点」→なかなかいい、「渋谷駅前の交差点」→交差点が強くなる

 こうして見ると、本当に「日本らしさ」が出てますよね。一目見ただけで「日本だ」ってわかります。

「の」を使って制御する

 一単語にする、後ろが強くなる、という特性に加えて「の」を使って、2要素で上手い絵を作ってみましょう。

上段「渋谷文化」よさそう、中段「渋谷の文化」ボケる、下段「渋谷の若者」よさそう
「若者の渋谷」センター街だ!しかも人がブレてるのかっこいい

「・」で3要素以上の画像を作ろう

 いままでは2要素が限界でした。どうやら要素を多くすると絵が破綻しやすいようです。3要素以上はどうやって指定すると良いのでしょうか。格助詞「の」は便利ですが、連続して使うと主格や従属がどちらなのか、日本語の文法でも解釈が難しい一文字であります。

 いろいろ試してみたところ、単純に「and」と認識させる方法として中黒「・」が効果ありそうなので実験方法を紹介します。

 具体的には「渋谷駅前・男・女」として、連続的に生成していきます。「渋谷駅前男女」「渋谷、駅前、男、女」とするよりも『渋谷の駅前らしい絵』と『男女』が出やすい印象があります。理由がわからないのであくまで印象ですが、カッコで括るような効果があるのかもしれません。10枚生成でヒット率1/3ぐらいを期待できます。

「渋谷駅前・男・女」で生成した画像

ハロウィンの渋谷を生成する

 渋谷で人が多いというと、ハロウィンですが、あんまり沢山の人が仮装しているような画像は生成できませんでした。

 「渋谷・ハロウィン」とすると、けっこうな確率でHALLOWEENの文字が出てきます。文字を生成するのは「Stable Diffusion」の苦手とするところなので、特性を感じるところです。

「渋谷・ハロウィン」で生成した画像

「渋谷」を「原宿」にかえると……

 「原宿・ハロウィン」も試してみましたが、明らかに違うものが生成されます。和顔で怖いお子様が出てくる率が高い……。

「原宿・ハロウィン」で生成した画像

概念が存在しないこともある

 「秋葉原・ハロウィン」にすると、何故か全く秋葉原感はないので調査してみます。

「秋葉原・ハロウィン」で生成した画像

 こういう時は、単体で「秋葉原」を調べてみるといいと思います。

「秋葉原」 虚無ではないが、強いベクトルを感じられない。ヒット率は2/10ぐらいです

実は「年賀状」というキーワードが有効だった

 ここで、いったんStabilityAI社のプレスリリースを振り返ってみましょう。

「JSDXL」の使用例としては、日本市場向けのプロダクトデザイン、建築・インテリアデザイン、プロモーション資料・広告の制作、ゲーム・メタバース・映画制作においてのアイデア出しなどが考えられます。 また、「JSDXL」をさらに任意のドメインの画像にチューニングすることで、よりユーザーのニーズに即した画像生成が可能になります。

(中略)

学習データの取り扱いについて

Stability AI は、公開されているコンテンツの取り扱いに対するクリエイターのコントロールの向上に努めています。

「JSDXL」の学習データは、以下に該当するデータを除いたものを用いています。

  • クリエイターから要求があったオプトアウト
  • robots.txt や利用規約に基づいて禁止されたデータ

展望

Stability AI では、複数モダリティのモデルを積極的に研究開発・公開することで、日本の AI コミュニティのさらなる活性化に貢献していく予定です。

StabilityAI社のプレスリリースより引用

 なるほど、それでは日本市場向けのグラフィックデザインとして、時節柄「年賀状」を作ってみたいと思います。ちょうどこの連載では先月、「DALL-E3」を使った年賀状生成チャレンジを紹介しました。

 アスペクト比(size ratio)を1.46にするとはがきサイズになります。

「年賀状」というキーワードを入れるとグッと良くなる
「年賀状,辰」で生成した画像
「年賀状,ドラゴン」で生成した画像
アスペクト比(size ratio)を1.46にするとはがきサイズに
Prompt:「年賀状・ドラゴン・成人式の女性イラスト」NP:「低品質、最悪の品質、醜い」、cfg_scale:7.5 size ratio:1.46 seed:3871901532

 「年賀状」「屏風絵」を冒頭に入れて、NPも日本語で設定するのが有効なようです。

「年賀状,成人式,刀剣,踊る女子,飛行機がドラゴン,日本画,屏風絵」などなどで生成した画像
作例「ポップアート系の年賀状」
「年賀状,成人式,踊る女子,渋谷駅前,ドラゴン,日本画,イラスト」で生成した画像

 日本とは、日本画とは、和顔とは何なのか?を考える良いきっかけになります。

 商用利用も可能なモデルなので自由な画像を生成できるようになっていきましょう。年賀状シーズンにはまだ間に合う! みなさんもぜひ面白い作品やさらに有効なキーワードが発見できたらハッシュタグ #AI年賀状2024 でつぶやいてみてください。

 来年は、AI画像生成のギャラリーイベントなども開催されることが多くなると思います。今から作品の幅を広げておくと、損はないと思います!