|
if stop_text_encoder_training: |
|
print(f"stop text encoder training at step {global_step}") |
|
text_encoder.train(False) |
train(False)は推論に使わないdropoutを無効化するなどの機能で、パラメータの更新を止めるものではないようです。
https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.eval
勾配計算を無効化するには、
text_encoder.requires_grad_(False)
でできますが、勾配が0になるだけでAdamの残ったモーメント分は更新されてしまうらしいです。
止まっていないことはtext_encoder/pytorch_model.binのhash値で確認しました。
sd-scripts/train_db.py
Lines 1011 to 1013 in d9bb4aa
train(False)は推論に使わないdropoutを無効化するなどの機能で、パラメータの更新を止めるものではないようです。
https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module.eval
勾配計算を無効化するには、
text_encoder.requires_grad_(False)でできますが、勾配が0になるだけでAdamの残ったモーメント分は更新されてしまうらしいです。
止まっていないことはtext_encoder/pytorch_model.binのhash値で確認しました。