0
私はdeconvを行うために以下のスニペットを持っています。Tensorflow conv2d_transposeシェイプ
x.get_shapeは()私に与えます(?、14、14、128)
self.w.get_shape()は私に(3、3、64、128)を与える
output_shapeは(あるべき?、14、14、64)
フィルタサイズは、[3,3]、ストライド[1、1、1、1]であり、パディングは 'SAME'
しかしh.get_shape()が私を与えています私が見たいと思っていた(?、?、?、128)(?, 14,14,64)。
どこにエラーがあるのかを教えてもらえますか?
print(x.get_shape())
print(self.w.get_shape())
output_shape = tf.pack([tf.shape(x)[0],
self.output_size[0],
self.output_size[1],
self.output_size[2]])
h = self.activation(
tf.nn.bias_add(
tf.nn.conv2d_transpose(
x, self.w,
output_shape=output_shape,
strides=self.stride,
padding=self.padding
), self.b
)
)
print(h.get_shape())
しかしこれはdeconvです。体重の元の形を維持する必要がありますか? – ATANG
理解している限り、深さ128のxを深さ64の別のテンソルに変換しようとしています。したがって、[3、3、128、64]の形を使用する必要があります。 –