当前位置

网站首页> 程序设计 > 程序资讯 > 云计算 > 浏览文章

阿里深度学习实践

作者:小梦 来源: 网络 时间: 2024-06-10 阅读:

为时两天的阿里巴巴“2015杭州·云栖大会”近日在杭州云栖小镇顺利闭幕。各领域和政企精英齐聚杭州云栖小镇,共同探讨新时代的创新创业以及云计算的未来变革方向。逾30场专业专属领域主题论坛精彩纷呈。

近年来,随着大数据在互联网的蓬勃发展,很多人工智能的技术、应用像雨后春笋般涌现出来,如谷歌、Facebook、阿里、腾讯、百度等用得非常广泛,且各种应用都通过深度学习的方法推出。阿里巴巴这几年在深度学习方面颇有建树,特在“2015杭州·云栖大会”开设了深度学习专场,邀请七位专家从图形、图像、安全、声音、语音等方面全面介绍了阿里巴巴利用深度学习技术、应用,以及分析包装深度学习技术的经验方法。

华先胜:基于深度学习的大规模图像搜索、理解和人脸识别技术

阿里巴巴搜索事业部研究员华先胜在“2015杭州·云栖大会”深度学习专场带来了题为《基于深度学习的大规模图像搜索、理解和人脸识别技术》的分享,全面回顾了业界图像搜索识别的现状,同时也给大家详细介绍了阿里巴巴在大规模的图像搜索、人类识别方面的应用,包括技术输出方面。

早在1990年开始有几千幅图的检索,2000年视觉搜索称为“Sunset”项目,主要是难度是“语义鸿沟”,图像特征和人脑理解的高层语义之间存在巨大差异,2006年有一些Hashing倒排搜索,但是没有解决相关问题。2012年,深度学习广泛进入工业界,深度学习技术极大的帮助了视觉搜索。从2014年1月份开始,关于视觉CV相关已经有100余家。

今天,百度识图在识图上做了很多工作,但是搜索结果相关性、覆盖率还有较大的提升空间。微软推出小冰识狗,主要是狗狗的识别,阿里巴巴的拍立淘主打是移动端、实拍的商品。

视觉搜索的关键要求

对于商品而言,商品还是比较特殊的,对于商品视觉搜索而言,有很多的挑战,也有很多的机遇,“拍立淘”2014年上线,经过不断的发展总结下来有以下几点挑战:

1. 相关性期望更高,因为用户更多通过牌照、视觉搜索,希望买同款,希望是一摸一样;

2. 覆盖率更高;

3. 图像质量变化很大,用户在自然场景里进行拍摄,所以可能有反光,背景会非常复杂;

4. 对系统的性能比较高,现在拍立淘的系统里,进行图像拍摄,快速物体的检测、搜索,几乎都是实时的,而且整个搜索量是几亿的图片,对系统性能要求非常高;

5. 商品衡量标准,比如说每天独立的访问量,经过意图搜商品的转化率、每天卖了多少,这叫做一个“照妖镜”。

利用深度学习进行技术突破

1. 相关性:

      a) 主体检测:背景复杂、主体常常较小,在离线建库过程和在线搜索过程需要进行自动性的进行主 体检测;

     b) 分类和识别:深度学习可以帮助分类识别的精度和准确性;

     c) 人脸分析:先进行人脸检测、关键点定位、DCNN模型,再做身份、性别、年龄、种族、颜值的打分,在以图搜图里用到了人脸分析提高相关性;

     d) 图像特征:衣服和罐头、牛奶是不一样的,衣服是多属性的东西,为了描述一个衣服有多个维度的描述,可以有圆领、短袖、卡通、白色T恤等。为了应对这样的情况,利用深度学习做了深度学习的特征,以及用到局部特征。

2. 覆盖率:把互联网当做知识库,这里有监督的学习,也有非监督的学习。互联网或者电商平台有大量的数据,但同时也有噪声,有噪声的数据反而帮倒忙,所以对有噪声的数据进行清理,比如说通过日志、内网、外网其他的一些用户行为和平台所有信息进行模型训练和数据清理,可以极大的提高数据的质量。

3. 伸缩性:索引建立时采用分布式的索引。

4. 用户体验:拍立淘视觉搜索的显示,大家打开手机淘宝点击搜索框,如果是最新“双十一”版就已经有像相机在搜索页旁边,点击这个相机可以打开摄像头进行牌照搜索或者相册选图。

华先胜也展望了图像技术未来及发展的趋势。在未来,依然会面临着挑战的相关性、覆盖率、图像质量、系统性能、非常严格且无处可逃的衡量标准。同时也有很多机会,这是一个大数据深度学习、大量的数据、用户行为以及智能设备的时代,机会多多。最后,未来图像技术可以从三个层面进行归纳和提升:模型、数据、用户。

马泽君:神马语音,极致的云上语音搜索体验

除了图片、图像之外,大自然的声音,特别是人类交流的语音也非常关键,在移动互联网的时代,手机有更多的方式。阿里巴巴移动事业群神马搜索语音识别负责人马泽君带来了题为《神马语音,极致的云上语音搜索体验》的分享。

近年来,国内外很多科技公司投入了大量资金、人力在语音技术的研发中。国外有苹果Siri、微软小娜Contana等,他们基本上立足于为用户提供智能的语音助手。在国内,有科大讯飞、百度,以及出门问问,他们主要投入在智能硬件、物联网以及在线教育等。神马语音旨在为用户提供更好的体验,让搜索可以“动口不动手”。

2000年到2010年,语音识别准确率非常小,2010年开始深度学习开始,神经网络将语音识别准确率提高了30%,为语音识别从实验室走向大众生活,实用化发挥了巨大作用。

深度学习的特点、影响、人才

深度学习在传统学习的基础上引入了两个显著特点。一是具有自动的特征发现功能,在深度学习的框架里,鼓励研究人员不要再去手动设计大量复杂特征、做出很多的假设,而是通过深度学习的模型机制,从原始的信号中抽取我们需要的信号。二是在深度学习里,特征的学习是有层次的,遵循从简单到复杂、从特殊到一般,所以深度学习引入了层次化、高层次的抽象。

在影响力方面,大家现在经常都能够看到深度学习的名词,由于在语音识别、图像识别、自然语言处理上取得了比较大的进展,在2013年MIT科技评论的评选出的2013年十大突破性技术里,深度学习毫无疑问占据了第一名的位置。

在人才方面,很多著名的深度学习研究人员得到了Facebook和Google等科技巨头的招揽。

深度学习在声学模型建模中的应用

深度学习在语音识别力方面主要用于关声学模型建模,采用更好的优化方法。但由于语音是具有很强的持续因果关系的信号,所以能够利用样本之间的持续关系,这对提高准确率有比较大的帮助,所以研究人员提出叫SEQ,在重视样本关联的时候加入了上层的发音词典和语言模型的信息,对整个模型提高有很大的帮助。

深度学习模型参数规模比较大,大的模型在千万级甚至亿级别的参数,通常训练这样一个规模的参数需要海量的数据,而且大规模的学习算法是非常重要的,所以分布式的训练算法是可以帮助应对大数据。

模型训练的后期发现在几千万参数里只有30%的参数真正对学习任务起到决定性影响,就可以用一些办法把这30%保留下来,这样一方面可以对模型参数进行压缩,另外可以提高实时在线的简码效果。

深度学习蓬勃发展下的思考

深度学习最近的蓬勃发展和需要几点的支持:强大的学习算法、强大的学习设施,深度学习通过模拟分类、过滤、记忆和遗忘人脑机制对数据进行分析、处理、预测。再强的引擎也需要好的燃料,这个燃料来自于真实场景的海量数据。

神马积累了超过70亿的样本量,有以下这三种主要模型的特点:

  1. DNN:最早的深层神经网络,通过简单非线性分类器的层次化叠加,擅长捕捉信息化差异。
  2. CNN:将传统依赖于领域专家的特征设计的工作变为自动科学系的滤波器、参数。
  3. RMM/LSTM:显示了人类对记忆和遗忘机制建模。

根据这些特点,马泽君认为深度学习在未来会表现出感知到认知发展趋势:所谓感知可以替代人类基本的感观,比如说视觉、听觉,对语音、图像、文字进行识别和分类。认知是相对于感知更高的智能,有记忆、遗忘、关注、行动、决策。

罗华平:英伟达GPU 深度学习平台

深度学习除了有算法、大数据之外,还需要GPU的操算平台,在操算行业,英伟达公司GPU+CPU混合运算模式已经帮助很多操算平台拿到很多TOP500的名次,这几年该公司把GPU平台和深度学习结合起来,做了很多工作。由此,英伟达中国区解决方案架构和工程部总监罗华平带来了题为《英伟达GPU 深度学习平台》的分享。

GPU计算是在传统的X86的架构上,插入一块显卡,对原来的计算进行加速。GPU从诞生之内起就是并行流水线的处理器,现在架构和以前架构不一样,最早由流水线架构,一个GPU有很多流水线,现在架构从2007年改变了传统流水线架构,采用通用、核心的计算架构,均由一个通用处理器完成。

现在GPU计算在很多领域都有应用,不光在科研、教育、操算、石油、工业界都得到广泛的应用,甚至还有石油、天然气,现在GPU的集群已经成为了他们标准的计算平台,可以做地震波,从而了解地下的构造、发现哪里有油,另外速度比以前的CPU提高很多和关键图像呈现效果同比提高很多,最为关键的是不光是速度,准确度也提高了。

GPU在深度学习平台的实践

深度学习的引擎最重要的就是计算能力,深度学习不是狠心的方法,80年代就有了,只不过由于计算能力的限制,还有缺少数据,不能够对深度学习方法得到有效的结果,现在有了GPU,有了互联网产生的大数据,从而使深度学习有了更好的应用。

GPU在深度学习的使用主要从2012年多伦多大学首次运用深度学习的方法参加图像识别分类大赛,把准确率提高10个百分点,从此GPU开始逐渐普及起来。

深度学习的特点归结起来,最重要的核心就是矩阵预算,也就是浮点运算,GPU对浮点运算是非常擅长的,计算能力非常强,现在一个GPU可以达到1.8T左右的计算能力,相当于以前几个机柜的机器。

NVIDIA深度学习平台不光提供GPU显卡,在背后还有GPU显卡、需要和系统厂商合作,以及进行测试、论证,从而使得运行更好的GPU中心。在软件方面的工作,针对一些特殊应用开发了很多应用,可以让大家不用复杂的编程可以很好利用GPU进行工作,以及通过集群提供了针对GPU集群的管理软件;而且还支持流行的深度学习流行框架。另外,还针对一些小的用户或者是初创企业,开发了一个非常简单的基于图形化、外部的深度学习的学习工具,试用起来非常简单、方便。最后,罗华平还表示不需要懂GPU就可以利用GPU的服务器做深度学习。

值得一提的是,英伟达将采用新的通讯链接方式,叫NVLINK,是自主发明的通讯传输协议,比传统的PCIE快很多,总的链接是每秒80个GB。内存带宽大大提高,会采取3D对接内存,数据访问到1TB,比现在要快差不多4倍。将来CPU支持LVLINK就可以直接用LVLINK,GPU之间可以通过LVLINK连接,从而提高数据交换速度。

勇善:智能数据算法在安全领域的实践与应用

阿里巴巴从成立以来,一直把安全和对客户的信任当成是第一位的,特别重视安全领域,包括安全的体系、技术方面。同时,阿里巴巴把深度学习方面的应用用于安全防范领域。紧接着,阿里巴巴安全部首席工程师勇善带来了题为《智能数据算法在安全领域的实践与应用》的分享。

互联网的安全问题十分复杂,勇善认为可以分为了三个维度:

  1. 信息风险,如果你的互联网业务有信息交互,避免不了有违规信息,如果你的互联网业务有交互的商品,免不了商品禁限售,如果只是发布信息,也免不了你的网站被黑、挂马;
  2. 计算机和网络风险,比如说计算的攻击、入侵、挂马;
  3. 用户行为风险,用户之间没有诚信,大家互相欺诈,互相做虚假操作。

利用大数据能力发挥规模效应实现良性循环

勇善在演讲中称,安全有一个规模效益,虽然互联网上有万千种不同的安全业务,但是安全背景、安全场景是一样的,所以一套安全能力就能把有的业务安全问题解决。

作为一个互联网开创者,如果想找一个有大数据能力的平台,要考虑两个问题:

  1. 平台有没有海量数据?阿里平台有海量数据、几十亿商品、图像总数超过百亿、阿里云上有百万站点;
  2. 是否有处理海量数据的能力?这里的能力基本上有三点:存储、存储数据能力,阿里的OSS提供了高安全的可靠服务;高速分布平型计算能力;充分、高效提取海量数据精华的算法。

在传统算法的情况下,当数据量很少的时候,传统算法的特征效果会超过机器学习抽出来的特征,但是数据量增加到很大的时候,特征表达形式很快就饱和,导致能力很难提升。而机器学习的方法来学习特征的话,特征量可以学习到更多、更好的特征,所以效果还可以不断的往上涨,这就是大数据学习的好处,可以使你的学习在海量的数据里不断发挥你的作用。简单来说可以有五个手段:多媒体DNA、图像文字识别、人脸识别、色情图片识别、商标识别。

勇善在演讲最后表示,安全其实是一个规模性效率的服务,当你有大数据的能力,就有很强的安全能力,会吸引更多的用户,会有更多的数据,会有一个良性的循环。安全是不可逃避的,如果你是互联网上的一个业务,你就不可逃避安全风险,而且风险是致命的。最后,如果你要选择一个平台或者一个生态系统来建设你的网站,你就要想这个平台里有没有安全能力,阿里平台里有很强的安全能力,有能力发挥安全的规模效益,使安全能力越来越大。

王永攀:基于深度学习的文字识别

在文字识别领域,深度学习也有着很深的应用。来自阿里巴巴共享业务事业部技术专家王永攀给大家带来了题为《基于深度学习的文字识别》的分享。

深度学习的文字识别存在的问题

深度学习的文字识别存在的问题课根据应用的不同分成三部分:

  1. 文档电子化,主要是长微博、扫描文件,这些文字排版整齐、字体统一、字迹清晰,从文字识别角度来说难度很低,但是从用户角度来说识别率要求非常高,而且一个完整的文章,出现错误会带来一些歧意。用户希望格式化、成段落的输出;
  2. 广告词、关键词的监控,这个具有很强的行业代表性,在广告行业应用比较多,淘宝商品主图上也有大量的文字。这类特点是背景排版比较复杂,可能存在很奇怪的排列方式,字体也是有用户的个性,用户对这个输出要求不是很高,告诉用户说有没有这么一个关键词就可以;
  3. 表单电子化,发票、快递单、病历等,希望放在线上。这类数据特点是排版复杂、存在不清晰,由于这类图像很多是扫描的,另外大部分都是用户拍摄的,就存在拍摄上的形变。

深度学习的文字识别的实现过程

王永攀简单总结前期归纳三个步骤:

  1. 排版分析,用户希望能够格式化输出,就告诉他这里有一个表格,是怎样一个输出结果,这个对他的意义更大,也就是说后期数据挖掘、应用更有帮助。还有就是段落分析,看这个数据到底做到什么程度、属于什么类型;
  2. 定位,分为文字定位、文字校正。通常背景是非常复杂的,文字定位以后可能由于背景影响有很多干扰,把一些错误的区域囊括到文字区域里,或者由于背景干扰,有一些区域没有定位出来。文字区域校正能够更好的找回文字区域;
  3. 通过文字定位得到文字块,接下来做切割和单字识别,通过语音校正闭环的识别系统。

在实现时如何去提升效率呢?这里会用到一些GPU方面的手段提高效率,满足用户更实时的需求,比如说在线调用等等。

最后,产品输出是什么样的形式?包括两类访问形式:一是用户需求是实时需求可以提供在线的访问;二是数据量比较大,实时要求比较高就是私有云的方案。数据难易程度自动分级的优点,用户是非常多的,如果不能快速定级会产生沟通上的不便。数据输出格式也会根据用户的需求更加灵活、可配置。

赖俊杰:利用GPU进行深度学习研究

使用GPU可以提高效率,但是如何用GPU进行深度学习的研究呢?英伟达中国区高性能计算开发部总监赖俊杰博士给大家分享了他的心得和体会。

越多的人用加速器的概念做通用计算、图形图像渲染任务。传统GPU是用来做图像渲染的,不是用贴图的方式,涉及到大量的三角形的计算,大量的三角形以及像素点的计算,如果你用非常简单的基本运算或者是算数计算的角度来看,存在大量、重复、简单的操作,这样的操作在GPU里用线程的方式简单处理。

而GPU和CPU没有特别本质的区别,就是做浮点或者整行计算,主要区别在于CPU目标让用户有更短的响应时间,编辑文档或者浏览网页的时候,用最短时间对我的鼠标、键盘操作作出响应,要达到这个目的最重要要单线程的处理能力,所以在芯片设计的时候,里面有大量的单元保证单线程处理性能。CPU有大量的资源做分级预测或者单线程寻找并行性的工作,总体来说就是LU,真正实现浮点整行运算的公共单元比例比GPU少。

另外,GPU计算在设计的时要保证做图形图像渲染有很好的性能,图形图像渲染任务与其他领域的计算或者通用计算的差别不是很大。拿卷积打比方,比如说做二维的卷积,输入的是图像,竖直的角度是一个矩阵,卷积核每个元素和输入图像进行相应的乘加,放在输出的二维矩阵里,这就是卷积的操作。首先在图形图像渲染里用到很多的,这是光晕里的渲染截图,比如说整个效果是模仿了照相机的近处比较模糊,远处比较清晰的效果。一个设计者,不可能要求美工师画后边模模糊糊的场景,这是没有必要的,可以用卷积模本和人画出来的东西做一个卷积操作,达到一个整体效果。

王琤:云上的超算平台

深度学习代表的新人工智能应用是非常靓丽的高性能应用点,是更加重要的应用领域,未来人工智能产生的计算量可能超过所有其他领域产生的计算量。阿里云事业群资深专家王琤为此带大家深入地认识了云上的超算平台。

王琤认为深度学习是严重依赖于高性能计算的领域,而现在云上目前为止还不具备这个能力。他通过量化来进行阐释,如果做一个图片的预测,计算量到1.45个G,也就是进行3.45个G单精度浮点,训练一张图的一次前项和后项就是4.4个G,那训练一个模型怎么样。一共200多万张图片,训练一次模型收敛以后需要54万次迭代,整个计算量到500P。最终得出一个结论,云上高性能计算需要极高的性能。

为此,云上提供了深度学习相关的Docker可以方便直接应用,如果用户的规模比较大,阿里内部的资源调度系统可以开放出来使用,这个系统和国家的超算系统是同款,依赖的基础系统是一样的。同时在云上获得和其他云产品一样的安全保证,全面对接阿里云的安全,同时用户的机器和机器之间,和别的用户机器之间网络完全隔离,而且不用以后会进行非常严格的磁盘擦除,保证不会有任何数据遗漏出来。旨在通过高性能计算配合阿里云现在所有其他产品,构建用户的互联网应用。

(责编/仲浩)

热点阅读

网友最爱