您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 深度学习读书报告---上传百度文库
深度学习读书报告深度学习3种硬件方案GPU、FPGA和ASIC对深度学习硬件平台的要求:首先在表层上,我们有一个巨大的数据集,并选定了一种深度学习模型。每个模型都有一些内部参数需要调整,以便学习数据。而这种参数调整实际上可以归结为优化问题,在调整这些参数时,就相当于在优化特定的约束条件。深度学习3种硬件方案GPU、FPGA和ASIC百度的硅谷人工智能实验室(SVAIL)已经为深度学习硬件提出了DeepBench基准,这一基准着重衡量的是基本计算的硬件性能。现在的深度学习算法主要包括卷积神经网络(CNN)和循环神经网络(RNN)。基于这些算法,DeepBench提出以下四种基本运算:矩阵相乘(MatrixMultiplication)——几乎所有的深度学习模型都包含这一运算,它的计算十分密集。卷积(Convolution)——这是另一个常用的运算,占用了模型中大部分的每秒浮点运算(浮点/秒)。循环层(RecurrentLayers)——模型中的反馈层,并且基本上是前两个运算的组合。AllReduce——这是一个在优化前对学习到的参数进行传递或解析的运算序列。在跨硬件分布的深度学习网络上执行同步优化时(如AlphaGo的例子),这一操作尤其有效。深度学习3种硬件方案GPU、FPGA和ASIC除此之外,深度学习的硬件加速器需要具备数据级别和流程化的并行性、多线程和高内存带宽等特性。另外,由于数据的训练时间很长,所以硬件架构必须低功耗。因此,效能功耗比(PerformanceperWatt)是硬件架构的评估标准之一。深度学习3种硬件方案GPU、FPGA和ASIC目前来说,GPU贵,功耗高,运行效率比FPGA高,易使用。FPGA功耗,单颗性能是低的,单颗FPGA的硬件设计挑战没有GPU大,但是总体性价比和效率不占优;FPGA如果实现深度学习功能,还需要大批量使用,才能实现完整的功能,且需要与CPU相结合。深度学习3种硬件方案GPU、FPGA和ASIC另外一个问题是,FPGA的大规模开发难度偏高,从业人员少。FPGA犹如乐高,其灵活性,根据实际应用的需求,构建我所需要的硬件组件。但是乐高本身就是一种浪费:其功耗性能比,可变布线资源、多余的逻辑资源,其实都是浪费。FPGA在深度学习的应用场景,存在的价值在于其灵活性。DNN是深度神经网络系统的统称,实际使用的时候,使用几层网络,最终结果用什么样的筛选策略,在不同的应用和不同的设计框架下面,对硬件的诉求并不相同。深度学习3种硬件方案GPU、FPGA和ASICGPU的一个缺点是,他的组件模块是乘法器、加法器。虽然深度学习的参数都是数学模型,需要对RTL级别的变化,但是GPU的硬件资源是以乘法器、加法器这样量级的硬件单元组成的。如果GPU的预先配置与使用者的模型相差甚远。例如:加法器配置15个,乘法器配置15个。但实际使用的时候,乘法器使用量是15个,但是加法器只需要2个。这就浪费了13个加法器的资源。而FPGA是以查找表和触发器子单元,组合成任意运算单元。但是换种角度来看FPGA本身就是一种浪费。深度学习3种硬件方案GPU、FPGA和ASIC增加训练自由度:对于深度学习,模型在参数量上的复杂程度经常伴随着大量可能的超参数组合。可以调整的超参数包括训练迭代次数、学习速率、批梯度尺寸、隐藏单元数和层数等等。调整这些参数,等于在所有可能的模型中,挑选最适用于某个问题的模型。固定架构让模型内的超参数设置探究变得很容易(比如,隐藏单元数、层数等),但去探索不同模型间的参数设置变得很难(比如,模型类别的不同),因为如果要就一个并不简单符合某个固定架构的模型来进行训练,就可能要花很长时间。相反,FPGA灵活的架构,可能更适合上述优化类型,因为用FPGA能编写一个完全不同的硬件架构并在运行时加速。深度学习3种硬件方案GPU、FPGA和ASIC低耗能计算节点集群:目前的解决方案使用具备Infiniband互连技术的GPU集群和MPI,从而实现上层的并行计算能力和节点间数据的快速传输。然而,当大规模应用的负载越来越各不相同,使用FPGA可能会是更优的方法。FPGA的可编程行允许系统根据应用和负载进行重新配置,同时FPGA的能耗比高,有助于下一代数据中心降低成本。深度学习3种硬件方案GPU、FPGA和ASIC当然ASIC是能效最高的,但目前,都在早期阶段,算法变化各异。想搞一款通用的ASIC适配多种场景,还是有很多路需要走的。谷歌发布了人工智能芯片:TensorProcessingUnit,这是ASIC。据知情人士说,TPU已经在谷歌的数据中心运行了一年时间,由于谷歌严守TPU的秘密,所以TPU一直不为外界所知。这位知情人士说,从目前的运行效果来看,TPU每瓦能耗的学习效果和效率都比传统的CPU、GPU高出一个数量级,达到了摩尔定律预言的七年后的CPU的运行效果。在深度学习方面,TPU可以兼具桌面机与嵌入式设备的功能,也就是低能耗高速度。TPU谷歌资深硬件工程师NormanJouppi刊文表示,谷歌的专用机器学习芯片TPU处理速度要比GPU和CPU快15-30倍(和TPU对比的是英特尔HaswellCPU以及NvidiaTeslaK80GPU),而在能效上,TPU更是提升了30到80倍。TPUTPU参数进来后,可从顶部加载到矩阵乘法单元中。同时,可以从左边加载激活(或从“神经元”输出)。那些以收缩的方式进入矩阵单元以产生矩阵乘法,它可以在每个周期中进行64,000次累加。256*256阵列缩放数据流引擎,经过矩阵乘法积累后实现非线性输出TPU在Google的测试中,使用64位浮点数学运算器的18核心运行在2.3GHz的HaswellXeonE5-2699v3处理器能够处理每秒1.3TOPS的运算,并提供51GB/秒的内存带宽;Haswell芯片功耗为145瓦,其系统(拥有256GB内存)满载时消耗455瓦特。相比之下,TPU使用8位整数数学运算器,拥有256GB的主机内存以及32GB的内存,能够实现34GB/秒的内存带宽,处理速度高达92TOPS,这比Haswell提升了71倍,此外,TPU服务器的热功率只有384瓦。TPU如上图所示,在小批量任务中(16),HaswellCPU的响应时间接近7毫秒,其每秒提供5482次推断(IPS),其可以实现的最大批量任务(64)每秒则可以完成13194次推断,但其响应时间为21.3毫秒。相比之下,TPU可以做到批量大小为200,而响应时间低于7毫秒,并提供225000个IPS运行推理基准,是其峰值性能的80%,当批量大小为250,响应时间为10毫秒。IntelStratix10FPGA硬件:与高端GPU相比,FPGA具有卓越的能效(性能/瓦),但它们不具有高峰值浮点性能。FPGA技术正在迅速发展,即将推出的IntelStratix10FPGA提供超过5,000个硬件浮点单元(DSP),超过28MB的片内RAM(M20Ks),与高带宽内存(高达4x250GB/s/stack或1TB/s)的集成,以及新HyperFlex技术提供的频率改进。英特尔FPGA提供了一个全面的软件生态系统,从低级HardwareDeion语言到具有OpenCL、C和C++的更高级的软件开发环境。英特尔将进一步利用MKL-DNN库,针对Intel的机器学习生态系统和传统框架(如今天提供的Caffe)以及其他不久后会出现的框架对FPGA进行调整。基于14nm工艺的英特尔Stratix10在FP32吞吐量方面达到峰值9.2TFLOP/s。相比之下,最新的TitanXPascalGPU的FP32吞吐量为11TFLOP/s。IntelStratix10FPGA新兴的低精度和稀疏DNN算法,其效率较之传统的密集FP32DNN有数量级的巨大改进,但是它们引入了GPU难以处理的不规则并行度和定制数据类型。反之,FPGA正是为极端的用性而设计的。在用于运行不规则并行度和自定义数据类型时,正能大显身手。这样的趋势使未来FPGA成为运行DNN、AI和ML应用的可行平台。黄先生说:“FPGA专用机器学习算法有更多的余量。”IntelStratix10FPGAIntelStratix10FPGA测试结果显示,英特尔Stratix10FPGA在GEMM稀疏、Int6和二值化DNN中的表现(TOP/sec)比英伟达TitanXPasacalGPU分别要好10%、50%和5.4倍。在Ternary-ResNet中,Stratix10FPGA可以输出超过TitanXPascal60%的表现,而功耗效率则比对手好上2.3倍。实验结果表明:FPGA可以成为下一代DNN的最佳计算平台之选。中兴通讯采用英特尔FPGA在深度学习上取得性能突破中兴通讯创造了一项新纪录——人脸识别速度超过每秒一千张图像——并达到其特定拓扑的理论精确度。英特尔Arria10FPGA使原始设计性能提速10倍以上同时保持算法精确度。Arria10FPGA拥有高达1.5TFIOP的单精度浮点运算性能,1l5万个逻辑元件,以及超过1Tb/s的高速连接性。此类深度学习设计可以从Arria10FPGA系列无缝迁移至高端英特尔Stratix10FPGA系列,用户可以期望得到多达9倍的性能提升。腾讯云FPGA的深度学习算法FPGA异构平台处理性能是纯CPU计算的性能4倍,而TCO成本只是纯CPU计算的三分之一。本方案对比中CPU为2颗E5-2620,FPGA为Virtex-7VX690T,这是一个28nm器件,如果采用20nm或16nm的器件会得到更好的性能。腾讯云FPGA的深度学习算法清华大学新型‘Thinker芯片’Thinker芯片基于该团队长期积累的可重构计算芯片技术,采用可重构架构和电路技术,突破了神经网络计算和访存的瓶颈,实现了高能效多模态混合神经网络计算。Thinker芯片具有高能效的突出优点,其能量效率相比目前在深度学习中广泛使用的GPU提升了三个数量级。Thinker芯片支持电路级编程和重构,是一个通用的神经网络计算平台,可广泛应用于机器人、无人机、智能汽车、智慧家居、安防监控和消费电子等领域。清华大学新型‘Thinker芯片’OptimizingFPGA-basedAcceleratorDesignforDeepConvolutionalNeuralNetworksOptimizingFPGA-basedAcceleratorDesignforDeepConvolutionalNeuralNetworksDLAU:AScalableDeepLearningAcceleratorUnitonFPGAXilinxZynqZedboarddevelopmentboard。DLAU:AScalableDeepLearningAcceleratorUnitonFPGADLAU:AScalableDeepLearningAcceleratorUnitonFPGANVIDIATeslaK40casthebaseline.K40chas2880streamcoresworkingatpeakfrequency875MHz,andtheMaxMemoryBandwidthis288(GB/sec).AcceleratingDeepConvolutionalNeuralNetworksUsingSpecializedHardwareAcceleratingDeepConvolutionalNeuralNetworksUsingSpecializedHardwareAcceleratingDeepConvolutionalNeuralNetworksUsingSpecializedHardware基于FPGA的深度学习加速器设计与实现采用6种不同的神经网络结构分别测试了深度学习的预测过程、本地预训练过程和全局训练过程下CPU(i7_4790K)、FPGA(Zedboa
本文标题:深度学习读书报告---上传百度文库
链接地址:https://www.777doc.com/doc-7385193 .html