Keras模型中的Tensorflow操作

时间:2017-07-12 20:39:37

标签: python tensorflow deep-learning keras

我试图在Keras模型中使用tensorflow操作。我之前尝试用Lambda图层包装它,但我相信这会禁用那些图层'反向传播。

更具体地说,我尝试在Keras模型中使用来自here的图层,而不将其移植到Keras图层(我希望稍后部署到tensorflow)。我可以在共享库表单中编译这些层并将它们加载到python中。这给了我张量流操作,我不知道如何在Keras模型中将它结合起来。

Keras MNIST模型的一个简单示例,例如,一个Conv2D层被tf.nn.conv2d op替换,这正是我正在寻找的。

我已经看过this教程,但它似乎与我正在寻找的相反。它似乎将Keras层插入到张量流图中。我正在寻找相反的事情。

祝你好运, 汉斯

1 个答案:

答案 0 :(得分:2)

大约两周过去了,我现在似乎能够回答我自己的问题了。

如果使用this装饰器注册渐变,看起来像tensorflow可以查找渐变。在编写时,C ++中尚未提供此功能,这正是我所寻求的。解决方法是在C ++中定义一个普通的op,并使用提到的装饰器将其包装在python方法中。如果具有相应梯度的这些函数用张量流注册,则反向传播将“自动”发生。