本記事では初心者さんに向けて、Checkpointについて解説します。SD1.5,SDXL,SD3,Flux.1のそれぞれについても軽く解説します。
Checkpointって何?
Checkpointとは、Stable DiffusionなどのAIモデルが学習した「重み」や「データ」のセットを保存したファイルのことです。このファイルには、モデルがどのようにデータを処理するのか、どんな画像を生成するのかといった重要な情報が詰まっています。
一般に普及しているCheckpointについて
一般的に使われているCheckpointは、ベースとなるStable Diffusionのバニラのモデルに対して追加学習(ファインチューニング)が行われたモデルが大半です。
ベースモデルのCheckpointとは?
ベースモデルのCheckpointとは、Stable Diffusionからリリースされたプリセットのモデルのことを指します。これは、Stable Diffusionが最初に学習した大規模なデータセットで訓練されており、一般的な用途に対応できるような汎用的なモデルです。
特徴としては、様々な分野に対して学習されているため画像生成やトレーニングにおいての汎用性が高いことが挙げられます。
弱点としては特定のスタイルやテーマに特化していないため、例えば「アニメ風」や「リアルな写真風」など、特定の表現に特化した画像を生成する際には物足りない場合があります。
ベースモデルのCheckpointには、2024年11月現在SD1.5,SDXL,SD3,Flux.1が公開されています。
追加学習した後のCheckpointとは?
追加学習した後のCheckpoint(ファインチューニングモデル)は、ベースモデルに対して特定のデータセットやスタイルを反映させるために、追加で学習を行ったものです。このようにして作られたモデルは、特定のジャンルやスタイルに強い画像を生成できる特徴があります。
特徴としては、特定のテーマやスタイル(例:リアル、アニメ、風景、肖像画、手書き風、など)に最適化されていることが挙げられます。ベースモデルにはない個性があり、特定のジャンルに特化した画像を生成できます。
メリットとしては、特定のスタイルやテーマに特化しているため、狙った表現がしやすく、目的に応じた画像生成が可能です。ベースモデルにはできない繊細な調整が施されている場合が多くなっています。
デメリットとしては、特化したテーマやスタイルに偏っているため、汎用的な画像生成には向かない場合があるため、使用する場面や目的が限定的になることがあります。
一般的に、SD1.5系列やSDXL系列の場合は追加学習後のCheckpointを画像生成に用いることが多いです。その一方で、SD3やFlux.1ではベースモデルで画像生成に使われることが多くなっています。
モデル系列 | ||||
SD1.5 | SDXL | SD3 | Flux | |
リリース時期 | 2022年10月 | 2023年7月 | 2024年6月 | 2024年8月 |
推奨解像度 | 512x512 | 1024x1024 | 1024x1024 | 1024x1024 |
ベースモデルのサイズ | 約2GB | 約6.8GB | 約10GB | 約20GB |
特徴 | 普及した初期のモデル系列 | SD1.5の後継 | SDXLの正式な後継 | Stable Diffusionから分岐したモデル系列 |
代表モデル | ChilloutMixepiCRealism万象熔炉 | AnythingMeina Mix | DreamShaper XLAnimagine XL万象熔炉 | Anything XLPony Diffusion XL | SD3(vanila) | Flux.1(vanila)STOIQO NewRealitySeaArt Infinity |
SD1.5系列のモデル
SD1.5系は、現在一般的に流通しているStable Diffusionのモデルの中で最も古いものです。古いと言っても性能が著しく劣るという意味ではありません。リリースから時間が経っている事から、多種多様のファインチューニング済みのCheckpointが公開されており、好みのスタイルの画像を生成しやすくなっています。同様にLoRAも数多く存在し、それらを組み合わせることで多様な画像を生成できます。
4種類の系列の中で最も単純なモデル系列なので、初心者さんにもお勧めしやすいモデル系列です。モデルが単純なだけにCheckpointやLoRAでの自由度も高く、私も最もよく使うモデル系列です。
代表的なモデルにはChilloutMixやAnything,Meina Mixなどがあります。
SDXL系列のモデル
SDXLはSD1.5の後継となるモデルで、SD1.5と比較して出力可能な画像の解像度が上がっていたり、パラメーター数(表現力に影響する)が大幅に増えていたりします。こちらもSD1.5と同様にファインチューニング済みのCheckpointが多く公開されています。ファインチューニング済みのCheckpointは生成できる画像の種類が多くなっており、SD1.5ではLoRAを使わないと生成できなかったような画像(特定の人物や構図など)をLoRAなしで生成できるようになっています。
ただし、SDXLはモデル間でのLoRAの互換性がよくないようで、SDXLのLoRAは学習に利用したモデルでは使えるのに別のモデルでは効果が出ないといった例も見られます。
初心者さんは、SD1.5を使いこなせるようになってからSDXLに挑戦する方が良いです。
代表的なモデルにはDreamShaper XL,Animagine XL,PonyDiffusion XLなどがあります。
ちなみに、SDXLのファインチューニング済みのモデルはAnimagine系とPony系に大別されますが、Ponyは生成される画像や生成方法の癖が強いのでAnimagine系から触るのをお勧めします。
SD3系列のモデル
2024年11月現在、SD3系はそれほど使われていません。10月末にはSD3.5がリリースされましたが、後述するFlux.1の方が使いやすいため流行りませんでした。今後ファインチューニングやLoRAの開発が進めば普及する可能性があります。
こちらは現在Stable Diffusionに慣れている方の間でもあまり使われていないので、初心者さんにはお勧めできません。
まだ新しいモデル系列なので代表的なモデルはSD3のベースモデルのみです。
Flux.1系列のモデル
Flux.1は2024年8月にリリースされました。最大の特徴はアルファベットを生成画像内に含められることです。これはSD3でも一応できるとされていますが、SD3では上手く生成できないことが多いです。
Flux.1の強みは他にもあり、1つのCheckpointで多様なスタイルの画像を生成できます。SD1.5やSDXLでは、実写系のCheckpointなら実写系の画像しか生成できない、というような制限がありました。しかし、Flux.1ではモデルサイズが大きくなったことにより1つのCheckpointで複数のスタイルを学習できたようです。
さらに、Flux.1ではSD1.5やSDXLで問題となっていた人間の指の破綻(指が6本とかの画像が生成されること)が圧倒的に少なくなっています。これにより、Flux.1は特に実写系の画像の生成に強いモデルとなっています。もちろんアニメ系の画像も生成できますがFlux.1の強みが活きるのはやはり実写系で、特に水面の反射や複雑な風景、人物像などで真価を発揮します。
プロンプトが適切であればほとんど全てのスタイルの画像を生成できるので、初心者さんにもお勧めできるモデルです。
代表的なモデルは、Flux.1(ベースモデル),STOIQO NewReality,SeaArt Infinityです。
SeaArt Infinityについて
SeaArt Infinityについては後日別の記事で詳しく解説するので、ここでは簡単に触れておきます。
SeaArt InfinityはSeaArtがFlux.1に対してファインチューニングを行ったCheckpointです。つまり、系統としてはFlux.1に属します。SeaArt上では2024年11月にSeaArt Infinityとその派生モデルのSeaArt RealismがSA1.0というカテゴリーに再分類されましたが、技術的にはFlux.1のファインチューニング済みモデルです。
様々なスタイルでの画像生成と人体の正確な表現に重きを置いてトレーニングされているようで、Fluxの強みを最大限に活かしたモデルとなっています。ちなみに、生成時にかかるコストも一般のFlux.1のモデルよりも若干安く設定されています。現状、「困ったら一旦Infinityでやってみよう」的な立ち位置の超有能なモデルですので、初心者さんでも気軽にお使いいただけます。
一部の外部サイトやSeaArt内の記事では、「InfinityはSDXLベースだ」や「Flux.1とは無関係」などとの誤情報が散見されますのでご注意ください。まぁそもそもテキストを生成出来る点でFlux.1ベースなのはほぼ自明なのですが。
まとめ
以上、Stable DiffusionのCheckpointについてざっくりと解説しました。ご不明点などがあればコメントでお気軽にご質問ください。