机器学习之深度学习

深度学习

机器学习的本质:

  1. 特征自动学习

    在机器学习中,获得好的特征是识别成功的关键

    • 一般而言,特征越多,给出的信息就越多,识别准确性会得到提升。
    • 但是如果特征多,那么计算的复杂度就会增加,探索的空间大,可以用来训练的数据在每个特征上就会稀疏。

    所以,深度学习需要解决的问题就是:让机器自动地学习特征。

  2. 层次网络结构

    深度学习的本质上就是模拟人脑的思维方式。1981年由人脑视觉信息系统的信息处理机制发现,当瞳孔发现了眼前物体的边缘,而这个边缘指向某个方向时,这种神经元细胞就会活跃。

    视觉的层次性:

    • 人的视觉系统的信息处理是分级的

    • 高层的特征是底层特征的组合,从底层到高层越来越抽象,越来越能表现语义或意图

    • 抽象的层面越高,存在的可能猜测就越少,就越利于分类

      由上面两幅图可以看出,神经网络和视觉识别的模式都是相同的,都是由底层特征向高层特征靠拢,最终收敛。并且高层特征往往比底层特征更易于分类,比如由 图一 中的 edge图 完全无法得知这些边缘到底是什么物体的边缘,所以,还要向继续高层特征抽取。

    • 高层特征或者图像,往往是由一些基本结构(浅层特征)组成的

    相同的底层特征,可以组合出不同的高层特征

  3. 深层网络结构:

    • 浅层学习的局限性:有限样本和计算单元情况下对复杂函数的表示能力有限,针对复杂分类问题其泛化能力有限。例如机器学习,只能通过大量的数据建造一个模型或者说是拟合函数
    • 深层学习的好处:可通过学习一种深层非线性网络结构,实现复杂函数逼近,表征输入数据分布式表示。
神经网络和深度学习:

由上图可以看出,深度学习比神经网络多了中间的隐含层,而如此多隐含层的作用则是通过这些隐含层一层一层的提取更高级特征,深度学习最后一层的作用其实也就是分类。深度学习的本质换句话来说也就是通过深层次的网络结构来进行自动的、无监督的学习特征,再加上最后一层的分类器实现预测或分类。

深度学习与浅层学习的区别:
  1. 深度学习强调了模型结构的深度,通常有5~10或者是更多层的隐藏层结点。
  2. 明确突出了特征学习的重要性,通过逐层特变换,将样本在原空间的特征表示变换到一个新特征空间,从而使分类或预测更加容易。与人工规则构造特征的方法相比,利用大数据来学习特征,更能够刻画数据的丰富内在信息。
深度学习的训练方法:
  1. 神经网络:采用BP算法调整参数,即采用迭代算法来训练整个网络。随机设定处置,计算当前网络的输出,然后根据当前输出和样本真实标签之间的差去改变前面各层的参数,直到收敛。
  2. 深度学习:采用逐层训练机制。采用该机制的原因在于如果采用BP机制,对于一个deep network(7层以上),残差传播到最前面的层将变得很小,出现所谓的gradient diffusion(梯度消散)
  3. 不采用BP算法的原因:
    1. 反馈调整时,梯度越来越稀疏,从顶层越往下,误差校正信号越来越好。
    2. 收敛易至局部最小,由于是采用随机值初始化,当初值是远离最优区域时易导致这一情况。
    3. BP算法需要有标签数据来训练,但大部分特征学习是无标签的。

你可能感兴趣的:(机器学习笔记,深度学习,机器学习,神经网络)