用张量流切割keras中的损失函数输入

时间:2018-02-11 14:31:05

标签: tensorflow keras slice

在Keras中,我有一个y_true的目标向量,它适合于具有一个输出神经元的网络。 y_true = [0,1,0,1,1 ....]我有一些收益[1,1,1,-5,1 ...]

我试图将支付作为额外参数放入keras的自定义损失函数中。 Keras只允许将两个参数传递给它(y_true和y_pred),但我还想传递分配给每个样本的支付。为此,我在y_true中添加了第二列,其中包含这些值。

然后我尝试通过执行以下操作在损失函数中再次分离实际的y_true(第一列)和支付(第二列):

color: rgba(var(--color), 1)

这是我想要做的简化版本(在真实版本中,我将把收益整合到损失函数中)。但是对于上面的例子,我希望loss函数与只调用binary_cross entropy直接相同,y_true只包含y_true(没有任何支付)。

然而,结果并不像预期的那样,因为上面的自定义损失函数的精度值大约是一半。

导致此错误的原因是什么?我没有正确切割y_true吗?

问题与this post中描述的问题有关(curiale在2017年12月12日的评论建议使用slice_stack,但问题是相同的。)

1 个答案:

答案 0 :(得分:1)

我认为问题在于我还需要自定义指标功能。