想要学习深度学习,就要先温习一下机器学习,弄清楚二者之间的关系。
简单来说,机器学习就是从历史数据中探索和训练出数据的普遍规律,将其归纳为相应的数学模型,并对未知的数据进行预测的过程。至于在这个过程中所碰到的各种各样的问题,如数据质量、模型评价标准、训练优化方法、过拟合等一系列关乎机器学习模型生死的问题,在这里不做具体展开,读者可自行补习相关的机器学习知识。
在机器学习中,有很多相当成熟的模型和算法。其中有一种很厉害的模型,那就是人工神经网络。这种模型从早期的感知机发展而来,对任何函数都有较好的拟合性,但自20世纪90年代一直到2012年深度学习集中爆发前夕,神经网络受制于计算资源的限制和较差的可解释性,一直处于发展的低谷阶段。之后大数据兴起,计算资源也迅速跟上,加之2012年ImageNet竞赛冠军采用的AlexNet卷积神经网络一举将图像分类的Top5错误率降至16.4%,震惊了当时的学界和业界。从此之后,原本处于研究边缘状态的神经网络又迅速火热了起来,深度学习也逐渐占据了计算机视觉的主导地位。
注意:这里有必要解释一下模型和算法的概念,通常所说的像支持向量机(Support Vector Machine, SVM)之类的所谓机器学习十大算法其实不应该称之为算法,更应该称之为模型。机器学习算法应该是在给定模型和训练策略的情况下采取的优化算法,如梯度下降法、牛顿法等。当然,一般情况下将机器学习中的模型和算法概念混在一起并没有什么不妥之处,毕竟模型中本身就包含着计算规则的意思。
介绍了这么多,无非就是想让大家知道,以神经网络为核心的深度学习是机器学习的一个领域分支,所以深度学习在其本质上也必须遵循机器学习的基本要义和法则。在传统的机器学习中,需要训练的是结构化的数值数据,如预测销售量、预测某人是否按时还款等。但在深度学习中,其训练输入就不再是常规的数值数据了,它可能是一张图像、一段语言、一段对话语音或一段视频。例如,深度学习要做的就是输入一张狗的图像到神经网络中,它输出的是狗或dog这样的标签;输入一段语音到神经网络中,它输出的是如“你好”这样的文本。综上所述,可以看出机器学习(深度学习)的核心任务就是找(训练)一个模型,它能够将输入转化为正确的输出。