周晟颐
摘 要 随着人工智能的不断发展和广泛应用,深度学习技术目前受到了业界的高度重视。文章将对深度学习技术的发展历史、常用算法及典型应用场景进行简要介绍。
关键词 深度学习;卷积神经网络;循环神经网络;语音识别;自然语言处理
中图分类号 G2 文献标识码 A 文章编号 1674-6708(2018)221-0116-03
2016年,AlphaGo的横空出世掀起了人工智能发展和应用的浪潮,其底层所使用的深度学习算法也受到了业界的广泛关注。深度学习算法通过计算机的方法对人类大脑神经元的思考过程进行模拟,进而实现计算机自动学习数据特征,完成复杂数据分析任务的功能。近几年,以深度学习为算法基础的人工智能产品层出不穷,为我们的工作和生活带来了许多的便利。文章通过文献调研的方法,对深度学习的发展历史、常见算法及应用场景进行简要概述,旨在帮助大家对深度学习的相关概念有所了解与掌握。
1 深度学习发展历史
深度学习算法属于机器学习范畴。机器學习是人工智能应用的重要分支之一,是通过算法提取数据隐藏特征,进而实现数据分类及回归,以完成智能识别及预测等功能。机器学习算法的发展历史根据不同人的理解有着不同的划分方法,文章引用余凯、贾磊等人的历史阶段划分方法,将整个机器学习算法的发展大概划分为两个阶段,第一个阶段为浅层学习(shallow learning)阶段,第二个阶段为深度学习(deep learning)阶段。下面对这两个阶段的发展成果进行简要的介绍。
1.1 浅层学习阶段
利用计算机来模拟人脑思考过程的算法最早起源于MCP人工神经元模型,其算法思想诞生于1943年,由神经科学家麦卡洛克(W.S.McCilloch)和数学家皮兹(W.Pitts)共同提出。MCP的算法的主要思想为对输入的数据进行加权求和及非线性函数激活操作,旨在拟合数据的内部规律。1958年,由Rosenblatt发明的感知器算法(perceptron)将MCP的算法思想具体化,应用到了数据分类问题之中,进而引起了第一次神经网络发展的热潮。但好景不长,感知器后来被证明只能处理线性分类问题,应用范围局限,人工神经网络的研究也就此陷入了长达20年的停滞状态。
直到20世纪80年代,著名人工智能专家Hinton教授发明了BP神经网络算法,采用逆向传播的思想进行网络参数的学习,解决了数据的非线性分类问题,进而掀起了第二次人工神经网络的研究热潮。但没过多久,BP神经网络算法被发现存在梯度消失问题,即误差反馈随着神经网络层数的增加逐渐消失,无法对位于前面层次的神经元参数进行学习调整。
这样的发现无疑对BP神经网络的发展雪上加霜,人工神经网络的研究再次陷入停滞。而在这个过程中,基于统计思想的机器学习方法渐渐获得了业界的主流支持,决策树、SVM、随机森林等算法纷纷诞生,在数据分类和回归问题上取得了良好的效果,成为了机器学习的主流算法。
1.2 深度学习阶段
直到2006年,Hinton教授解决了BP神经网络算法梯度消失的问题,深度学习的思想再次回到了大众的视野之中,也正因为如此,2006年被称为是深度学习发展的元年。深度学习的发展阶段又可以大概分为两个阶段,第一个阶段为快速发展阶段,第二个阶段为爆发阶段。
1.2.1 快速发展阶段
正如前文所说,Hinton教授提出了解决梯度消失的方案,首先通过无监督方法对神经网络进行初始化,然后使用有标记的数据进行有监督训练学习,进而对网络参数进行微调。2011年,微软公司首次将深度学习方法应用在语音识别领域中,取得了较好的效果。
1.2.2 爆发阶段
2012年,Hinton教授带领团队参加ImageNet图像识别比赛。在比赛中,Hinton团队所使用的深度学习算法一举夺魁,其性能达到了碾压第二名SVM算法的效果,自此深度学习的算法思想受到了业界研究者的广泛关注。深度学习的算法也渐渐在许多领域代替了传统的统计学机器学习方法,成为人工智能中最热门的研究领域。
2016年,谷歌旗下的DeepMind公司基于深度学习的算法开发研制了AlphaGo程序。从2006年到2007年,AlphaGo先后战胜了中日韩各大围棋高手,令世界瞩目与震惊。基于深度学习算法,机器的围棋水平已经能够超过人类的顶尖水平。自此之后,人工智能成为了IT互联网领域最热门的研究领域。许多公司纷纷运用深度学习算法来提高自己的产品性能,为工作和生活带来了许多的便利。
2 深度学习算法介绍
随着深度学习算法的不断发展与改进,深度学习研究人员已经提出了许多成熟的神经网络模型,并已经广泛应用到了许多领域之中。在这其中,卷积神经网络和循环神经网络是最常用的两种神经网络结构,下面的章节将对这两种神经网络的典型结构及工作原理进行简要的介绍。
2.1 卷积神经网络
卷积神经网络本质上是一个多层次结构的神经网络,包括卷积运算层、池化运算层、全连接层及识别运算层,其网络结构图见图1。
其中的具体过程如下:
1)卷积运算:数据在卷积层中进行卷积运算,经过激活函数运算后输出到下一层。通过卷积运算,神经网络能够提取数据每一部分的局部特征,并能够记录特征之间的位置关系;
2)池化运算:池化运算将前一层输出的特征进行区域划分,并通过采样操作来降低特征数量,进而避免过拟合的现象出现,将数据的特征进行更好的聚合;
3)全连接运算:进行吃化操作后的数据特征为多组信号数据,全连接运算将多组信号数据组合为一组信号数据;
4)识别运算:在特征信号数据整合为一组之后,根据数据分析的需求对特征进行识别运算,以实现分类或回归问题。
由于卷积神经网络具有良好的数据特征提取能力,因此目前已经广泛用于图像识别和视频处理等领域,并取得了较好的效果。
2.2 循环神经网络
虽然深度神经网络和卷积神经网络能够对数据特征进行较好的提取和学习,但面对随时间变化的数据时,传统的神经网络结构无法对时间序列的变化进行特征保存,存在着许多弊端。在自然语言处理、语音识别等应用领域中,样本的时间先后顺序十分关键。为了满足这样的业务需求,循环神经网络应运而生,循环神经网络的结构图见图2。
与传统神经网络最大的不同之处在于,循环神经网络的隐藏层会将自己的输出数据作为自己下一次输入数据的一部分,通过这样的方式,神经网络便具有了记忆能力。目前,循环神经网络已经在中文分词、词性标注、命名实体识别、语言翻译等领域有着广泛的应用。
3 深度学习应用
深度学习经过不断的发展与改进,目前已经成为了人工智能领域最重要的技术之一,在许多应用领域都有着出色和优异的表现。在这一章节,本文对深度学习在图像识别、语音识别、自然语言处理领域的应用进行介绍。
3.1 图像识别
目前,深度学习在图像和视觉领域的应用已经迅速普及,其主要应用场景有人脸识别、人脸跟踪、物体场景识别等。例如:目前市面上发售的智能手机许多都有人脸解锁功能,只需要简单的录入过程,便可以采用面部识别进行手机解锁操作,其速度和准确率都能够达到不错的效果。随着科技的不断进步,基于深度学习的图像识别技术也会不断发展,其准确率将会越来越接近于人类。在未来,图像识别技术也会为我们的信息智能化生活发挥更为重要的作用。
3.2 语音识别
通过计算机技术来进行语音识别的研究已有很长时间的历史,最开始的研究集中在基于隐马尔可夫模型的算法,在实际应用过程中,无论是识别速度还是准确率都不能够令用户达到满意的效果。从2010年开始,深度学习的思想被引入到了语音识别问题中,取得了一系列的突破。现在,语音识别技术已经广泛应用在了日常的生活中,苹果、三星、华为、小米等公司都退出了自己的智能语音助手,为人机交互带来了极大的便利。
3.3 自然语言处理
自然语言处理任务包括中文分词、词性标注、语言翻译、信息检索、推荐系统等。在深度学习技术之前,自然语言处理的研究主要采用字典匹配、正则表达式、条件随机场及隐马尔可夫模型等方法,取得了一定的成果,但还未能达到令人满意的程度。在循环神经网络诞生之后,由于其对时间序列处理的优势,因而其算法被迅速应用到了自然语言处理领域,取得了极大的突破。目前,谷歌、百度等搜索引擎,谷歌翻译、有道词典等语言翻译工具、以及在各個领域出现的智能问答系统,都有深度学习算法在其中发挥着重要的作用。
4 结论
随着深度学习技术的不断发展和应用领域的不断增加,深度学习已经在我们日常的生产和生活中正扮演着不可缺少的角色。目前,人工智能处于发展热潮之中,深度学习的算法也会进一步有所突破改进,为我们享受智能化生活带来帮助。
参考文献
[1]Lecun Y, Bengio Y, Hinton G. Deep learning[J]. Nature,2015,521(7553):436.
[2]李超波,李洪均,徐晨.深度学习在图像识别中的应用[J].南通大学学报(自然科学版),2018(1).
[3]余凯,贾磊,陈雨强.深度学习的昨天、今天和明天[J].计算机研究与发展,2013(9):5-10.
[4]黄子良.深度学习应用前景分析[J].通信与信息技术,2017(3):54-56.
[5]深度学习的发展历史[EB/OL].https://blog.csdn.net/ u012177034/article/details/52252851.
[6]深度学习(deep learning)发展史[EB/OL].https:// zhuanlan.zhihu.com/p/29096536.
[7]深度学习常见算法的介绍和比较[EB/OL].https://blog. csdn.net/abc200941410128/article/details/79269386.
[8]深度学习应用场景整理[EB/OL].https://blog.csdn.net/ lwplwf/article/details/72818919.
[9]图像识别的原理、过程、应用前景,精华篇![EB/OL]. http://imgtec.eetrend.com/blog/10807.
[10]自然语言处理深度学习的7个应用[EB/OL].https://blog. csdn.net/qiansg123/article/details/80131950.