深度学习的本质是通过构建具有很多隐层的机器学习模型和海量的训练数据,来自动学习隐藏的有勇的特征,从而提升分类或预测的自动化与准确化。“深度模型”是手段,“特征学习”是目的。区别于传统的浅层学习,深度学习的特点在于:
- 强调了模型结构的深度,通常有五层,六层,甚至十多层的隐层节点;
- 明确突出了特征自动学习的重要性,也就是说,通过逐层特征变换,将样本在原空间的特征表示变换到一个新特征空间,从而使分类或预测更加容易。
- 与人工规则构造特征(硬编码,专家库)的方法相比,利用大数据来自动学习特征,更能够刻画数据的丰富内在信息。
1、 深度学习的基本思想
对于系统S它有(n)层(S1,…Sn),其输入是I(如一堆图像或者文本),输出是O,形象的表示为:I=>S1=>S2=>S3…=>Sn=O,假设输入I经过这个系统S后没有信息损失(事实上是不可能的,允许放松限制),既然输入I经过Si层都没有信息损失,那么可认为任意Si都是原有信息(输入I)的另一种表达,通过调整系统中的参数,使输出O仍然等于或近似输入I,就可以自动的获取输入I的一系列层次特征,既Sf1,…Sfn.
可见深度学习的基础思想就是堆叠多个层,将上一层的输出作为下一层的输入,逐步实现对输入信息的分级表达,让程序从中自动学习深入、抽象的特征。尤其值得注意的是“深度学习减少人工干预,而这恰恰保留了数据的客观性,因此可以提取出更加准确的特征”
2、深度学习的训练过程
正向传播
前一层的输出作为后一层的输入的逻辑结构,每一层神经元仅与下一层的神经元全连接,通过增加神经网络的层数虽然可为其提供更大的灵活性,让网络具有更强的表征能力,也就是说,能解决的问题更多,但随之而来的数量庞大的网络参数的训练,一直是制约多层神经网络发展的一个重要瓶颈
反相传播
反向传播(Backpropagation algorithm)全称“误差反向传播”,是在深度神经网络中,根据输出层输出值,来反向调整隐藏层权重的一种方法。