【问题标题】:Keras - Case wise masking of the output for backpropagationKeras - 反向传播输出的大小写屏蔽
【发布时间】:2016-07-15 03:07:16
【问题描述】:

我正在尝试在 Keras 中复制这篇文章 https://arxiv.org/pdf/1606.07659v1.pdf。它使用自动编码器作为推荐系统。这个想法是掩盖一些已知值(评级),以便教您的网络预测未知值,同时正确重建其他值。 因此,您有三种类型的评级:非屏蔽已知值、屏蔽已知值(变为 0)和未知值(变为 0)。 您的损失函数只需要包含未屏蔽的已知值和屏蔽的已知值的错误,但如果我理解正确,您还需要屏蔽未知值的输出以进行反向传播,以便不将它们包含在权重更新中(并且它需要区分大小写)。链接(forward and back propagation)中的附图来自文章教程,解释了前向和反向传播的步骤。

您对如何实现这种对输出的大小写屏蔽或任何其他方式来处理此问题有任何想法吗?

非常感谢!

【问题讨论】:

    标签: backpropagation keras


    【解决方案1】:

    如果两个张量(A,Mask)具有相同的形状或可以广播为相同的形状。然后使用A*Mask 实现元素屏蔽。

    可以通过K.switch()document 中实现大小写屏蔽。例如,K.switch(T.equal(Mask, 0), 0, A) 如果 Mask 为 0 则返回 0 否则 A 元素明智。

    【讨论】:

      猜你喜欢
      • 2018-05-05
      • 2021-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-16
      • 1970-01-01
      • 2021-09-18
      • 1970-01-01
      相关资源
      最近更新 更多