当前位置: 首页 > 专利查询>浙江大学专利>正文

基于FPGA实现卷积神经网络的软硬件协同加速方法技术

技术编号:40528963 阅读:17 留言:0更新日期:2024-03-01 13:49
本发明专利技术公开了一种基于FPGA实现卷积神经网络的软硬件协同加速方法,该方法包括:选取卷积神经网络和数据集,并对卷积神经网络进行训练和量化;将量化模型根据所将权重和参数保存为二进制的机器语言文件。根据保存的数据生成硬件电路,使用卷积并行优化、矩阵划分、循环展开和访存流水化实现软硬件加速协同;对实现软硬件协同优化的数据重新生成硬件IP,根据硬件IP完成硬件设置、约束与布线。本发明专利技术采用的软硬件协同优化策略实现了算子级优化,能高效地使用已设计好的卷积模块;采用一整套神经网络量化与模型压缩方案,保证模型的实际部署效果且本发明专利技术具有多FPGA平台通用性。

【技术实现步骤摘要】

本专利技术涉及深度学习领域,尤其涉及一种基于fpga实现卷积神经网络的软硬件协同加速方法。


技术介绍

1、随着机器学习的不断发展,卷积神经网络(cnn)在计算机视觉、自然语言处理和数据处理得到了广泛的应用,产生了巨大的社会效应与经济效益。然而,卷积神经网络在发挥出优秀性能的同时,也需要消耗大量计算与存储资源来进行训练与推理。以纽约大学的yann lecun于1998年提出的卷积神经网络lenet-5为例,这个简单的5层神经网络(不计入池化层)有着8087个神经元,61706个参数;而更深的alexnet有8层(池化层计入卷积层),神经元数量为65万个,参数量却达到了惊人的6000万。因此,更深、更高效的卷积神经网络,对资源的需求是指数级增长的,在实际应用时需要通过各种方法对神经网络进行加速。

2、目前对于神经网络的加速主要从软件和硬件两个方面进行。在软件方面,以pytorch、tensorflow等深度学习框架为基础,在cpu、gpu平台上对算法进行改进,不牺牲神经网络的准确率,通过优化网络结构加快计算速度,比如以在简单cnn基础上优化算法提出本文档来自技高网...

【技术保护点】

1.一种基于FPGA实现卷积神经网络的软硬件协同加速方法,其特征在于,该方法包括:

2.根据权利要求1所述的一种基于FPGA实现卷积神经网络的软硬件协同加速方法,其特征在于,所述选取神经网络和数据集中,数据集根据目标FPGA的硬件资源性能选择能够发挥并行优势的大小。

3.根据权利要求1所述的一种基于FPGA实现卷积神经网络的软硬件协同加速方法,其特征在于,所述卷积神经网络在个人设备进行训练后,采用Pytorch框架下的量化压缩工具对神经网络进行量化。

4.根据权利要求1所述的一种基于FPGA实现卷积神经网络的软硬件协同加速方法,其特征在于,量化过程中若...

【技术特征摘要】

1.一种基于fpga实现卷积神经网络的软硬件协同加速方法,其特征在于,该方法包括:

2.根据权利要求1所述的一种基于fpga实现卷积神经网络的软硬件协同加速方法,其特征在于,所述选取神经网络和数据集中,数据集根据目标fpga的硬件资源性能选择能够发挥并行优势的大小。

3.根据权利要求1所述的一种基于fpga实现卷积神经网络的软硬件协同加速方法,其特征在于,所述卷积神经网络在个人设备进行训练后,采用pytorch框架下的量化压缩工具对神经网络进行量化。

4.根据权利要求1所述的一种基于fpga实现卷积神经网络的软硬件协同加速方法,其特征在于,量化过程中若量化之后的模型预测准确率下降超过5%,则调整量化精度或更改量化策略,若量化后精度损失小于1%,则选择更低的量化精度提高压缩率。

5.根据权利要求1所述的一种基于fpga实现卷积神经网络的软硬件协同加速方法,其特征在于,所述将量化模型根据所将权重和参数保存为二进制的机器语言文件具体为:按所属网络层将权重、偏执参数保存为二进制的机器语言文件.bin,后续根据需求通过axi总线传输到fpga缓存中来读取。

6.根据权利要求1所...

【专利技术属性】
技术研发人员:孟文超刘宏森龙常青王宁贺诗波顾超杰杨秦敏陈积明
申请(专利权)人:浙江大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1