SDXLのLoRA学習傾向 - Stable Diffusion
SDXLのLoRAのパラメーターの違いによる学習結果のまとめです。
network_dim
こちらの記事の結果によると、
network_dim が小さいと、少ない学習回数で学習結果が反映されやすくなります。
network_dim が大きい場合と、network_dimが小さい場合とを比べると、network_dim が大きいほうが同じ学習回数でも学習結果が反映されにくくなります。
一方で、
こちらの記事の
結果から学習回数が多くなると、network_dim の値にかかわらず学習しすぎ状態になるように見えます。
| 学習回数(小) | 学習回数(中) | 学習回数(大) |
network_dim (低) | 反映 | 反映 | 学習しすぎ |
network_dim (高) | 反映されにくい | 反映 | 学習しすぎ |
network_alpha
こちらの記事の結果によると、
network_alphaの値をやや大きくすると、少ない学習回数でも学習が進む結果になりました。
一方で、network_alphaの値が大きいと、崩れた画像が出力されてしまう場合もあります。
画像の崩れを少なくし、少ない学習回数で学習結果を反映させたい場合は、network_dim の半分程度の値を設定するのが良さそうです。
一方で、極力画像の崩れを少なくする場合は、network_alphaの値を最小の"1"に設定する方法もよさそうです。
学習回数
こちらの記事の結果によると、
学習回数が少ないと学習画像が反映されない場合や、幾何学模様状の出力になる傾向です。
学習回数が増えると学習画像に近いキャラクターが出力されます。一方で、背景が学習元の画像に影響を受けてしまい、背景が表示されない場合が増えます。
network_dimの値が大きいほど、学習の進みが若干遅く、ステップ数を増やしても学習元の画像の影響を若干ですが受けにくくなります。
テキストエンコーダーを含めた学習 / U-NETのみの学習
こちらの記事の結果によると、
テキストエンコーダーを学習させると、より学習画像の形状に忠実な出力になる傾向です。
一方で、元のモデルの出力イメージは反映されにくくなる傾向です。絵柄や絵の雰囲気を反映させたい場合は、U-NETのみを学習したほうが良さそうです。
キャラクターを忠実に一致させたい場合は、テキストエンコーダーを含めた学習が良さそうです。
C3Lier
こちらの記事の結果によると、SDXLの場合は、C3Lierでは通常のLoRAより幾何学模様の出力が増える印象です。
さらに検証が必要ですが、C3Lierは学習の進みが早い可能性があるため、100Epoch手前を調べる必要がありそうです。
著者
iPentecのメインデザイナー
Webページ、Webクリエイティブのデザインを担当。PhotoshopやIllustratorの作業もする。