Python 从教学上讲,在这个CNN模型中,我可以识别多少层和哪些层?

Python 从教学上讲,在这个CNN模型中,我可以识别多少层和哪些层?,python,tensorflow,deep-learning,conv-neural-network,Python,Tensorflow,Deep Learning,Conv Neural Network,该模型将接收图像的像素作为输入 def model(data): conv = tf.nn.conv2d(data, layer1_weights, [1, 2, 2, 1], padding='SAME') hidden = tf.nn.relu(conv + layer1_biases) conv = tf.nn.conv2d(hidden, layer2_weights, [1, 2, 2, 1], padding='SAME')

该模型将接收图像的像素作为输入

def model(data):
        conv = tf.nn.conv2d(data, layer1_weights, [1, 2, 2, 1], padding='SAME')
        hidden = tf.nn.relu(conv + layer1_biases)
        conv = tf.nn.conv2d(hidden, layer2_weights, [1, 2, 2, 1], padding='SAME')
        hidden = tf.nn.relu(conv + layer2_biases)
        shape = hidden.get_shape().as_list()
        reshape = tf.reshape(hidden, [shape[0], shape[1] * shape[2] * shape[3]])
        hidden = tf.nn.relu(tf.matmul(reshape, layer3_weights) + layer3_biases)
        return tf.matmul(hidden, layer4_weights) + layer4_biases

问题是什么?您可以将代码转换为
卷积->relu->卷积->relu->重塑->线性->relu->线性
,这将生成两个卷积层和两个线性layers@silgon:有些()会认为ReLU本身就是一个层。是的,根据观点,添加3
ReLU
。我只是不习惯在论文中将激活函数视为层。所以,这些是线性层?-->tf.matmul(隐藏,[shape[0],shape[1]*shape[2]*shape[3]->tf.matmul(隐藏,layer4_权重)+layer4_bias问题是什么?你可以将你的代码翻译成
卷积->relu->卷积->relu->重塑->线性->relu->线性
,这将产生两个卷积层和两个线性layers@silgon:一些()会认为ReLU本身构成了一个层。是的,根据观点,添加3
ReLU
。我只是不习惯在论文中将激活函数视为层。所以,这些是线性层?-->tf.重塑(隐藏,[形状[0],形状[1]*形状[2]*形状[3]])-->tf.matmul(隐藏,层4权重)+层4偏差