基本概念
机器学习是将输入映射到目标的过程,这一过程是通过观察许多输入和目标的示例来完成的。深度学习使用的深度神经网络通过一系列简单的数据变换来实现这种输入到目标的映射,而这些数据变换都是通过观察示例学习到的。
神经网络中每层对于输入数据所做的操作都保存在该层的权重中,也就是说每层实现的变换都由其权重来参数化。在这种意义下,学习就是为神经网络的所有层找到一组权重值,使得该网络能够将每个示例输入与其目标正确的一一对应。想要控制神经网络的输出,就必须能够衡量输出于预测值之间的距离,这是神经网络损失函数的任务。损失函数的输入是网络预测值于真实目标值,输出值是一个距离值,用于衡量神经网络在这个示例上的好坏。
深度学习的技巧就是利用损失函数计算得到的距离值作为反馈信号来对权重值进行微调,从而降低当前示例对应的损失值。这种调节由实现了反向传播的优化器完成。
一开始对神经网络的权重随机赋值,只是让网络实现了随机变换,输出结果与理想结果的距离也很大。但是随着网络处理的示例越来越多,权重值也就能够不断的向正确的方向逐步微调,损失值也逐渐降低,这就是训练循环。将这种循环重复足够多的次数,得到的权重值就可以使损失函数最小,这样的神经网络其输出值和目标值会尽可能的接近,也就完成了神经网络的训练。
在之前的机器学习技术(浅层学习)中,通常会使用简单的变换,但这些变换不能得到复杂问题所需要的精确表示,所以人们必须尽全力让输入数据更适合使用一些常见的统计方法和分析方法进行处理,也必须手动为数据设计好的表示层,也称为特征工程。