碎碎思 · 8月2日

适用FPGA的小型神经网络(二)

前一篇文章介绍了LeNet和AlexNet是非常适合入门的神经网络,今天稍微进阶一点,复杂一些。

VGG

VGG(Visual Geometry Group)是牛津大学的Karen Simonyan和Andrew Zisserman在挑战2014年的ILSVRC时提出的系列模型。基于模型研究和比赛结果,两人发表了论文《Very Deep Convolutional Networks For Large-Scale Image Recognition》。

https://arxiv.org/abs/1409.1556

VGG的重要意义在于,其研究结果表明增加深度能够提高卷积神经网络的性能。在VGG之后,人们沿着更深层的网络这个方向,取得了一系列新的进展。

image.png

vgg16-on-Zynq

image.png

https://github.com/flymin/vgg16-on-Zynq

这是 Zynq FPGA 上实现 VGG16 网络的开源项目,项目侧重“实验”,适合学习,所有的介绍都是中文的,大家看README就可以了。

PS:CSDN上有篇博文也是这个项目的README,不清楚是不是原作者~

FPGA-Accelerator-for-AES-LeNet-VGG16

image.png

https://github.com/zhan6841/FPGA-Accelerator-for-AES-LeNet-VGG16

这个是AES-LeNet-VGG16三个项目的集合体,项目没有介绍,但是不清楚是原作者还是收集的项目,每个项目文件夹下是有相关的设计文档的:

image.png

同时,该项目给了一个网址:

http://www.aoki.ecei.tohoku.ac.jp/crypto/web/cores.html

该网址给了几个比较实用的IP核源码,包括片上毛刺时钟发生器、RSA系列、JWIS2007、AES等,还有一些大家自己去看吧,除了源码和仿真文件外还有一些设计文档。

CNN_VGG19

这个项目实际上不是一个可训练的模型,只是 VGG19 的重建,用于对输入图像进行预测。

https://github.com/romulus0914/CNN_VGG19_verilog

https://github.com/18521449/Image-Classification-use-VGG16

https://github.com/PhanQuocLinh/Project_VGG16

总结

除了LeNet外很少有在FPGA上直接应用的项目了,基本都是实现各个神经网络的核心部分,应用大部分都是基于OpenVINO或者DPU的例子。这部分原因都在于时间和稳定性,后面的案例或者实例相对较少,会以理论项目为基础。

作者:碎碎思
原文:OpenFPGA

相关文章推荐

更多FPGA干货请关注FPGA的逻辑技术专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。
推荐阅读
关注数
10579
内容数
550
FPGA Logic 二三事
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息