Revert loss scale for ipex

This commit is contained in:
Disty0
2023-06-19 23:59:10 +03:00
parent bba92bd48f
commit 6ea6f2448e
2 changed files with 2 additions and 5 deletions
+1 -3
View File
@@ -654,11 +654,9 @@ def train_hypernetwork(id_task, hypernetwork_name, learn_rate, batch_size, gradi
loss = shared.sd_model.forward(x, c)[0] / gradient_step
del x
del c
if shared.cmd_opts.use_ipex and loss > (1 / gradient_step):
loss = (loss - (1 / gradient_step)) * 10
_loss_step += loss.item()
scaler.scale(loss).backward()
scaler.scale(loss).backward()
# go back until we reach gradient accumulation steps
if (j + 1) % gradient_step != 0:
continue
@@ -486,8 +486,6 @@ def train_embedding(id_task, embedding_name, learn_rate, batch_size, gradient_st
else:
loss = shared.sd_model.forward(x, cond)[0] / gradient_step
del x
if shared.cmd_opts.use_ipex and loss > (1 / gradient_step):
loss = (loss - (1 / gradient_step)) * 10
_loss_step += loss.item()
scaler.scale(loss).backward()
@@ -496,6 +494,7 @@ def train_embedding(id_task, embedding_name, learn_rate, batch_size, gradient_st
continue
if clip_grad:
clip_grad(embedding.vec, clip_grad_sched.learn_rate)
scaler.step(optimizer)
scaler.update()
embedding.step += 1