摘要

针对卷积神经网络在正向推理时的高计算复杂度与空间复杂度问题,提出了一种基于二值神经网络(Binary Neural Network, BNN)的过滤器剪枝算法(Binary Filter Pruning: BFP)。BFP算法通过剪除L2范数较小的过滤器,构建剪枝压缩后的二值神经网络模型。进一步面向FPGA(Field Programmable Gate Array)平台,设计并实现了基于二值复值神经网络(Binary Complex Neural Network, BCNN)的ResNet-18加速计算模型。对二值复值卷积层与预处理过程中的卷积层,分别设计了数据预处理合并优化与数据重排序。实验结果显示,BFP算法在CIFAR-10数据集上的分类精度,比基于SLR(Surrogate Lagrangian Relaxation)的通道剪枝方法平均提高了1%。与CPU平台相比,设计的加速器在PYNQ-Z1平台上的计算性能提高了23倍。