机器学习和深度学习深度搜索

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 上面随手翻阅这些书籍,希望能够了解其他优秀的书籍。

  • :由美国当代著名统计学家L·沃塞曼所著的《统计学元全教程》是一本几乎包含了统计学领域全部知识的优秀教材。本书除了介绍传统数理统计学的全部内容以外,还包含了Bootstrap方法(自助法)、独立性推断、因果推断、图模型、非参数回归、正交函数光滑法、分类、统计学理论及数据挖掘等统计学领域的新方法和技术。本书不但注重概率论与数理统计基本理论的阐述,同时还强调数据分析能力的培养。本书中含有大量的实例以帮助广大读者快速掌握使用R软件进行统计数据分析。
  • :李航老师的这本书偏优化和推倒,推倒相应算法的时候可以参考这本书。
  • :周志华老师的这本书非常适合作为机器学习入门的书籍,书中的例子十分形象且简单易懂。
  • :来自斯坦福的无监督特征学习与深度学习系列教程
  • :七周的免费深度学习课程,学习如何构建那些优秀的模型。
  • :深入浅出数据分析》以类似“章回小说”的活泼形式,生动地向读者展现优秀的数据分析人员应知应会的技术:数据分析基本步骤、实验方法、最优化方法、假设检验方法、贝叶斯统计方法、主观概率法、启发法、直方图法、回归法、误差处理、相关数据库、数据整理技巧;正文之后,意犹未尽地以三篇附录介绍数据分析十大要务、R工具及ToolPak工具,在充分展现目标知识以外,为读者搭建了走向深入研究的桥梁。
  • Lean Analytics?—?by Croll & Yoskovitz: 本书是教会你如何建立基本的以商业思维去使用这些数据,虽然这本书本身定位是面向初学者,不过我觉得你可以从中学到更多。你可以从本书中学到一条基本准则、6个基础的线上商业形态以及隐藏其后的数据策略。
  • Analytics是关于面向初学者讲解商业逻辑加上数据,那么本书是面向大型公司来讲解这些内容。听上去好像没啥新鲜的,不过往往初创企业与独角兽之间面对的问题是千差万别,本书中会介绍譬如保险公司是如何进行定价预测或者银行从业者们又在面临怎样的数据问题。
  • Naked Statistics?—?Charles Wheelan: 这本书我一直很是推荐,因为它不仅仅面向数据科学家,而是为任何一个行业的人提供基本的统计思维,这一点恰恰是我认为非常关键的。这本书并没有太多的长篇大论,而是以一个又一个的故事形式来讲解统计思维在公司运营中的重要作用。
  • Doing Data Science?—?Schutt and O’Neil: 这算是最后一本非技术向的书了吧,这本书相较于上面三本更上一层楼,他深入了譬如拟合模型、垃圾信息过滤、推荐系统等等方面的知识。
  • Data Science at the Command Line?—?Janssens: 在介绍本书之前首先要强调下,千万不要畏惧编程,学习些简单的编程知识能够有助于你做更多有趣的事。你可以自己去获取、清洗、转化或者分析你的数据。不过我也不会一上来就扔出大堆的编程知识,我建议还是从简单的命令行操作开始学起,而本书正是介绍如何只用命令行就帮你完成些数据科学的任务。
  • Python for Data Analysis?—?McKinney: Python算是近几年来非常流行的数据分析的语言了吧,人生苦短,请用Python。这本书算是个大部头了,有400多页吧,不过它首先为你介绍了Python的基础语法,因此学起来不会很困难吧。
  • I heart logs?—?Jay Kreps: 最后一本书则是短小精悍,加起来才60多页吧。不过它对于数据收集和处理的技术背景有很好的概述,虽然很多分析家或者数据科学家并不会直接用到这些知识,但是至少你能够理解技术人员们可以用哪些架构去解决数据问题。
}

我要回帖

更多关于 机器学习和深度学习 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信