Stable Diffusionを動かしてみる機械学習の社会実装勉強会第15回Henry2022/9/23
View Slide
自己紹介■ 東京大学理学部情報科学科■ 同大学大学院情報理工学系研究科コンピュター科学専攻■ 博士(情報理工学)取得● ICMLなどの国際・国内学会・ジャーナルに論文発表● 学振DC2・理研AIPセンター研究パートタイマー● AIPチャレンジなどの競争的研究費取得・外国大学への訪問■ 在学中に株式会社パンハウスを共同創業2
内容■ 画像生成とStable Diffusionの応用例など■ Diffusersの使い方■ デモ3
画像生成AIモデルの発展4
Text to Image 生成例 by Stable Diffusion5
(Text + Image) to Image 生成例 by Stable DiffusionA fantasy landscape, trending on artstation6
4.2 Gigabytes, or: How to Draw Anything■ https://andys.page/posts/how-to-draw/■ Stable Diffusionを複数回(丁寧に)使えば実現できる7
Text Inversion や DreamBooth■ より高度的な作業として、ユーザー指定の概念を生成画像に含ませる● 似た機能がどんどん公開ライブラリーに追加されていく■ https://birdmanikioishota.blog.fc2.com/blog-entry-8.html8
動画生成まで実現できる■ https://replicate.com/andreasjansson/stable-diffusion-animation● 生成過程に工夫して連続な画像変換が実現される■ https://github.com/nateraw/stable-diffusion-videos● 潜在空間の補間という単純なアプローチ9
日本版 Stable Diffusion■ https://github.com/rinnakk/japanese-stable-diffusion■ https://huggingface.co/spaces/rinna/japanese-stable-diffusion で体験できる■ 目的● Generate Japanese-style images● Understand Japanglish● Understand Japanese unique onomatope● Understand Japanese proper noun■ サラリーマン 油絵10
TrinArtなどアタク向け拡張11
Optimized Stable Diffusion■ https://github.com/basujindal/stable-diffusion■ リソースの少ない環境でより効率的に動かせるために最適化された実装■ The code can now generate 512x512 images using under2.4 GB of GPU VRAM!● 魅力的ですが、後ほどのデモでは optimize されてないライブラリーで行う12
環境構築したくない人向け■ GUIまで用意してくれたパッケージ■ Windowsで■ M1/M2 Macで● https://github.com/divamgupta/diffusionbee-stable-diffusion-ui■ https://www.charl-e.com/13
より使いやすいWeb API!■ https://computerender.com/■ 下のように叩くだけ!14
Prompt Engineering■ 提示文の書き方が大事■ DALEE2 https://dallery.gallery/the-dalle-2-prompt-book/■ https://lexica.art/15
関連研究が集まるところ■ NeurIPS 2022 Machine Learning for Creativity and DesignWorkshop■ https://neuripscreativityworkshop.github.io/2022/■ 今年年末!16
その他の情報源■ https://github.com/awesome-stable-diffusion/awesome-stable-diffusion● モデル、デモ、チュートリアル、UIなど幅広い情報など■ Reddit● https://www.reddit.com/r/StableDiffusion や● https://www.reddit.com/r/StableDiffusion/comments/wqaizj/list_of_stable_diffusion_systems/ など17
内容■ 画像生成とStable Diffusionの応用例など■ Diffuersの使い方■ デモ18
Diffusersライブラリー■ https://github.com/huggingface/diffusers■ 公式レポジトリにあるサンプルコード● https://github.com/CompVis/stable-diffusion/tree/main/scripts■ Huggingface ブログ● https://huggingface.co/blog/stable_diffusion19
シンプルな使い方 (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
シンプルな使い方 (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
内容■ 画像生成とStable Diffusionの応用例など■ Diffusersの使い方■ デモ22