深度学习vs机器学习 | 这些本质区别你知道多少?
目录:
数据相关性
硬件依赖性
特征工程
解决问题方法
执行时间
可解释性
一、数据相关性
深度学习与传统机器学习最重要的区别是,随着数据量的增加,其性能也随之提高。当数据很小的时候,深度学习算法并不能很好地执行,这是因为深度学习算法需要大量的数据才能完全理解它。下图便能很好的说明这个事实:
从上图我们可以看到,随着数据量的增大,深度学习的性能会越来越好,而传统机器学习方法性能表现却趋于平缓;但传统的机器学习算法在数据量较小的情况下,比深度学习有着更好的表现。
二、硬件依赖性
深度学习算法在很大程度上依赖于高端机器,而传统的机器学习算法可以在低端机器上工作。这是因为深度学习算法对GPU有较高的要求,GPU是其工作的一个组成部分。因为深度学习算法要固有地执行大量的矩阵乘法运,而使用GPU可以有效地优化这些操作,这就免不了对GPU的依赖。而相比之下,机器学习算法对硬件配置没有很高的要求。
三、特征工程
特征工程是将领域知识应用到特征抽取的创建过程,以降低数据的复杂性为目的。但这一过程在训练时间和如何提取特征方面十分地困难。
在机器学习中,大多数应用的特征需要由专家识别,然后根据域和数据类型手工编码。
例如,特征可以是像素值、形状、纹理、位置和方向,大多数机器学习算法的性能取决于特征识别和提取的准确程度。
而深度学习算法则试图从数据中学习更高级的特性。这是深度学习一个非常独特的部分,也是有别于传统机器学习的一部分。因此,深度学习减少了为每个问题开发新的特征抽取的任务,而是像卷积神经网络(CNN)这样尝试学习低层次的特征,如:早期层次的边缘和线条,然后是人脸的一部分,最后才是人脸的高层次表示。这样的方式相较于机器学习,在训练时间和成本上有较高的提升。
四、解决问题方法
在使用传统的机器学习算法解决问题时,通常的做法是将问题分解成不同的部分,然后单独解决,最后结合起来得到结果。相比之下,深度学习更提倡端到端地解决问题。让我们举个例子来理解这一点。
如图所示是一个多对象检测任务,我们的目标是哟啊确定对象是什么以及它在图像中的位置。
在典型的机器学习方法中,我们会将问题分为两个步骤:对象检测和对象识别。首先,我们将使用一个边界检测算法,如:GrabCut,来浏览图像并找到图像中所有可能的对象;然后,在所有已识别的对象中,我们再使用对象识别算法(如:SVM)来识别相关对象,最后再判断对象的位置。
不同于传统机器学习算法,在深度学习的方法中,我们将进行端到端的学习过程。例如,使用YOLO算法(一种深度学习算法)。我们往YOLO网络中传入一张图像,它将给出对象的具体位置和名称。是不是方便了很多呢?
五、执行时间
通常,深度学习算法需要很长的时间来训练,这是因为在深度学习算法中有太多的参数,所以训练这些参数的时间比平时要长。即使比较先进的深度学习算法Resnet,从零开始完全训练也需要大约两周的时间。相比之下,机器学习所需的训练时间要少得多,从几秒钟到几个小时不等。
相较于训练时间,测试时间就要短很多。在测试时,深度学习算法的运行时间要短得多。但是,如果将其与k近邻机器学习算法进行比较,测试时间会随着数据大小的增加而增加。但这并不适用于所有机器学习算法,因为其中一些算法的测试时间也很短。
六、可解释性
最后,我们将可解释性作为比较机器学习和深度学习的一个因素。这一因素也是深度学习难以在工业中取得大规模应用的主要原因。
我们举个例子:假设我们使用深度学习为论文自动评分,它在得分方面的表现相当出色,接近于人类的表现。但有一个问题:深度学习并没有揭示它为什么会给出那个分数。事实上,从数学中我们可以发现深度神经网络的哪些节点被激活,但是我们不知道神经元应该做什模型以及这些神经元层共同在做什么,所以我们无法对结果进解释。
而相较于深度学习,类似于决策树这样的机器学习算法为我们提供了清晰的规则,告诉我们什么是它的选择以及为什么选择了它,很容易解释算法背后的推理。因此,决策树和线性/逻辑回归等机器学习算法主要用于工业中需要可解释性的场景。
【写在最后】除了上述六点,深度学习和机器学习还有哪些不同呢?欢迎大家在文末留言讨论。
欢迎关注磐创博客资源汇总站:
http://docs.panchuang.net/
欢迎关注PyTorch官方中文教程站:
http://pytorch.panchuang.net/
深度学习vs机器学习 | 这些本质区别你知道多少?的更多相关文章
- 深度学习VS机器学习——到底什么区别
转自:https://baijiahao.baidu.com/s?id=1595509949786067084&wfr=spider&for=pc 最近在听深度学习的课,老师提了一个基 ...
- 使用深度学习检测TOR流量——本质上是在利用报文的时序信息、传输速率建模
from:https://www.jiqizhixin.com/articles/2018-08-11-11 可以通过分析流量包来检测TOR流量.这项分析可以在TOR 节点上进行,也可以在客户端和入口 ...
- 深度学习 vs 机器学习 vs 模式识别
http://www.csdn.net/article/2015-03-24/2824301 [编者按]本文来自CMU的博士,MIT的博士后,vision.ai的联合创始人Tomasz Malisie ...
- 深度学习,机器学习神器,白嫖免费GPU
深度学习,机器学习神器,白嫖免费GPU! 最近在学习计算机视觉,自己的小本本没有那么高的算力,层级尝试过Google的Colab,以及移动云的GPU算力,都不算理想.如果数据集比较小,可以试试Cola ...
- 整理:深度学习 vs 机器学习 vs 模式识别
http://www.csdn.net/article/2015-03-24/2824301 近200篇机器学习&深度学习资料分享(含各种文档,视频,源码等) http://developer ...
- 深度学习的seq2seq模型——本质是LSTM,训练过程是使得所有样本的p(y1,...,yT‘|x1,...,xT)概率之和最大
from:https://baijiahao.baidu.com/s?id=1584177164196579663&wfr=spider&for=pc seq2seq模型是以编码(En ...
- 吴裕雄--天生自然python Google深度学习框架:人工智能、深度学习与机器学习相互关系介绍
- 机器学习如何选择模型 & 机器学习与数据挖掘区别 & 深度学习科普
今天看到这篇文章里面提到如何选择模型,觉得非常好,单独写在这里. 更多的机器学习实战可以看这篇文章:http://www.cnblogs.com/charlesblc/p/6159187.html 另 ...
- 一张图看懂AI、机器学习和深度学习的区别
AI(人工智能)是未来,是科幻小说,是我们日常生活的一部分.所有论断都是正确的,只是要看你所谈到的AI到底是什么. 例如,当谷歌DeepMind开发的AlphaGo程序打败韩国职业围棋高手Lee Se ...
随机推荐
- tcpdump常用方法
tcpdump -i eth0监视制定网络接口的数据包 tcpdump host 10.13.1.135监视所有10.13.1.135主机收到和发出的数据包 tcpdump src host 10.1 ...
- 痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU启动那些事(11.2)- FlexSPI NOR连接方式大全(RT1060/1064(SIP))
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是恩智浦i.MX RT1060/1064(SIP)两款MCU的FlexSPI NOR启动的连接方式. 上一篇文章<FlexSPI N ...
- 【WPF学习】第五十一章 动画缓动
线性动画的一个缺点是,它通常让人觉得很机械且不能够自然.相比而言,高级的用户界面具有模拟真实世界系统的动画效果.例如,可能使用具有触觉的下压按钮,当单击时按钮快速弹回,但是当没有进行操作时它们会慢慢地 ...
- 7-2 jmu-python-九九乘法表(矩形) (10 分)
本题目要求输出如下图所示的九九乘法表 注:乘积要求做格式控制,占4个位置的宽度 输入样例: 无 输出样例: 1*1=1 1*2=2 1*3=3 1*4=4 1*5=5 1*6=6 1*7=7 1*8= ...
- htm5新特性(转)
转自:http://hyuhan.com/2017/07/06/... 今天来谈谈前端面试中基本上每次一面都会被问到的一个问题,那就是html5的新特性了.这个是学习前端必须掌握的基础知识. 新增的元 ...
- checkbox,radio自定义美化表单
原理 利用label标签,包裹input的时候,点击label等同于点击input,再用背景图片显示选中和取消选中状态 效果 图片 复选 <!DOCTYPE html> <html& ...
- python框架Django实战商城项目之用户模块创建
创建用户APP 整个项目会存在多个应用,需要存放在一个单独的文件包了,所以新建一个apps目录,管理所有子应用. 在apps包目录下穿件users应用 python ../../manage.py s ...
- 利用wps创建有目录的PDF/word
为什么要创建: 在阅读一些行业规范或者很长的文件,像是项目管理方案时,非常麻烦,定位需要重新返回目录去.--->所以我想能不能创建一个带目录的PDF,可以点击直接跳转,那就方便多了. 如何创建: ...
- php Rabbitmq扩展安装坑点
pecl install amqp 出现 checking for amqp using pkg-config... configure: error: librabbitmq not found 这 ...
- 「从零单排HBase 06」你必须知道的HBase最佳实践
前面,我们已经打下了很多关于HBase的理论基础,今天,我们主要聊聊在实际开发使用HBase中,需要关注的一些最佳实践经验. 1.Schema设计七大原则 1)每个region的大小应该控制在10G到 ...