神经网络如何提取特征

How neural net extract features

我是神经网络方面的新手。看了很多平台的教程,但是有一点我不明白

在一个简单的多层感知器中: 我们有输入层,这个例子的隐藏层(与输入层有相同数量的神经元)和一个有一个单元的输出层。

我们随机初始化隐藏层单元的权重,但在一个较小的范围内。 现在,输入层与隐藏层完全连接。 所以隐藏层中的每个单元都将接收相同的参数。他们将如何相互提取不同的特征?

谢谢解释!

We initialize the weights of the units in hidden layer randomly but in a range of small values. Now, the input layer is fully connected with the hidden layer. So each units in hidden layer are going to receive the same parameters. How are they going to extract different features from each other ?

实际上每个神经元不会有相同的值。要获得隐藏层的激活,您可以使用矩阵方程 Wx + b 在这种情况下,W 是形状的权重矩阵(隐藏大小,输入大小)。 x是shape隐藏层的输入向量(Input Size),b是shape的bias(Hidden Size)。这会导致激活形状(隐藏尺寸)。因此,虽然每个隐藏的神经元都是 "seeing" 相同的 x 向量,但它将采用 x 与其自己的随机行向量的点积,并添加自己的随机偏差,这将为该神经元提供不同的值。 W 矩阵和 b 向量中包含的值是经过训练和优化的。由于他们有不同的起点,他们最终将通过梯度下降学习不同的特征。