我正在尝试使用tensorflow后端将keras变量与自身进行卷积,但它会引发一个错误说 “ValueError:len(dilation_rate)= 2但应为0”
我正在尝试运行的代码是
import keras.backend as K
import numpy as np
sess = K.get_session()
t = K.variable(np.arange(9).reshape(3, 3).astype(np.float32))
convs = K.conv2d(t, t, padding='valid')
a = sess.run(convs)
想了解为什么这不起作用?以及如何让它发挥作用。 谢谢。
答案 0 :(得分:1)
卷积输入必须具有形状(BatchSize, width, height, inputChannels)
卷积滤镜必须具有形状(width, height, inputChannels, outputChannels)
所以,它只有在形状如下时才有效:
K.conv2d(K.reshape(t,(-1,3,3,1)), K.reshape(t,(3,3,1,1)))