[发明专利]一种基于压缩神经网络的二阶段量化实现方法及装置在审
申请号: | 202210458582.2 | 申请日: | 2022-04-24 |
公开(公告)号: | CN114781615A | 公开(公告)日: | 2022-07-22 |
发明(设计)人: | 杨文鑫;支小莉;童维勤 | 申请(专利权)人: | 上海大学 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/08 |
代理公司: | 上海上大专利事务所(普通合伙) 31205 | 代理人: | 何文欣 |
地址: | 200444*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 压缩 神经网络 阶段 量化 实现 方法 装置 | ||
1.一种基于压缩神经网络的二阶段量化实现方法,其特征在于,包括以下步骤:
S1、根据神经网络的目标任务,使用CPU或GPU将神经网络模型训练至收敛;
S2、根据目标任务所需的神经网络的压缩率,设置所述神经网络每层的目标稀疏度,逐阶段地对权值进行剪枝;
S3、根据目标任务预设的量化位宽,二阶段地量化神经网络每层的权值;第一阶段是聚类,使用聚类算法聚类神经网络每层的权值;第二阶段是放缩,根据目标任务预设的量化位宽,将得到的聚类中心放缩到定点数,最终结果以三元组的形式存储每层的权值矩阵。
2.根据权利要求1所述的基于压缩神经网络的二阶段量化实现方法,其特征在于,所述步骤S2中的根据目标任务所需的神经网络的压缩率,设置所述神经网络每层的目标稀疏度,具体包括:根据目标任务所需的神经网络的压缩率,除神经网络第一层外,设置所述神经网络其余每层的目标稀疏度;神经网络每层的目标稀疏度,由每层网络各自的所属的类型,以及该层网络所处在所述神经网络的深度决定。
3.根据权利要求1所述的基于压缩神经网络的二阶段量化实现方法,其特征在于,所述步骤S2中的逐阶段地对权值进行剪枝,具体包括:根据所诉神经网络每层的目标稀疏度、初始稀疏度和预设的剪枝频率,确定每层网络本阶段所需剪枝的权值数M,其中M为正整数,将未剪枝的权值量级最小的M个权值确定为本阶段所需剪枝的权值,逐阶段地对神经网络每层的权值进行剪枝。
4.根据权利要求1所述的基于压缩神经网络的二阶段量化实现方法,其特征在于,所述步骤S3中的二阶段地量化神经网络每层的权值,具体包括:
第一阶段:根据目标任务所需的量化位宽,确定聚类中心数,使用粒子群聚类算法聚类经过剪枝后的权值矩阵,得到聚类中心和聚类标签,神经网络每层的权值矩阵存储得到的聚类中心;
第二阶段:根据目标任务所需的量化位宽,使用线性量化算法量化每层的聚类中心,最终结果以三元组的形式存储每层的权值矩阵。
5.根据权利要求4所述的基于压缩神经网络的二阶段量化实现方法,其特征在于,所述第一阶段具体包括:根据目标任务预设的量化位宽n,得到聚类中心数X,其中X为2n-1;由于聚类中心数已知,使用粒子群算法得到所述神经网络每层权值的初始聚类中心,再使用聚类算法对每层权值进行聚类,得到聚类中心和聚类标签。
6.根据权利要求4所述的基于压缩神经网络的二阶段量化实现方法,其特征在于,所述第二阶段具体包括:线性量化算法的输入为神经网络每层的X个聚类中心,不需要输入整个权值矩阵;以三元组形式存储每层的权值矩阵,分别存储每个权值的行、列和所述权值经过聚类得到的聚类中心。
7.一种基于压缩神经网络的二阶段量化装置,其特征在于,包括:
训练模块:用于根据目标任务,选择神经网络模型,使用CPU或GPU训练神经网络模型至收敛状态;
剪枝模块:用于根据所述神经网络模型所需的压缩率,针对网络中不同类型和深度的层,分别设置所述每层网络的目标稀疏度,并逐阶段地对每层的权值进行剪枝;
聚类模块:用于根据目标任务所需的量化位宽,确定聚类中心数,使用粒子群聚类算法对剪枝后的神经网络模型每层的权值进行聚类,得到聚类中心和聚类标签,神经网络每层的权值矩阵存储聚类的中心;
量化模块:根据目标任务所需的量化位宽,使用线性量化算法量化每层的聚类中心,最终结果以三元组的形式存储每层的权值矩阵,量化并压缩神经网络。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海大学,未经上海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210458582.2/1.html,转载请声明来源钻瓜专利网。