add adding v-pred like loss for noise pred

This commit is contained in:
Kohya S
2023-07-31 08:23:28 +09:00
parent 7e474d21ca
commit 0636399c8c
5 changed files with 41 additions and 10 deletions

View File

@@ -24,6 +24,7 @@ from library.custom_train_functions import (
apply_snr_weight,
prepare_scheduler_for_custom_training,
scale_v_prediction_loss_like_noise_prediction,
add_v_prediction_like_loss,
)
imagenet_templates_small = [
@@ -566,6 +567,8 @@ class TextualInversionTrainer:
loss = apply_snr_weight(loss, timesteps, noise_scheduler, args.min_snr_gamma)
if args.scale_v_pred_loss_like_noise_pred:
loss = scale_v_prediction_loss_like_noise_prediction(loss, timesteps, noise_scheduler)
if args.v_pred_like_loss:
loss = add_v_prediction_like_loss(loss, timesteps, noise_scheduler, args.v_pred_like_loss)
loss = loss.mean() # 平均なのでbatch_sizeで割る必要なし