1700045807
深度学习的诞生
1700045808
1700045809
如同新生儿,机器通过接触大量的信息进行学习,即数据密集型办法。在训练算法中,所需的数据数量通常与问题的难度成正比。相比之下,教会一台机器辨别三角形与正方形,比教一台机器成功辨别男性与女性要简单得多。罗森布拉特的感知器只需要调整512处节点的权重,所以用于培训的图片数量相对较少。大型的神经网络(无论深层与否)都包含上百万的连接,因此需要上百万张训练图片。
1700045810
1700045811
如果把算法比作引擎,数据就是所添加的汽油。引擎如果缺少汽油,是无法运作的,同理,没有数据支撑的机器学习算法就是个不中用的摆设。
1700045812
1700045813
20世纪,大部分机器视觉的研究人员都承认数据对于训练的重要性。在计算机发展历史上看,绝大多数情况下,数字图像是很难获得。于是,图像识别算法的发展使用了“数据稀疏法(data-sparse approaches)”。由于数据稀有,机器的学习训练就只能演变成类似生物界的物竞天择——必须适应食物稀少的环境一样,只能集中精力发展运作高效、使用对数据数量要求不高的算法。
1700045814
1700045815
数十年来,高效的机器学习算法的需求仿佛把研究人员带进了《爱丽丝漫游仙境》里的兔子洞,进入另一个满是询问和微调的计算机算法世界,他们努力地从有限的数据集中争取1%的性能提升空间。同样的想法也能推论出人设计的正确算法比受生物界启发的办法更有价值——人类的认知能力通常伴有充足的数据与快速、大量的平行计算等特点。
1700045816
1700045817
在生物学里,受重视的不仅仅是计算效率,还有适应性和健壮性。一个生物的命运取决于其神经算法能否快速适应新的环境。倘若我们的大脑中果真运行着一系列的学习算法,至少从传统的计算机科学场景来推测这套算法很可能结构简单、效率不高。
1700045818
1700045819
从数据贫乏的“智能”算法到数据充裕的“简单”算法,这种转变发生在2010年之后。以下的科技发展共同推动了该转变的发生:计算机价格下降、运算速度提高;手机开始兼具数码相机功能;互联网给予人们足够的空间存放所拍摄的数码照片。要知道,Facebook每一分钟就将出现208,300张新图片。再见了,数据匮乏的年代。我们迎来了谷歌图片搜索的时代。
1700045820
1700045821
当计算机图片搜索盛行后不久,各种信数据信息的“大坝”面临着“决堤”的风险。2003年,一位名叫李飞飞的加州理工学院学生创造出CALTECH 101,一款图像存储器,能把9146张图像拆分成101种不同类型。李的目标是建立图像合集,图片包含各种人类日常生活的场景,用作机器视觉训练算法的素材。
1700045822
1700045823
到了2006年,李飞飞的数据库发展成为CALTECH 256,能存储30,607张图片,分成256种不同类别。2009年,在伊利诺伊大学香槟分校和普林斯顿大学待了一段时间后,李飞飞加入了斯坦福大学计算机学院。尽管她听到热心同事的好心建议“去研发一些更有用的东西”,她还是决意继续搭建更大的数据分享平台ImageNet。最终,ImageNet发展成为全球首家图像大型数据库,存储有过百万张不同标记的图片。并且斯坦福的ImageNet的资源一直持续增长。截至本书写作之时,ImageNet的图片总数超过1400万张,2万多种分类。
1700045824
1700045825
ImageNet上的图片是原始粗糙、杂乱无章的。物体毫无规律,如果是发生在现实生活中,需要获取上下文信息才能理解。比方说,一张啤酒瓶的图片,可不是那种在广告上呈现的光鲜亮丽的啤酒瓶,而是一堆被乱扔在人行道上的啤酒瓶子的模糊影像。
1700045826
1700045827
ImageNet包含着各式各样不同种类的图片。这其中必然包含有诸如猫和狗这样的常见图片,还有蜥蜴、蜗牛、蛇、雪橇和袜子等图片。另外,还有一些古怪有趣却略显业余的抓拍,如道路、烤箱和番茄等。
1700045828
1700045829
李飞飞的目标并非囤积一堆杂乱无章的数字图片合集。这些照片都有各自的分类。当互联网上全是各式各样的图片时,需要有人认真查看图片内容,恰当分类;此后才能用于神经网络的视觉训练。人类必须亲自查看上百万图片,创建相应的分类。必须有人愿意耗费时间承担这繁重的工作,翻阅一沓狗的照片,弄清楚照片X上是约克郡犬,而照片Y是约克郡犬的近亲——斯塔福德郡斗牛犬。
1700045830
1700045831
这时恰好出现了一股文化潮流有望解决这个难题:众包。对ImageNet上百万张图片进行分类,这个极其艰巨的任务最终由上百名亚马逊土耳其机器人(Amazon Mechanical Turk)完成。它们为每一张图片标记,并为每张图片的工作量付费。据李飞飞回忆,ImageNet曾一度是亚马逊平台最大的自由职业雇主,并在全球范围内全天候招聘员工,数量多达几千名!
1700045832
1700045834
绘图处理器(GPUs)
1700045835
1700045836
我们已经对高速计算机、大数据、数字相机和多层人工神经网络等主题进行讨论。还有一项更为重要的技术即将映入眼帘:高速独立显卡。它之所以重要的原因在于神经网络对于计算能力的要求极高。
1700045837
1700045838
早先,优质的独立显卡资源掌握在游戏界手里。游戏行业有时会遭遇某些保守的成见——“游戏会使青年人沉溺其中,浪费时光,毫无创造性”,然而事实上游戏行业却是创新的主要来源,尤其在图片处理方面。
1700045839
1700045840
游戏能测试出计算能力的高低。在游戏中,计算机需要以高清像素和快速帧率再现3D图片场景。计算机必须实时响应用户的输入,抵消几个游戏玩家之间的网络延迟时间,同时通过四射的水花和椅子的摇晃形成精准的肢体刺激。而且游戏应用对于计算机环境的要求更高,比普通应用程序的要求(如复制电子表格里的数字或数据搜索)更复杂难度更高。
1700045841
1700045842
连摩尔定律的速度也无法满足游戏行业对于低成本、高性能的计算机要求。于是,游戏行业只能采用了另一种方式来突破瓶颈:平行启动多个处理器。这致使游戏的硬件制造商没有研发更快速的处理器,而是研发专门的独立显卡,包含上千个平行处理器。
1700045843
1700045844
独立显卡有大量被称为GPUs的平行处理器(为了与传统的中央处理器CPU区别开来)。GPUs被看作是连接图片设计与游戏的特别应用。CPU的性能提升曲线可谓增长迅猛。而相比之下,GPUs的性能提升过程发展更加神速,该趋势引起了极大的关注。2006年,全球最大的独立显卡生产商之一的英伟达(Nvidia)引入了GeForce 8系列,这款GPU经过特别的设计,用途不局限于图片处理。
1700045845
1700045846
为了打开新产品市场,Nvidia创造了新名词“通用计算图形处理器(general purpose GPU, GPGPU)”,宣传这是台式计算机平行发展的全新领域。在Nvidia引入GeForce 8系列之前,只有专业的图片艺术家和科研精英才会用到通用平行计算。现在GPU拓展到那些需要高强度平行计算能力的应用领域,比如股市交易、工程分析,当然少不了神经网络。
1700045847
1700045848
神经网络正朝着平行化的趋势发展。神经网络包含许多的神经元,每个神经元处理各自接收到的输入内容,决定是否放电进行输出。这种情况非常适用于多层卷积网络,因为其包含的阵列组织能够与图像应用结合起来,这也恰好是设计GPUs的最初目的。
1700045849
1700045850
在大多数的计算机应用中,速度是非常重要的,对于神经网络而言,速度更是重中之重。虽然神经网络进行图片分类时,其在GPU上计算出答案的速度仅比在CPU的速度要快上一两秒,但当神经网络在训练时,GPUs的优势就十分明显了,因为训练需要进行数百万次的反向传播迭代。使用GPUs运作卷积神经网络的研究人员,相比其他使用台式电脑的同事,都能够觉察到一个明显的改善。原则上来说,对于大多数应用程序来说,训练过程的速度并不是那么重要。毕竟,训练往往只需要进行一次就够了;然而在实践中,现实世界没有人愿意研发、编程一套训练时间长达一个月之久的算法。如果人们面对的是一个只需三天时间便能完成训练的网络,那么情形将大不一样。
1700045851
1700045853
现代深度学习
1700045854
1700045855
2012年,现代深度学习在一场图片识别大赛上表现亮眼。大赛的目的是妥善利用ImageNet上的分类图片的宝贵价值。2010年,李飞飞与同事开始创办ImageNet图片识别竞赛,一个每年一度的大规模视觉识别挑战赛,任何人都可以参加。
[
上一页 ]
[ :1.700045806e+09 ]
[
下一页 ]