見出し画像

CLIP Text Deprojectorを使って画像生成してみる ~学習データを増やす~ (最終回)

前回の更新から半年ほど経ちましたが、このシリーズは今回で最終回としたいと思います。

このところ、モデルの性能に大きな改善が見られないことと、すでに使っているモデルが古くなってしまっていることから、このプロジェクトを継続する意味があまりなくなっていると思われるためです。

そこで、今回は、前回提案したモデルアーキテクチャのまま、学習データを増やして性能評価をして、最終モデルとすることにしました。

前回の記事

他のStable Diffusionの関連記事

Layered Diffusion Pipelineを使うためのリンク集


10万件の学習データ

10万件の学習データについては、以前書いたこちらの記事のものを踏襲しています。

前回モデルとの比較

まずは5万件で学習した前回のモデルとの比較です。上から、次の順に並んでいます。

  1. Deprojectorなし

  2. 5万件で学習した前回のモデル

  3. 10万件で8エポックまで学習したモデル

  4. 10万件で14エポックまで学習したモデル

単一embedding
複数embeddingの合成

5万件の学習データと10万件の学習データでは、見た目上ではそれほど大きな差異は見られないように思います。しかし、テストデータ上でのスコアを見ると、10万件の学習データの方がよい性能となっているようです。

8エポックの学習と14エポックの学習で、見た目上では大きな差は見られず、8エポックの学習で十分な性能に達しているように見られます。

HuggingFace登録モデル(v5)との比較

HuggingFaceにv5として登録してあるモデルは、これまでで最もよい性能となっていたモデルです。しかし、モデルサイズが大きく、モデルファイルのサイズは192MBです。これは、このモデルが4つのモデルのアンサンブルモデルとして作成されているためです。

それに対し、最新のモデルは11.8MBと、v5モデルと比較して、1/16の大きさとなっています。

このv5モデルと、10万件のデータで訓練した新しいモデルを比較してみます。さらに、v5モデルのアンサンブルを作成するときに、いつも使っている乱数シードで生成した画像を使ったため、公平を期すために、今回は乱数シードを変えて生成した画像を使って比較します。

  1. Deprojectorなし

  2. v5モデル

  3. 10万件で8エポックまで学習したモデル

単一embedding
複数embeddingの合成

最新モデルの生成画像は、v5と同程度かそれ以上にプロンプトの指示に従っていると言えるのではないかと思います。

まとめ

10万件の学習データを使って再学習したモデルは、アンサンブルモデルとしなくても、これまでで最も性能の高かったモデルと遜色ない性能となることが分かりました。

この最終モデルは、HuggingFaceのリポジトリに近いうちに登録しておきます。その際のナンバリングは、v7モデルとなる予定です。

いいなと思ったら応援しよう!