-->

定制keras损失函数用于计算非零个或一个值(custom keras loss function

2019-10-31 08:21发布

我在Keras其中有3个部分涉及到我的网络的输出不同的成本函数。 想这是我的损失函数:

aL1+bL2+cL3即L1是MSE,L2是二进制交叉熵和L3尽量使在输出像素不具有值的最小数目01(∑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,但我不知道如何实现代码。 请你帮我这个问题? 我感谢您的帮助。 我真的需要你的指导。

文章来源: custom keras loss function for counting non zero or one values