Upgrade to Pro — share decks privately, control downloads, hide ads and more …

オープンソース画像生成AIの今~Stable Diffusionとウェブで画像生成できるAUTOMATIC1111入門

オープンソース画像生成AIの今~Stable Diffusionとウェブで画像生成できるAUTOMATIC1111入門

関西オープンフォーラム2023発表資料です
2023年11月11日(土)
#KOF2023

Masahito Zembutsu

November 12, 2023
Tweet

More Decks by Masahito Zembutsu

Other Decks in Programming

Transcript

  1. 1 オープンソース画像生成AIの今 さくらインターネット株式会社 Technical Communicator / Engineer 前佛 雅人 (@zembutsu)

    2023年11月11日(土) 関西オープンフォーラム 2023 Stable Diffusion とウェブで画像生成できるAUTOMATIC1111入門
  2. 2 前佛 雅人 @zembutsu ES本部 教育企画部(いわゆる人事部です!) ぜ ん ぶ つ

    ま さ ひ と ⚫ ランニング ⚫ 料理 ⚫ 日本酒 ⚫ 現代視聴覚 ⚫ ゲーム ⚫ 趣味としての GenAI 日本一Dockerに詳しい人事(自称) Docker Meetup Kansai or Osaka 復活したい
  3. 3 Optimizing Deep Learning Workflows: Leveraging Stable Diffusion and Docker

    on WSL2 | Docker https://www.docker.com/blog/stable-diffusion-and-docker-on-wsl2/
  4. 文字生成の ChatGPT とは? • OpenAI 社が 2022年12月に発表した、いわゆる生成AIのサービス。 • プロンプトと呼ばれる「命令」(条件)に基づく処理を行い、結果を出力する ように訓練されている。

    • インターネット上の情報を元に、機械学習と人間による手作業の補正に よって組み上げられた大規模言語モデル(LLM)の GPT を持つ。 12 Large Language Model Generative Pre-trained Transformer
  5. 画像生成モデル • Discriminative Modeling(識別的モデリング) • 十分なデータがあれば、ある作者が描いた絵かどうかを予測し、識別する • Generative Modeling(生成モデリング) •

    与えられたデータ群に類似した新しいデータを確率で予測し生成する 14 https://en.wikipedia.org/wiki/Portraits_of_Vincent_van_Gogh#/media/File:Vincent_Willem_van_Gogh_102.jpg
  6. 画像生成モデル • “Denoising diffusion models” (DDM) • ノイズ除去によって “diffusion”(拡散) 手順を遡る方法を予測

    • ランダムなノイズを与えた文字(プロンプト)に一致する画像に変える Mathematical Foundation of Diffusion Generative Models | Binxu Wang https://scholar.harvard.edu/binxuw/classes/machine-learning-scratch/materials/foundation-diffusion-generative-models
  7. 画像生成モデルとオープン化 • 2021年1月 OpenAI が DALL-E を発表(モデル非公開) • 2022年2月 Midjourney

    v1 リリース(モデル非公開) • 2022年4月 DALL-E 2 を発表(モデル非公開) • OpenAI 社が著作権を保持 • 2022年7月 Midjourney v3 モデルのオープンベータ提供開始 • 商用ライセンスを持つモデル • 生成者が著作権を保持 • 2022年8月 Stable Diffusionの一般公開 • GitHub 上にソースコードを公開(MITライセンス) • https://github.com/Stability-AI/stablediffusion 17
  8. Stable Diffusion with Diffusers • https://github.com/huggingface/diffusers • PyTorch で生成できる •

    Apache-2.0 License • Python の diffusers ライブラリで Stable Diffusion を操作 • pip install diffusers .... 18 Stable Diffusion with 🧨 Diffusers https://huggingface.co/blog/stable_diffusion prompt = "a photograph of an astronaut riding a horse" image = pipe(prompt).images[0] # you can save the image with # image.save(f"astronaut_rides_horse.png")
  9. 学習と生成の過程 19 encode decode A walk through latent space with

    Stable Diffusion https://keras.io/examples/generative/random_walks_with_stable_diffusion/ 画像に戻す 文字情報(プロンプト)を準備 ベクトルに変換 ランダムノイズを加える モデル生成 補完する画像を作る
  10. 文字の命令(プロンプト)によって画像を生成できるようになった 20 best quality,Amazing,finely detail,extremely detailed CG unity 8k wallpaper,

    sakurahaai, space cat,crazy situation Negative prompt: (worst quality:2), (low quality:2), (normal quality:2) Steps: 135, Sampler: Euler a, CFG scale: 8, Seed: 1017978171, Size: 768x512, Model hash: 7f836ba907, Model: sakurahaai-v1, Clip skip: 2 3424160586
  11. Stable Diffusion と モデル • 2022年8月にリリースされたモデル LAION-5B • CompVis、 Stability

    AI、LAION がモデルのトレーニング • 8GB 程度の VRAM を搭載した GPU でも動作する • 画像モデルは Stable Diffusion と異なるライセンス • そもそも、違法・有害なコンテンツの意図的な作成・共有はできない • 開発者は一切権利を主張せず、利用者は「自由」に使えるが、ライセンス遵守必要 • 再配布や商用サービスの利用ができるが、ライセンスを継承する必要 • 議論点 • 「オープンソース」ライセンスと「オープン」(vs プロプライエタリソフトウェア)の文脈 21 License - a Hugging Face Space by CompVis https://huggingface.co/spaces/CompVis/stable-diffusion-license stable-diffusion-license
  12. 画像生成AIの論点 • 学習過程:そのデータはどこのデータ? • 学習元データの存在 • Stable Diffusion の画像データとキャプション文字の出所は CC

    BY-SA 3.0 とされる / NSFW • 技術:画像生成AIは単に著作権保護された画像生成ではない • Stable Diffusion 等から学習元画像の再現を試みたが、成功したのは少ない[1] • 配布・著作物:国ごとの法的解釈の違い • 著作権法(日本)と文化庁の方針[2] • 『「アイディアは、著作物に該当せず、著作権法では保護されない」』 『画家の画風自体は保護しない(画風が類似していても著作権侵害とはしない)』 • 『「AI開発・学習段階」は利用可能、「生成・利用段階」で著作権者の利益を不当に害する場合等は許諾が必要』 • フェアユース(米国) 22 [1] Extracting Training Data from Diffusion Models https://arxiv.org/abs/2301.13188 [2] 令和5年度著作権セミナー「AIと著作権」 文化庁著作権課 https://www.bunka.go.jp/seisaku/chosakuken/pdf/93903601_01.pdf
  13. AUTOMATIC1111 セットアップ方法 • 公式ドキュメント参照 https://github.com/AUTOMATIC1111/stable-diffusion-webui • Windows であれば、Docker Desktop +

    WSL2 は楽 • Windows 側で GPU を認識していたら、Docker 側では何もしなくても自動認識 • 不要になれば、すぐ消せる ( docker compose down → ディレクトリを削除 ) • Linux も Docker Compose は楽、とにかく楽 ( GPU ドライバ等は別途必要 ) • コマンド4つで入る • 詳細: さくらのクラウド《GPUプラン》ハンズオン~Stable Diffusionを使用したファンジーアートの作り方 - Qiita https://qiita.com/zembutsu/items/ae7809501b7e07700cf9 27 git clone https://github.com/AbdBarho/stable-diffusion-webui-docker.git cd stable-diffusion-webui-docker docker compose --profile download up --build docker compose --profile auto up --build
  14. 参考文献・リファレンス • Stable Diffusion with 🧨 Diffusers • https://huggingface.co/blog/stable_diffusion •

    Diffusers • https://huggingface.co/docs/diffusers/index • Stability-AI/stablediffusion: High-Resolution Image Synthesis with Latent Diffusion Models • https://github.com/Stability-AI/stablediffusion • stable-diffusion-webui • https://github.com/AUTOMATIC1111/stable-diffusion-webui • AUTOMATIC1111/stable-diffusion-webui Wiki • https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki • AbdBarho/stable-diffusion-webui-docker: Easy Docker setup for Stable Diffusion with user-friendly UI • https://github.com/AbdBarho/stable-diffusion-webui-docker • Generative Deep Learning, 2nd Edition, David Foster, O’Reilly 34
  15. Enjoy! • ご質問ございますか? Twitter: 個人用 @zembutsu 仕事関係 @zembutsu_works Instagram: @zembutsu

    さくらのクラウド《GPUプラン》ハンズオン~Stable Diffusionを使用したファンジーアートの作り方 - Qiita https://qiita.com/zembutsu/items/ae7809501b7e07700cf9