计算Keras中自定义图层中的渐变

2024-07-04 04:59:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经编写了一个代码来计算Keras中自定义层中的Choquet池。在指向笔记本的Colab链接下方: https://colab.research.google.com/drive/1lCrUb2Jm680JRnACPxWpxkOSkP_DlHGj 正如您所能看到的,代码在梯度计算中崩溃,正好在函数custom_grad内部。这是不可能的,因为我将返回0个与上一层形状相同的渐变。 所以我有两个问题:

  • Keras(或Tensorflow)是计算层输入和层输出之间梯度的一种方法吗
  • 如果我传递了一个与前一层形状相同的张量,但填充了0,为什么代码不起作用

谢谢你的关注,我在等待你的帮助。 提前谢谢


Tags: 代码httpscom链接google笔记本drivekeras
1条回答
网友
1楼 · 发布于 2024-07-04 04:59:59

没有人对这个问题感兴趣。 经过几次试验,我找到了解决办法。问题在于,正如Mainak431在GitHub回购协议中所述: link to diff and non-diff ops in tensorflow

有可微张量流运算和不可微运算。在Colab笔记本中,我使用了不可微的散射和更新作为示例。 因此,我建议,如果您想在Keras中创建自己的自定义层,请查看上述列表,以便使用允许Keras为您自动区分的操作。 不管怎样,我正在研究它,以便尽可能多地为这个开放的研究课题提供信息。我记得,对于神经网络,“乐高玩具”是一个边界,我确信你们中的许多人都对在深层神经网络模型中添加操作(聚合或其他东西)感兴趣。 特别感谢Maniak431,我爱你<;三,

相关问题 更多 >

    热门问题