当前位置:首页 > 神经网络 > 正文

简述神经网络训练过程

深度神经网络是如何训练的?

我已阅读CourseraNG机器学习和UFLDL。 如果我没记错的话,NG机教程里直接给出了公式,就算你知道怎么解,不知道怎么完成作业也不是问题。 反正我看到的时候显然没看懂。 我觉得学习一下深度学习UFLDL教程-Ufldl还是不错的。 完成练习后,你会对深度学习有一个深入的了解,但仍然不是很清楚。 后来读了李飞飞的斯坦福大学CS231n:ConvolutionalNeuralNetworksforVisualRecognition,感觉对CNN的理解有了很大的提高。 静下心来推公式后,我思考更多,意识到反向传播本质上是一个链式定律(虽然我之前就知道,但当时还是理解得很清楚)。 都是通过最终的loss,即标量到矩阵或者向量逐步得到的。 当然,同时我也了解了很多关于CNN的知识。 并且建议你不仅完成练习,还自己编写cnn,这个过程会让你学到更多的细节和你可能忽略的东西。 这样的网络可以使用中间层来构建多层抽象,例如布尔电路。 例如,如果我们正在进行视觉模式识别,第一层中的神经元可以学习检测边缘,第二层中的神经元可以学习基于边缘检测复杂的形状,例如三角形或矩形。 第三层可以区分复杂的形状。 如此等等。 深层网络的这些多个抽象层似乎提供了解决复杂模式识别问题的学习能力。 然后,理论研究结果告诉我们,深层网络本质上比浅层网络更强大,如直线示例所示。