Web検索はbingがおすすめ!

sd-scripts で"RuntimeError: Setting different lr values in different parameter groups is only supported for values of 0" エラーが発生する - Stable Diffusion

sd-scripts で"RuntimeError: Setting different lr values in different parameter groups is only supported for values of 0" エラーが発生する現象と対処法の紹介です。

現象

sd-scritpsを実行すると、次のエラーが発生します。
エラーメッセージ
RuntimeError: Setting different lr values in different parameter groups is only supported for values of 0

原因

いくつかの可能性が考えられますが、よくある原因の一つとして、 Text Encoderの学習率が設定されていない場合があります。

以下のtomlファイルの設定では、network_train_unet_only が false に設定されており、テキストエンコーダーの学習を実行する設定ですが、 学習率の設定は、unet_lr = 1 により、U-NETの学習率のみが設定されており、テキストエンコーダーの学習率が設定されていません。
エラーが発生するtomlファイル(部分)
[additional_network_arguments]
network_train_unet_only = false
cache_text_encoder_outputs = false
network_module = "networks.lora"

[optimizer_arguments]
optimizer_type = "prodigy"
optimizer_args = ["betas=0.9,0.999", "weight_decay=0"]
unet_lr = 1
network_dim = 16
network_alpha = 1
network_args = ["conv_dim=8"]
lr_scheduler="cosine"

...(以下略)

対処法1

テキストエンコーダーの学習率を設定します。learning_rate を設定すると、U-NETとテキストエンコーダーの両方の学習率を設定できます。
修正版tomlファイル(部分)
[additional_network_arguments]
network_train_unet_only = false
cache_text_encoder_outputs = false
network_module = "networks.lora"

[optimizer_arguments]
optimizer_type = "prodigy"
optimizer_args = ["betas=0.9,0.999", "weight_decay=0"]
learning_rate = 1
network_dim = 16
network_alpha = 1
network_args = ["conv_dim=8"]
lr_scheduler="cosine"

...(以下略)

対処法2

optimizer_type が"D-Adaptation"、"Prodigy" 以外の場合、unet_lrtext_encoder_lr の2つのパラメーターを設定する方法もあります。
修正版tomlファイル(部分)
[additional_network_arguments]
network_train_unet_only = false
cache_text_encoder_outputs = false
network_module = "networks.lora"

[optimizer_arguments]
optimizer_type = "AdamW"
text_encoder_lr = 5e-4
unet_lr = 1e-3
network_dim = 16
network_alpha = 1
lr_scheduler="cosine"

...(以下略)

tomlファイルを修正してsd-scriptsを実行し、エラーが発生しないことを確認します。

著者
iPentecのメインデザイナー
Webページ、Webクリエイティブのデザインを担当。PhotoshopやIllustratorの作業もする。
掲載日: 2024-01-14
iPentec all rights reserverd.