1

下面的代码会代表一层还是两层?我很困惑,因为神经网络中不应该还有一个输入层吗?

input_layer = slim.fully_connected(input, 6000, activation_fn=tf.nn.relu)
output = slim.fully_connected(input_layer, num_output)

是否包含隐藏层?我只是想能够可视化网络。提前致谢!

4

2 回答 2

1

在此处输入图像描述

你有一个带有一个隐藏层的神经网络。在您的代码中,input对应于上图中的“输入”层。input_layer就是图像所说的“隐藏”。output就是图像所说的“输出”。

请记住,神经网络的“输入层”不是传统的全连接层,因为它只是没有激活的原始数据。这有点用词不当。上图中输入层中的那些神经元与隐藏层或输出层中的神经元不同。

于 2017-05-31T18:57:05.777 回答
0

来自tensorflow-slim

此外,TF-Slim 的 slim.stack 运算符允许调用者重复应用具有不同参数的相同操作来创建堆栈或层塔。slim.stack 还为每个创建的操作创建一个新的 tf.variable_scope。例如,创建多层感知器 (MLP) 的简单方法:

# Verbose way:
x = slim.fully_connected(x, 32, scope='fc/fc_1')
x = slim.fully_connected(x, 64, scope='fc/fc_2')
x = slim.fully_connected(x, 128, scope='fc/fc_3')

# Equivalent, TF-Slim way using slim.stack:
slim.stack(x, slim.fully_connected, [32, 64, 128], scope='fc')

所以这里提到的网络是一个[32, 64,128]网络——一个隐藏大小为64的层。

于 2017-05-28T17:57:11.543 回答