Skip to content

text encoderの学習が途中で止まらない #4

@laksjdjf

Description

@laksjdjf

sd-scripts/train_db.py

Lines 1011 to 1013 in d9bb4aa

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値で確認しました。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions