神经网络可以被归类为一组大致模仿人脑建模方式的算法,能够通过引入新数据来完成“学习”过程。因此,开发专用的“计算高效型”神经网络模型,会为机器学习带来诸多好处。
然而,如何才能确保模型的高效性,关键点之一是在实现推断加速器(广义的硬件加速器)时应采用何种方式访问存储器,特别是要考虑如何将权重和中间激活值一起储存。几项关键考量包括:
时延
对 L1、L2 和 L3 存储器的访问表现出相对较低的时延。如果与下一个图形运算有关的权重和激活值被缓存起来,那么我们就能保持合理水平的效率。然而,如果我们要从外部 DDR 提取数据,就会发生流水线停顿,进而影响时延和效率。
功耗
访问外部存储器的能耗至少比访问内部存储器大一个数量级。
计算饱和
一般而言,应用要么受计算限制,要么受存储器限制。这可能会影响给定推断范式中可实现的 GOP/TOP,而且在某些情况下,这种影响不可小视。如果被部署的具体网络的实际性能是 1 TOP,那么使用能达到 10 TOP 峰值性能的推断引擎价值就不大。
What's more?
更进一步,考虑到访问现代赛灵思器件里的内部 SRAM(熟悉赛灵思 SoC 的人也称其为 BRAM 或 UltraRAM),其能耗大约在几微微焦耳,与访问外部 DRAM 的能耗相比,低大约两个数量级。
过去几年里已有多种方法投入使用并获得不同程度的成功,相关的架构选择带来的影响十分显著。本文将以 TPUv1 架构为例,详细阐述如何运用专门构建的神经网络模型,进一步提升机器学习推断的效率。
原文标题:提升效率的神经网络模型出现了!
文章出处:【微信公众号:FPGA开发圈】欢迎添加关注!文章转载请注明出处。
责任编辑:haq
-
存储器
+关注
关注
38文章
7481浏览量
163754 -
神经网络
+关注
关注
42文章
4770浏览量
100693
原文标题:提升效率的神经网络模型出现了!
文章出处:【微信号:FPGA-EETrend,微信公众号:FPGA开发圈】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论