三分钟搞清人工智能机器学习与深度学习

Posted ZSYL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三分钟搞清人工智能机器学习与深度学习相关的知识,希望对你有一定的参考价值。

人工智能(Artificial Intelligence)

在这里插入图片描述

1956年,几个计算机科学家相聚在达特茅斯会议,提出了“人工智能”的概念,梦想着用当时刚刚出现的计算机来构造复杂的、拥有与人类智慧同样本质特性的机器。

其后,人工智能就一直萦绕于人们的脑海之中,并在科研实验室中慢慢孵化。之后的几十年,人工智能一直在两极反转,或被称作人类文明耀眼未来的预言,或被当成技术疯子的狂想扔到垃圾堆里。直到2012年之前,这两种声音还在同时存在。

2012年以后,得益于数据量的上涨、运算力的提升和机器学习新算法(深度学习)的出现,人工智能开始大爆发。据领英近日发布的《全球AI领域人才报告》显示,截至2017年一季度,基于领英平台的全球AI(人工智能)领域技术人才数量超过190万,仅国内人工智能人才缺口达到500多万。

人工智能的研究领域也在不断扩大,下图展示了人工智能研究的各个分支,包括 专家系统、机器学习、进化计算、模糊逻辑、计算机视觉、自然语言处理、推荐系统、知识图谱等。

在这里插入图片描述

人工智能是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。

我们来分解一下这个概念。“人工智能”是“一门技术科学”,它研究与开发的对象是“理论、技术及应用系统”,研究的目的是为了“模拟、延伸和扩展人的智能”。

既然如此,那么“计算器”算是人工智能吗?严格地说是算的,因为它至少做了“模拟”人在计算方面的智能,并扩展了这个能力(比人算得更快)。我们每天编码驱动计算机去帮我们计算,这个算是人工智能吗?也算的。

所以,首先不用妄自菲薄,其实大家早已是“人工智能”的从业者了。

我们现在看到的貌似很高端的技术,如 图像识别、NLP、CV、KG,其实依然没有脱离这个范围,说白了,就是“模拟人在看图方面的智能”和“模拟人在听话方面的智能”,本质上和“模拟人在计算方面的智能”一样,虽然难度有高低,但目的是一样的——模拟延伸和扩展人的智能

在这里插入图片描述

机器学习(Machine Learning)

机器学习(Machine Learning,ML) 是人工智能的子领域,也是人工智能的核心。它囊括了几乎所有对世界影响最大的方法(包括深度学习)。机器学习理论主要是设计和分析一些让计算机可以自动学习的算法。

举个例子,假设要构建一个识别猫的程序。传统上如果我们想让计算机进行识别,需要输入一串指令,例如猫长着毛茸茸的毛、顶着一对三角形的的耳朵等,然后计算机根据这些指令执行下去。但是如果我们对程序展示一只老虎的照片,程序应该如何反应呢?更何况通过传统方式要制定全部所需的规则,而且在此过程中必然会涉及到一些困难的概念,比如对毛茸茸的定义。因此,更好的方式是让机器自学

我们可以为计算机提供大量的猫的照片,系统将以自己特有的方式查看这些照片。随着实验的反复进行,系统会不断学习更新,最终能够准确地判断出哪些是猫,哪些不是猫。

机器学习就是用算法解析数据,不断学习,对世界中发生的事做出判断和预测的一项技术。研究人员不会亲手编写软件、确定特殊指令集、然后让程序完成特殊任务;相反,研究人员会用大量数据和算法“训练”机器,让机器学会如何执行任务。

这里有三个重要的信息:

1、“机器学习”是“模拟、延伸和扩展人的智能”的一条路径,所以是人工智能的一个子集;
2、“机器学习”是要基于大量数据的,也就是说它的“智能”是用大量数据喂出来的,如果缺少海量数据,它也就啥也不是了;
3、正是因为要处理海量数据,所以大数据技术尤为重要;“机器学习”只是大数据技术上的一个应用。

常用的10大机器学习算法有:决策树、随机森林、逻辑回归、SVM、朴素贝叶斯、K最近邻算法、K均值算法、Adaboost算法、神经网络、马尔科夫。

Apache有个开源项叫mahout,提供了这些经典算法的实现;但是后来spark出来了,由于在内存迭代计算方面的优势,一下子抢过了这个风头,目前spark自带的MLlib被使用得更为广泛。虽然mahout也在向spark转,但是在技术的世界里就是不断前进,不断更新迭代。

在这里插入图片描述

深度学习(Deep Learning)

深度学习(DeepLearning,DL)属于机器学习的子类。它的灵感来源于人类大脑的工作方式,是利用深度神经网络来解决特征表达的一种学习过程。

深度神经网络本身并非是一个全新的概念,可理解为包含多个隐含层的神经网络结构。为了提高深层神经网络的训练效果,人们对神经元的连接方法以及激活函数等方面做出了调整。其目的在于建立、模拟人脑进行分析学习的神经网络,模仿人脑的机制来解释数据,如文本、图像、声音。

深度学习是一个比较新的概念,算是00后,严格地说是2006年提出来的。是用于建立、模拟人脑进行分析学习的神经网络,并模仿人脑的机制来解释数据的一种机器学习技术。它的基本特点,是试图模仿大脑的神经元之间传递,处理信息的模式。

最显著的应用是计算机视觉自然语言处理(NLP)领域。显然,“深度学习”是与机器学习中的“神经网络”是强相关,“神经网络”也是其主要的算法和手段;或者我们可以将“深度学习”称之为“改良版的神经网络”算法。

深度学习又分为卷积神经网络(Convolutional neural networks,简称CNN)和深度置信网(Deep Belief Nets,简称DBN)。其主要的思想就是模拟人的神经元,每个神经元接受到信息,处理完后传递给与之相邻的所有神经元即可。在这里插入图片描述

初始神经网络link

在这里插入图片描述

神经网络的计算量非常大,事实上在很长时间里由于基础设施技术的限制进展并不大。而GPU的出现让人看到了曙光,也造就了深度学习的蓬勃发展,“深度学习”才一下子火热起来。击败李世石的Alpha go即是深度学习的一个很好的示例。

GoogleTensorFlow是开源深度学习系统一个比较好的实现,支持CNN、RNN和LSTM算法,是目前在图像识别、自然语言处理方面最流行的深度神经网络模型。事实上,提出“深度学习”概念的Hinton教授加入了Google,而Alpha go也是Google公司的的。

Tensorflow 2.0 最新版(2.4.1) 安装教程

目前,业界有一种错误的较为普遍的意识,即“深度学习最终可能会淘汰掉其他所有机器学习算法”。这种意识的产生主要是因为,当下深度学习在计算机视觉、自然语言处理领域的应用远超过传统的机器学习方法,并且媒体对深度学习进行了大肆夸大的报道。

深度学习,作为目前最热的机器学习方法,但并不意味着是机器学习的终点。起码目前存在以下问题:

  1. 深度学习模型需要大量的训练数据,才能展现出神奇的效果,但现实生活中往往会遇到小样本问题,此时深度学习方法无法入手,传统的机器学习方法就可以处理;
  2. 有些领域,采用传统的简单的机器学习方法,可以很好地解决了,没必要非得用复杂的深度学习方法;
  3. 深度学习的思想,来源于人脑的启发,但绝不是人脑的模拟,举个例子,给一个三四岁的小孩看一辆自行车之后,再见到哪怕外观完全不同的自行车,小孩也十有八九能做出那是一辆自行车的判断,也就是说,人类的学习过程往往不需要大规模的训练数据,而现在的深度学习方法显然不是对人脑的模拟。

深度学习大佬 Yoshua Bengio 在 Quora 上回答一个类似的问题时,有一段话讲得特别好,这里引用一下,以回答上述问题:

Science is NOT a battle, it is a collaboration. We all build on each other’s ideas. Science is an act of love, not war. Love for the beauty in the world that surrounds us and love to share and build something together. That makes science a highly satisfying activity, emotionally speaking!

这段话的大致意思是,科学不是战争而是合作,任何学科的发展从来都不是一条路走到黑,而是同行之间互相学习、互相借鉴、博采众长、相得益彰,站在巨人的肩膀上不断前行。机器学习的研究也是一样,你死我活那是邪教,开放包容才是正道。

结合机器学习2000年以来的发展,再来看Bengio的这段话,深有感触。进入21世纪,纵观机器学习发展历程,研究热点可以简单总结为2000-2006年的流形学习、2006年-2011年的稀疏学习、2012年至今的深度学习。未来哪种机器学习算法会成为热点呢?深度学习三大巨头之一吴恩达曾表示,“在继深度学习之后,迁移学习将引领下一波机器学习技术”。但最终机器学习的下一个热点是什么,谁又能说得准呢。

在这里插入图片描述

机器学习与深度学习的比较

1、应用场景

机器学习在指纹识别、特征物体检测等领域的应用基本达到了商业化的要求。

深度学习主要应用于文字识别、人脸技术、语义分析、智能监控等领域。目前在智能硬件、教育、医疗等行业也在快速布局。

2、所需数据量

机器学习能够适应各种数据量,特别是数据量较小的场景。如果数据量迅速增加,那么深度学习的效果将更加突出,这是因为深度学习算法需要大量数据才能完美理解。

3、执行时间

执行时间是指训练算法所需要的时间量。一般来说,深度学习算法需要大量时间进行训练。这是因为该算法包含有很多参数,因此训练它们需要比平时更长的时间。相对而言,机器学习算法的执行时间更少。

4、解决问题的方法

机器学习算法遵循标准程序以解决问题。它将问题拆分成数个部分,对其进行分别解决,而后再将结果结合起来以获得所需的答案。深度学习则以集中方式解决问题,而不必进行问题拆分。

在本文中,我们对机器学习与深度学习的区别作出了简要概述。目前,这两种算法已被广泛应用于商业领域,相信在未来,机器学习与深度学习能够为更多行业带来令人激动的光明前景。

在这里插入图片描述

To sum up

在这里插入图片描述

在这里插入图片描述

摘自前辈的文章,衷心感谢,希望未来我可以踏入人工智能领域,谨以此文献给自己。

Link

Link

Link

以上是关于三分钟搞清人工智能机器学习与深度学习的主要内容,如果未能解决你的问题,请参考以下文章

14 深度学习-卷积

14.深度学习-卷积

14.深度学习-卷积

5分钟了解什么是真正的深度学习

10分钟搞定图形图像识别

人工智能,机器学习和深度学习的区别是啥