购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.2 机器学习与深度学习

1.2.1 机器学习的含义

机器学习(Machine Learning,ML)专门研究计算机模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习最基本的做法,就是使用算法解析数据并从中学习,然后对真实世界中的事件做出决策和预测。与传统的为完成特定任务、硬编码的软件程序不同,机器学习使用大量的数据来“训练”,通过各种算法从数据中学习如何完成任务。例如,邮箱里有自动垃圾邮件分类程序,它的工作就是收到一封邮件后,通过查看内容判断它是否为垃圾邮件。那么,它是如何判断的呢?首先需要一堆邮件,提取判断邮件正常与否的特征数据(如关键词、词频等),并对其中的普通邮件和垃圾邮件进行标注;随后,可以通过某种算法来构建一个模型,然后用数据进行训练,得到一条回归曲线,收到一封邮件后,判断它与曲线的距离,如果远离正常邮件回归曲线,则认为是垃圾邮件。构建的模型从数据中学习以判断垃圾邮件,这就是机器学习。垃圾邮件分类过程如图1-15所示。

图1-15 垃圾邮件分类过程

机器学习源于早期的人工智能领域。传统的人工智能算法包括决策树学习、推导逻辑规划、聚类、分类、回归、强化学习和贝叶斯网络等(当然除此之外还有很多)。

机器学习较成功的应用领域是计算机视觉领域,但仍需要大量的手工编码来完成工作。人们需要手工编写分类器、边缘检测滤波器,以便让程序能识别拍摄到的物体从哪里开始,到哪里结束;编写形状检测程序来判断检测对象是不是有8条边;编写分类器来识别字母序列“S-T-O-P”。使用以上这些手工编写的程序,人们可以开发算法来感知图像,判断图像是不是一个停止标志牌。这个算法的效果尚可,但并不完美,特别是遇到云雾天,标志牌变得不那么清晰可见的,或者被树遮挡住一部分时,算法就可能难以成功了。这就是为什么相当长的一段时间内,计算机视觉的处理能力一直无法接近人眼的处理能力,它比较僵化,比较容易受环境条件的干扰。随着时间的推进,机器学习算法的发展改变了一切。

1.2.2 深度学习的崛起

2017年4月6日,人工智能系统与真人对打的扑克赛事——“冷扑大师”对“中国龙之队”德克萨斯扑克牌表演赛在海南生态软件园开赛。“冷扑大师”相对于 AlphaGo 的不同之处在于,前者不需要提前背大量牌谱,也不局限于在公开的具有完美信息的场景中进行运算,而是从零开始,基于扑克游戏规则针对游戏中的对手劣势进行自我学习,并通过博弈论来衡量和选取最优策略。这是“冷扑大师”在比赛后程越来越凶悍,让人类玩家难以抵挡的原因之一。经过为期5天的角逐,“冷扑大师”对“中国龙之队”德克萨斯扑克牌表演赛在海南生态软件园完美收官,人工智能系统“冷扑大师”最终以792327总记分牌的战绩完胜并赢得200万元人民币奖金。

“冷扑大师”人工智能系统又一次加深和提高了人工智能在人们心中的印象和地位。那么究竟是什么神奇的力量支撑了人工智能,使其具有如此高的“智商”和巨大的威力呢?

在此,就不得不提到深度学习,它是人工智能发展的高级阶段产物,是人工智能的幕后英雄,是人工智能背后的算法支持。

深度学习的“横空出世”,将机器学习的预测能力提高到一个空前的高度。人工神经网络是早期机器学习中的一个重要的算法,历经数十年的风风雨雨。人工神经网络的原理受人类大脑的生理结构——互相交叉相连的神经元的启发。但与大脑中一个神经元可以连接一定距离内的任意神经元不同,人工神经网络具有离散的层,每一次只连接符合数据传播方向的其他层。例如,可以把一幅图像切分成图像块,将其输入人工神经网络的第1层,在第1层的每一个神经元都把数据传递到第2层,第2层的神经元也是完成类似的工作,把数据传递到第3层,以此类推,直到最后一层,然后生成结果。

每一个神经元都为它的输入分配权重,这个权重的正确与否与其执行的任务直接相关。最终的输出由这些权重总和来决定。仍以停止标志牌为例,将一个停止标志牌图像的所有元素都“打碎”,然后用“神经元”进行“检查”:八边形的外形、旧火车般的红颜色、鲜明突出的字母、交通标志的典型尺寸和静止不动的运动特性等。人工神经网络的任务就是针对它给出结论,它到底是不是一个停止标志牌。人工神经网络会根据所有权重,给出一个经过“深思熟虑”的猜测——概率向量。

在标志牌识别的例子里,系统可能会给出这样的结果:所识别的对象有86%的可能是一个停止标志牌,有7%的可能是一个限速标志牌,有5%的可能是一只挂在树上的风筝等。然后,系统告知人工神经网络此结论是否正确。即使是这个例子,也算是比较超前的了。其实在人工智能出现的早期,人工神经网络就已经存在了,但当时人工神经网络对于智能的贡献微乎其微。其主要问题是,即使是最基本的人工神经网络,也需要大量的运算,人工神经网络算法的运算需求难以得到满足。

不过,还是有一些研究团队——以多伦多大学的杰弗里·欣顿(Geoffrey Hinton)教授为代表——坚持研究,实现了以超算为目标的并行算法的运行与概念证明。但直到 GPU (Graphics Processing Unit,图形处理器)得到广泛应用,这些努力才有了成效。回过头来看这个停止标志牌识别的例子。人工神经网络是被调制、训练出来的,还很容易出错,它最需要的就是训练,需要成百上千甚至几百万个图像来训练,直到神经元的输入的权重都被调制得十分精确,无论是雾天、晴天还是雨天,每次都能得到正确的结果。只有这个时候,才可以说人工神经网络成功地自学习到一个停止标志牌的样子。

再来看另外一个例子,吴恩达(Andrew Ng)教授实现了人工神经网络学习识别猫。吴恩达教授的突破在于,他把这些人工神经网络从基础上显著地扩大了。其层数非常多,“神经元”也非常多,然后给系统输入海量的数据来训练。在吴恩达教授这里,他使用了约1000万个网络视频中的图像,并为深度学习加入了“深度”(deep)。这里的“深度”是说人工神经网络中众多的层。现在,经过深度学习训练的图像识别技术,在一些场景中甚至可以比人做得更好:从图1-16所示的识别猫,到通过血液测试检测早期癌症,再到识别核磁共振图像中的肿瘤,都是深度学习的杰出表现。AlphaGo 先是学会了如何下围棋,然后与自己下棋进行训练。它训练自己的人工神经网络的方法就是不断地与自己下棋,反复地下,永不停歇,这种学习能力和专注力是人类无法比拟的。

图1-16 利用深度学习从视频中识别猫

由以上的叙述中,不难总结出人工智能、机器学习和深度学习的关系,三者之间的关系如图1-17所示。

图1-17 人工智能、机器学习和深度学习的关系

由此可见,机器学习属于人工智能的一个分支,是一种实现人工智能的方法,也是人工智能的基础。机器学习主要是设计和分析一些可以让计算机自动“学习”的算法。深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的人工神经网络,它模仿人脑的机制来解释数据,如图像、声音、文本等,是一种基于人工神经网络的深度学习的技术。

1.2.3 神经网络的魅力

无论是机器学习,还是深度学习,都离不开神经网络(neural network)。它起源于人们对生物体神经网络的认知,生物神经网络是由神经元、突触等组成的,大量的神经元通过无数的突触连接在一起构成一个大规模的神经网络,能处理人的思维和记忆。

人们通过模仿生物神经网络的工作原理构建人工神经网络,其中的神经元模型早期被称为感知机,后来所有的感知机连接起来,形成网络。人工神经元的结构如图1-18所示。

图1-18 人工神经元的结构

图 1-18 中,( x 1 , x 2 ,…, x n )是输入向量,( w 1 , w 2 ,…, w n )是对应的权重向量, f 是激活函数,加权和为:

S = x 1 w 1 + x 2 w 2 +…+ x n w n

然后经过线性或者非线性函数进行激活:

Y = f ( S + b )

上式中 b 为偏置变量, Y 是输出向量。

把多个神经元组成一层神经网络,并增加神经网络的层数,就构成一个多层神经网络,如图1-19所示。其中, x n 是输入层的第 n 个神经元, y m 是隐含层的第 m 个神经元, z p 是输出层的第 p 个神经元, o p 是神经网络的第 p 个输出分量。

图1-19 多层神经网络

理论已经证明,通过增加神经网络的层数和改变激活函数,并利用相应学习算法不断迭代改变损失误差,就可以用多层神经网络来拟合任意函数,解决线性和非线性问题,也就是通过增加网络的深度和宽度来提高神经网络模型的健壮性和预测的准确性。因此,多层神经网络结构的出现,及其相关算法的完善,为人工智能的普及和应用做出了突破性贡献。 MU9cWZ8TWGYkyhJ2mp6C/RtOM5z32WlTddwF3vyElq8PxgkGyRu2vnSkO84x0pIw

点击中间区域
呼出菜单
上一章
目录
下一章
×