web-dev-qa-db-fra.com

Comment puis-je traiter la perte multiple dans Pytorch?

enter image description here

Comme cela, je veux utiliser une perte auxiliaire pour promouvoir les performances de mon modèle.
Quel type de code peut l'implémenter dans pytorch?

#one
loss1.backward()
loss2.backward()
loss3.backward()
optimizer.step()
#two
loss1.backward()
optimizer.step() 
loss2.backward()
optimizer.step() 
loss3.backward()
optimizer.step()   
#three
loss = loss1+loss2+loss3
loss.backward()
optimizer.step()

Merci pour votre réponse!

13
heiheihei

La première et la troisième tentative sont correctes mais pas identiques.

Il calculera le flux de gradient de Conv 11x11 plusieurs fois si vous utilisez la première tentative, mais une seule fois, utilisez la troisième tentative.

Pareil pour Conv 5x5, Conv 3x3 ... calcul du gradient.

0
xiaobao