2016是人工智能爆发的一年,各种层出不穷的新技术、新概念让人眼花缭乱。很多人都分不清人工智能(Artificial Intelligence,简称AI)、机器学习(Machine Learning,简称ML)以及深度学习(Deep Learning,简称DL)概念之间的不同。本文重点解释了机器学习和深度学习的差别。
由于AI的大热,媒体上关于AI的文章狂轰乱炸,人工智能似乎已经成为游戏的改变者,企业们也纷纷下注。
对于AI领域的从业者来说,人工智能、机器学习和深度学习之间的差别应该非常清楚。人工智能是一个大概念,从有效的老式人工智能(GOFAI)到联结主义结构,无所不包。
机器学习则是人工智能领域的一个小分支,如果说AI是一个合集,那么ML就是AI的子集。
任何通过数据训练的学习算法的相关研究都属于机器学习,包括很多已经发展多年的技术,比如线性回归(Linear Regression)、K均值(K-means,基于原型的目标函数聚类方法)、决策树(Decision Trees,运用概率分析的一种图解法)、随机森林(Random Forest,运用概率分析的一种图解法)、PCA(Principal
人工神经网络则是深度学习的起源。
一些之前接触过人工神经网络的机器学习从业者对深度学习的第一印象很可能是:这不过就是多层结构的人工神经网络而已。此外,深度学习成功的主要原因是大量可用的数据以及像GPU这样更强大的计算引擎的出现。
这当然是事实,深度学习的出现基本要归因于这两方面的进展。但是,如果就此下结论说深度学习不过是比支持向量机或者决策树更好的算法而已,那就真的是一叶障目,不见泰山了。
借用Andreesen的话“软件正在占领全世界”,那么深度学习就正在取代机器学习。两篇来自不同机器学习领域的从业者很好的解释了为什么深度学习正在占领全世界。神经语言程序学(NLP)的专家Chris Manning这样形容“深度学习海啸”:
深度学习的浪潮在几年前就已经抵达计算语言学的海岸,但是2015似乎是这场海啸全面冲击各大自然语言处理(NLP)会议的一年。一些专家预言,最终的冲击将会更大。
Nicholas Paragios则写了一篇名为“计算机视觉研究:大萧条”的文章,以下是文章节选:
在高度复杂以及很大程度由图片的自由度决定的问题上,深度学习一旦被赋予大量被标记的数据以及不可想象(直到最近)的计算能力,就能解决所有的计算机视觉问题。如果是这样的话,那么深度学习占领业界,计算机视觉研究成为边缘学科并走上计算机图形的老路(学术研究的活跃度和数量)将只是时间问题。
这两篇文章都强调了深度学习相对机器学习是有颠覆性的意义的。当然,深度学习在商用领域也具备同样的颠覆性。但是让人震惊和困惑的是,就连Gartner也没能分清机器学习和深度学习之间的差别。这里是Gartner于2016年8月份发布的发展规律周期图(Hyper Cycle),深度学习甚至没有被提及:
尽管被Gartner忽视了,深度学习依然持续火热。目前对深度学习的炒作主要是:我们已经拥有了可以商用的机器,只要给它们足够多的数据和足够长的时间,它们就能够自己学习。这要么是夸大了深度学习的现有技术水平,要么就是将深度学习的实践过于简化了。在
过去的几年里,深度学习产生了大量的想法和技术,这些在以前要么是未知的,要么是站不住脚的。起初,这些概念是碎片化而且毫无关联的,但是随着时间的推移,大量的模式和方法开始涌现,深度学习设计模式这一领域也变得热闹起来。
今天的深度学习不仅仅是具备多层架构的感知器,而是一系列能够用来构建可组合可微分的体系结构的技术和方法。
这些具有超强能力的机器学习系统只不过是我们目前所能看到的冰山一角。关键在于,虽然深度学习目前看起来像点金术,但是总有一天我们会学会如何像操控化学一样操控它。有了这个基础,我们将能够更好的预测机器学习未来所能具备的能力。
有好的文章希望站长之家帮助分享推广,猛戳这里
update 1:很多同学还是私信我,让我推荐或者提供一些电子书给他们,我这边也打包了一些我认为比较重要的,如果有需要的同学可以「邮箱」联系我。申明,我所发送的书个人均已购买正版实体书,建议大家也支持正版,谢谢。
自从我毕业以来,先是火机器学习,然后火大数据,之后火深度学习,现在火人工智能这些算法领域。越来越多的朋友想从工业,金融等等行业转行到算法相关的行业,我一年前在知乎上写了一个答案,当时拿了不少的赞,所以也一直有同学找我咨询相关的问题,确确实实也有相当一批人拿到了不错的offer。
我个人不是很喜欢更新非技术的文章,但是我还是觉得如果能帮助到一些人,其实也是另一种技术输出的展现,所以我就写下了下面这篇短文,希望对迷茫的人有所帮助。
今天一大早,我在刷知乎的时候,刷到这个题目,我看到这个叫做的答主的一个“10问检验你的基础水平”,我觉得是至少我看来非常全面考验数学基础的,所以这边就和大家分享一下(答案我会在最后给出,有兴趣的最好自己做一下,括号里面的我个人觉得没有意义所以没有给出解释,有兴趣的却又解不出来的同学可以私信我):
1.什么是贝叶斯定理?请简述其公式?现分别有 A,B 两个容器,在容器 A 里分别有 7 个红球和 3 个白球,在容器 B 里有 1 个红球和 9 个白球,现已知从这两个容器里任意抽出了一个球,且是红球,问这个红球是来自容器 A 的概率是多少?
这题考了概率论的基础,虽然考了贝叶斯,但是后面的容器问题完全可以不用贝叶斯也可以算出来,算是一题数学敏感度的测试题,看看自己适不适合去努力切入这个方向。
2.请简述卡方分布和卡方检验的定义?(给你一个2*2的列表让你算卡方分布,你会怎么做?)
这题考了梳理统计的基础,括号里面的我个人觉得没有意义,有兴趣的可以查表算一下。
3.在概率统计学里,自由度是如何被定义的,又该怎样去应用?
原作者BrianRWang认为这题比较偏,属于冷门题目。个人看法:其实我觉得如果是任何一个理工科的同学,这题都应该能答出来,大学的课程里,自由度的理解直接决定了统计科目大家的学习质量。
以上的三题考了概率论与数理统计的基础,在机器学习理论中,概率论和数理统计的基础是否扎实直接决定了能否很好的理解各个理论的前置条件,适用场景,提升方向等,着实重要。
4.请简述什么是线性代数里的矩阵特征值和特征向量?(求矩阵:A=np.array([[1,2],[3,4]])的特征值,特征向量,写出其运算公式)
线性代数题目,很简单给出对应的公式即可,我在SVD介绍的时候就完全讲过。如果换成,如何理解特征值及特征向量在空间中的实际意义,这题就会变得非常卡人。
5.如何使用级数分解的方法求解e^x?(并给出在数值计算中可能遇到的问题。)
数学分析的题目,一个公式。
以上的题目都是线性代数,数学分析的题目,都是比较考验大学的基本功,如果不记得也很正常,只要能说出大概的思想就行,比如空间选择啊,点导数展开。
6.数据结构的定义是什么?运用数据结构的意义是什么?
计算机题,这题应该是几个问答中最简单的了。
7.请说明至少两种用于数据可视化(data visualization)的package。并且说明,在数据分析报告里用数据可视化的意义是什么?
前一问如果主动接触过计算科学的人这题比较好答,如果是纯新手,这题就是无从下手的。后面一小问也是属于考察你的数据敏感度的,如果能够match到一些点,很加分。
8.假如让你用编程方法,比如python,处理一个你没见过的数学问题,比如求解一个pde或者整快速傅里叶变换,你应该查什么东西,找哪一个package的参考资料?
9.请简述面向对象编程和函数式编程分别的定义,并举出其案例。
计算机题,考了基础的编程的一些风格的了解程度,说实话,这题我第一次看到也很懵,还去Google了一下。
原作者还有一个第10题,不涉及技术,我就没放。以上四题更偏向coding的能力,虽然说算法工程师、数据挖掘工程师、NLP工程师,等等,都是挂着科研的title,但是过硬的coding能力是完全不能缺少的,要其他人把很复杂的数学理论用代码帮你实现出来的交流成本巨大,我觉得精通或者熟悉至少一门语言还是非常重要的。
以上提问如果能闭卷对7个及以上,证明一个学生的基础还是比较好的。只要聪明肯学,一定是有所裨益的。在7个,到3个之间,不妨提高一下自己的数学水平;努努力还是可以学会机器学习的。如果写对不了两个(“这都啥啊?”),郴州勃学院复读班欢迎你过去。
其实我还是比较认同的,答对3个或者2.5个以上的同学,完全可以试一试转一转,我觉得不存在说入不了门的情况。能答对7个或者7.5以上的同学,我觉得可以投简历了,如果我收到你的简历,即便是你没有历史的工作经验,我很愿意让你试一试的。
很多转行的朋友会问我,到底看什么书会比较好,我刚开始会推荐一堆,后来自己想了想发现,还是太天真,大家工作忙的要死,看一本就很难了,别说一堆。
我最后就浓缩了三本::周志华老师的西瓜书(《机器学习》周志华 清华大学出版社),李航的带你玩转基础理论(《统计学习方法》李航 清华大学出版社),经典厕所读物(《数学之美》吴军 人民邮电出版社)。
确实是很经典很经典的书,我现在基本上每次必回答以上三本。
除此之外,在coursera上找吴恩达(Andrew Ng)教授的机器学习课程,他把要用到的数学知识也做了简单的讲解,机器学习方面的理论和算法讲的也很详细,而且很基础,肯定可以看懂。,应该是最适合看的视频类的资料没有之一。
我不反对也不支持大家去参加几千几万的速成班,几十几百的live课程,但是我觉得你不妨先看完以上的书和视频再做决定,一定不会让你失望。之前我一直在给team做吴恩达(Andrew Ng)在线课程的分享,一直到最近我发现不如整理出来给team以外的大家一起看算了,所以在Gradient Checking(9-5)这节课之后的所有课程,如果有价值的地方,我都做了笔记后面会分享在我的GitHub中,希望给大家一些帮助。
最后,希望我们都不负自己的青春。
欢迎大家关注我的个人,更多代码内容欢迎follow我的个人,如果有任何算法、代码疑问都欢迎通过公众号发消息给我哦。
是笔者 系列的一部分;对于其他的资料、文章、视频教程、工具实践请参考。本文算是抛砖引玉,笔者最近有空就会在 Pad 上面随手翻阅这些书籍,希望能够了解其他优秀的书籍。
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。