关于机器学习和深度学习,今日份学习笔记

很怀念小时候,那时报纸、杂志、电视和广播是我们的灯塔,图书馆是我们的星辰大海。那时我们的记忆力好于体力,没有云存储,只有脑回路。

这是申鹤公众号第790天的第784篇原创文章


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

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

直到2012年之前,这两种声音还在同时存在。

2012年以后,得益于数据量的上涨、运算力的提升和机器学习新算法(深度学习)的出现,人工智能开始大爆发。

还是那句话,人是因为相信才看见,不是因为看见才相信。

最近几天,满脑子都在萦绕自然语言处理、图像识别、语音识别、机器学习、深度学习、推荐算法、搜索算法等这些人工智能领域的专业技术术语,也在一点点补自己在AI方面的技术短板。

研究到机器学习和深度学习的时候,有了一点疑惑,到底这两者的关系和区别是什么?机器学习又是人工智能的核心,那深度学习又是怎么回事?

为了搞懂这个问题,我查阅资料后写下这篇文章。

首先,什么是机器学习?什么又是深度学习?

1
基础概念

机器学习(Machine Learning,ML)是人工智能的子领域,也是人工智能的核心。

举个例子,假设要构建一个识别猫的程序。传统上如果我们想让计算机进行识别,需要输入一串指令,例如猫长着毛茸茸的毛、顶着一对三角形的的耳朵等,然后计算机根据这些指令执行下去。

但是如果我们对程序展示一只老虎的照片,程序应该如何反应呢?更何况通过传统方式要制定全部所需的规则,而且在此过程中必然会涉及到一些困难的概念,比如对毛茸茸的定义。因此,更好的方式是让机器自学。

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

而提到深度学习(Deep Learning,DL),通过一个例子说明,大家就慢慢理解了。

比如我们要区分下面的形状,哪个是圆的那个是方的?

我们的眼睛第一件要做的事情,就是看看这个形状有没有4条边。如果有的话,就进一步检查,这4条边是不是连在一起,是不是等长的,是不是相连的互相垂直。如果满足上面这些条件,那么我们可以判断,是一个正方形。

从上面的过程可以看出,我们把一个复杂的抽象的问题(形状),分解成简单的、不那么抽象的任务(边、角、长度...)。深度学习从很大程度上就是做这个工作,把复杂任务层层分解成一个个小任务。

再比如,识别猫和狗。

如果是传统机器学习的方法,我们会首先定义一些特征,如有没有胡须,耳朵、鼻子、嘴巴的模样等等。总之,我们首先要确定相应的“面部特征”作为我们的机器学习的特征。

而现在,深度学习的方法则更进一步。深度学习会自动地找出这个分类问题所需要的重要特征,而传统机器学习则需要我们人工地给出特征。

那么,深度学习是如何做到这一点的呢?

还以这个猫狗识别的例子来说,深度学习按照以下步骤来实现:
1)首先确定出有哪些边和角跟识别出猫狗关系最大;
2)然后根据上一步找出的很多小元素(边、角等)构建层级网络,找出它们之间的各种组合;

3)在构建层级网络之后,就可以确定哪些组合可以识别出猫和狗。

2
机器学习和深度学习的关系

我找到了下面这张图,我觉得已经很清晰地阐述出来机器学习和深度学习的关系了。

3
对比机器学习和深度学习

上面我们大概了解了机器学习和深度学习的工作原理,下面我们从几个重要的方面来对比两种技术。

1、数据依赖

随着数据量的增加,二者的表现有很大区别:

可以发现,深度学习适合处理大数据,而数据量比较小的时候,用传统机器学习方法也许更合适。

2、硬件依赖

深度学习十分地依赖于高端的硬件设施,因为计算量实在太大了。深度学习中涉及很多的矩阵运算,因此很多深度学习都要求有GPU参与运算,因为GPU就是专门为矩阵运算而设计的。相反,普通的机器学习随便给一台破电脑就可以跑。

3、特征工程

特征工程就是前面的案例里面讲过的,我们在训练一个模型的时候,需要首先确定有哪些特征。

在机器学习方法中,几乎所有的特征都需要通过行业专家在确定,然后手工就特征进行编码。

然而深度学习算法试图自己从数据中学习特征。这也是深度学习十分引人注目的一点,毕竟特征工程是一项十分繁琐、耗费很多人力物力的工作,深度学习的出现大大减少了发现特征的成本。

4、执行时间
执行时间是指训练算法所需要的时间量。深度学习需要大量时间进行训练,因为其中包含更多参数,因此训练的时间投入也更为可观。相对而言,机器学习算法的执行时间则相对较短。
4
深度学习能取代机器学习吗?

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

1. 深度学习模型需要大量的训练数据,才能展现出神奇的效果,但现实生活中往往会遇到小样本问题,此时深度学习方法无法入手,传统的机器学习方法就可以处理;

2. 有些领域,采用传统的简单的机器学习方法,可以很好地解决了,没必要非得用复杂的深度学习方法。

今日份学习笔记。

点击原文,查看已日更的500篇文章~


作者:申鹤
(0)

相关推荐