可変感情可変予定制御

街歩きブログになりつつあるなにか

DreamBoothでStable Diffusionのファインチューニングを試す

連日話題が尽きないStable Diffusion界隈。特に2次元イラスト向けのモデルの発展が著しいが、基本的に生成できるのはオリジナルのキャラクターがメインであり、世の中に数多あるキャタラクターの概念をすべて学習させることは現状難しい。そのため、好みのキャラクターの絵を描かせたい場合には、追加学習という手法が用いられる。

今回Stable Diffusion用に実装されたDreamBoothというアルゴリズムを用いて、ファインチューニングを行ってみた。どうやってもVRAM4GBでは足りないので、こればかりは大人しくColabを利用している。

 

まずは学習用の画像を用意する。アスペクト比は関係なく読み込んでくれるが、今回は顔だけ学習させたいので正方形とした。

学習に必要な時間は20分ほど。意外と早いなという印象だった。

  • 学習枚数:4枚、モデル:hakurei/waifu-diffusion

     

  • 学習枚数:8枚、モデル:doohickey/trinart-waifu-diffusion-50-50

     

  • 学習枚数:6枚、モデル:hakurei/waifu-diffusion

     
    2回目のモデルでは服を着ているという概念?も一緒に学習されてしまったため、首から下を塗りつぶしたうえで学習を行った。

まだまだ知見不足のためこれといったことは言わないでおくが、思った以上に出来がよく驚いた。ちなみにDiffusersだとNegative promptが使えず微妙な生成結果になってしまいがちなので、ckptに変換してStable Diffusion web UI(AUTOMATIC1111)で使うのがオススメ。

モデルは上げておいたのでもし試したい人がいればどうぞ。