我一直在阅读有关机器学习,神经网络和深度学习的几个主题,其中一个是(在我看来)优秀的在线书籍:http://neuralnetworksanddeeplearning.com/chap1.html
在大多数情况下,我已经了解神经网络的工作方式,但有一个问题仍然让我感到困扰(这是基于网站上的示例): 我认为是一个带有输入层,隐藏层和输出层的三层神经网络。假设这些层有2,3和1个神经元(虽然数量并不重要)。
现在给出一个输入:x1和x2。因为网络是[2,3,1],所以权重是第一次是包含2x3和3x1矩阵的列表时随机生成的。偏差是3x1和1x1矩阵的列表。
现在我没有得到的部分: 在隐藏层中计算的公式:
weights x input - biases = 0
在每次迭代时,权重和偏差会根据导数略有变化,以便找到全局最优值。如果是这种情况,为什么不让每个神经元的偏差和权重收敛到相同的权重和偏差?
答案 0 :(得分:0)
我认为我通过做一些测试以及在互联网上找到一些信息找到了答案。答案在于具有随机的初始权重和偏差。如果所有“神经元”都相等,那么由于权重,偏差和输入相等,它们都会得到相同的结果。随机权重允许不同的答案:
x1 = 1
x2 = 2
x3 = 3
w1 = [0, 0, 1], giving w dot x = 3
w2 = [3, 0, 0], giving w dot x = 3
如果有人可以确认,请这样做。