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

Stable Diffusionを動かしてみる

Henry Cui
September 23, 2022

Stable Diffusionを動かしてみる

Henry Cui

September 23, 2022
Tweet

More Decks by Henry Cui

Other Decks in Technology

Transcript

  1. Stable Diffusionを動かしてみる 機械学習の社会実装勉強会第15回 Henry 2022/9/23

  2. 自己紹介 ▪ 東京大学理学部情報科学科 ▪ 同大学大学院情報理工学系研究科コンピュター科学専攻 ▪ 博士(情報理工学)取得 • ICMLなどの国際・国内学会・ジャーナルに論文発表 •

    学振DC2・理研AIPセンター研究パートタイマー • AIPチャレンジなどの競争的研究費取得・外国大学への訪問 ▪ 在学中に株式会社パンハウスを共同創業 2
  3. 内容 ▪ 画像生成とStable Diffusionの応用例など ▪ Diffusersの使い方 ▪ デモ 3

  4. 画像生成AIモデルの発展 4

  5. Text to Image 生成例 by Stable Diffusion 5

  6. (Text + Image) to Image 生成例 by Stable Diffusion A

    fantasy landscape, trending on artstation 6
  7. 4.2 Gigabytes, or: How to Draw Anything ▪ https://andys.page/posts/how-to-draw/ ▪

    Stable Diffusionを複数回(丁寧に)使えば実現できる 7
  8. Text Inversion や DreamBooth ▪ より高度的な作業として、ユーザー指定の概念を生成画像に 含ませる • 似た機能がどんどん公開ライブラリーに追加されていく ▪

    https://birdmanikioishota.blog.fc2.com/blog-entry-8.html 8
  9. 動画生成まで実現できる ▪ https://replicate.com/andreasjansson/stable-diffusion-anim ation • 生成過程に工夫して連続な画像変換が実現される ▪ https://github.com/nateraw/stable-diffusion-videos • 潜在空間の補間という単純なアプローチ

    9
  10. 日本版 Stable Diffusion ▪ https://github.com/rinnakk/japanese-stable-diffusion ▪ https://huggingface.co/spaces/rinna/japanese-stable-diffus ion で体験できる ▪

    目的 • Generate Japanese-style images • Understand Japanglish • Understand Japanese unique onomatope • Understand Japanese proper noun ▪ サラリーマン 油絵 10
  11. TrinArtなどアタク向け拡張 11

  12. Optimized Stable Diffusion ▪ https://github.com/basujindal/stable-diffusion ▪ リソースの少ない環境でより効率的に動かせるために最適化 された実装 ▪ The

    code can now generate 512x512 images using under 2.4 GB of GPU VRAM! • 魅力的ですが、後ほどのデモでは optimize されてないライブラリーで 行う 12
  13. 環境構築したくない人向け ▪ GUIまで用意してくれたパッケージ ▪ Windowsで ▪ M1/M2 Macで • https://github.com/divamgupta/diffusionbee-stable-diffusion-ui

    ▪ https://www.charl-e.com/ 13
  14. より使いやすいWeb API! ▪ https://computerender.com/ ▪ 下のように叩くだけ! 14

  15. Prompt Engineering ▪ 提示文の書き方が大事 ▪ DALEE2 https://dallery.gallery/the-dalle-2-prompt-book/ ▪ https://lexica.art/ 15

  16. 関連研究が集まるところ ▪ NeurIPS 2022 Machine Learning for Creativity and Design

    Workshop ▪ https://neuripscreativityworkshop.github.io/2022/ ▪ 今年年末! 16
  17. その他の情報源 ▪ https://github.com/awesome-stable-diffusion/awesome-sta ble-diffusion • モデル、デモ、チュートリアル、UIなど幅広い情報など ▪ Reddit • https://www.reddit.com/r/StableDiffusion

    や • https://www.reddit.com/r/StableDiffusion/comments/wqaizj/list_of_ stable_diffusion_systems/ など 17
  18. 内容 ▪ 画像生成とStable Diffusionの応用例など ▪ Diffuersの使い方 ▪ デモ 18

  19. Diffusersライブラリー ▪ https://github.com/huggingface/diffusers ▪ 公式レポジトリにあるサンプルコード • https://github.com/CompVis/stable-diffusion/tree/main/scripts ▪ Huggingface ブログ

    • https://huggingface.co/blog/stable_diffusion 19
  20. シンプルな使い方 (1/2) ▪ 環境構築 • pip install diffusers==0.2.4 transformers==4.21.2 ftfy==6.1.1

    ▪ インポート • from diffusers import StableDiffusionPipeline ▪ パイプラインの準備 • pipe = StableDiffusionPipeline.from_pretrained('CompVis/stable-diffusion -v1-4', use_auth_token=AUTH_TOKEN) 20
  21. シンプルな使い方 (2/2) ▪ 推論パラメータ • inference_kwargs = dict( height=args.height, width=args.width,

    guidance_scale=args.guidance_scale, num_inference_steps=args.num_inference_steps) ▪ 推論 • image = pipe(args.prompt, **inference_kwargs)['sample'][0] 21
  22. 内容 ▪ 画像生成とStable Diffusionの応用例など ▪ Diffusersの使い方 ▪ デモ 22