[发明专利]一种面向FPGA的深度卷积神经网络加速器及设计方法有效
申请号: | 202110705247.3 | 申请日: | 2021-06-24 |
公开(公告)号: | CN113487012B | 公开(公告)日: | 2023-08-04 |
发明(设计)人: | 雷鹏;梁家伟 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06N3/0464 | 分类号: | G06N3/0464;G06N3/063;G06N3/082;G06N20/00 |
代理公司: | 北京慧泉知识产权代理有限公司 11232 | 代理人: | 王顺荣;唐爱华 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 fpga 深度 卷积 神经网络 加速器 设计 方法 | ||
1.一种面向FPGA的深度卷积神经网络加速器,其特征在于,它包括:深度卷积神经网络DCNN模型剪枝单元、DCNN模型量化单元和硬件结构设计单元;其中DCNN模型剪枝单元又包括:模型预训练单元、滤波器相关性计算单元、滤波器软剪枝单元、滤波器硬剪枝单元、剪枝敏感性计算单元和模型重训练单元;各个单元之间彼此相连作用,最终得到基于FPGA的DCNN加速器;
所述模型预训练单元,它与滤波器相关性计算单元、剪枝敏感性计算单元、滤波器软剪枝单元和滤波器硬剪枝单元相连接;它用于构建压缩前的完整的DCNN模型结构,并进行预训练,预训练得到的模型用于滤波器相关性计算、剪枝敏感性计算和滤波器剪枝;
所述滤波器相关性计算单元,它与模型预训练单元、剪枝敏感性计算单元和滤波器软剪枝单元相连接;它读取模型预训练单元得到的预训练模型中的滤波器参数,将每个滤波器的参数展平为一个滤波器向量,选取其中一个滤波器向量作为目标向量,并以其余滤波器向量作为拟合向量,使用最小二乘法计算二者的拟合优度作为滤波器相关性评价标准;该滤波器相关性计算单元重复上述操作至计算出每个滤波器的拟合优度作为滤波器相关性,并将计算结果传至剪枝敏感性计算单元、滤波器软剪枝单元和滤波器硬剪枝单元;
所述滤波器软剪枝单元,它与滤波器相关性计算单元、剪枝敏感性计算单元、模型预训练单元和模型重训练单元相连接,通过读取滤波器相关性计算单元中得到的滤波器之间的相关性,来确定每一层需要剪枝的滤波器,并将预训练模型中这些滤波器的参数置零;该滤波器软剪枝单元根据提前预设的剪枝比重复上述操作;
所述剪枝敏感性计算单元,它与模型预训练单元、滤波器软剪枝单元、滤波器硬剪枝单元和模型重训练单元相连接;它对每一层次设置滤波器剪枝比例并单独进行软剪枝,经过重训练后计算与原始预训练模型的性能误差,作为该层次在该剪枝比例下的敏感性;它对每一层次分别设定不同的滤波器剪枝比例,重复上述过程得到每一层次在各个剪枝比例下的敏感性,从而得到整个模型的最佳滤波器剪枝比例和对应的各层次滤波器剪枝比;
所述模型重训练单元,它与滤波器软剪枝单元、滤波器硬剪枝单元、剪枝敏感性计算单元、DCNN模型量化单元和硬件结构设计单元相连接,负责滤波器剪枝后或量化后的模型进行再次训练微调,达到恢复模型性能的目的;恢复性能后的模型传至剪枝敏感性计算单元、滤波器硬剪枝单元、DCNN模型量化单元或硬件结构设计单元;
所述滤波器硬剪枝单元,它与模型预训练单元、滤波器软剪枝单元相连通,通过读取需要进行剪枝的滤波器,将其彻底从模型中删除;该滤波器硬剪枝单元还包括维度插入与维度删除功能,对剪枝后数据维度变化问题进行维度匹配;
所述DCNN模型量化单元,它与模型重训练单元相连,将前述输出的剪枝后DCNN模型参数、偏置和激活值进行提取,并计算这些数据所需要的量化位宽和量化因子,动态的对不同数据进行量化,得到量化后的模型;并将该模型再输入至模型重训练单元;
所述硬件结构设计单元,它与模型重训练单元相连,获取前述输出的量化模型;根据量化后模型的结构,从多任务并行、多层级并行、通道间并行、通道内并行和操作并行方面根据FPGA的资源限制进行设计,在资源与计算速度间得到平衡。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110705247.3/1.html,转载请声明来源钻瓜专利网。