見出し画像

Mitsua Diffusion Oneの表現能力・モデル概要まとめ

こんにちは、Hi君です。
Mitsua Diffusion Oneと呼ばれるパブリックドメイン/CC0および許諾を得た画像のみを用いてゼロから学習したモデルがあります。今回は、そのモデルの描画能力等について調査を行った結果をまとめてみました。
モデルの詳細は次のページを参照して下さい:

結論としては、主に以下の3点から、「即戦力的なモデルではない」ということです。当然のことではありますが、実際使う際は「追加学習が必須」になります。

  1. データセットに偏りがある可能性が高い(写実的・現代的な画像が少ない可能性がある)。

  2. LoRA等の追加学習を行った場合でも、恐らく生成画像について色合い等が崩れやすい。予想ですが、過学習(モデル的に出しやすい表現についての過剰適合)しやすかったり画として崩れやすい傾向がある可能性が高い。

  3. 出回っている学習済のControlNetやT2I-Adapter等のモデルが利用出来ない。(これらについても実際には要スクラッチ学習なのは変わらないが、デファクトスタンダードなツールとの相対的能力として遅れがあるという意味で記述しました。)

表現能力に関連しそうな情報(モデル概要)


Mitsua Diffusion Oneモデルは、モデルアーキテクチャ上SDv2.0-baseモデルと同一となります (設定ファイルはv2-inference.yamlを用いる形)。

つまり、モデルアーキテクチャの工夫上の意味ではSDv1.5よりも多少リッチな面はあるようです(内部UNetのcontext_dimが少し大きい)。また、訓練上利用したスクリプトについては以下まとめています。

  • deprecated版モデルのリポジトリの開発時点ではおそらくText EncoderやVariational Auto Encoder(VAE)周辺で問題を抱えていた可能性が高い。

  • ほぼ同等のスクリプトを使用しているが、現在公開されているリポジトリのモデルで、同様のスクリプトを利用していたかどうかは厳密には分からない。

訓練データセットの内訳について


実際は分かりませんが、訓練データの内訳はアート系が多いように思われます。
つまり古い絵画や身の回りにあるような物体とは異なった質感・色味を表現した画像等が訓練データの多くを占めている可能性があります。データの多様性の上でおそらく偏りがあり、その場合以下のような問題が生じる可能性が高いです。

  • 実写ではなく絵画データの内訳が多い場合、繊細な表現や色味・質感の連続性の意味で比較的学習データの質は落ちる可能性がある

  • 細部を上手く描画できなかったり、局所的なコンテキストが混在した描画がなされる可能性が高い

  • 光学的な意味でのリアルな表現能力は劣る可能性が高い

  • マットな拡散反射成分的な質感・色味のグラデーション表現というよりは鏡面反射成分的な、多少複雑だがリアルな表現についての能力が劣る可能性がある

  • 例えば建築物のようなモダンで幾何学的な形状の対象物の内訳も少ない可能性がある。大局的な意味的・形状的コンテキストを十分に考慮した描画能力の実際性の意味で満足な域で無い可能性がある。

上の文脈においては最終的にイラスト調のデータをimg2imgで生成する場合についても問題になり得ます。実写対象も適度に表現出来る能力を追加学習によってモデルに持たせつつ、追加モジュールやfine-tuningによって対象の画風を表現できるような形が望ましいでしょう。

アート系のデータセット(著作権が切れる程度には古いデータが多い)

- The Metropolitan Museum of Art Open Access (CC0 / Public domain)
- Smithsonian Museum Open Access (CC0 / Public domain)
- Cleveland Museum of Art Open Access (CC0 / Public domain)
- National Gallery of Art Open Access (CC0 / Public domain)
- The Art Institute of Chicago Open Access (CC0 / Public domain)
- The Walters Art Museum Open Access (CC0 / Public domain)
- J. Paul Getty Museum Open Access (CC0 / Public domain)
- ArtBench-10 (public domain subset)
- NFT arts *1 (goblintown.nft, mfer, tubby-cats, Timeless) (CC0)
- Full version of **[VRoid Image Dataset](https://huggingface.co/datasets/Mitsua/vroid-image-dataset-lite)** (CC0 or licensed)
- Open Clipart (Public domain)
- Open Duelyst (CC0)
- 3dicons (CC0)
- ambientCG (CC0)
- Wuffle comics made by Piti Yindee (CC0)
- Traditional Generative Art (Non-AI) and Visual Artworks made by Rhizomatiks (licensed)

実写データが含まれていそうなデータセット

- Flickr (CC0 subset)
- Wikimedia Commons (CC0 subset)
- 大崎一番太郎 made by 大崎駅西口商店会 (CC0)

ControlnetやT2I-Adapterについて

Mitsua Diffusion OneはControlNetやT2I-Adapterの学習モデルが実質的に使えないことがわかりました。プログラム上は追加モジュールモデルを正常に読み込める + 動作できることがベースになっているモデルが、公式SD派生ではなく、パラメタが大きく異なるのでガイダンス能力はほぼないようです。

再現性の確認


モデルの画像生成能力が手元の環境で再現できるか、再現性を確認しました。
これは画像生成能力について議論する上で、公式の意図するものと手元のものが一致しているかについての確認の意味で行いましたが、結論としては、正常に再現することが確認できました。
プロンプトについては、公式が提供している以下のcsvファイルを参照しました。

公式のサンプル画像


Mitsua Diffusion One公式サンプル画像です。

今回は右下の桜の画像が生成対象とした画像となります。

表現能力の確認/オートエンコーダに近い設定での表現能力確認


  •  質感がイラスト調の絵画・幾何学的模様・実写対象物の3種類の画像について、元画像のエンコード特徴量に少なめのノイズを乗せた条件(Denoise Strengthが0.1 or 0.3の条件)でimg2imgによる画像再構成を行った場合、元画像と比較して生成画像の詳細部がどの程度破綻するかを確認しました。

  • 基本的にdenoise strengthが0に非常に近い値の場合は、下記のどの例においても完全に近い形で復元できる事は確認できました。つまり、画像をDiffusion Model上の潜在空間表現(エンコード特徴量)に落とし込み、また復元するという能力がある事は確認できました(≒人間がよく見る対象物を再現するための最低限の画像特徴量は獲得できている事は確認できました)。

下記の項目ではその条件での再現例は省略しています。

イラスト調の絵画

マットな質感 + エッジが際立つ画像について、低いDenoise Strength条件でどの程度破綻するかを確認する事を目的として行いました。
チェック柄の服のような局所的に色や形状コンテキストが混在する対象はMitsua Diffusion Oneの方がグリッチ的なアーティファクトは生じそう、かつ複雑なコンテキストは上手く描画できにくそうです(自転車のハンドルの部分等)。

元画像

生成画像 (Mitsua Diffusion One)

Steps: 20, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 2139987194, Size: 700x382, Model hash: 2da4fb419f, Model: mitsua-diffusion-one, Denoising strength: 0.3

生成画像 (公式SDv1.5モデル)

Steps: 20, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 2139987194, Size: 700x382, Model hash: e1441589a6, Model: v1-5-pruned, Denoising strength: 0.3

幾何学的模様

線状の描画オブジェクトについてエッジや色味のグラデーションを保持するか、交差部分でどのような破綻の形になるかを確認する事を目的として行いました。
また、実際的にはControlNetやT2I-Adapter等の追加モジュールが細部の描画制御の上で、デファクトスタンダード的に用いられることが多いようです。Mitsua Diffusion Oneはそれらが現時点では利用できるモデルが無い事を考慮した上での比較となります。

元画像

生成画像 (Mitsua Diffusion One)

生成画像 (公式SDv1.5モデル & 公式SDv1.5モデル + T2I-Adapter(Canny))


Steps: 20, Sampler: DPM++ 2M Karras, CFG scale: 7, Seed: 2139987194, Size: 512x640, Model hash: e1441589a6, Model: v1-5-pruned, Denoising strength: 0.1

without Canny Guidance

with Canny Guidance

実写対象物 (熊画像の生成)


おそらく訓練データに多くは含まれていないであろう対象 + 写実的な対象についての表現を検証するための試験対象としました。また、LoRAによる追加学習も試みています。
Mitsua Diffusion Oneを使用した生成画像を見てわかるように、意外と実対象についても質感はしっかりした画像が出力されています。特に背景や毛皮感などはきちんと出力されているのではないでしょうか。
ただ、細部ではなく輪郭として正しいコンテキストが保たれているかというと、そうではない画像が出力されている事が確認できました(もちろん訓練元のデータの対象について偏りはあるにせよ)。

LoRAによる追加学習


学習のためのprompt指定は"a bear"としました。またvalidation用promptは"a bear in forest"としています(下の動画参照)。以下わかったことです。

  • 意味的輪郭は学習によって獲得はすることはできていそう(学習を進めれば耳や手足等のより"らしい"部分が目立って出てくるのでは)

  • ただし、学習を進めるにつれて、背景の木の質感や色味等が失われていくかも(破壊的忘却が発生している)

  • また、ギラギラした色味が学習の進行によって出てきており、かつ熊のポーズが学習が進むにつれて似てきている。(過学習・生成しやすいモデルへの過剰適合やアーティファクトが発生する程度には元のモデルの"画像特徴量"的能力は比較的劣る可能性あり)

  • DreamBooth等を用いてリッチに動物データ等を学習したり、忘却防止用のtext+imageデータを用意して訓練すれば多分熊自体は良い輪郭で生成できる感覚があります(ただし~24GB程度のGPUメモリが必要)

https://esa-storage-tokyo.s3-ap-northeast-1.amazonaws.com/uploads/production/attachments/14624/2023/04/20/75422/9fe788b1-f6c3-404d-b998-8a5d8424b36d.mp4

学習元

動画を見てわかるように、熊のような、熊じゃないようなものが出来上がりました。
少し長くなってしまいましたが、今回は以上です!

文:Hi君
協力:inaho株式会社

この記事が気に入ったらサポートをしてみませんか?