深度学习与机器学习的区别

姓名:车文扬 学号:16020199006

转载至:https://baijiahao.baidu.com/s?id=1595509949786067084&wfr=spider&for=pc,有删节

【嵌牛导读】:当下火热的深度学习与机器学习有什么区别和联系

【嵌牛鼻子】:deep learning

【嵌牛提问】:二者的区别是什么

【嵌牛正文】:

下面我们从几个重要的方面来对比两种技术。

1.数据依赖

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

数据量对不同方法表现的影响

深度学习与机器学习的区别_第1张图片

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

2.硬件依赖

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

3.特征工程

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

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

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

4.解决问题的方式

在解决问题时,传统机器学习算法通常先把问题分成几块,一个个地解决好之后,再重新组合起来。但是深度学习则是一次性地、端到端地解决。如下面这个物体识别的例子:

物体识别

深度学习与机器学习的区别_第2张图片

如果任务是要识别出图片上有哪些物体,找出它们的位置。那么传统机器学习的做法是把问题分为两步:发现物体 和 识别物体。首先,我们有几个物体边缘的盒型检测算法,把所有可能的物体都框出来。然后,再使用物体识别算法,例如SVM在识别这些物体中分别是什么。

但是深度学习不同,给它一张图,它直接给出把对应的物体识别出来,同时还能标明对应物体的名字。这样就可以做到实时的物体识别。例如YOLO net就可以在视频中实时识别:

实时检测

深度学习与机器学习的区别_第3张图片

5.运行时间

深度学习需要花大量的时间来训练,因为有太多的参数需要去学习。顶级的深度学习算法ResNet需要花两周的时间训练。但是机器学习一般几秒钟最多几小时就可以训练好。

但是深度学习花费这么大力气训练处模型肯定不会白费力气的,优势就在于它模型一旦训练好,在预测任务上面就运行很快。这才能做到我们上面看到的视频中实时物体检测。

6.可理解性

最后一点,也是深度学习一个缺点。其实也说不上是缺点吧,那就是深度学习很多时候我们难以理解。一个深层的神经网络,每一层都代表一个特征,而层数多了,我们也许根本就不知道他们代表的啥特征,我们就没法把训练出来的模型用于对预测任务进行解释。例如,我们用深度学习方法来批改论文,也许我们训练出来的模型对论文评分都十分的准确,但是我们无法理解模型到底是啥规则,这样的话,那些拿了低分的同学找你质问“凭啥我的分这么低啊?!”,你也哑口无言····因为深度学习模型太复杂,内部的规则很难理解。

但是机器学习不一样,比如决策树算法,就可以明确地把规则给你列出来,每一个规则,每一个特征,你都可以理解。

但是这不是深度学习的错,只能说它太牛逼了,人类还不够聪明,理解不了深度学习的内部的特征。

以上就是关于机器学习和深度学习的联系和区别了。首先说说感受吧,感觉很多国外的文章,尤其是这样的类似科普文章写的真心棒!很好理解,而且解释的非常详细,这是很多国内博客所不能比的。所以建议大家有问题可以多搜搜国外的文章读一读,而且其实英文也用的很简单。

你可能感兴趣的:(深度学习与机器学习的区别)