资讯专栏INFORMATION COLUMN

为什么我需要深度学习?

lordharrd / 1925人阅读

摘要:为什么我又要重新开始写机器学习相关的文章了最主要的原因是现在的机器学习和五年前十年前区别很大。深度学习带来了什么深度学习最重要的东西就是自带了特征学习,有时候也被翻译为表征学习,简单来说就是,不需要进行特别的特征抽取。

1.为什么我开始写这个系列博客

说五年前我还在某A云公司的时候,身在一个机器学习算法组,对机器学习怀有浓厚的兴趣。花了好多的时间来试图搞清楚各种流行的机器学习算法,经常周末也跟同事探讨公式的推倒和背后的意义。写博客的主要动力是让自己能够更好的理解机器学习。

 

后来坚持了没有太久的时间就换到大数据方向了,最主要的原因是觉得自己数学天赋太差,尤其是数学。当初学习的时候主要参考的PRML,Andrew Moore的PPT,Andrew Ng的公开课,plukids博客,另外加上淘宝斌强哥的各种悉心指导。但是学了好久,公式能大概看懂是怎么回事,不过自己徒手推出来实在是太艰难了。PRML的习题,甚至是具体数学的习题,都很难做得出来。

 

后面的发生的事情就理所当然了,既然很难在这个领域做到核心(我的理解是具有及其好的数学天赋作为后盾才能做到机器学习的核心),那么为什么不换一个更适合自己的方向呢?恩好吧,基础数据架构(Infra)看起来是个不错的方向,不需要理解太多的数学(除了真的需要去实现Paxos)。做Infra如果有架构设计的基础,另外加上勤奋,多多少少还是能做出一些东西的。

 

为什么我又要重新开始写机器学习相关的文章了?最主要的原因是现在的机器学习和五年前、十年前区别很大。较大的不同是,自从深度学习成为了机器学习舞台上最重要的一个角色起,机器学习变得更加真实了,利用深度学习可以做出很多很有意思的真实世界的应用,而这些东西在几年前的门槛要高得多。我在本文之后会更详细的展开此点。

 

此外这几年的工具发展神速,利用TensorFlow、MXNet或者其他类似的工具可以很容易的开始自己的pet project,也不用理解太多背后的细节。而在几年前能用的现成工具寥寥无几,而且十分的碎片化,比如说如果想要做分类器吧,需要用libsvm,需要搞跨语言调用。如果要换个算法的话,那可是要命的事情了。当然这些东西对于大公司来说都不是事儿,但是对于个人学习者来说需要投入的经历太多了,远不是业余时间可以承担的。

2. What to expect?

差不多关注了几个月的深度学习,虽然没有花太多时间来写代码,但是各种各样的博客、视频、公开课还是看了一些。这个系列和几个我看过的主要内容的差异:

 

首先这个不是一个科普杂文,现在已经有很多旁征博引丰富多彩老少皆宜的杂文,比如说王川的深度学习到底有多深系列,我准备少些一些历史和背景花絮,多写一些技术。

其次这个不是一个系统的深度学习教程,现在已经有非常多非常好的相关公开课,比如说Stanford的CS231NCS224D,Hilton的,Udacity的等等。我不准备写得面面俱到。

另外我会尽量少的涉及数学,因为我不可能把数学推导过程写得比Ian Goodfellow的Deep Learning书写得更清楚。但是我会尽量把最重要的部分写出来。

所以我希望写出的是,当看过网上的博客、公开课和书后,什么地方是最难理解的。

深度学习为什么是革命性的

啰里啰嗦了这么多,开始正文了。此篇博客严重参考了来自[1]第一章Introduction的内容,包括图片和内容。

 

1.前深度学习的世界

深度学习不是一个新概念,它已经存在好几十年了,具体可以参考[1]/[2],这里所说的深度学习世界大抵是在最近几年深度学习刷新各个机器学习领域之后了。

 

前深度学习世界的特征就是:在人类强的地方很弱,在人类弱的地方可能很强。人类强的地方比如说图像识别(猫还是狗);图片语义分割(参考[3])比如看出一个图片中哪部分是树、哪部分是房子。人类弱的地方比如说下棋、语法标记(一个句子里面哪些是助词哪些是动词)。

 

这个最主要的原因是,那种对于人类来说简单的东西(在万千世界中识别出一只猫)没办法用一个正式的数学公式去描述[1]。

 

比如说你无法用数学公式去定义一个猫的形状。因为不同的角度、颜色、距离、光线的组合让这个基本上没有办法做到。

 

所以在这个基础上谈智能实在是镜中月水中花:你连一个猫都不认识,怎么能够取代人类?因为人类的世界远远比围棋要复杂得多。

 

[1] 里面还有一个有趣的例子,关于1989年时候著名的专家系统Cyc:

 

Its inference engine detected an inconsistency in the story: it knew that people do not have electrical parts, but because Fred was holding an electric razor, it believed the entity “FredWhileShaving” contained electrical parts. It therefore asked whether Fred was still a person while he was shaving.

 

... 它的推论引擎发现了一个前后矛盾的地方:它知道人是没有电驱动的模块,但是因为Fred拿起了一个电动剃须刀,所以这个引擎认为"一个正在剃胡子的Fred"有了一个电驱动的模块。然后这个系统就问起这个Fred到底还是不是一个人啊。

 

此外,前机器学习时代一个重要的特征是要设计特征,比如说如果要做一个淘宝的商品自动分类器,特征可能有商品的题目、描述、图片等等;特征还需要进行严格的预处理,比如说要过滤掉描述里面亲包邮啊这种无意义的话,而且对正文里面的描述也要进行重点抽取才能够符合训练的标准。等到特征选择、清理好了之后才能够运行出有意义的结果。而且如果需要重新选择特征,或者更改特征,那就需要重新重头来过。

 

曾经有些公司甚至有"特征抽取工程师"这样的职位,以前阿里同事做分类器的时候,就要特别注意不要把成人玩具分到儿童玩具的类目里面,万一被抓到把柄了那可就要丢工作了。

 

2.深度学习带来了什么

深度学习最重要的东西就是自带了特征学习(representation learning,有时候也被翻译为表征学习),简单来说就是,不需要进行特别的特征抽取。从这个来说,深度学习相对传统机器学习来说就有了太多的优势,因为一个设计好的系统能够被相对容易地移植到新的任务上去。

 

参考最近DeepMind发布的一个深度增强学习的无监督系统玩复杂任务游戏游戏的例子[4]。系统从游戏的屏幕像素开始自我学习,到学会玩一个复杂游戏并超过人类的专业玩家,并没有进行特别的人工特征抽取,这个在传统的机器学习方式上看起来是很难想象的。

 

此外深度学习另外的一个优势是,可以表述相对与浅度学习更复杂的东西,这里不准备展开描述,不然就要提到XOR,维度诅咒(The Curse of Dimensionality)等等相对枯燥而且很难说清楚的理论知识了。简单来说,提升维度当然是一个很厉害人人都想的东西,参考三体中的降维打击。但是与此同时也带来了很多计算上的挑战,得益于这几年神经科学,算法研究和硬件(特别是GPU)提升,我们可以尝试越来越深的模型。

现在的深度学习究竟在什么位置

同样,主要参考了[1]的综述部分:

 

首先衡量深度网络的复杂程度主要有两个方面:1. 网络中一共有多少个神经元,2. 每个神经元平均与多少个其他的神经元连接。

 

首先是连接的数量:

 

每个蓝色的小点表示一些里程碑级别的系统公布的结果,比如说10. 就是GoogLeNet (Szegedy et al., 2014a)

 

从这点看来,似乎还是挺乐观的,比如说10. 已经很接近人类了,但是看看下面。。。

 

神经元的数量:

可以看到,目前较先进的系统所模拟的神经元的数量处于蜜蜂和青蛙之间。蓝色的线表示预估的增长曲线,如果在没有革命性的进步前,系统差不多可以到2050年的时候模拟人类同样的神经元的数目,所以革命之路还很漫长。

 

但是从另一方面来说,神经元的数目也不是的衡量标准,就像是玩星际一样,APM 150的意识派也可以完虐500的抽经流选手。我们可以教一个神经元如此少的系统玩复杂的电子游戏,但是我们没有办法教一个青蛙玩这种游戏。所以也不用悲观,也许西部世界似的人工智能会到来得比想象中更早。

引用

[1] Deep Learning: Ian Goodfellow, Yoshua Bengio, Aaron Courville

[2] [王川的深度学习到底有多深系列](http://wangchuan.blog.caixin.com/archives/142598)

 

[3] [http://stackoverflow.com/questions/33947823/what-is-semantic-segmentation-compared-to-segmentation-and-scene-labeling](http://stackoverflow.com/questions/33947823/what-is-semantic-segmentation-compared-to-segmentation-and-scene-labeling)

 

[4] [https://deepmind.com/blog/reinforcement-learning-unsupervised-auxiliary-tasks/]

(https://deepmind.com/blog/reinforcement-learning-unsupervised-auxiliary-tasks/)

欢迎加入本站公开兴趣群

商业智能与数据分析群

兴趣范围包括各种让数据产生价值的办法,实际应用案例分享与讨论,分析工具,ETL工具,数据仓库,数据挖掘工具,报表系统等全方位知识

QQ群:81035754

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/4426.html

相关文章

  • 深度学习不是AI的未来

    摘要:不过,深度学习并不是人类可以创造的完美人工智能科技的终点。深度学习的公正性并非来自其自身,而是人类筛选和准备的深度学习数据。深度学习给出的是非自然合法语言解释的结果。 现在每一个人都正在学习,或者正打算学习深度学习,它是目前人工智能诸多流派中兴起的一个。各个年龄阶段的数十万人都在学习着免费和收费的深度学习课程。太多的创业公司和产品的命名以深度开头,深度学习已然成了一个流行语,但其真正的落地应...

    用户83 评论0 收藏0
  • 深度学习:远非人工智能的全部和未来

    摘要:绝大多数人忽略了深度学习只占机器学习领域的,而机器学习又只占到了人工智能领域的。一个深度学习专家无法与人工智能专家划上等号。但是,深度学习并不是人类可以创造的人工智能科技的终点。深度学习的公正性并非来自其自身,而是人类筛选和准备的数据。 人工智能的这一波热潮毫无疑问是由深度学习引发的,自吴恩达等人 2011 年发表「识别猫」研究后,深度学习及其引发的技术已经在图像识别、游戏等任务中超越人类,...

    hedzr 评论0 收藏0
  • 当AlphaGo火了以后,们来聊聊深度学习

    摘要:大家好,我是黄文坚,今天给大家讲讲深度学习。我们再来看看这两个深度学习的网络,左边是策略网络,我走到一步的时候,分析棋盘上每个位置有多大价值,给每个位置打一个分数。可以说深度学习让机器人拥有几岁小孩拾起物体的能力。 大家好,我是黄文坚,今天给大家讲讲深度学习。我不讲技术原理,讲讲技术应用。深度学习是我们明略重要的研究方向,是未来实现很多令人惊叹的功能的工具,也可以说是通向人工智能的必经之路。...

    silvertheo 评论0 收藏0
  • 是可微分编程的粉丝」,Gary Marcus再回应深度学习批判言论

    摘要:我的核心观点是尽管我提出了这么多问题,但我不认为我们需要放弃深度学习。对于层级特征,深度学习是非常好,也许是有史以来效果较好的。认为有问题的是监督学习,并非深度学习。但是,其他监督学习技术同病相连,无法真正帮助深度学习。 所有真理必经过三个阶段:第一,被嘲笑;第二,被激烈反对;第三,被不证自明地接受。——叔本华(德国哲学家,1788-1860)在上篇文章中(参见:打响新年第一炮,Gary M...

    Leo_chen 评论0 收藏0
  • 什么深度学习没有取代传统的计算机视觉?

    摘要:但深度学习仍然只是解决计算机视觉领域内问题的工具之一。深度学习有时是过拟合的。深度学习有时会发生过度拟合这可能是我支持传统计算机视觉技术研究的最佳理由。 摘要: 深度学习大潮为什么淹没传统的计算机视觉技术?听听大牛怎么说~ showImg(https://segmentfault.com/img/bV6gOZ?w=600&h=333);这篇文章是受到论坛中经常出现的问题所创作的: 深度...

    jas0n 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<