見出し画像

フルスクラッチ学習に必要な計算機リソース・時間・パブリックライセンスデータ入手先等の参考情報まとめ

こんにちは、Hi君です。
Stable Diffusionに利用するモデルについて、訓練を行う際にどの程度の生成物を出力するにあたり、かかる時間や、どういった計算機リソースを利用する必要があるか、また参考情報が記載されている記事についてまとめてみました。


初めに


Stable Diffusionの公式モデルは、LAION-5Bデータセットを利用しています。一方、LAION-5Bデータセットは本来研究用のデータセットであるため、商用利用する際は、リスクが大きいことを念頭に入れておく必要があります。商用利用する際は、クリーンなデータを用意し、1から学習することをおすすめします。

参考記事:

参考になるリポジトリ・記事等


Stable diffusion 2.0関連

Stability AI社がどのような形でAWSインフラ上でStable Diffusionモデルを作成したかについて説明しているもの。"Stable Diffusion 2.0 took 200,000 A100 hours to train"との記載あり。

huggingfaceのリポジトリ。以下のような情報が含まれています。

The model was trained on a subset of the large-scale dataset LAION-5B, which contains adult, violent and sexual content. To partially mitigate this, we have filtered the dataset using LAION's NFSW detector (see Training section).
Hardware: 32 x 8 x A100 GPUs
Batch: 32 x 8 x 2 x 4 = 2048
Learning rate: warmup to 0.0001 for 10,000 steps and then kept constant

50億枚以上の画像が含まれるデータについて、リッチなGPUクラスタで学習を行っているということがわかりました。
ただしこれは、膨大なカテゴリ数の物体について質の良い画像生成ができるために必要という話であり、自社用意データや計算資源が必ずしも同じように必要という訳ではありません。

Cool Japan Diffusion関連

@alfredplplさんが主要なメンテナ

  • 下記のようにcool-japan-diffusion-for-learning-2-0とcool-japan-diffusion-2-1-2の2種類がある。

    • cool-japan-diffusion-2-1-2についてはAI Picasso Inc.配布となっている。

  • 商用利用は不可なモデル群、ただし下のように幾つかの訓練時に関連した情報が文中に含まれる。

    • どのようなデータセットを利用したか。また訓練データセットのデータサイズはどの程度か。訓練対象は何か

    • どのような計算機を使ったか

    • どのくらい時間を掛けて学習を行ったか

    • 訓練時の解像度・バッチサイズ等

  • また、一般的に何をもって成果物の評価を行うかの知覚的指標(FID等。訓練画像)についても言及有り。

関連記事

  • Cool Japan Diffusion 2.1.0 の取扱説明書です。生成物画像が複数枚含まれています。

  • 開発体制に関して。どのような計算機インフラ構成で学習を行っているか記述されています。(20TBのNASは用意あり)

cool-japan-diffusion-for-learning-2-0

  • データセットの種類/訓練データーセットのデータサイズ/訓練対象:

学習データ

次のデータを主に使ってStable Diffusionをファインチューニングしています。

Twitterに掲載されたイラストやマンガ: Twitter APIで取得した画像約20万枚
学習プロセス

Stable DiffusionのVAEとU-Netをファインチューニングしました。
- CLIPモジュールについては[OpenCLIP](https://github.com/mlfoundations/open_clip)を流用
  • ハードウェアタイプ:RTX3090

  • 使用時間:300時間

  • 訓練時の解像度:解像度: 512x512 (記述はないもののSDv1.5と同様の構成と推測)

  • バッチサイズ: 1

cool-japan-diffusion-2-1-2

  • データセットの種類/訓練データーセットのデータサイズ/訓練対象:

学習データ

次のデータやモデルを主に使ってStable Diffusionをファインチューニングしています。

VAEについて
DanbooruやDanbooru datasetを除いた日本の国内法を遵守したデータ: 65万種類 (データ拡張により無限枚作成)
U-Netについて
DanbooruやDanbooru datasetを除いた日本の国内法を遵守したデータ: 200万ペア
マージしたモデル: 3つ
  • ハードウェアタイプ:A6000 (RTX A6000)

  • 使用時間:200時間

  • 訓練時の解像度:解像度: 512x512 (記述はないもののSDv1.5と同様の構成と推測)

  • バッチサイズ: 1

Mitsua Diffusion One


AI VTuber「絵藍ミツア」を運営している株式会社アブストラクトエンジンが出してるモデルです。パブリックドメイン/CC0および許諾を得た画像(学習参加者以外)のみを用いてゼロから学習したもの。

ライセンス: Mitsua Open RAIL-M License

モデルパラメタ自体は改変された形になっています(おそらくスクラッチから学習したモノ)。

huggingfaceページのREADMEに利用されているデータ元について言及があります。

訓練に利用されているデータ

Training Data Sources
All data was obtained ethically and in compliance with the site's terms and conditions. No copyright images are used in the training of this model without the permission. No AI generated images are in the dataset.

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)
Flickr (CC0 subset)
Wikimedia Commons (CC0 subset)
NFT arts *1 (goblintown.nft, mfer, tubby-cats, Timeless) (CC0)
Full version of VRoid Image Dataset (CC0 or licensed)
Open Clipart (Public domain)
Open Duelyst (CC0)
3dicons (CC0)
ambientCG (CC0)
Wuffle comics made by Piti Yindee (CC0)
大崎一番太郎 made by 大崎駅西口商店会 (CC0)
Traditional Generative Art (Non-AI) and Visual Artworks made by Rhizomatiks (licensed)
Approx 11M images in total with data augmentation.

Their work is released under a CC0 license, but if you are considering using this model to create a work inspired by their NFT and sell it as NFT, please consider paying them a royalty to help the CC0 NFT community grow.

訓練時の参考情報等

以下のようなスケジュール感で学習を漸進的に行っています。

Training Notes
Trained resolution : 256x256 --> 512x512 --> (512x512, 640x448, 448x640) --> (512x512, 768x512, 512x768)

Latent Diffusionの学習を試す


Generative Network関連の研究でよく用いられるデータセットの一つであるCelebA-HQを用いた学習について、コマンドや生成結果、所感等を含めた記述があります。

少し長くなりそうなので、訓練に掛かる時間の見積もりについては次の記事でご紹介していきたいと思います。お楽しみに!

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

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