Keras中Conv2D和Convolution2D的区别
Posted
技术标签:
【中文标题】Keras中Conv2D和Convolution2D的区别【英文标题】:Difference between Conv2D and Convolution2D in Keras 【发布时间】:2018-05-05 00:12:08 【问题描述】:Tensorflow 已经有了答案。 但问题是 在我的 IDE 中 Conv2D 是一个类 而 Convolution2D 是一个变量?
【问题讨论】:
【参考方案1】:来自keras source code,它们是相同的: (源代码不时更改,上面链接中的行号最终可能会出错)
# Aliases
Convolution1D = Conv1D
Convolution2D = Conv2D
Convolution3D = Conv3D
SeparableConvolution2D = SeparableConv2D
Convolution2DTranspose = Conv2DTranspose
Deconvolution2D = Deconv2D = Conv2DTranspose
Deconvolution3D = Deconv3D = Conv3DTranspose
【讨论】:
为什么我收到此警告用户警告:更新您对 Keras 2 API 的Conv2D
调用:Conv2D(32, (3, 3), input_shape=(64, 64, 3..., activation="relu")
classifier.add(Conv2D(32,3,3,input_shape=(64,64, 3),activation='relu'))
因为您传递参数的方式在 Keras1 中是可以的,但不是 keras 2 的方式。它仍然支持旧方式,但它会给你这个信息。注意kernel_size=(3,3)
。这就是在 keras 2 中应该如何完成的。以上是关于Keras中Conv2D和Convolution2D的区别的主要内容,如果未能解决你的问题,请参考以下文章
Keras / Theano:如何添加 Convolution2D 层?
Keras 中的 conv2d 和 Conv2D 有啥区别?
keras.layers.Conv2D 的默认内核大小、零填充和步幅是多少?