【技术实现步骤摘要】
模型压缩方法、装置、电子设备及存储介质
[0001]本公开涉及计算机
,尤其涉及深度学习、模型量化等人工智能
,具体涉及一种模型压缩方法、装置、电子设备及存储介质。
技术介绍
[0002]近年来,随着人工智能技术的迅猛发展,深度学习神经网络在模式识别方面取得了巨大的成功,例如图像分类、目标检测、图像分割、语音识别以及机器翻译等。然而,性能较好的神经网络通常具有规模较大的模型参数,使得其计算复杂度较高。计算的复杂度同时体现在空间存储量(庞大的模型存储体积和运行时的内存占用)和时间计算量(单次推理所需数百亿次浮点运算)两方面上。因此,对神经网络进行压缩和加速变得尤为重要。
技术实现思路
[0003]本公开提供了一种模型压缩方法、装置、电子设备及存储介质。
[0004]根据本公开的第一方面,提供了一种模型压缩方法,包括:
[0005]获取待压缩模型中的各个模型参数及所述模型参数对应的目标数据位宽;
[0006]将所述各个模型参数由小到大依次排序,以获取第一排序结果;
[0007]基于所述目标数据位宽对应的数据范围内包含的数据量,将所述第一排序结果进行均匀划分,以获取与所述数据量相同的多个第一集合;
[0008]确定每个所述第一集合对应的第一量化参数,其中,第一集合i中包含的模型参数,大于第一集合j中包含的模型参数,且第一集合i对应的第一量化参数大于第一集合j对应的第一量化参数,i与j为不同的值;
[0009]基于每个所述第一集合对应的第一量化参数, ...
【技术保护点】
【技术特征摘要】
1.一种模型压缩方法,包括:获取待压缩模型中的各个模型参数及所述模型参数对应的目标数据位宽;将所述各个模型参数由小到大依次排序,以获取第一排序结果;基于所述目标数据位宽对应的数据范围内包含的数据量,将所述第一排序结果进行均匀划分,以获取与所述数据量相同的多个第一集合;确定每个所述第一集合对应的第一量化参数,其中,第一集合i中包含的模型参数,大于第一集合j中包含的模型参数,且第一集合i对应的第一量化参数大于第一集合j对应的第一量化参数,i与j为不同的值;基于每个所述第一集合对应的第一量化参数,对每个所述第一集合中的模型参数进行量化,以获取压缩后的模型。2.根据权利要求1所述的方法,其中,还包括:获取与所述待压缩模型的任务类型对应的多组初始样本数据;对每组所述初始样本数据进行量化,以获取每组所述初始样本数据对应的量化样本数据;根据每组所述初始样本数据及对应的所述量化样本数据,确定每组所述初始样本数据对应的量化损失;根据对应的量化损失最小的一组目标样本数据,确定各个数据分界点;基于所述目标数据位宽,确定每组相邻的两个数据分界点间的数据对应的第二量化参数,其中,第m组相邻的两个数据分界点间的数据,大于第n组相邻的两个数据分界点间的数值,且所述第m组相邻的两个数据分界点间的数据对应的第二量化参数大于所述第n组相邻的两个数据分界点间的数据对应的第二量化参数,m与n为不同的值。3.根据权利要求2所述的方法,其中,所述根据对应的量化损失最小的一组目标样本数据,确定各个数据分界点,包括:将所述目标样本数据由小到大依次排序,以获取所述目标样本数据对应的第二排序结果;基于所述数据量,将所述第二排序结果进行均匀划分,以获取与所述数据量相同的多个第二集合;将每相邻两个第二集合中前一个第二集合中的最后一个元素的数值,与后一个第二集合中的第一个元素的数值之间的均值,确定为一个数据分界点。4.根据权利要求2所述的方法,其中,所述根据每组所述初始样本数据及对应的所述量化样本数据,确定每组所述初始样本数据对应的量化损失,包括:将每组所述初始样本数据分别输入所述待压缩模型中,以获取每组所述初始样本数据对应的第一输出向量;将每组所述量化样本数据分别输入所述压缩后的模型中,以获取每组所述量化样本数据对应的第二输出向量;基于损失函数及每组所述初始样本数据对应的第一输出向量及所述第二输出向量,确定每组所述初始样本数据对应的量化损失。5.根据权利要求4所述的方法,其中,所述基于损失函数及每组所述初始样本数据对应的第一输出向量及所述第二输出向量,确定每组所述初始样本数据对应的量化损失,包括:
根据每组所述初始样本数据对应的第一输出向量及所述第二输出向量,确定各参考损失值;根据所述各参考损失值及各预设的衰减因子,确定每组所述初始样本数据对应的量化损失。6.根据权利要求5所述的方法,其中,所述各参考损失值为以下任一项:所述第一输出向量与所述第二输出向量间的各个次方差;所述第一输出向量的绝对值与所述第二输出向量的绝对值间的各个次方差;所述第一输出向量对应的第一差值与所述第二输出向量对应的第二差值间的各个次方差;及所述第一差值的绝对值与所述第二差值的绝对值间的各个次方差;其中,所述第一差值为所述第一输出向量中每个元素与所述第一输出向量的均值之间的差值,所述第二差值为所述第二输出向量中每个元素与所述第二输出向量的均值之间的差值。7.一种数据处理方法,包括:获取待处理数据、与预设的模型关联的各个数据分界点、及每组相邻的两个数据分界点间的数据对应的第二量化参数;基于所述各个数据分界点,对所述待处理数据进行划分,以获取每组相邻的两个数据分界点内包含的目标待处理数据;基于所述每组相邻的两个数据分界点间的数据对应的第二量化参数,对每组相邻的两个数据分界点内包含的目标待处理数据进行量化,以获取所述待处理数据对应的目标量化数据;将所述目标量化数据输入所述预设的模型中,以获取所述待处理数据对应的预测结果,其中,所述预设的模型为基于如权利要求1
‑
6中任一所述的方法生成的。8.一种模型压缩装置,包括:第一获取模块,用于获取待压缩模型中的各个模型参数及所述模型参数对应的目标数据位宽;第二获取模块,用于将所述各个模型参数由小到大依次排序,以获取第一排序结果;第三获取模块,用于基于所述目标数据位宽对应的数据范围内包含的数据量,将所述第一排序结果进行均匀划分,以获取与所述数据量相同的多个第一集合;第一确定模块,用于确定每个所述第一集合对应的第一量化参...
【专利技术属性】
技术研发人员:李泽政,杨歌,梁津,
申请(专利权)人:百度时代网络技术北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。