论文中深度神经网络引言

论文中深度神经网络引言

问:深度神经网络是如何训练的?
  1. 答:Coursera的Ng机器学习,UFLDL都看过。没记错的话Ng的机器学习里是直接给出公式了,虽然你可能知道如何求解,但是即使不知道完成作业也不是问题,只要照着公式写就行。反正我当时看的时候心里并没能比较清楚的明白。我觉得想了解深度学习UFLDL教程 - Ufldl是不错的。有习题,做完的话确实会对深度学习有更加深刻的理解,但是总还不是很清晰。后来看了Li FeiFei的Stanford University CS231n: Convolutional works for Visual Recognition,我的感觉是对CNN的理解有了很大的提升。沉下心来推推公式,多思考,明白了反向传播本质上是链式法则(虽然之前也知道,但是当时还是理解的迷迷糊糊的)。所有的梯度其实都是对最终的loss进行求导得到的,也就是标量对矩阵or向量的求导。当然同时也学到了许多其他的关于cnn的。并且建议你不仅要完成练习,最好能自己也写一个cnn,这个过程可能会让你学习到许多更加细节和可能忽略的东西。这样的网络可以使用中间层构建出多层的抽象,正如我们在布尔线路中做的那样。例如,如果我们在进行视觉模式识别,那么在第一层的神经元可能学会识别边,在第二层的神经元可以在边的基础上学会识别出更加复杂的形状,例如三角形或者矩形。第三层将能够识别更加复杂的形状。依此类推。这些多层的抽象看起来能够赋予深度网络一种学习解决复杂模式识别问题的能力。然后,正如线路的示例中看到的那样,存在着理论上的研究结果告诉我们深度网络在本质上比浅层网络更加强大。
  2. 答:最终的线路包含至少三层线路的单元。实际上,这个线路很可能会超过三层,因为我们可以将子任务分解成比上述更小的单元。但是基本思想就是这样。因此深度线路让这样的设计过程变得更加简单。但是这对于设计本身帮助并不大。其实,数学证明对于某些函数设计的非常浅的线路可能需要指数级的线路单元来计算。例如,在1980年代早期的一系列著名的论文已经给出了计算比特的集合的奇偶性通过浅的线路来计算需要指数级的门。另一当面,如果你使用更深的线路,那么可以使用规模很小的线路来计算奇偶性:仅仅需要计算比特的对的奇偶性,然后使用这些结果来计算比特对的对的奇偶性,以此类推,构建出总共的奇偶性。深度线路这样就能从本质上获得超过浅线路的更强的能力。
  3. 答:我就以卷积神经网络为例来说吧。卷积神经网络的训练过程就是对大量带标签数据(监督学习)通过反向传播算法学习网络结构中的参数。其基本思想是:基于一组设置的初始化模型参数,比如利用高斯分布来随机初始化网络结构中的参数,输入数据在卷积神经网络中经过前向传播会得到一个期望输出,如果这个期望输出与数据的实际类别标签不相同,则将误差逐层反向传播至输入层,每层的神经元会根据该误差对网络结构中的参数进行更新。对卷积神经网络而言,待学习的参数包括卷积核参数、层间的连接参数以及各层的偏置。训练好的模型能够计算新输入数据对应的类别标签,从而完成分类或预测任务。
问:深度神经网络是什么意思?
  1. 答:深度神经网络是机器学习(ML, Machine Learning)领域中一种技术。
    在监督学习中,以前的多层神经网络的问题是容易陷入局部极值点。如果训练样本足够充分覆盖未来的样本,那么学到的多层权重可以很好的用来预测新的测试样本。但是很多任务难以得到足够多的标记样本,在这种情况下,简单的模型,比如线性回归或者决策树往往能得到比多层神经网络更好的结果(更好的泛化性,更差的训练误差)。
    扩展资料:
    非监督学习中,以往没有有效的方法构造多层网络。多层神经网络的顶层是底层特征的高级表示,比如底层是像素点,上一层的结点可能表示横线,三角。
    而顶层可能有一个结点表示人脸。一个成功的算法应该能让生成的顶层特征最大化的代表底层的样例。如果对所有层同时训练,时间复杂度会太高; 如果每次训练一层,偏差就会逐层传递。这会面临跟上面监督学习中相反的问题,会严重欠拟合。
论文中深度神经网络引言
下载Doc文档

猜你喜欢