Xilinx社区
首页> Steve专栏> Auviz Systems加速卷积神经网络性能
Steve专栏
Auviz Systems加速卷积神经网络性能
来源:  时间:2015-07-20  浏览量:16556

  作者:Steve Leibson, 赛灵思战略营销与业务规划总监

  从图像和影音识别到大数据采集,卷积神经网络(CNN)和深度学习的发展为识别应用程序带来了一场新的革命。在2015年度嵌入式视觉峰会上,来自百度的GPU应用先驱任武博士发表主题演讲。他指出,百度公司基于GPU的深度学习CNN在分析网络图像大规模视觉识别数据集时准确率非常高,处于世界领先水平(详见“百度引领人工智能基准”一文)。目前,GPU也成为CNN研发人员青睐的应用技术——因为这是他们熟悉的编程模型。但GPU却功耗过高。不过,在嵌入式视觉峰会上,Auviz Systems公司的创始人Nagesh Gupta对图像处理CNN相关工作的效果进行了阐述。而Auviz Systems一直致力于为数据中心开发基于FPGA的中间件IP,以减少应用程序的功耗。

  在百度高精准处理网络图像的技术处于领先地位前,多伦多大学的AlexNet一直保持领先优势。AlexNet有五个卷积层和三个致密层(CNN)。每个卷积层都用一套重量过滤器卷积输入特征图,以此产生输出特征图。AlexNet的卷积层可实现以下功能:

  1、3D卷积

  2、使用ReLU(修正线性单元)激活函数

  3、二级抽样

  这是个复杂的算法,比起以下我将进行的计算需要做更多的计算。但我们先了解下仅计算一个3D卷积需要做多少工作。11x11 Weight Matrix和11x11 输入特征图相乘,可得出1个输出值,如下所示:

  该运算涉及121个平行的MAC(相乘/累积)操作,使用指令串行CPU将需要相当长一段时间完成操作。FPGA则可依据其规格,并行或在一个时钟周期内轻松地计算出512个或更多这样的MAC结果。

  AuvizDNN是Auviz Systems的函数库,可提供所有所需的对象、类和函数,以在FPGA上实现CNN。AuvizDNN可以提供配置函数,而使用配置函数可以创建任何类型和任何配置的CNN。从程序开发者的角度来说,使用AuvizDNN在FPGA上实现一个完整的CNN应用,就像一个C /C++函数调用序列。在此举例AlexNet只是一个说明。可应用AuvizDNN函数库实现所有类型的CNN。而实现效果如何见下图。下图为Auviz Systems使用Xilinx Kintex-7和Kintex UltraScale FPGA的实时系统图:

  基于Microsoft最新发布的数据,根据Auviz,FPGA如Xilinx Kintex Ultrascale可处理14个或更多图像/秒/瓦特,而一个高端的GPU仅能处理4个图像/秒/瓦特。这表明,FPGA是实现快速、低功耗及数据中心应用的最佳选择。

  想了解更多有关CNN应用使用FPGA的信息,可从Auviz官网下载白皮书《加速云端的机器学习:FPGA深层神经网络》(需注册)。

热点文章
精选视频
推荐资源

中国授权培训机构

北京 电话:(010)82757632
      (010) 62192881
深圳 电话:(0755)86186715
武汉 电话:(027)61389792
成都 电话:(028)80821007
南京 电话:(025)66022032
西安 电话:(029)82230498
邮箱:sales@e-elements.com

中国授权经销商

香港 电话:(852)22127848
北京 电话:(010)84148118
成都 电话:(028)86528262
上海 电话:(021)33678387
深圳 电话:(0755)26584925
武汉 电话:(027)87322806
邮箱:china@avent.com
深圳 电话:(0755)26743210
上海 电话:(021)51696680
北京 电话:(010)51726678
成都 电话:(028)85139576
武汉 电话:(027)87690155
邮箱:
xilinx_enquiry@comtech.com.cn
Copyright ©2000-2015 ELECTRONIC ENGINEERING & PRODUCT WORLD. All rights reserved.
京ICP备12027778号-2 北京市公安局备案:1101082052