0

我正在阅读一篇论文,作者将他们的网络描述如下:

“为了训练相应的深度网络,使用了一个具有一个隐藏层的全连接网络。该网络有九个二进制输入节点。隐藏层包含一个 sigmoid 节点,输出层有一个内积函数。因此,网络有 10 个变量。”

该网络用于预测连续数 (y)。我的问题是,我不明白 sigmoid 节点之后的网络结构。输出层是做什么的?内积是做什么用的?

4

1 回答 1

0

通常,每个神经元的预激活函数是内积(或向量-向量乘法中的点积)和一个用于引入偏差的加法的组合。单个神经元可以描述为

z = b + w1*x1 + x2*x2 + ... + xn*xn
  = b + w'*x
h = activation(z)

其中b是一个附加项(神经元的偏差),每个h都是一层的输出,对应于下一层的输入。在“输出层”的情况下,就是y = h. 一个层也可能由多个神经元组成,或者 - 就像在您的示例中一样 - 仅由单个神经元组成。

在所描述的情况下,似乎没有使用偏见。我的理解如下:

对于 的每个输入神经元x1x9使用单个权重,这里没什么特别的。由于有 9 个输入,这就产生了 9 个权重,结果如下:

hidden_out = sigmoid(w1*x1 + w2*x2 + ... + w9*x9)

为了将隐藏层连接到输出,同样的规则适用:输出层的输入被加权,然后对所有输入求和。由于只有一个输入,因此只有一个权重要“求和”,这样

output = w10*hidden_out

请记住,sigmoid 函数将其输入压缩到 0..1 的输出范围内,因此将其乘以权重会将其重新缩放到所需的输出范围。

于 2017-02-05T18:22:08.207 回答