gpt4 book ai didi

卷积层的 tensorflow 大小

转载 作者:行者123 更新时间:2023-12-04 00:57:49 29 4
gpt4 key购买 nike

我正在尝试从一篇研究论文中重新创建一个 cnn,但我对深度学习还是个新手。

我得到了一个大小为 32x32x7 的 3d 补丁。我首先想执行一个大小为 3x3 的卷积,具有 32 个特征和步幅为 2。然后根据该结果,我需要执行具有 64 个特征和步幅为 1 的 3x3x4 卷积。我不想合并或激活两个卷积之间的函数。 为什么我不能将第一个卷积的结果输入第二个?

   import tensorflow as tf
sess = tf.InteractiveSession()

def conv3d(tempX, tempW):
return tf.nn.conv3d(tempX, tempW, strides=[2, 2, 2, 2, 2],
padding='SAME')

def conv3d_s1(tempX, tempW):
return tf.nn.conv3d(tempX, tempW, strides=[1, 1, 1, 1, 1],
padding='SAME')

def weight_variable(shape):
initial = tf.truncated_normal(shape, stddev=0.1)
return tf.Variable(initial)

x = tf.placeholder(tf.float32, shape=[None, 7168])
y_ = tf.placeholder(tf.float32, shape=[None, 3])
W = tf.Variable(tf.zeros([7168,3]))

#first convolution
W_conv1 = weight_variable([3, 3, 1, 1, 32])
x_image = tf.reshape(x, [-1, 32, 32, 7, 1])
h_conv1 = conv3d(x_image, W_conv1)

#second convolution
W_conv2 = weight_variable([3, 3, 4, 1, 64])
h_conv2 = conv3d_s1(h_conv1, W_conv2)

谢谢!

最佳答案

在第一个 conv3d 之后,您有形状为 [None, 16, 16, 4, 32] 的张量,因此您必须使用形状为 [3 的内核, 3, 4, 32, 64] 在第二个 conv3d_s1.

关于卷积层的 tensorflow 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46182362/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com