前面两种方案均为面向卷积核的卷积器,具有如下缺点:当卷积核尺寸变化时(如AlexNet 第一个卷积层尺寸为 11 x 11,而后面卷积核逐渐缩小为 5 x 5 和 3 x 3),不能充分发挥硬件的并行计算性能,造成大量的资源浪费。随着新型网络更多奇异的卷积核(如NIN 中的 1 x 1 卷积核、 1 x N 或 N x 1卷积核),资源浪费情况会越来越严重,甚至变为串行计算结构。方案三则采用很多算法技巧,包括将大图像分块、通道优先累加、兼顾访存和计算等,实现了 SIMD 型计算架构,不再与具体卷积核尺寸挂钩,运行时计算资源利用率更高。
参考文献 【1】Amos, Jagath. FPGA IMPLEMENTATIONS OF NEURAL NETWORKS. Springer 2006. 【2】Yann LeCun, et al. CNP : An FPGA-based Processor for Convolutional Networks. 2009. 【3】Optimizing FPGA-based Accelerator Design for Deep Convolutional Neural Networks, 2015, ACM 978-1-4503-3315-3/15/02 【4】Accelerating Deep Convolutional Neural Networks Using Specialized Hardware, 2015. 【5】Stratix 10 Device Overview, Altera, 2015.12. 【6】 A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. NIPS 2012. 【7】 J. Cong and B. Xiao. Minimizing computation in convolutional neural networks. ICANN 2014. 【8】 http://www.xilinx.com/products/boards-and-kits/ek-v7-vc707-g.html 【9】 A 240 G-ops/s Mobile Coprocessor for Deep Neural Networks, 2013 【10】A. Putnam, et al., A Reconfigurable Fabric for Accelerating Large-Scale Datacenter Services, International Symposium on Computer Architecture, 2014. 【11】http://auvizsystems.com/products/auvizdnn/ 【12】http://www.eweek.com/servers/int ... a-accelerators.html