揭秘语音识别背后的技术,GPU集群+DNN算法
2014年9月26日,浪潮在北京召开2014高性能计算用户大会。从天河一A问鼎世界冠军,到天河2号连续三次位列TPO500的第一名。这几年一路走来,可以看到高性能计算在中国的发展势不可挡,除了在科研领域之外,高性能计算正展现出强大的延展性,与金融、互联网、工业设计、文化创意等各行各业之间的交叉关联变得前所未有的紧密。同时,高性能计算与云计算、大数据之间的交叉融合趋势越发明显,成为推动全球信息产业发展的三大动力之一。
目前智能和连接成为了互联网发展的核心词语,语音控制也逐渐火热。目前,Facebook、Google、IBM、苹果、微软、百度、科大讯飞等均在此方面做了多种尝试。
智能语音目前主要依靠深度学习的技术实现,作为机器学习的一个重要分支,深度学习在于建立、模拟人脑进行分析学习的神经网络,使得机器能从大量历史数据中学习规律,从而对新的样本做智能识别或对未来做预测,以达到具有人类一样的思考能力。
在本届HPC大会上CSDN采访了科大讯飞高级副总裁胡郁与浪潮Inspur-Intel中国并行计算联合实验室首席工程师张清,和他们深入探讨了如何通过深度学习模拟人类大脑以及如何通过GPU集群来进行算法效率的提升等问题。
胡郁表示超算是人工智能项目中的关键要素。首先,深度学习技术的再度崛起,正在颠覆统计模式识别、机器学习和人工智能领域,相关专家成为“香饽饽”;其次,大数据目前已经和深度学习融合,在语音识别和图像识别等感知人工智能方面发挥了巨大的作用;最后,超算平台是人工智能的基础,提供海量数据处理、存储以及高性能运算解决方案。
科大讯飞是一家专业从事智能语音及语音技术研究、软件及芯片产品开发、语音信息服务的*骨干软件企业,他们的语音技术实现了人机语音交互,使人与机器之间沟通变得像人与人沟通一样简单。他们认为语音作为交互的手段,距离能够实现人与人之间的交流的自然鱼眼效果,还有很多多问题没有解决,比如噪音、口音、个性化等等,这还有很打的市场空间,这远不是一些简单的模型与海量数据就能够解决的。那么在科大讯飞语音识别背后隐藏着哪些故事呢?我们慢慢来看!
要深入了解一个深度学习计算平台,必须从它的算法和架构谈起。深度学习技术有很多支撑的计算机算法,而目前最常用的是DNN算法,它能比较好地模拟人脑神经元多层深度传递的过程,解决智能语音中的复杂问题。然而,要模拟人脑绝非易事,人脑的计算能耗比是世界上最快的超级计算机天河2号的200万倍,众所周知,人类大脑大致有1000亿神经元,每个神经元有大约5000个神经突触。要使机器无限接近人类的思考能力意味着要模拟出更多的神经元和神经突触,这就会带来巨大的计算挑战。
此时的科大讯飞面临着数千倍训练数据及数千倍模型参数的巨大挑战,迫切的需求更大规模、更多存储的超算平台集群建设;更优的深度学习并行化及集群调度算法;深度定制的人工神经网络专属芯片系统。
面对这些问题,该如何解决呢?首先是算法上优化,科大讯飞将整个DNN环节进行优化压缩,取缔了MFCC、HLDA、VTLN、FMPE等环节,只保留Filter Bank、FFT、Wave、Seq.Train、FMPE等流程,整个架构循环由优化了40%,大幅度的增加了运算速度与效率。
在算法调整完以后面临的就是基础设施的建设,如何设计一套占地面积孝计算性能高、又绿色节能的高性能计算集群成为科大讯飞面临的问题。此时浪潮针对这一问题,利用GPU加速技术为该公司设计构建了一套GPU集群,双方联合设计了针对DNN算法特点的GPU集群并行计算框架,采用了每个计算节点配置双路CPU和4块NVIDIA Tesla K20m GPU,以及一块HCA卡的方案,通过GPU提高计算能力、通过IB网络提速节点之间的通信速度,最终完成GPU集群版的DNN并行算法,大幅减低了DNN的计算时间。
特别在软件方面,浪潮与科大讯飞户算法专家团队共同成立专门联合项目组,节点内使用CPU+GPU协同计算,大幅降低了计算时间。
双方联合针对GPU架构进行了算法层面的优化,重写了计算部分代码,将整体速度大幅提升。经过优化后的软件,在单GPU上运行的速度与串行程序相比,加速比达到41倍,1块GPU相当于4.4个8核CPU并行的性能,同时由于浪潮GPU版本K-means具有很好的性能可扩展性,这使得GPU服务器具有很好的性价比非常适合于此类应用大规模部署。
目前科大讯飞的整个基础架构分为:业务、调度、计算、存储四个层次,内含2000颗CPU、300片GPU、4PB的存储、40TB的内存。
在介绍架构建设过程的时候,张清说道:“浪潮已经分别与英特尔和英伟达成立联合并行计算实验室,合作开发优化基于MIC和GPU的并行应用。目前已经建立了一套非常完善的高性能计算集群解决方案,将不仅为用户提供好用的高性能计算集群,还会针对每一个用户的应用特点量身定制集群解决方案,这也就说明未来浪潮将跟用户在应用测试、集群搭建、加速优化等各方面展开合作,把用户的需求看作是浪潮设计构建集群的根本要求。”
解决了算法和平台的问题,科大讯飞成功将语音的识别的正确率提升到95%。谈及以后的发展,胡郁表示目前他们正在做“讯飞超脑”计划,他认为人工智能分为三个阶段:计算智能,能存会算;感知智能,能听会说、能看会议;认知智能,能思考会理解。他表示人工智能目前面临的问题主要有三点:
- 第一点就是如何让人工神经网络能够像人的大脑神经网络链接一样,人脑神经元的连接还是比较复杂的;
- 第二个大的挑战就是能够将神经元的数量建立到和人的大脑比较接近的程度,虽然还不能够完全达到人的大脑的水平;
- 第三个就是实现机器学习的另外一种模式,不仅仅让人教给机器怎么做,而是让机器能够具有自动学习的功能。
同时胡郁表示目前他们正在探索让机器自动学习,能够让机器理解自然语言,同时将自然语言与我们人类的概念连接在一起。对于讯飞超脑未来的研究方向胡郁总结为一下三点:
- 更加贴近人脑认知机理的人工神经网络设计,更好的支撑认知智能的实现
- 实现与人脑神经元复杂度可比的超大人工神经网络(相当于目前感知智能网络规模的1000倍)
- 构建基于连续语义空间分布式表示的知识推理以及学习智能引擎
讯飞超脑未来的应用场景