【发布时间】:2019-06-08 16:09:58
【问题描述】:
我想在张量流中基于直方图定义一个损失函数,但这需要直方图函数来支持梯度,但事实并非如此。例如,使用 tf.histogram_fixed_width 我得到一个错误“没有为任何变量提供渐变,请检查你的图形是否有不支持渐变的操作”。 因此,我正在寻找一种解决方法或替代函数来计算支持梯度的张量流中的直方图。
【问题讨论】:
标签: tensorflow histogram gradient
我想在张量流中基于直方图定义一个损失函数,但这需要直方图函数来支持梯度,但事实并非如此。例如,使用 tf.histogram_fixed_width 我得到一个错误“没有为任何变量提供渐变,请检查你的图形是否有不支持渐变的操作”。 因此,我正在寻找一种解决方法或替代函数来计算支持梯度的张量流中的直方图。
【问题讨论】:
标签: tensorflow histogram gradient
损失函数必须是 f(x, [y, ...])->R 的形式。它必须产生一个实数并且必须是可微的(对于每个 R 都必须存在一种朝向更好解决方案的方向感)。直方图接受您的输入,但会产生一个数据结构作为输出,并且它们不可微分。您可以尝试用自己的话来定义“更好”或“良好”的直方图应该是什么样子。如果你心中有一个形状,你可以用理想直方图来描述它,并使用 KL 散度作为理想直方图和实际直方图之间的损失函数。
【讨论】: