深度学习:一种特定类型的机器学习
本文作者将从深度学习的角度,来讨论下这个火热人工智能话题。enjoy~
近期临近年底,工作比较忙,好久没有去更新文章了。作为一名人工智能行业的从业者不去主动接触点人工智能方面的知识都有点不太好意思了,心血来潮就打算看看近期火热的深度学习。经研究院的同事给介绍《深度学习》这本书,看了两天实在是头疼,几百页的厚厚书籍自己能够看懂的也就第一章的二十多页的内容,其他的关于数学和算法方面的内容完全看不懂,实在是难过。
不过第一章的知识已经能够完全的的解释深度学习的历史发展和基数知识了,自己总结了一篇文章就当是对这一章内容的重点知识总结吧。
1. 人工智能发展的原因
人工智能近几年了好像突然之间就火了,各大公司纷纷布局人工智能行业。其实,我们去追究历史原因就会发现其实人工智能已经有了60多年的历史了,从达特茅斯会议上人工智能概念的提出到如今人工历史其实经历了三次浪潮,现在的几年应该是第三次浪潮的爆发期。
很多人就会问,为什么第三次浪潮会在近几年爆发,其实追究其原因,不难发现会有三个主要的因素在这个时代出现了:
第一,高级算法的出现,经历前几十年人工智能的孕育期,终于有了技术的积累,在这个时代,算法的更新解决了很多技术上的难题;
第二,计算机计算能力的提升,我们都知道人工智能模型的训练和计算需要耗费大量的时间和计算集群,强大CPU和CPU的出现大大加强了计算机的运算能力,从而有了训练复杂模型的可能。
最后,互联网时代大数据的产生,人工智能模型的训练都是针对于数据集,在互联网时代,海量的训练数据是解决人工智能瓶颈的根本原因。这个数据的收集过程中我们不得不说image net的诞生,李飞飞领导了这个项目的诞生,从而将计算机视觉识别提供了可标注的海量数据库,这个项目的诞生可谓是人工智能行业的一个节点。
2. 人工智能技术的发展历程
2.1 早期的知识库规则
最早期的人工智能系统往往是通过人工的制定计算规则让计算去执行规则从而完成系统使命,其实这个制定规则的过程就是算法出现的过程。李飞飞在ted演讲中讲述了一个盒子模型的人工智能系统,在这个系统中有很多颜色,形状和高矮不同的盒子,最终系统执行人工指令可以完成对于盒子的筛选和移动。这个早期系统的其实就是通过人为的逻辑算法思考强加给计算机执行从而完成系统任务,在ted会议上李飞飞展示了这个逻辑算法的节点流程可谓是非常的复杂,而且这种算法设计还不具备通用性,换了另外的一个任务这个算法就失效了。
还有就是IBM 的(Deep Blue)国际象棋系统在 1997 年击败了世界冠军Garry Kasparov,它的系统设计其实和盒子模型很相似,因为国际象棋仅含有 64 个位置并只能以严格限制的方式移动,设计一种成功的国际象棋策略是巨大的成就,但向计算机描述棋子及其允许的走法并不是挑战的困难。因为,国际象棋完全可以由一个非常简短的、完全形式化的规则列表来描述,并可以容易地由程序员事先准备好。
这两种系统的实现其实就是被称为硬编码的方式,建立知识库从而让计算机可以使用逻辑推理规则来自动地理解这些形式化语言中的申明,然而这种方式并没有得到良好的发展。
2.2 手动指定特征
第二个阶段发展到机器学习的阶段,很多先驱者从人类大脑的神经元获得灵感,我们今天知道的一些最早的学习算法,是旨在模拟生物学习的计算模型,即大脑怎样学习或为什么能学习的模型。从而出现很多的经典的机器学习概念。这个阶段通过人工指定特征的方式让机器达到具有匹配和映射特征的能力,从而完成机器对外界的认知能力。李飞飞在一次演讲中她提到早期的她对于猫的识别方式。通过人工指定猫的特征例如猫肥胖的身体,尾巴,头部的轮廓等特征告诉计算机具备这种特征的就是猫,但是在真实的识别场景中,猫的形态是千变万化的话,仅仅通过人工指定特征是完全不能够解决这个问题的,特别是复杂物体的特征,人工进行指定特征更是无法完成。
2.3 表示学习阶段
其实,简单的机器学习算法的性能在很大程度上依赖于给定数据的表示,也就是特征的数据表示方式。通用的人工智能任务都可以通过以下方式解决:先提取一个合适的特征集,然后将这些特征提供给简单的机器学习算法,也就是之前我所说的猫的特征集的例子。 然而,对于许多任务来说,我们很难知道应该提取哪些特征,也就是通过人工指定特征集合从而完成映射特征的方式不可取,那么我们能不能通过机器去学习特征取代人工指定呢?这个时候表示学习就随之出现了,表示学习就是使用机器学习来发掘表示本身,而不仅仅把表示映射到输出。然而在这个阶段,机器去完成负责特征的学习又遇到了瓶颈,因为让大千世界的构成特征太复杂,机器完全实现不了对于复杂特征的学习和表示,如何通过简单的规则去让机器理解复杂世界又变成了一个难题,这个时候深度学习就诞生了。
3. 深度学习概述
3.1 深度学习的定义
层次化的概念的提出让计算机构建较简单的概念来学习复杂概念。这种层次化的提出来自于对人类神经大脑的研究成果,研究表明人类通过眼睛获取外界信息传递给大脑的过程是大脑皮层层次信息传递的结果,大脑皮层的每一层的部分负责处理不同的信息,而且在处理信息是有先后顺序的,并且是基于上一层信息传递过来的结果进行处理的,这种研究成果导致了深度学习的概念产生。
深度学习其实就是通过其他较简单的表示来表达复杂表示,解决了表示学习中的核心问题。让计算机从经验中学习,并根据层次化的概念体系来理解世界,而每个概念则通过与某些相对简单的概念之间的关系来定义。让计算机从经验获取知识,从而可以避免由人类来给计算机形式化地指定它需要的所有知识。
总的来说,深度学习就是一种特定类型的机器学习,具有强大的能力和灵活性,它将大千世界表示为嵌套的层次概念体系(由较简单概念间的联系定义复杂概念、从一般抽象概括到高级抽象表示)。
3.2 一张图来理解深度学习的概念
深度学习广泛的应用在图像识别领域中,为了让大家很好的理解这种通过简单层级来表示复杂概念的方式,我们用一张图来理解深度学习从简单概念到复杂概念的表示。
从图像识别来说,计算机难以理解原始感观输入数据的含义,如表示为像素值集合的图像。将一组像素映射到对象标识的函数非常复杂。如果直接处理,学习或评估此映射似乎是不可能的。
因此,深度学习将所需的复杂映射分解为一系列嵌套的简单映射(每个由模型的不同层描述)来解决这一难题。输入展示在 可见层(visible layer),这样命名的原因是因为它包含我们能观察到的变量。然后是一系列从图像中提取越来越多抽象特征的 隐藏层(hidden layer)。因为它们的值不在数据中给出,所以将这些层称为 ‘‘隐藏”; 模型必须确定哪些概念有利于解释观察数据中的关系。这里的图像是每个隐藏单元表示的特征的可视化。给定像素,第一层可以轻易地通过比较相邻像素的亮度来识别边缘。有了第一隐藏层描述的边缘,第二隐藏层可以容易地搜索可识别为角和扩展轮廓的边集合。给定第二隐藏层中关于角和轮廓的图像描述,第三隐藏层可以找到轮廓和角的特定集合来检测特定对象的整个部分。最后,根据图像描述中包含的对象部分,可以识别图像中存在的对象。
3.3 深度学习和机器学习有什么关系?
深度学习在定义上就是一种表示学习,也是一种机器学习,可以用于许多(但不是全部)AI 方法。 深度学习有着悠久而丰富的历史,但随着许多不同哲学观点的渐渐消逝,与之对应的名称也渐渐尘封。 我们今天知道的一些最早的学习算法,是旨在模拟生物学习的计算模型,即大脑怎样学习或为什么能学习的模型,早期的人工神经网络方式其实就是深度学习,其结果是深度学习以 人工神经网络(artificialneural network, ANN)之名而淡去。
4. 人工智能的未来发展会怎么样?
机器的诞生就是为了运算和存储数据的,在数字的计算和抽象问题的解决上,计算机已经完全的超过了人的水平,但是往往这么厉害的机器却不能完成对整个世界简单东西的认知。计算机能够完成复杂的逻辑运算,却不能很好的理解我们说话的意思。能够进行海量的存储,却不能很好的认识一张普通的图片,其实很某个角度来看,人工智能的发展其实是和人类成长是相反的。
人类对世界的认知其实是从0-6岁就已经形成的,在这个阶段人通过学习认识了这个世界简单的物体,即使是一岁的孩子也知道那是一只猫,这是因为人的眼睛时时刻刻都在获取信息,从而交给大脑进行学习,从而形成对最基本常识的认知。最后通过小学初中大学才完成逻辑思维和计算思维的形成。然而,计算机则完全相反,在逻辑思维和计算思维上,现代计算机只要输入数据,计算机就能完成这些数据的运算和存贮,但是对于大千世界的认知却还停留在婴儿阶段。据说,目前的计算机认知水平也就仅仅停留在人类1岁左右的水平。有人问人工智能未来的发展如果,我个人断定,如果人工智能能够使机器的认知超过6岁孩子对于世界的认知,那么人工智能在所有的行业领域都会超过人类专家水平。
我这么断定肯定会有人指出一个问题,即使是现在也有很多人来讨论人机伦理方面的问题,假如机器具有了自主学习和思考的能力,那么人存在的意思是什么?我只能说,现在还不是考虑这个的问题的时候,毕竟机器想要达到人类的认知智力水平还不知道是什么时候的事情了。
本文由 @张小明明 原创发布于人人都是产品经理。未经许可,禁止转载。
题图来自 Unsplash,基于 CC0 协议
作为一名人工智能行业的从业者,都被《深度学习》这本书搞的头昏脑涨,那想入行的人还有什么路可走?