1

我想计算不断卷积像模糊或重新取样,并希望它永远不会改变durung训练。Keras中可以有不可训练的层吗?

我可以将卷积核初始化为常量并将其排除在Keras中的训练之外?

UPDATE

我不想用这个在文档中声明的目的。我想这样实现残留网络:一个分支执行正常的可训练卷积,而并行分支执行一些常量,如平均。

回答

2

您应该能够将trainable = False参数传递到图层定义,或者在创建图层后设置layer.trainable = False属性。在后一种情况下,你需要在事实之后进行编译。请参阅FAQ here

然后,您可以通过传递kernel_initializer = initializer argument来设置层的恒定权重。有关初始化程序的更多信息can be found here。如果你已经在某个地方定义了权重矩阵,我认为你需要定义一个自定义初始化器来将权重设置为你想要的值。该链接显示了如何在底部定义自定义初始化程序。

这就是说,我没有验证过,当我做了Google搜索时,我看到很多关于图层冻结的bug报告弹出不正确。值得一枪,但。

+0

一旦我设置图层不可训练,我该如何设置卷积权重? – Dims

+0

@Dims查看我的更新。希望有帮助。 – Engineero

相关问题