使用HLS工具在FPGA上使用二进制权重和激活进行图像分类的CNN的培训和实现
这是博洛尼亚大学项目工作的资料库教授
在这项工作中,我首先学习了具有二进制权重和激活的二进制网络。 然后,我在MNIST数据集上训练了一个网络,使用小型网络(46万权重)实现了96%的准确性。
但是,该项目的核心是使用高级综合工具(Vivado HLS)在FPGA器件(Zynq)上实现二进制网络。 我实现了核心模块(卷积,密集,最大池,填充),优化资源,评估结果并讨论了时间和资源之间的取舍。 整个实现是流水线的,通过使用少于FPGA上可用资源的一半,就可以实现数千个图像/秒的吞吐量。
您可以在提供的幻灯片中找到其他信息。
参考
二进制网络参考文件:二进制
:我已经从该项目改编了我的培训代码
有关在FPGA上实现BNN的论文:
作者
博洛尼亚大学-2018年5月
1