整理:深度学习 vs 机器学习 vs 模式识别
【编者按】本文来自CMU的博士,MIT的博士后,vision.ai的联合创始人Tomasz Malisiewicz的我的博客文章,阅读本文,你能够更好的理解计算机视觉是怎么一回事,同时对机器学习是如何随着时间缓慢发展的也有个直观的认识。html
如下为正文:linux
本文咱们来关注下三个很是相关的概念(深度学习、机器学习和模式识别),以及他们与2015年最热门的科技主题(机器人和人工智能)的联系。git
图1 人工智能并不是将人放入一台计算机中(图片来源于 WorkFusion 的博客)github
环绕四周,你会发现不缺少一些初创的高科技公司招聘机器学习专家的岗位。而其中只有一小部分须要深度学习专家。我敢打赌,大多数初创公司均可以从最基本的数据分析中获益。那如何才能发现将来的数据科学家?你须要学习他们的思考方式。算法
三个与“学习”高度相关的流行词汇
模式识别(Pattern recognition)、机器学习(machine learning)和深度学习(deep learning)表明三种不一样的思想流派。模式识别是最古老的(做为一个术语而言,能够说是很过期的)。机器学习是最基础的(当下初创公司和研究实验室的热点领域之一)。而深度学习是很是崭新和有影响力的前沿领域,咱们甚至不会去思考后深度学习时代。咱们能够看下图所示的谷歌趋势图。能够看到:编程
1)机器学习就像是一个真正的冠军同样持续昂首而上;
2)模式识别一开始主要是做为机器学习的代名词;
3)模式识别正在慢慢没落和消亡;
4)深度学习是个崭新的和快速攀升的领域。
2004年至今三个概念的谷歌搜索指数(图来源于 谷歌趋势 )网络
1. 模式识别:智能程序的诞生架构
模式识别是70年代和80年代很是流行的一个术语。它强调的是如何让一个计算机程序去作一些看起来很“智能”的事情,例如识别“3”这个数字。并且在融入了不少的智慧和直觉后,人们也的确构建了这样的一个程序。例如,区分“3”和“B”或者“3”和“8”。早在之前,你们也不会去关心你是怎么实现的,只要这个机器不是由人躲在盒子里面假装的就好(图2)。不过,若是你的算法对图像应用了一些像滤波器、边缘检测和形态学处理等等高大上的技术后,模式识别社区确定就会对它感兴趣。光学字符识别就是从这个社区诞生的。所以,把模式识别称为70年代,80年代和90年代初的“智能”信号处理是合适的。决策树、启发式和二次判别分析等所有诞生于这个时代。并且,在这个时代,模式识别也成为了计算机科学领域的小伙伴搞的东西,而不是电子工程。从这个时代诞生的模式识别领域最著名的书之一是由Duda & Hart执笔的“模式识别(Pattern Classification)”。对基础的研究者来讲,仍然是一本不错的入门教材。不过对于里面的一些词汇就不要太纠结了,由于这本书已经有必定的年代了,词汇会有点过期。app
图2 一个字符“3”的图像被划分为16个子块。框架
自定义规则、自定义决策,以及自定义“智能”程序在这个任务上,曾经都风靡一时(更多信息,能够查看这个 OCR 网页)
小测试:计算机视觉领域最著名的会议叫CVPR,这个PR就是模式识别。你能猜出第一届CVPR会议是哪年召开的吗?
2. 机器学习:从样本中学习的智能程序
在90年代初,人们开始意识到一种能够更有效地构建模式识别算法的方法,那就是用数据(能够经过廉价劳动力采集得到)去替换专家(具备不少图像方面知识的人)。所以,咱们搜集大量的人脸和非人脸图像,再选择一个算法,而后冲着咖啡、晒着太阳,等着计算机完成对这些图像的学习。这就是机器学习的思想。“机器学习”强调的是,在给计算机程序(或者机器)输入一些数据后,它必须作一些事情,那就是学习这些数据,而这个学习的步骤是明确的。相信我,就算计算机完成学习要耗上一天的时间,也会比你邀请你的研究伙伴来到你家而后专门手工得为这个任务设计一些分类规则要好。
图3 典型的机器学习流程(图来源于 Natalia Konstantinova 博士的博客)。
在21世纪中期,机器学习成为了计算机科学领域一个重要的研究课题,计算机科学家们开始将这些想法应用到更大范围的问题上,再也不限于识别字符、识别猫和狗或者识别图像中的某个目标等等这些问题。研究人员开始将机器学习应用到机器人(强化学习,操控,行动规划,抓取)、基因数据的分析和金融市场的预测中。另外,机器学习与图论的联姻也成就了一个新的课题---图模型。每个机器人专家都“无奈地”成为了机器学习专家,同时,机器学习也迅速成为了众人渴望的必备技能之一。然而,“机器学习”这个概念对底层算法只字未提。咱们已经看到凸优化、核方法、支持向量机和Boosting算法等都有各自辉煌的时期。再加上一些人工设计的特征,那在机器学习领域,咱们就有了不少的方法,不少不一样的思想流派,然而,对于一个新人来讲,对特征和算法的选择依然一头雾水,没有清晰的指导原则。但,值得庆幸的是,这一切即将改变……
延伸阅读:要了解更多关于计算机视觉特征的知识,能够看看原做者以前的博客文章:“ 从特征描述子到深度学习:计算机视觉的20年 ”。
3. 深度学习:一统江湖的架构
快进到今天,咱们看到的是一个夺人眼球的技术---深度学习。而在深度学习的模型中,受宠爱最多的就是被用在大规模图像识别任务中的卷积神经网络(Convolutional Neural Nets,CNN),简称ConvNets。
图4 ConvNet框架(图来源于 Torch的教程 )
深度学习强调的是你使用的模型(例如深度卷积多层神经网络),模型中的参数经过从数据中学习得到。然而,深度学习也带来了一些其余须要考虑的问题。由于你面对的是一个高维的模型(即庞大的网络),因此你须要大量的数据(大数据)和强大的运算能力(图形处理器,GPU)才能优化这个模型。卷积被普遍用于深度学习(尤为是计算机视觉应用中),并且它的架构每每都是非浅层的。
若是你要学习Deep Learning,那就得先复习下一些线性代数的基本知识,固然了,也得有编程基础。我强烈推荐Andrej Karpathy的博文:“ 神经网络的黑客指南 ”。另外,做为学习的开端,能够选择一个不用卷积操做的应用问题,而后本身实现基于CPU的反向传播算法。
对于深度学习,还存在不少没有解决的问题。既没有完整的关于深度学习有效性的理论,也没有任何一本能超越机器学习实战经验的指南或者书。另外,深度学习不是万能的,它有足够的理由能日益流行,但始终没法接管整个世界。不过,只要你不断增长你的机器学习技能,你的饭碗无忧。但也不要对深度框架过于崇拜,不要惧怕对这些框架进行裁剪和调整,以获得和你的学习算法能协同工做的软件框架。将来的Linux内核也许会在Caffe(一个很是流行的深度学习框架)上运行,(什么意思呢这句话??)然而,伟大的产品老是须要伟大的愿景、领域的专业知识、市场的开发,和最重要的:人类的创造力。
其余相关术语
1)大数据(Big-data):大数据是个丰富的概念,例如包含大量数据的存储,数据中隐含信息的挖掘等。对企业经营来讲,大数据每每能够给出一些决策的建议。对机器学习算法而言,它与大数据的结合在早几年已经出现。研究人员甚至任何一个平常开发人员均可以接触到云计算、GPU、DevOps和PaaS等等这些服务。
2)人工智能(Artificial Intelligence):人工智能应该是一个最老的术语了,同时也是最含糊的。它在过去50年里经历了几度兴衰。当你遇到一个说本身是作人工智能的人,你能够有两种选择:要么摆个嘲笑的表情,要么抽出一张纸,记录下他所说的一切。
延伸阅读:原做者2011的博客:“ 计算机视觉当属人工智能 ”。
结论
关于机器学习的讨论在此停留(不要单纯的认为它是深度学习、机器学习或者模式识别中的一个,这三者只是强调的东西有所不一样),然而,研究会继续,探索会继续。咱们会继续构建更智能的软件,咱们的算法也将继续学习,但咱们只会开始探索那些能真正一统江湖的框架。
若是你也对深度学习的实时视觉应用感兴趣,特别是那些适合机器人和家居智能化的应用,欢迎来咱们的网站 vision.ai 交流。但愿将来,我能说的再多一点……
做者简介:Tomasz Malisiewicz,CMU的博士,MIT的博士后,vision.ai的联合创始人。关注计算机视觉,在这个领域也作了大量的工做。另外,他的博客也富含信息量和价值,感兴趣的能够浏览他我的主页和博客。
原文连接: Deep Learning vs Machine Learning vs Pattern Recognition(译者/邹晓艺,CSDN 博客专家,关注机器学习、计算机视觉、人机交互和人工智能等领域 责编/钱曙光)
由“2015 OpenStack技术大会”、“2015 Spark技术峰会”、“2015 Container技术峰会” 所组成的 OpenCloud 2015大会于4月17-18日在北京召开。 日程已经所有公开!懂行的人都在这里!(优惠票价期,速来)
本文为CSDN编译整理,未经容许不得转载,如需转载请联系market#csdn.net(#换成@)
- 顶
- 102
- 踩
- 0
已有41条评论