百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

业界 | 微软的神经网络:深度学习可以走得「更深」

wptr33 2025-02-28 17:40 15 浏览

选自wired

作者:CADE METZ

机器之心编译出品

编译:吴攀

计算机视觉现已走进了我们的日常生活。Facebook可以识别你上传到的照片中的人脸。Google Photos应用可以识别狗、生日派对、墓地等多种事物和场景,这种能力能帮你检索相册中的照片。Twitter则可以在没有人类监管者的情况下识别鉴定色情图片。

以上的「视觉」能力都源于人工智能一个高效率的被称为「深度学习」的分支。尽管这项技术在近几年得到了人们的大肆吹捧,但微软研究院的一项新实验却显示这一切才刚刚开始;深度学习可以走得「更深」。

计算机视觉的革命已经进行了相当长的时间。2012年时我们终于迎来了一个关键转折点,来自多伦多大学的人工智能研究者赢得了一个名为ImageNet的比赛。ImageNet是一个机器图像识别比赛——看谁的技术能更好更准确地识别猫、汽车或云朵。2012年,多伦多大学的团队(包含研究者Alex Krizhevsky和Geoff Hinton教授)凭借深度神经网络登顶大赛冠军。这项技术可以通过检查大量图片的内容而学习识别图像,而不再像之前那样通过人类费力地手工编码来实现。

多伦多大学的胜利昭示了深度学习的未来。自那时起,互联网巨头(包括Facebook、谷歌、Twitter和微软)都开始使用类似的技术打造能与人类匹敌甚至超越人类的计算机视觉系统。微软研究部门负责人Peter Lee说:「我们不能说我们的系统能像人类一样『看见』东西,但我们可以说在非常具体、范围窄的任务中,我们可以通过学习做到和人类一样好。」

粗略地说,神经网络使用硬件和软件搭建出了类似于人类的神经元网络。这个想法可以追溯到上世纪80年代,但直到2012年,Krizhevsky和Hinton才开始发明在图形处理器(GPU)上运行神经网络的技术。GPU原本是为游戏和其它高性能图像软件设计的专用处理芯片,但事实证明,它们也非常适合驱动神经网络的那些数学。谷歌、Facebook、Twitter、微软和其它许多公司现在都使用GPU驱动的人工智能来处理图像识别等多种任务,包括互联网搜索和安全应用等。Krizhevsky和Hinton加入了谷歌。

现在,ImageNet最新赢家又指出了计算机视觉发展的下一步可能——更大范围的人工智能。上个月,来自微软的一个研究团队使用一种被称为「深度残留网络」(deep residual network)的新技术夺得了ImageNet的桂冠。从这项技术的名称中我们看不出什么;据他们描述,他们设计了一个远比典型设计复杂的神经网络——这个网络能够进行多达152层的复杂数学运算,而典型设计一般只有六七层。这预示着未来几年,微软这样的公司将能使用GPU和其它专用芯片的庞大集群来极大提升包括图像识别在内的各种各样的人工智能服务,包括识别语音甚至理解人类自然表达的口语。

换句话说,深度学习目前还远没有达到实力的极限。Lee说:「我们才刚刚在这个巨大的设计空间中起步,以找出下一步的方向。」

神经元层

深度神经网络是按层排布的,每一层都运行着不同的数学运算(即:算法)。一层的输出又会成为下一层的输入。举例说,如果一个神经网络是专为图像识别设计的,那么其有一层是用于搜索图像中的一组特定的特征(如:图片的边缘、角度、形状、纹理等),后面的运算层则用于搜索其它特征。这些层是神经网络「深度」的关键。「一般而言,如果你让这些网络更深,那么它们的学习能力也就越强。」北卡罗来纳大学研究者Alex Berg说,他帮助监督了ImageNet的比赛。

目前典型的神经网络设计一般包含六七层,部分可以达到20到30层,但由Jian Sun领导的微软团队则实现了152层!本质上这个神经网络在图像识别上能表现得更好,因为它能够监测识别更多的特征。Lee说:「还有非常多的微妙的特征可以学习。」

据Lee和一些非微软的研究者介绍,过去这种非常深的神经网络是不可能实现的。部分原因是当数学信号从一层传输到另一层时,信号会被稀释并逐渐消失。Lee解释说,微软建造的神经网络可以在不需要某些层时跳过它们,信号只传递给有需要的层,从而解决了这一问题。Lee说:「当进行这样的跳过时,我们可以更进一步地保证信号的强度。事实证明这种方法给计算精度带来了很大的有益影响。」

Berg说和之前的系统相比,这一方法有显著的差异,而他相信其它公司和研究者也会进行跟进。

深度的困难

另一个问题是建造这样的大型神经网络是极其困难的。为了确定每一层的工作模式以及与其它层的通信方式,需要将不同的特定算法部署到每一层上,但这却是一个极其艰难的任务。但微软在这里也有技巧。他们设计了一个能够帮助他们建造这些网络的计算系统。

Jian Sun解释说,研究人员可以识别一些可能有用的大型神经网络部署方式,然后该计算系统可以在一系列的可能性上对此进行循环计算,直到确定出最佳选择。「大部分情况下,经过一些尝试后,研究人员会学到一些东西,然后反思,又开始为下一次尝试做新的决定。你可以将其看作是『人工辅助搜索』。」

据深度学习创业公司Skymind的首席研究专家Adam Gibson介绍,类似的做法现在越来越普遍。这被称为「超参数优化」(hyper parameter optimization)。他说:「人们可以让一群机器跑起来,一次运行10个模型,然后找出最好的那个使用就行了。他们可以输入一些基本参数——基于直觉确定——然后机器在此基础上确定什么才是最好的解决方案。」Gibson指出,去年Twitter收购的一家公司Whetlab就提供了类似的「优化」神经网络的方法。

「硬件问题」

正如Peter Lee和Jian Sun所说的那样,这样的方法并不完全是「暴力破解」的问题。「如果有非常非常多的计算资源,人们可以想象制造一个巨大的『自然选择』配置,其中的进化力量可以通过一个巨大的可能性空间帮助引导暴力破解搜索,」Lee说,「但目前世界上还没有这样的可用计算资源……目前而言,我们还仍然只能依赖那些非常聪明的研究者,比如Jian。」

但Lee同时也说,多亏了新技术和充满GPU的计算机数据中心,深度学习获得了巨大的可能应用领域。这家公司的任务中很大一部分都只是获取用来探索这些可能性的时间和计算资源。「这项工作极大地扩张了设计空间。就科学研究而言,覆盖的领域已经在指数式扩张了。」Lee说,而这也已经突破了图像识别的范畴,进入到了语音识别、自然语言理解等其它任务中。

Lee解释说,也正因为覆盖的领域越来越多,微软在提高其GPU集群的运算能力的同时也在探索使用其它的专用处理器,其中包括FPGA——一种能针对特定任务(如深度学习)编程的芯片。「另外我们的研究者还在探索实验一些更具实验性的硬件平台,」他说。而且这项工作已经在全世界的技术和人工智能领域掀起了波澜。去年夏天,英特尔完成了其历史上最大的并购案,收购了专注FPGA的Altera。

Gibson说,事实上深度学习或多或少已经变成了一个「硬件问题」。是的,我们仍然需要顶级研究者来引导神经网络的创造;但渐渐地,对新方法的寻找变成了在更强大的硬件组合上寻找暴力破解算法的问题。Gibson指出,尽管这些深度神经网络工作效果非常好,但我们并不清楚它们为什么能工作;其中诀窍只在于找到能得到最佳结果的复杂算法组合。而更多更好的硬件可以缩短这条路径。

最终,有能力建立最强大的硬件网络的公司将顺理成章地领先。现在也只有谷歌、Facebook和微软了。那些擅长利用深度学习的公司只会越过越好。

本文由机器之心原创编译,转载请联系本公众号获得授权

?------------------------------------------------

机器之心是Comet Labs旗下的前沿科技媒体。Comet Labs是由联想之星发起、独立运作的全球人工智能和智能机器加速投资平台,携手全球领先的产业公司和投资机构,帮助创业者解决产业对接、用户拓展、全球市场、技术整合、资金等关键问题。旗下业务还包括:Comet旧金山加速器、Comet北京加速器、Comet垂直行业加速器。

加入机器之心(全职记者/实习生):hr@almosthuman.cn

投稿或寻求报道:editor@almosthuman.cn

广告&商务合作:bd@almosthuman.cn

↓↓↓点击「阅读原文」查看机器之心网站,获取更多精彩内容。

相关推荐

MySQL进阶五之自动读写分离mysql-proxy

自动读写分离目前,大量现网用户的业务场景中存在读多写少、业务负载无法预测等情况,在有大量读请求的应用场景下,单个实例可能无法承受读取压力,甚至会对业务产生影响。为了实现读取能力的弹性扩展,分担数据库压...

Postgres vs MySQL_vs2022连接mysql数据库

...

3分钟短文 | Laravel SQL筛选两个日期之间的记录,怎么写?

引言今天说一个细分的需求,在模型中,或者使用laravel提供的EloquentORM功能,构造查询语句时,返回位于两个指定的日期之间的条目。应该怎么写?本文通过几个例子,为大家梳理一下。学习时...

一文由浅入深带你完全掌握MySQL的锁机制原理与应用

本文将跟大家聊聊InnoDB的锁。本文比较长,包括一条SQL是如何加锁的,一些加锁规则、如何分析和解决死锁问题等内容,建议耐心读完,肯定对大家有帮助的。为什么需要加锁呢?...

验证Mysql中联合索引的最左匹配原则

后端面试中一定是必问mysql的,在以往的面试中好几个面试官都反馈我Mysql基础不行,今天来着重复习一下自己的弱点知识。在Mysql调优中索引优化又是非常重要的方法,不管公司的大小只要后端项目中用到...

MySQL索引解析(联合索引/最左前缀/覆盖索引/索引下推)

目录1.索引基础...

你会看 MySQL 的执行计划(EXPLAIN)吗?

SQL执行太慢怎么办?我们通常会使用EXPLAIN命令来查看SQL的执行计划,然后根据执行计划找出问题所在并进行优化。用法简介...

MySQL 从入门到精通(四)之索引结构

索引概述索引(index),是帮助MySQL高效获取数据的数据结构(有序),在数据之外,数据库系统还维护者满足特定查询算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构...

mysql总结——面试中最常问到的知识点

mysql作为开源数据库中的榜一大哥,一直是面试官们考察的重中之重。今天,我们来总结一下mysql的知识点,供大家复习参照,看完这些知识点,再加上一些边角细节,基本上能够应付大多mysql相关面试了(...

mysql总结——面试中最常问到的知识点(2)

首先我们回顾一下上篇内容,主要复习了索引,事务,锁,以及SQL优化的工具。本篇文章接着写后面的内容。性能优化索引优化,SQL中索引的相关优化主要有以下几个方面:最好是全匹配。如果是联合索引的话,遵循最...

MySQL基础全知全解!超详细无废话!轻松上手~

本期内容提醒:全篇2300+字,篇幅较长,可搭配饭菜一同“食”用,全篇无废话(除了这句),干货满满,可收藏供后期反复观看。注:MySQL中语法不区分大小写,本篇中...

深入剖析 MySQL 中的锁机制原理_mysql 锁详解

在互联网软件开发领域,MySQL作为一款广泛应用的关系型数据库管理系统,其锁机制在保障数据一致性和实现并发控制方面扮演着举足轻重的角色。对于互联网软件开发人员而言,深入理解MySQL的锁机制原理...

Java 与 MySQL 性能优化:MySQL分区表设计与性能优化全解析

引言在数据库管理领域,随着数据量的不断增长,如何高效地管理和操作数据成为了一个关键问题。MySQL分区表作为一种有效的数据管理技术,能够将大型表划分为多个更小、更易管理的分区,从而提升数据库的性能和可...

MySQL基础篇:DQL数据查询操作_mysql 查

一、基础查询DQL基础查询语法SELECT字段列表FROM表名列表WHERE条件列表GROUPBY分组字段列表HAVING分组后条件列表ORDERBY排序字段列表LIMIT...

MySql:索引的基本使用_mysql索引的使用和原理

一、索引基础概念1.什么是索引?索引是数据库表的特殊数据结构(通常是B+树),用于...