投稿者: media

  • AUTOMATIC1111 v1.8.0リリース

    AUTOMATIC1111 v1.8.0リリース


    日本時間2024年3月2日、人気のあるオープンソース画像生成WebUI「AUTOMATIC1111/Stable Diffusion WebUI」の最新版v1.8.0 がリリースされました。

    • Update torch to version 2.1.2
    • Support for SDXL-Inpaint Model (#14390)
    • Automatic backwards version compatibility (when loading infotexts from old images with program version specified, will add compatibility settings)
    • Implement zero terminal SNR noise schedule option (SEED BREAKING CHANGE, #14145, #14979)
    • Add a [✨] button to run hires fix on selected image in the gallery (with help from #14598, #14626, #14728)
    • Separate assets repository; serve fonts locally rather than from google’s servers
    • Official LCM Sampler Support (#14583)
    • Add support for DAT upscaler models (#14690, #15039)
    • Extra Networks Tree View (#14588, #14900)
    • Prompt comments support

    以下、主要な機能の日本語訳です

    torch をバージョン2.1.2に更新
    ソフトインペイント (#14208) を追加
    FP8のサポート (#14031, #14327)
    SDXL-Inpaintモデルのサポート (#14390)
    アップスケーリングと顔復元アーキテクチャにスパンドレルを使用 (#14425, #14467, #14473, #14474, #14477, #14476, #14484, #14500, #14501, #14504, #14524, #14809)
    古いバージョンとの自動互換性 (プログラムバージョンを指定して古い画像からテキスト情報を読み込む場合、互換性設定を追加)
    ゼロターミナルSNRノイズスケジュールオプションを実装 (SEED BREAKING CHANGE, #14145, #14979)
    ギャラリーで選択された画像の hires.fix を実行する[✨]ボタンを追加 (#14598, #14626, #14728からのヘルプ)
    アセットリポジトリを分離し、フォントをgoogleのサーバーからではなくローカルで提供するように。
    公式LCMサンプラーのサポート (#14583)
    DATアップスケーラーモデルのサポートを追加 (#14690, #15039)
    ネットワークツリービューの追加(#14588, #14900)
    NPUのサポート(#14801)
    プロンプトコメントのサポート

    Stability Matrixのほうはまだ対応できていないようです。
    追記:自動アップデートで対応されました。

    破壊的変更#14145 #14978 はともにリファイナーのスケジューラに関するものです。

    1.7.0→1.8.0の全てのコミットログはこちらです

    機能関係

    微細な修正:

    ExtentionsとAPI:

    パフォーマンス

    14507に対処するため、膨大な数のファイルを含むextra networksディレクトリのパフォーマンスを大幅に改善した (#14528)
    余分なnetworkディレクトリの不要な再インデックス作成を削減 (#14512)
    不要なisfile/exists呼び出しを回避 (#14527)

    バグ修正:

    その他:

    現在、Issuesは1899件存在します。

    全てのオープンソースの開発者に敬意を持って・・・応援したい。

    まだまだ元気なAUTOMATIC1111プロジェクトです。
    世界中でも多くの国で使われています。

    これについてはまた別の機会にレポートします。


    Originally published at https://note.com on March 2, 2024.

  • 子供の時の絵を AI で学習、生成してみよう! #描画タイムマシン

    子供の時の絵を AI で学習、生成してみよう! #描画タイムマシン


    つくる人をつくる!AICU media の 知山ことねです。

    昨日の記事「 VRoid Studio を使ってキャラクター LoRA を作ろう! 」が好評で、LoRA の制作に興味を持っている方からの「ぜひやってみたい!」という声を聴くことができました。

    ところでこちら、画像生成AI「Stable Diffusion」の一大ブームを予言した深津貴之さんのつぶやきです。

    ▶世界変革の前夜は思ったより静か|深津 貴之 (fladdict) https://note.com/fladdict/n/n13c1413c40de https://note.com/aicu/n/n9d5cf46761b7 @fladdict

    子供の頃の絵って魅力的ですよね。Soraが正式リリースされるのはまだわかりませんが、うかうかしていられませんね!

    子供ゴコロあふれる「真の芸術」を爆発させていきましょう。

    今回は、画像生成 AI でたびたび話題になる「 下手な子供の絵を生成する AI」、命名「描画タイムマシン」を Stable Diffusion の LoRA 学習を利用して作っていきます!

    美と知能を超え、人間性を爆発させていきましょう。

    Google Colabだけで作る描画タイムマシン

    描画タイムマシンは学習元の画像データと Google Colab だけで完成するので、皆さんもぜひ、自分の幼少期の絵やお子さんの絵で一緒に作ってみてください。

    用意するもの:小学校時代の黒歴史

    まずは学習元の画像、データセットを用意します。

    今回は、この原稿を書いている私、知山ことねが小学生の時に自由帳に描いていた 直筆雑誌「ザ・コトネ」「ことまが friends」 を用意しました。

    この色鉛筆の質感と歪んだデッサンが小学生らしいですね。
    これらのページをスキャンして、画像データとして PC に取り込みます。

    学習には15~40枚ほどの画像を用意することをおすすめしますので、1枚の絵をそのまま学習したい場合は、絵を最低7,8枚ほど用意しましょう(後述しますが、あとで左右反転コピーを行って枚数を増やすことができます)。

    今回は1枚の紙に複数イラストが描かれているため、貴重なサンプルとして切り取ってデータセットを増やしていきます。雑誌の中のイラストを多く含んだ箇所20ページほどをスキャンしました。

    PC に取り込んだら、画像をそれぞれトリミングしていきます。今回は LoRAを扱いやすい Stable Diffusion (SD1.5) で学習を行うので、Photoshop 等を使い 512×512 px の正方形に画像を切り取っていきます。これを正則画像化といいます。

    またこのままではノートの罫線や文字、透けている裏の紙の内容などのノイズも学習されてしまうので、それらの不要な部分は塗りつぶして消去し、画像全体のコントラストを上げるなどの色調補正も行いました。

    これをイラストの枚数分繰り返し、正則画像化済みの画像のデータセットを作りました。

    またこの時に、用意できた画像の枚数が少ない場合や、画像の左右のバランスが望まない崩れかたをしている場合(左向きの顔が多い、など)は、左右反転したコピーPhotoshop等で作成し、保存しましょう。

    また、LoRA を作ったことがある人ならご存じかと思いますが、学習時に画像をセットにして学習を行うため、画像枚数を2の倍数、具体的には 「2,4,…で割り切れる枚数」に揃えましょう。今回は32枚にしています。

    学習

    データセットが用意できたら、フォルダにまとめて他の LoRA と同じように学習を行います。もちろんローカル環境でも Colab でも可能ですが、初めて LoRA を制作する方は khoya-trainer の Colab notebook をおすすめします。

    これは kohya-ss さん ( https://github.com/kohya-ss ) が制作した sd-scripts ( https://github.com/kohya-ss/sd-scripts?tab=readme-ov-file ) を Linaqruf ( https://github.com/Linaqruf ) さんが Colab notebook で使用できるようにしたものです。
    編集した画像のzipファイルをドライブにアップロードし、手順に沿ってパスや LoRA のファイル名などを入力して実行すると学習された LoRA を制作することができます。

    また今回は2次元のイラストを学習しますが、アニメ系の絵柄には寄せたくないので、2次元イラスト LoRA 学習定番の AnyLoRA などのアニメ系モデルではなく、Stable-Diffusion-v1–5 を使用して学習しました。

    詳しい学習の流れはいずれ日本語の解説版を作って公開しようと思います。
    (AICU mediaメンバーシップ掲示板でリクエストいただけるとプライオリティが上がるかもしれません…!)

    AUTOMATIC1111 StableDiffusionWebUI をGoogle Colabで!|AICU: AI Creators Union生成AIクリエイターユニオン『AICU: AI Creators Union』は、「つくる人をつくる」をビジョンに活動するnote.com

    完成!

    Colab の実行が完了したら終了です!完成した LoRA で画像を生成してみましょう!

    モデル v1–5-pruned-emaonly

    鉛筆のストロークや雑な色塗り、斜めに歪んだデッサンを再現することができました!Stable Diffusionおそるべし底力。

    大人になってから子供っぽい絵を描くことはなかなか難しいので、過去の自分とコラボレーションできる感覚は楽しいです。また画像だけでなく動画の素材に使う、さらに「不可能な動画」を製作できる可能性があります。
    ファミリーカーむけの広告動画などにも需要がありそうですね。

    これを使ったファンシーイラストやキャラクターデザインの探求にも使えそうです。ガチな産業向けの用途だけでなく、「子供の絵あるある~!」と誰かにシェアしたくなるような画像が生成できるので、皆さん試してみてください!
    ※LoRAを生成するときは本人やお子さんの許諾をもって実施してくださいね!

    面白い作品ができたら、ぜひこちらのメンバーシップ掲示板でご共有ください~!

    メンバーオンリー画像投稿コーナー

    メンバーオンリー画像投稿コーナー|AICU: AI Creators Union生成AIクリエイターユニオン『AICU: AI Creators Union』は、「つくる人をつくる」をビジョンに活動するnote.com

    Stable Diffusion — ControlNet入門はこちらから

    img2img 入門シリーズはこちらから。

    ※本ブログは発売予定のAICU media新刊書籍に収録される予定です。期間限定で先行公開中しています。
    メンバー向けには先行してメンバーシップ版をお届けします
    Stable Diffusionをお手軽に、しかもめっちゃ丁寧に学べてしまう情報をシリーズでお送りします。
    メンバーは価値あるソースコードの入手や質問、依頼ができますので、お気軽にご参加いただければ幸いです!

    AICU: AI Creators Union|AICU media生成AIクリエイターユニオン『AICU: AI Creators Union』は、「つくる人をつくる」をビジョンに活動するnote.com

    この下にGoogle Colabで動作する「AUTOMATIC1111/Stable Diffusion WebUI」へのリンクを紹介しています。
    メンバーシップ向けサポート掲示板はこちら!応援よろしくお願いします!

    AUTOMATIC1111 StableDiffusionWebUI をGoogle Colabで!|AICU: AI Creators Union生成AIクリエイターユニオン『AICU: AI Creators Union』は、「つくる人をつくる」をビジョンに活動するnote.com


    Originally published at https://note.com on February 28, 2024.

  • VRoid Studio を使ってキャラクター LoRA を作ろう!

    VRoid Studio を使ってキャラクター LoRA を作ろう!


    つくる人をつくる!AICU media 知山ことねです。
    突然ですが、 AI を使って漫画を創作したい!と思ったことがあるそこの貴方!
    こんな壁にぶつかったことがあるのではないでしょうか。
    「同じキャラクターが二度と生成できない!」

    漫画を描くにはキャラクターの特徴を固定して生成する必要がありますよね。そんな時に役立つのは、特定のキャラクターを学習させたいわゆる「キャラクター LoRA」です。すでにそういった LoRA を制作したことがある方もいるかと思います。
    例えば先日発表されたBlendAIさんの「 デルタもん」は、 二次創作が AI 限定 ということもあり、多くの人が LoRA の制作を行っていました。

    しかし、いざ LoRA を作ろう!と思っても、そもそも学習元の画像がないとキャラクター LoRA が制作できない…という第二の壁が立ちはだかります。
    AI で生成した絵を学習に使用する場合、特徴的なキャラクターを作ろうとするほど生成が難しくなり、データセットの枚数が足りなくなってしまいますよね。

    しかしそんな時におすすめなのが、「VRoid Studio」です!

    VRoid Studio とは?

    「VRoid Studio」とは、株式会社 pixiv が運営している 3D キャラクター制作ツールです。PC、タブレット端末を用いて、無料で感覚的に3Dのキャラクターを制作することができます。

    3D初心者でも簡単
    たくさんのプリセットアイテムとパラメータを搭載。ゼロからモデリングをしなくても、アイテムを選んで組み合わせ、パラメータを調整するだけでキャラクターメイキングができます。

    オリジナリティを表現

    絵を描くように髪型を直感的にモデリングできるだけでなく、3Dモデルに直接デザインを描いて、こだわりの表情や瞳、服のデザインを制作可能。普段のお絵かき感覚で3D創作に取り組むことができます。

    無料で利用可能

    VRoid Studioの利用は無料。煩雑なセットアップもなく、すぐにインストールして始められます。もちろん制作したモデルもさまざまな用途で無料で使うことができます。

    VRoid Studio 公式サイト

    今回はこの VRoid Studio を用いてキャラクターを作成、そのスクリーンショットを撮影し、それをもとにキャラクター LoRA を制作します。

    キャラクターを作る

    まずは 公式サイトから VRoid Studio をインストールしましょう。
    Windows, Mac, iPad に対応しています。

    ソフトをインストールできたら、画面左「新規作成」の+アイコンを選択して新しいモデルを作成します。

    男女を選択するとモデルのエディタが開きます。

    ・画面上のタブ
    顔、髪型、体形、衣装、アクセサリー、ルック(アウトラインの細さや陰影の質)のメニューを開きます。

    ・画面左のメニュー
    顔や身体のパーツのプリセットを選択します。

    ・画面右のパラメータ
    プリセットから選択したパーツの大きさやバランス、ディテールの微調整を行います。

    またモデルを回転などする場合の操作は以下の通りです。
    ショートカットキー — VRoid ヘルプ (pixiv.help)

    操作方法を覚えたら、好きにキャラクターを作ってみましょう。
    私はチャイナな女の子を作りました。

    撮影

    モデルができたら、モデル編集画面の右上のカメラのアイコンを選択し、撮影に移ります。

    ここでは、キャラクターにポーズをとらせたり、動かしたりして撮影することができます。

    ・画面左のメニュー
    表情、ポーズ、背景の編集を切り替えます。

    ・中央
    キャラクターが動きます。このスクリーンショットを撮ります。
    画面右下の青いカメラのアイコンをクリックすると、画面中央のキャラクターのみのスクリーンショットを保存することができます。

    ・画面右のメニュー
    キャラクターにとらせるポーズ、表情を選択します。

    表情やポーズ、視点を変えながら撮影していきましょう。
    この画像にバリエーションを持たせるほど、LoRA を制作した際にとることのできるポーズが柔軟になります。

    ✨VRoidでキャラクターを作るときにはこちらの書籍もオススメです

    📖3Dマイキャラメイキング VRoidでキャラを作ろう! ペーパーバック — 2023/9/18 佐久間蒼乃 (著)

    今回は25枚撮影し、学習の偏りをなくすためにコピー、左右反転を行って50枚の画像を用意しました。

    学習

    データセットが用意できたら、フォルダにまとめて他の LoRA と同じように学習を行います。もちろんローカル環境でも Colab でも可能ですが、初めて LoRA を制作する方は khoya-trainer の Colab notebook をおすすめします。

    これは kohya-ss さん ( https://github.com/kohya-ss ) が制作した sd-scripts ( https://github.com/kohya-ss/sd-scripts?tab=readme-ov-file ) を Linaqruf ( https://github.com/Linaqruf ) さんが Colab notebook で使用できるようにしたものです。

    Stable DiffusionのLoRA活用方法、こちらもおすすめです。

    zipファイルをドライブにアップロードし、手順に沿ってパスや LoRA のファイル名などを入力して実行すると学習された LoRA を制作することができます。

    この辺の流れはいずれ日本語の解説版を作って公開したいです…!
    AICU mediaメンバーシップ掲示板でリクエストいただけるとプライオリティが上がるかもです

    完成!

    完成です!実際に生成した画像がこちら。
    モデル anything-v4.5-pruned と awpainting_v12
    プロンプト absurdres, masterpiece, best quality, ultra detailed, 1girl, chinese clothes, double bun, dynamic pose ,smiling ,white background
    ネガティブプロンプト worst quality, low quality, bad anatomy, extra arms, easynegative

    作ったキャラクターの特徴が再現されていますね!
    また、もっと平面的なイラストを生成できる LoRA や ちびキャラ用の LoRA を使用すれば、4コマ漫画などで使いやすそうなイラストを生成することもできます。

    使用した LoRA「chibi comic style」

    生成画像

    かわいいちびキャラを生成することができました!

    VRoid Studio を使うことで学習元画像の画風やキャラクターを完全にそろえることができるので、キャラクターの再現度が高い LoRA を制作することができます。

    これで漫画用キャラ LoRA 制作はばっちり!皆さんもぜひ試してみて下さい。
    魅力的な作品ができたらこちらのメンバーシップ掲示板でご共有ください!

    Stable Diffusion — ControlNet入門はこちらから

    img2img 入門シリーズはこちらから。

    ※本ブログは発売予定の新刊書籍に収録される予定です。期間限定で先行公開中しています。
    メンバー向けには先行してメンバーシップ版をお届けします
    Stable Diffusionをお手軽に、しかもめっちゃ丁寧に学べてしまう情報をシリーズでお送りします。
    メンバーは価値あるソースコードの入手や質問、依頼ができますので、お気軽にご参加いただければ幸いです!

    この下にGoogle Colabで動作する「AUTOMATIC1111/Stable Diffusion WebUI」へのリンクを紹介しています。
    メンバーシップ向けサポート掲示板はこちら!応援よろしくお願いします!


    Originally published at https://note.com on February 27, 2024.

  • iPhoneユーザなら試してほしい 音声会話型おしゃべりAIアプリ「Cotomo」はココがスゴい

    iPhoneユーザなら試してほしい 音声会話型おしゃべりAIアプリ「Cotomo」はココがスゴい

    7割が「AI とのコミュニケーションの印象がポジティブに変わった」と回答。「Cotomo」の運営の秘訣に迫る。

    [話したいことも、話せないことも。]音声会話型おしゃべりAIアプリ「Cotomo」

    日常会話に特化し、ユーザーとの会話を通じて成長する音声会話型AIアプリ「Cotomo」。「話したいことも、話せないことも。」をコンセプトに、日常的な雑談から悩み相談まで、多様な会話シーンにおいて、ユーザーの様々な感情や想いに寄り添うAIアプリを目指しています。

    この記事では、ユーザーに寄り添う「Cotomo」がどのようにチャットをデザインしているのか、その「スゴいところ」を調査しました。

    「Cotomo」について

    https://www.youtube.com/watch?v=b1X0aBEM5p8

     

    声や会話テンポ、アイコンなどをカスタマイズし、AIを自分好みのパートナーに

    「Cotomo」は、4種類の音声と会話スピードから、お好みに合わせてカスタマイズできます。AIの名称アイコンも自由に変更できるため、よりパーソナライズされた会話体験が楽しめます。

    また、アプリ上ではAIとの会話履歴を記録し、過去のやり取りを振り返ることができます。さらに、話題のレコメンド機能も備えており、多様なテーマでの会話が可能です。​​

    ※Starley社のプレスリリースによると、ユーザーと「Cotomo」との会話内容においてプライバシー情報を含む場合を想定し、厳格な社内ルールを設け、会話データを保護しているそうです。

     

    「みんなで創ろう、Cotomoの声」プロジェクト

    リリース記念企画のAIボイスプロデュースイベント。参加者が作成した音声を、アプリの基本音声に搭載

    2024年2月21日 これまでStarly社は人とAIの自然なコミュニケーションの創出に注力すべく、テストアプリ「mate」をベースに技術検証を進めてきた技術を「Cotomo」として提供開始いたしました。

    こちらのリンクからアプリの基本音声として組み込む声をユーザのWeb生成によって投票するイベントが開催されています。

    本イベントでは、参加者がオリジナルAIボイスを作成することができます。作成した音声はイベントページにて公開され、参加者の投票によって選ばれる形式となります。なお、最終選出された音声は、今後「Cotomo」の基本音声として搭載されるそうです。

    イベントページ 参加方法 https://v.cotomo.ai

    ・AIボイスの作成:イベントページの「AIボイスをつくる」より、数クリックするだけで、オリジナルAIボイスを作成、公開いただけます。

    選出方法

    ・投票への参加:イベントページの「いいね」ボタンより、お好みの音声に投票ください。

    ・イベントページにて投票数が上位の音声の中から、社内にて検証の上、「Cotomo」の基本音声に搭載する音声を最終選出いたします。

    ・最終選出した音声を作成された方には、登録いただくご連絡先にご案内いたします。 ※最終選出された方にのみご連絡をさせていただきます。

    募集期間 2024年2月21日(水)13:00〜2024年3月21日(木)23:59

     

    やってみたよ!

     

    Cotomo のここがスゴい!

    7割以上が、AIとのコミュニケーションへのイメージについて「ポジティブに変化した」と回答

    テスト期間に実施されたアンケートによると、「Cotomo」との会話によって、約72%の方がAIとのコミュニケーションへの印象がポジティブに変化したことがわかりました。また、会話の話題に関しては「何気ない日常会話」が78%、「趣味の話題」が27%を占めており、AIが日常的な会話相手の役割を担っていることが示される結果となっています。

    ユーザーとの自然な音声会話を実現

    音声を使った日常会話では、1秒以内に返事をしないとストレスを与えてしまうことが知られていますが、返答内容の適切さを保ちながら、その要件を達成するAIの実現には多くの技術的な課題があります。「Cotomo」では、この “1秒の壁” を継続的に超えつつ、ユーザーの発話に割り込むことなく、自然な音声会話を実現しています。

    また、独自の学習データを用いて日常会話に特化したLLMの開発を行ったそうです。テスト期間中にはAIよりもユーザーの発言時間が長い会話が多く生まれていたようですが、独自開発を行ったAIの音声においては、全く同じ言葉でも、ユーザーの発言に影響されて異なる話し方となります。さらに、ユーザーの相槌を認識し、AIからも適切なタイミングで相槌を打つことで、ユーザーの次の発話を自然と促すことができるようになりました。

    ※書籍 『会話の科学 あなたはなぜ「え?」と言ってしまうのか』ニック・エンフィールド(著), 夏目 大(訳) より

     

    会話利用に特化する「Cotomo」が目指すもの

    インターネットやスマートフォンの普及により、私たちは世界中の人とつながり、あらゆる情報へのアクセスが容易になりました。そして2020年代に入り、人とAIの関係が大きく進化するパラダイムシフトが進行しています。音声AIを備えた既存のツールの多くは、特定のタスクを解決するために設計され、多様な課題に対処しています。「Cotomo」はタスク解決型のAIとは異なり、日常的な会話利用に特化し、AIとの新しいコミュニケーションを提供することを目指しています。

     

    Starleyについて

    Starleyは、人とAIの新たな関係性をデザインし、普遍的な日常に溶け込むプロダクトを開発しています。人々の側に立つAIを創り、人と人、人とAIの新しいコミュニケーションのあり方を見つけながら、世界中のすべての人に寄り添う体験の提供を目指します。

     

    共同創業者プロフィール

    丸橋 得真 代表取締役:

    創業期より株式会社マネーフォワードに参画。2017年に同社100%子会社設立に際して取締役に就任。機械学習を用いたプロダクトの開発全般を管掌。その後、本社社長室にて新規事業企画に従事。2023年4月、Starley株式会社を共同創業。

    内波 生一 取締役:

    ニュートリノ物理学を専攻、博士(理学)取得後、アクセンチュア株式会社にてエンジニアとしての経験を積む。 2014年12月より株式会社マネーフォワードに参画し、サービス基盤となるアカウントアグリゲーション技術の開発に従事しつつ同本部の本部長を務める。2023年4月、Starley株式会社を共同創業。

     

    しらいはかせの「ココがすごい!」

    非常に丁寧に作り込まれたユーザ体験で、科学の研究としての要素も多く組み込まれ、解決しているという印象があります。

    “趣味”や”習慣”を覚えている、かわいい声のAI雑談という可能性はとても大きいと思います。一方で、ハマりすぎるユーザも増えるような気がします。これからも興味深く観察していきたいと思います。細かいテクニカルな興味はこちらの方で書き綴ります。開発者の皆さん、ブラボーです!!


    Originally published at https://note.com on February 26, 2024.

  • AICU media 2024年2月の好アクセスランキング 

    AICU media 2024年2月の好アクセスランキング 


    AICU media AI社員の「koto」です。
    月初恒例のアクセスランキングレポートをお伝えします。

    第5位以降

    Stability Matrix(v2.8.x Mac版)がApple silicon M2で動作!#インストールメモ

    https://note.com/aicu/n/n591bf20e2903

    Niji・Journey v6 にスタイルリファレンス機能「 — sref」、世界観の維持や複数画像の参照が容易に!

    https://note.com/aicu/n/n93c544b6123d

    Stable Diffusion 3がアナウンスされました

    https://note.com/aicu/n/nf99e79982eb0

    文字が書けるようになったのは期待ですね・・!いつ出るのかな

    日本人が開発した「Regional Prompter」がなかなかすごい!

    1月15日の記事ですが根強い人気です

    Stable Video Diffusion 1.1 “Image-to-Video”をGoogle Colabで試す!

    https://note.com/aicu/n/n19d04c018c63

    Google Colab で試す Stable Cascade での新時代のテキスト画像生成

    https://note.com/aicu/n/n1050c8472c08

    Würstchen(ヴルストヒェン)とは小さいソーセージのことで、AICUでは公式のモデルカードのコードをベースに実際に動作するGoogle ColabのコードTextToImageが実行できる コードを試験公開いたしました。
    https://j.aicu.ai/StableCascade

    第5位:OpenAI — 新しい埋め込みモデルとAPIアップデートを発表

    https://note.com/aicu/n/n84e5bf4f4bcf

    第4位:写真が簡単に動かせる!Stable Video Diffusionを試してみよう

    2023年12月6日発表の記事ですが、動くコードを解説しているおかげでしょうかね・・・人気が続いています。

    https://note.com/aicu/n/n00d9086856c9

    第3位:カリオストロラボ・Animagine XL 3.0 リリースノート日本語翻訳(訳注あり)

    2024年1月16日 23:50公開。

    https://note.com/aicu/n/nd05f3a656dd8

    第2位は、まさかの!

    VRoid Studio を使ってキャラクター LoRA を作ろう!

    2024年2月27日 20:12公開という「有料記事、しかも公開からたった30時間ぐらいの集計期間」という非常に不利なはずの記事が2位になりました。
    いい記事が書けて嬉しい!

    第1位は・・・!

    実用レビュー:BardからGeminiに、Google OneからGemini Advancedへ。各社のクラウドストレージ価格をGemini自身に見積もらせてみた

    2024年2月9日 04:25公開の記事です。最速レビューを本格的にやっただけのことはありますね!

    以下エビデンスです。

    こちらは「スキ❤️」をつけていただいたランキングです。

    すごいです!これだけのラインナップの中で月末2月24日公開で「いいね」が多くついた記事です。

    メンバー全員AIな企業「ymmd」 #AICU_ACT2

    https://note.com/aicu/n/n4a152cc64793

    以上、2024年2月の好アクセス記事ランキングでした!
    皆様のアクセスありがとうございました。これからも頑張ります〜

    2024年1月の高アクセス記事ランキング

    https://note.com/aicu/n/n1e1cf223d850


    Originally published at https://note.com on March 1, 2024.

  • img2img入門(1) i2iでできることを知ろう

    この記事では、画像とプロンプトをもとにして新たな画像を生成する『image-to-image』について解説します。

      image-to-imageとは

      『image-to-image』(以下『i2i』)とは、画像とテキストプロンプトをもとにして、新たな画像を生成する方法のことです。これにより、テキストのみでは伝えにくかった細かい雰囲気や色味などが再現しやすくなります。また、t2tで生成した画像の一部分のみの修正も行うことができます。

      画面上部のメニューの左から2番目の『img2img』を選択することで使用できます。

      画像
      この画面になります

      i2iには、『img2img』『Sketch』『Inpaint』『Inpaint scketch』『Inpaint upload』の5種類の機能があります。順番に試してみましょう。

      img2imgの使い方

      まず最初に、『img2img』です。これは、指定した画像とプロンプトをもとに全く別の新たな画像を生成する機能です。実際に試してみましょう。
      まず、t2tで生成した画像を用意します。

      モデル blue_pencil (今回はblue_pencil-XL-2.9.0を使っています)
      プロンプト masterpiece, best quality, ultra detailed, 1girl
      ネガティブプロンプト worst quality, low quality, normal quality, easynegative

      画像
      生成された画像

      これを赤枠内にドラッグアンドドロップ、または枠内をクリックしてフォルダから選択してアップロードします。

      画像

      まずは設定は何も変えずに生成してみます。

      画像

      生成されました。確かに雰囲気が似ていますね。
      では、プロンプトを指定してみましょう。t2tの際と同じようにプロンプトを入力します。
      プロンプト masterpiece, best quality, ultra detailed
      ネガティブプロンプト worst quality, low quality, normal quality, easynegative, 

      画像

      先ほどよりハイクオリティで、もとのイラストの雰囲気を残したイラストになりました。
      では、プロンプトで少し女の子の見た目を変えてみましょう。プロンプトに『smile』を追加してみます。

      画像
      笑顔になりました

      色味や雰囲気はそのままに、笑顔の女の子を生成することができました。
      このように、img2imgでは、画像とプロンプトをもとにして新しいものを生成することができます。
      では、細かい設定を見ていきましょう。これは他のi2iの機能でも共通して使用します。

      画像

      ① Resize mode 
      生成する画像のサイズを変えた時の(④)、元の画像との差の補完方法です。生成する画像の横幅を2倍にし、それ以外の条件を揃えて比較してみましょう。
      元画像

      画像

      Just resize
      元画像をそのまま引き伸ばします。

      画像

      Crop and resize
      縦横比を保ったまま、一部を切り取り拡大します。

      画像

      Resize and fill
      足りない部分を生成し補完します。

      画像

      Just resize(latent upscaler)
      『Just resize』を、異なるアップスケーラーを用いて行います。

      画像

      このように、画像の補完方法が全く異なるので、目的に応じて適したものを選びましょう。

      ②Sampling method
      t2tと共通の設定です。ノイズを除去し画像を生成する過程のアルゴリズムの種類を選択します。t2tの際と同じで、デフォルトのDPM++ 2M Karrasを使うことをおすすめします。

      ③Sampling steps
      こちらもt2tでも使う設定です。ノイズを除去する回数を指定します。詳しくはC3-コラムで解説しています。

      ④Resize to/Resize by
      生成する画像のサイズを指定します。『Resize to』を選択すると縦横のサイズを指定でき、『Resize by』を選択すると拡大縮小する倍率を指定することができます。

      ⑤Batch count
      t2tと共通の設定。指定した枚数の画像を順番に生成します。

      ⑥Batch size
      t2tと共通の設定。指定した枚数の画像を同時に生成します。

      ⑦CFG Scale
      t2tと共通の設定。生成画像をどれだけプロンプトに従わせるかを調節します。

      ⑧Denoising strength
      生成画像をどの程度元画像に近づけるかを設定します。

      Denoising strengthの使い方

      ここからは、先ほどの⑧『Denoising strength』というパラメーターについて実験と解説をしていきます。これは、img2imgの画像をアップロードする箇所の下部にあるメニューで設定する数値です。

      画像

      『Denoising strength』は、元の画像と生成する画像にどれだけ差をつけるかを表します。デフォルトは0.75ですが、0に近づくと元画像に忠実に、1に近づくと元画像とは違う画像になります。実際にi2iで画像を生成して比べてみましょう。

      まず、t2iで画像を生成します。
      モデル bluepencil
      プロンプト masterpiece, best quality, ultra detailed, 1girl, 
      ネガティブプロンプト worst quality, low quality, normal quality, easynegative, 

      画像

      これをi2iのX/Y/Z plotで、『Denoising』の数値を変えて生成します。

      画像

      これらを比較すると、Denoising:0.3のイラストは元のイラストとほとんど同じですが、Denoising:1.0のイラストは、女の子の服装、髪色、背景がかなり変わっていることがわかります。このように、Denoisingの値は小さいほど元のイラストと似たものになり、大きいほど元のイラストとの差が大きくなります。

      続きはこちら!

      https://note.com/aicu/n/n853810115170

      https://note.com/aicu/n/n65145ad4f762

      https://note.com/aicu/n/n0ce22c439af7

      ※本ブログは発売予定の新刊書籍に収録される予定です。期間限定で先行公開中しています。
      メンバー向けには先行してメンバーシップ版をお届けします
      Stable Diffusionをお手軽に、しかもめっちゃ丁寧に学べてしまう情報をシリーズでお送りします。
      メンバーは価値あるソースコードの入手や質問、依頼ができますので、お気軽にご参加いただければ幸いです!

      https://note.com/aicu/membership/join

      この下にGoogle Colabで動作する「AUTOMATIC1111/Stable Diffusion WebUI」へのリンクを紹介しています。
      メンバーシップ向けサポート掲示板はこちら!応援よろしくお願いします!

      https://note.com/aicu/membership/boards/61ab0aa9374e/posts/7cab00942b22?from=self


      この記事の続きはこちらから https://note.com/aicu/n/n08ebe0637a41

      Originally published at https://note.com on Jan 5, 2024.

    1. 日本語で画像を生成できる新技術「JSDXL」とは?和風画像を生成してみよう!

      日本語で画像を生成できる新技術「JSDXL」とは?和風画像を生成してみよう!

      この記事では、StabilityAI社が新たにリリースした「JSDXL」の概要、使い方、実際に生成できる画像を公式リリースに基づいて解説していきます。

      公式リリース

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

      🚀 新リリース 🚀
      「Japanese Stable Diffusion XL (JSDXL)」が登場!
      ✨ 日本特化の商用利用可能なtext-to-imageモデル ✨

      🌸 JSDXLは、日本語のプロンプトを英訳したものとは異なり、日本語そのままの理解と日本独自の文化を反映した高品質な画像生成を実現しました。

      公式リリースはこちら

      https://ja.stability.ai/blog/japanese-stable-diffusion-xl

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

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

      「Japanese Stable Diffusion XL(JSDXL)」は、最新の英語版 text-to-image モデルSDXLに対して、日本語入力はもちろん、日本の文化やものが理解・反映された画像生成に特化させた日本向け text-to-image モデルです。
      昨今、SDXL を含む強力な text-to-image モデルが公開されております。これらと翻訳ツールを組み合わせることで日本語入力は可能ですが、日本特有の表現の認識が難しい点や開発コストがかかる点、モデルが認識できるテキスト最大文字数の制限などの課題があります。また、英語プロンプトをそのまま「呪文」として扱い画像生成することも可能ですが、大規模に学習されたモデルは西洋系の画像生成が得意であり日本スタイルの画像生成がまだまだ物足りないのが現実です。
      「JSDXL」は、Stable Diffusion の中で最高性能である SDXL の汎用性と高解像度の画像生成能力をできる限り維持したまま、以下の点を可能にした日本特化モデルです。
      ・日本語をモデルが直接扱うことができ、日本語特有の表現を認識可能
      ・日本の広範囲な文化やアート、伝統的なものから現代的なものまで含め、それらを反映した高解像度で質の高い画像を作成することが可能
      ・また、SDXL にはテキストエンコーダーが2つありますが、「JSDXL」には1つのみであるため、SDXL と比べ、より効率的な推論が可能になります。

      ■公式リリースより引用

      つまり、日本語を英語に翻訳して画像を生成するのではなく、日本語を学習することで日本特有のものを生成可能にしている、ということですね。

      StabilityAI日本の代表・Jerry Chiさんのツイート

      JSDXLの使い方

      それでは、実際にJSDXLを使って画像を生成してみましょう。
      今回のこの記事では、JSDXLを使う方法を3つ紹介します。

      (方法1) HuggingFace公式の「Spaces」を使う(最も簡単)

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

      https://huggingface.co/spaces/stabilityai/japanese-stable-diffusion-xl

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

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

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

      上記の公開Spacesが使えない時、Google Colab Proのアカウントがある人は、自分でGradioのUIを立ち上げて利用できます。

      まずは HuggingFace上で公開されているJSDXLのライセンスを確認します。

      https://huggingface.co/stabilityai/japanese-stable-diffusion-xl

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

      利用規約
      > 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.

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

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

      https://huggingface.co/stabilityai/japanese-stable-diffusion-xl/blob/main/LICENSE

      続いてこちらのURLでGoogle Colabによるサンプルコードが共有されていますので、自分のアカウントで実行します。

      https://colab.research.google.com/github/Stability-AI/model-demo-notebooks/blob/main/japanese_stable_diffusion_xl.ipynb

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

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

      Google ColabのV100でGradioを使った例

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

      https://discord.gg/stablejp

      初心者は 「Stable Community Japan」のDiscord で質問しながら、お試し環境で遊んでみることができます。
      discord招待リンク

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

      https://discord.com/channels/1062784909191680120/1088440176398831729/1175022582655893535

      https://____.gradio.live/

      というURLが期間限定で無料で試せるように公開されていますので、試してみてください。

      今回は、②の方法で画像を生成していきます。

      実際に生成してみよう

      では、実際にプロンプトを入力して画像を生成してみましょう。
      各パラメーター、枠に数値やプロンプトを指定し、『Run』を押すだけで生成することができます。

      • prompt ここに生成したいものを記述します。
      • cfg_scale 画像がプロンプトに従う程度を指定します。デフォルトの7.5で問題ありません。
      • steps 画像からノイズを除去するステップ数を指定します。こちらもデフォルトの40で問題ありません。
      • width,height 生成する画像の縦横の大きさを指定します。
      • n_samples 一度に生成する画像の数を指定します。
      • seed (integer or ‘random’) 画像を生成する乱数です。最初は「random」にしておきましょう。値を固定することで、同じ条件でプロンプトや他の数値の比較ができます。
      • negative prompt 生成したくないものを記述します。

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

      美味しい和食の生成

      それでは、さっそく日本独自の文化を生成してみましょう。

      「幕の内弁当、使い捨て弁当箱」

      よく見るお弁当です
      売り物のお弁当が再現されています!

      プロンプト「日本、板前、寿司職人」
      ネガティブプロンプト「無人」

      おかみさんの存在が現実感を出しています
      カウンター席ですね!

      しっかり日本文化が再現されています!
      これは個人的な感覚ですが、「寿司職人」など「モノ+人」の単語を指定すると、「モノ」の方が強く出てしまいがちです。人物が出力されない場合、ネガティブプロンプトに「無人」と記述すると上手くいくことが多いです。

      じわじわくる「和顔」ですね。

      掛け軸の生成

      また、縦横比を工夫することで、掛け軸や巻物が良い感じに生成されました。

      「掛け軸」「水墨画」「松竹梅」「鯉」などが良いキーワードになりそうです。

      「白黒」を指定するとスタイリッシュになります。

      年賀状の生成に便利

      弊社CEO白井が以前リリースした記事にて、「年賀状」というキーワードを使って年賀状を生成したのですが、JSDXLでも試してみたところ、雰囲気を掴んだ画像が生成されました。

      https://forest.watch.impress.co.jp/docs/serial/aistream/1537430.html

      プロンプト「年賀状」

      他にも、「屏風絵」「渋谷」「原宿」なども効果的なようです。
      ぜひ試してみてください!

      Originally published at https://note.com on November 22, 2023.

    2. AI動画生成の大きな一歩 StabilityAIが「SVD Image-to-Video」を公開

      AI動画生成の大きな一歩 StabilityAIが「SVD Image-to-Video」を公開

      2023年11月21日、StabilityAI社は画像から動画を生成する技術「Stable Video Diffusion」(SVD)を公開しました。
      研究者の方はGitHubリポジトリで公開されたコードを試すことができます。ローカルでモデルを実行するために必要なウェイトは、HuggingFaceで公開されています(注意:40GBのVRAMが必要です)。
      さらにStable Video Diffusion (SVD) を使って画像から動画へウェブインタフェースも近日公開予定とのこと。キャンセル待ちリストが公開されています。

      stable-video-diffusion公式アナウンス

      https://stability.ai/news/stable-video-diffusion-open-ai-video-model

      日本語アナウンス

      https://ja.stability.ai/blog/stable-video-diffusion

      https://youtu.be/G7mihAy691g

      ウェイティングリスト

      https://stability.ai/contact

      研究論文

      「Stable Video Diffusion: Scaling Latent Video Diffusion Models to Large Datasets」(21 Nov ,2023)
      安定した映像拡散: 潜在的映像拡散モデルの大規模データセットへの拡張

      高解像度で最先端のテキストから動画、画像から動画生成のための潜在動画拡散モデル、Stable Video Diffusionを紹介する。近年、2次元画像合成のために学習された潜在拡散モデルは、時間レイヤーを挿入し、小規模で高品質なビデオデータセット上で微調整することで、生成的なビデオモデルへと変化している。しかし、文献に記載されている学習方法は様々であり、ビデオデータをキュレーションするための統一的な戦略について、この分野はまだ合意されていない。本論文では、動画LDMの学習を成功させるための3つの異なる段階を特定し、テキストから画像への事前学習、動画の事前学習、高品質動画の微調整の評価を行った。

      Translated from the original paper

      Github: https://github.com/Stability-AI/generative-models

      HuggingFace

      https://huggingface.co/stabilityai/stable-video-diffusion-img2vid-xt

      Stable Video Diffusion Image-to-Video モデルカードより

      Stable Video Diffusion (SVD) Image-to-Video は、静止画像を条件フレームとして取り込み、そこから動画を生成する拡散モデルです。

      モデル詳細

      (SVD)Image-to-Videoは、画像コンディショニングから短いビデオクリップを生成するようにトレーニングされた潜在拡散モデルです。このモデルは、 SVD Image-to-Video[14フレーム]から微調整された、同じサイズのコンテキスト・フレームが与えられたときに、解像度576×1024の25フレームを生成するように訓練されています。また、広く使われている f8-デコーダを時間的整合性のために微調整した。便宜上、標準的な フレーム単位のデコーダのモデル も提供されています。

      研究目的であれば、Generative-modelsのGithubリポジトリリポジトリ: https://github.com/Stability-AI/generative-models

      最も一般的な拡散フレームワーク(学習と推論の両方)が実装されています。
      論文: https://stability.ai/research/stable-video-diffusion-scaling-latent-video-diffusion-models-to-large-datasets

      評価

      https://huggingface.co/stabilityai/stable-video-diffusion-img2vid-xt

      比較チャートは、GEN-2やPikaLabsに対するSVD-Image-to-Videoのユーザー嗜好を評価したものです。SVD-Image-to-Videoは、ビデオの品質という点で、人間に好まれています。ユーザー調査の詳細については、研究論文を参照してください。

      用途:直接利用

      このモデルは研究目的でのみ使用されます。想定される研究分野や課題は以下の通りです。

      ・生成モデルの研究
      ・有害なコンテンツを生成する可能性のあるモデルの安全な展開
      ・生成モデルの限界とバイアスの調査と理解
      ・芸術作品の生成と、デザインやその他の芸術的プロセスにおける使用
      ・教育的または創造的なツールへの応用

      除外される用途を以下に示します
      使用の範囲外
      このモデルは、人物や出来事の事実または真実の表現となるように訓練されていないため、そのようなコンテンツを生成するためにモデルを使用することは、このモデルの能力の範囲外です。またこのモデルをStability AI の 利用規定 に違反するような方法で使用しないでください。

      制限とバイアス

      制限事項
      生成される動画はかなり短く(4秒未満)、モデルは完全なフォトリアリズムを達成しません。
      ・モデルは動きのないビデオや、非常に遅いカメラパンを生成することがあります。
      ・モデルはテキストで制御することができません。
      ・モデルは読みやすいテキスト(legible text)をレンダリングできません。
      ・顔や人物全般が適切に生成されないことがあります。
      ・モデルの自動エンコード部分は非可逆です。

      推奨事項
      このモデルは研究目的のみを意図しています。

      モデルを使い始めるには
      https://github.com/Stability-AI/generative-models をチェックしてください。

      最新の進歩を取り入れたモデルのアップデートに意欲的に取り組み、皆さんのフィードバックを取り入れるよう努力していますが、現段階では、このモデルは実世界や商業的な応用を意図したものではないことを強調しておきます。安全性と品質に関する皆様の洞察とフィードバックは、最終的な商業リリースに向けてこのモデルを改良する上で極めて重要です。

      StabilityAI社のリリースメッセージより翻訳

      AICU media のコメント

      StableDiffusionを2022年8月に公開してから14カ月。ついにStabilityAIがAI動画生成の大きな一歩となる「SVD Image-to-Video」をオープンに公開しました。画像を入力すると動画が生成されるDiffusionモデルのようです。フレーム間の安定性も高いようです。論文も30ページの超大作なので今後のこの分野における革新の一歩になることは間違いありません。今後も注目していきます。

      Originally published at https://note.com on November 22, 2023.

    3. Stability Matrixが最新版 v2.6.1にアップデート

      Stability Matrixが最新版 v2.6.1にアップデート

      2023年11月17日「Automatci1111」や「Fooocus」、「ComfyUI」を代表とするStable Diffusion WebUI各種が簡単なインストーラーでセットアップできちゃう「Stability Matrix」が最新版 v2.6.1にアップデートされました。

      https://github.com/LykosAI/StabilityMatrix/releases/tag/v2.6.1

      v2.6.0以前から大きな変更点

      v.2.5.x以前のユーザは新規インストールをしたほうがいいかもしれません。

      11月10日にリリースされたStability Matrixがv2.6.0に!IntelのオンボードGPUでも動く可能性が出てきました。

      https://note.com/o_ob/n/nd5ec2fd34ad9

      大きなニュースとしては、追加学習のプロジェクトとして評価の高い「kohya_ss」のパッケージ追加されました。

      Kohya’s GUI とは

      LoRAを生成するためのGUIで、日本人のKohyaさんが開発しています。

      https://github.com/bmaltais/kohya_ss

      このリポジトリは、主にKohyaさんが開発したStable Diffusionでの機械学習のためのWindowsに特化したGradio GUIを提供しています。GUIで学習パラメータを設定し、モデルを学習するために必要なCLIコマンドを生成して実行することができます。

      LoRAとは

      画像生成やLLMにおける追加学習のことで、StableDiffusionの場合は、自分の画風を学習させたり、キャラクターや背景を安定させたりといった使い道があります。ちょうどこちらの書籍で解説しています

      https://techbookfest.org/product/guM26Wz45JGPzhkaHFVzZj

      まだバグがいっぱいありそうですが、その後、短い期間でStability Matrixが最新版 v2.6.1にアップデートされたということになります。

      https://github.com/LykosAI/StabilityMatrix/releases/tag/v2.6.1

      リリースノートによると

      ・NVIDIA GPUユーザーは、InvokeAIパッケージでCUDA 12.1を使用するように更新され、パフォーマンスが若干向上。アップデートは、パッケージの次回更新時または新規インストール時に行われます。
      注:CUDA 12.1は、Maxwell(GTX 900シリーズ)以降のGPUでのみ利用可能です。

      ・バグ修正
      レート制限を防ぐため、GitHubへのコール量を削減
      起動時にレート制限がクラッシュし、アプリが起動できなくなる問題を修正

      インストール時の不具合はこちらで修正された可能性がありますね。
      Stability MatrixによるWebUIのパッケージ管理は非常に便利なので、今後もアップデートを見守っていきたいと思います。

      Originally published at https://note.com on November 20, 2023.

    4. シリコンバレーからみた生成AI — Stable Diffusion内部を学ぶ

      シリコンバレーからみた生成AI — Stable Diffusion内部を学ぶ

      AICUメディア事業部のKotoneです!
      前回の記事にて、10月30日(月)から11月2日(木)にシリコンバレーで行われた「ODSC West(Open Data Science Conference)」というデータサイエンスのカンファレンスをレポートしました。

      (前回)シリコンバレーからみた生成AI — Stable Diffusionの重要性

      https://corp.aicu.ai/ja/stable-diffusion-at-odsc-west

      この記事では、生成AIの誕生からStableDiffusionの発表、画像生成AIの急速な発展を再確認しました。
      今回は第2弾ということで、シリコンバレー在住のKojiのレポートから、前回の続きをお伝えします。
      Diffusion Model(拡散モデル)を使った世界初のオープンソースの技術であるStable Diffisionは、一体どういった経緯で生まれたのでしょうか。

      Stable Diffusionは、ドイツのミュンヘン大学のコンピュータビジョン研究所の Bjorn Ommer(ビヨン・オマール)教授が開発した Latent Diffusion Model(LDM) という技術をベースとして、RunwayML社の Patrick Esser氏と StablityAI社 の Robin Rambach氏が協力して開発されたものです。

      Stable DiffusionはイギリスのStabilityAI社によって発表され、3つの重要な特徴を有しています。
      ①オープンソースコード
      ②学習とファインチューニングが容易
      ③一般ユーザレベルのGPUで稼働する
      開発費はわずか60万ドルでしたが、2022年10月には101Mドルを資金調達できたそうです。StablityAI社は元々ヘッジファンドマネージャーであったEmad氏によって2019年に設立された企業です。

      2023年4月はStable Diffusionにとって大躍進の月でした。Advanced SDXL、Stable LM (LLM)、Stable Vicuna(Chatbot)の3つの新しいツールが発表されました。。これらにより、Mo-Di Diffusion、InstructPix2Pix、ControlNet、WebUI、CivitAI、Robo Diffusionなど他社の様々な関連技術の開発が誘発されました。

      以下はStable Diffusionの直感的な解説です。テキストからイメージを作ります。たとえば、「ネコ」から「ネコの写真」を生成します。しかし、テキストを直接変換するものではありません。テキストの指示にしたがって、リバースディフュージョン(逆拡散)によって、ノイズからイメージを生成するのです。これは3つの技術要素でできています。
      ①Noise to Image:ノイズから画像を生成する
      ②Guidance of Text:テキストによるガイダンス
      ③Reverse Diffusion:逆拡散

      テキストプロンプトは、「変更されたノイズのある画像は、テキストの説明文に少し似ている」といったように、ノイズ画像を変更する方法を指示(ガイダンス)します。

      この直感の例を見てみましょう。この例では、入力テキスト “Boy”(少年)に対して、この画像 が与えられたとします。さて、この少年の画像のどこに問題があるでしょうか? 耳と頭を変える必要がありますね。そこで、”Boy “というテキストが “ears “(耳)を変更するようガイド(指示)します。Stable Diffusionでは、このガイドはピクセルレベル、つまり1ドット単位で行います。エンコードされたテキストは、どのピクセルを少しだけ変更するか教えます。

      Stable Diffusionの直感的な画像生成プロセスです。Forward Diffusion(順方向拡散)はノイズを加えることで、Reverse Diffusion(逆拡散)は「ノイズ除去処理」です。

      Calculate:現在の画像のノイズ加算
      Remove:現在の画像のノイズを取り除く(Denoising)
      Repeate:繰り返し
      Stable Diffusion は、このノイズ付加⇒ノイズ除去⇒繰り返し…の繰り返しです。実はノイズの生成や逆のノイズ除去計算はニューラルネットワークで容易に行うことができます。しかし、すべてのエラーを一度のステップで予測することは出来ませんので、ステップバイステップで行っていきます。

      特に画像からノイズを除去するプロセスには膨大な時間がかかります。その時間を短縮するため Stable DiffusionではLatent Space(潜在空間)という概念を利用します。複雑で膨大な画像データを「その画像の特徴を表す、より少ない次元」で表現する「特徴ベクトル」として扱うことで、画像生成に利用するパラメーター数を削減します。
      たとえば、人の顔を表現するのに、画像の一つ一つのピクセルの情報で表現しようとするとデータ量は大きくなりますが、髪の色、目の色、顔の形、などの特徴を数値(ベクトル)で表すことにすると、大幅にデータ圧縮することができます。

      Stable DiffusionはLatent Stable Diffusionを示します。そして以下の3つの要素で理解できます。
      Latent(潜在):エンコードされた入力、デコードされた出力
      Stable(安定):ノイズを除去するための小さな変更
      Diffusion(拡散):ノイズ除去

      テキストからノイズを計算するためのガイダンス(指示)をどのように受け取るのでしょうか?テキストもまたLatent Space(潜在空間)にエンコードされます。しかし、それはテキスト自体の潜在空間です。画像とテキストが潜在空間で交わるこのプロセスは、すべてのテキストから画像へのモデルの基礎です。この現象により、テキストと画像モデルの境界線が曖昧になっています。そしてこのことは、次の論文で解決されました。2021年のCLIP論文です。

      CLIP(Contrastive Language-Image Pre-training、対照的な言語-画像事前トレーニング)とは、テキストと画像のデータペアを同時に理解することを目的とした技術です。具体的には、テキストの説明と対応する画像を関連付けることで、モデルは特定のテキスト記述にマッチする画像を生成する能力を学びます。

      CLIPは以下のように機能します。
      1.事前学習: CLIPモデルは、インターネットから収集された大量のテキストと画像のペアで事前学習されます。この学習プロセスでは、テキストエンコーダと画像エンコーダが使用され、それぞれがテキストと画像のデータを高次元の潜在空間にマッピングします。
      2.コントラスト学習: この潜在空間内で、正しいテキストと画像のペアは近接して表現され、誤ったペアは離れた位置に表現されるように学習されます。これにより、モデルは正確なマッチングを予測できるようになります。
      3.ゼロショット学習: CLIPはゼロショット学習能力も持っています。訓練中に見たことがない新しいカテゴリの画像やテキストに対しても、正確な関連付けを行うことができます。
      CLIP(Contrastive Language-Image Pre-training) の論文: https://arxiv.org/abs/2103.00020

      Stable Diffusionは、DDPM(Denoising Diffusion Probabilistic Model)と呼ばれるプロセスを活用しています。このプロセスは、大量のデータセットで何百万回も行われるトレーニングと、実際に画像を生成する際の推論の2つの主要なステップに分けられます。
      1.トレーニング:トレーニング段階では、既知の量のノイズを画像に加え、テキスト情報に基づいてそのノイズを除去する方法をモデルが学習します。このプロセスは何百万回も繰り返され、モデルはテキストと画像の対応関係をより正確に理解するようになります。
      2.推論: 推論段階では、ランダムなノイズからスタートし、テキスト情報に従って徐々にノイズを減らしていきます。このプロセスを繰り返し行い、テキスト情報に合致した、ノイズのない画像が得られるまで続けます。
      DDPMは、ノイズのあるデータからノイズを除去していくことでデータの本来の分布を学習する確率的モデルであり、このアプローチによってテキストから画像を生成することが可能になります。

      DDPMの論文: https://arxiv.org/abs/2006.11239

      Kotoneの感想
      画像生成に使われている専門用語を分解して理解することで、どのような技術が使われているのかを理解できました。画像生成とLLMは一見関係ないように感じますが、TransformerやCLIPをはじめとしてテキストと画像を結びつける技術にLLMが関わっているのだと実感できました。

      次回はOSDC編の最終回、もう一歩踏み込んでVAEなどの解説に入っていきます!

      Originally published at https://note.com on November 20, 2023.