韩松 EIE: Efficient Inference Engine on Compressed Deep Neural Network论文详解
EIE为韩松博士在ISCA 2016上的论文,实现了压缩的稀疏神经网络的硬件加速。
与其近似方法的ESE获得了FPGA2017的最佳论文。
背景与介绍
最新的DNN模型都是运算密集型和存储密集型,难以硬件部署。
提出了EIE (Efficient Inference Engine)的方法,将压缩模型应用与硬件。
矩阵表示
这是一个稀疏矩阵相乘的过程,输入向量a,乘以矩阵W,输出矩阵为b,然后经过了ReLU。
用于实现相乘累加的单元称为PE,相同颜色的相乘累加在同一个PE中实现。例如上面绿色的都是PE0的责任。则PE0只需要存下来权值的位置和权值的值。所以上面绿色的权值在PE0中的存储为下面这样:
硬件实现
CCU(Central control unit中央控制器)用于查找非零值,广播给PE(Processing Element处理单元,可以并行的单元,也是上文中的PE)。图a为CCU,
b为单个 PE单元, 实现将CCU广播过来的数据进行卷积的相乘累加和ReLU**。
分为几部分
PE之间用H-tree结构,可以保证PE数量增加时布线长度以log函数增长(增长最缓慢的形式)
作者运用台积电TSMC的45nm的处理器。