How does keras handle multiple losses?

前端 未结 2 1480
误落风尘
误落风尘 2020-12-12 17:32

If I have something like:

model = Model(inputs = input, outputs = [y1,y2])

l1 = 0.5
l2 = 0.3
model.compile(loss         


        
2条回答
  •  刺人心
    刺人心 (楼主)
    2020-12-12 17:43

    For multiple outputs to back propagate, I think it is not a complete answer from what's mentioned by Fábio Perez.

    Also, what does it mean during training? Is the loss2 only used to update the weights on layers where y2 comes from? Or is it used for all the model's layers?

    For output C and output D, keras will compute a final loss F_loss=w1 * loss1 + w2 * loss2. And then, the final loss F_loss is applied to both output C and output D. Finally comes the backpropagation from output C and output D using the same F_loss to back propagate.

提交回复
热议问题