基于XILINX FPGA的卷积神经网络(一)

基于fpga的卷积神经网络

前期准备工作

首先使用tensorflow设计卷积神经网络,并进行训练。方便起见,我使用了mnist数据集,设计的网络结构为:

input layer  24x24
conv1 layer 20x20x6
maxpooling1 layer 10x10x6
conv2 layer 6x6x12
maxpooling2 layer 3x3x12
output layer 10

将参数保存为.mat文件,给MATLAB。

然后使用MATLAB将图片和参数都保存为.coe文件,用来生成fpga中rom使用的文件。

最后编写fpga代码实现网络结构,由于资源有限,设计卷积神经网络的并行度为2,每次同时计算2个feature map。

注:TensorFlow中的参数保存的方式比较奇怪,用MATLAB进行验证时发现输入图像和卷积层的参数需要转置!!!!!!



你可能感兴趣的:(基于XILINX FPGA的卷积神经网络(一))