我在Keras中有一个成本函数,其中有3个部分与我的网络的不同输出有关。假设这是我的损失函数:
aL1+bL2+cL3
表示L1是毫秒,L2是二进制交叉熵,L3尝试使输出中不具有值0
或1(∑n (x≠0 or x≠1))
的像素数最小,但是我不知道如何制作最后一个损失函数?!(a,b和c是每个损失函数的系数)
输出应为28x28二进制图像,其值为0或1。通过将此术语添加到损失函数,我试图将输出强制为0或1,而其他值则尝试放入这两个类之一。但是我不知道如何产生该损失函数,或者将这些损失函数组合在一起?如果我只有两个第一个损失函数,我会这样做
model.compile(optimizer=opt, loss=`{'decoder_output':'mse','reconstructed_W':'binary_crossentropy'}, loss_weights={'decoder_output': 0.1, 'reconstructed_W': 1.0},metrics=['mae'])`
第三个损失与reconstructed_w
有关,我想将其值强制为0或1,但我不知道该如何编码。您能帮我解决这个问题吗?我感谢您的帮助。我真的需要您的指导。