用于神经网络模型压缩的量化、自适应块分区和码本编解码的方法和装置制造方法及图纸

技术编号:31373076 阅读:20 留言:0更新日期:2021-12-15 10:52
一种用于神经网络模型压缩的量化、自适应块分区和码本编码的方法由至少一个处理器执行,并且包括:确定神经网络的一层中多维张量的饱和最大值,以及对应于所述饱和最大值的位深度;并且,将所述多维张量中的权重系数限幅在所述饱和最大值的范围内。所述方法还包括基于所述位深度,量化已限幅的权重系数;以及,向解码器发送包括所述位深度的层报头。解码器发送包括所述位深度的层报头。解码器发送包括所述位深度的层报头。

【技术实现步骤摘要】
【国外来华专利技术】用于神经网络模型压缩的量化、自适应块分区和码本编解码的方法和装置
[0001]引用并入
[0002]本申请要求于2019年11月22日提交的美国临时专利申请第62/939,057号,2019年11月22日提交的美国临时专利申请第62/939,054号,2019年11月25日提交的美国临时专利申请第62/939,949号,2019年12月12日提交的美国临时专利申请第62/947,236,以及2020年11月16日向美国专利商标局提交的美国专利申请第17/099,202号的优先权。在先申请的全部内容通过引用并入本文。

技术介绍

[0003]深度神经网络(Deep Neural Networks,DNNs)在语义分类、目标检测/识别、目标跟踪、视频质量增强等大量视频应用中取得成功,因此需要压缩DNN模型。因此,运动图像专家组(Motion Picture Experts Group,MPEG)正在积极致力于神经网络标准(Neural Network standard,NNR)的编码表示,该标准用于对DNN模型进行编码以节省存储和计算。

技术实现思路

[0004]根据实施例,一种用于神经网络模型压缩的量化、自适应块分区和码本编码的方法由至少一个处理器执行,并且包括:确定神经网络的一层中多维张量的饱和最大值,以及对应于所述饱和最大值的位深度;并且,将所述多维张量中的权重系数限幅在所述饱和最大值的范围内。所述方法还包括基于所述位深度,量化已限幅的权重系数;以及,向解码器发送包括所述位深度的层报头。
[0005]根据实施例,一种用于神经网络模型压缩的量化、自适应块分区和码本编码的装置包括:至少一个存储器,用于存储程序代码;至少一个处理器,用于读取所述程序代码,并按照所述程序代码的指令进行操作。所述程序代码包括:第一确定代码,用于使得所述至少一个处理器确定神经网络的一层中多维张量的饱和最大值,以及对应于所述饱和最大值的位深度;以及,限幅代码,用于使得所述至少一个处理器将所述多维张量中的权重系数限幅在所述饱和最大值的范围内。所述程序代码还包括量化代码,用于使得所述至少一个处理器基于所述位深度,量化已限幅的权重系数;以及,发送代码,用于使得所述至少一个处理器向解码器发送包括所述位深度的层报头。
[0006]根据实施例,一种非易失性计算机可读介质存储指令,当所述指令由用于神经网络模型压缩的量化、自适应块分区和码本编码的至少一个处理器执行时,使得所述至少一个处理器:确定神经网络的一层中多维张量的饱和最大值,以及对应于所述饱和最大值的位深度;以及,将所述多维张量中的权重系数限幅在所述饱和最大值的范围内。当由至少一个处理器执行时,所述指令还使得至少一个处理器基于所述位深度,量化已限幅的权重系数;以及,向解码器发送包括所述位深度的层报头。
附图说明
[0007]图1A是将系数裁剪和映射到8位表示的示意图。
[0008]图1B是GEPM/GEPP划分方法的示意图。
[0009]图2是根据实施例的可以在其中实施本文描述的方法、装置和系统的环境的示意图。
[0010]图3是图2中一个或多个设备的示例组件的框图。
[0011]图4是根据实施例的用于神经网络模型压缩的系统的功能框图。
[0012]图5是根据实施例的用于神经网络模型压缩的量化方法的流程图。
[0013]图6是根据实施例的用于神经网络模型压缩的量化装置的框图。
[0014]图7是根据实施例的在垂直方向使用光栅扫描的自适应CTU3D/3D编码单元(CU3D)分区的两个示例的图。
[0015]图8是根据实施例的用于神经网络模型压缩的自适应块分区方法的流程图。
[0016]图9是根据实施例的用于神经网络模型压缩的自适应块分区装置的框图。
[0017]图10是根据实施例的码本、码本预测器和预测图的示意图。
[0018]图11是根据实施例的用于神经网络模型压缩的码本编码方法的流程图。
[0019]图12是根据实施例的用于神经网络模型压缩的码本编码装置的框图。
具体实施方式
[0020]本公开涉及神经网络模型压缩。更具体地,本文描述的方法和装置涉及用于神经网络模型压缩的量化、自适应块分区和码本编码。
[0021]在用于多媒体内容描述和分析的神经网络压缩中,如果一个权重张量的维度大于二(例如卷积层),则将该权重张量重塑为二维(two

dimensional,2D)张量。如果权重张量的维度不超过二(例如,全连接层或偏置层),则不执行重塑。
[0022]编码方法以行优先的方式从左到右扫描权重系数,并且从上到下扫描行。
[0023][0024][0025]在用于多媒体内容描述和分析的神经网络压缩中,最近邻量化以统一的方式应用于权重矩阵中的每个权重系数。应用固定步长。解码矩阵中的重构值是步长的整数倍。将步长定义为32位浮点数。
[0026][0027]step_size是量化步长。
[0028]在用于多媒体内容描述和分析的神经网络压缩中,根据以下过程,使用整数参数maxNumNoRem,对每个量化的权重级别进行编码。
[0029]在第一步骤中,针对已量化的权重级别,对二进制语法元素sig_flag进行编码,该二进制语法元素sig_flag指定对应的级别是否等于零。如果sig_flag等于一,则对另一二进制语法元素sign_flag进行编码。该二进制数指示当前权重级别是正还是负。接下来,对二进制数的一元序列进行编码,随后是如下的固定长度序列:
[0030]变量k用零初始化,并且X用1<<k初始化。对语法元素abs_level_greater_X进行编码,指示已量化权重级别的绝对值大于X。如果abs_level_greater_X等于1,并且如果X大于maxNumNoRem,则变量k增加1。之后,将1<<k加到X,并且对另一abs_level_greater_X进行编码。继续该过程直到abs_level_greater_X等于0。现在,X必须是值(X,X

1,

X

(1<<k)+1)之一。对长度为k的码进行编码,该码指向列表中的值,该值是绝对量化的权重级别。
[0031]上下文建模对应于将三种类型的标志sig_flag、sign_flag、和abs_level_greater_X与上下文模型相关联。以此方式,具有类似统计行为的标志可以与相同的上下文模型相关联,使得概率估计器(在上下文模型内部)可以适应底层统计。
[0032]所提出的方法的上下文建模如下:
[0033]根据左边的相邻已量化权重级别是零、小于零还是大于零,针对sig_flag区分三个上下文模型。
[0034]根据左边的相邻已量化权重级别是零、小于零还是大于零,针对sign_flag区分三个其本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于神经网络模型压缩的量化、自适应块分区和码本编码的方法,其特征在于,所述方法由至少一个处理器执行,并且所述方法包括:确定神经网络的一层中多维张量的饱和最大值,以及对应于所述饱和最大值的位深度;将所述多维张量中的权重系数限幅在所述饱和最大值的范围内;基于所述位深度,量化已限幅的权重系数;以及,向解码器发送包括所述位深度的层报头。2.根据权利要求1所述的方法,其特征在于,进一步包括:使用可变长度编码或固定长度编码,对所述位深度进行编码,其中,所述层报头包括已编码的位深度。3.根据权利要求1所述的方法,其特征在于,所述层报头进一步包括所述饱和最大值。4.根据权利要求1所述的方法,其特征在于,所述饱和最大值由浮点数表示。5.根据权利要求4所述的方法,其特征在于,进一步包括:基于以下等式确定表示所述饱和最大值的整数:int_layer_sat_maxw=int(ceil(layer_sat_maxw*(2**N))),其中,int_layer_sat_maxw指示所述饱和最大值的整数,并且layer_sat_maxw指示所述饱和最大值。6.根据权利要求5所述的方法,其特征在于,进一步包括:使用可变长度编码或固定长度编码,对所述饱和最大值的所述整数进行编码。7.根据权利要求1所述的方法,其特征在于,所述层报头进一步包括所述量化已限幅的权重系数的步长。8.根据权利要求1所述的方法,其特征在于,进一步包括:将已量化的权重系数中的神经网络的四维4D参数张量重塑为所述神经网络的三维3D参数张量,所述3D参数张量包括卷积核大小、输入特征大小和输出特征大小;将所述3D参数张量沿着平面分区为多个3D编码树单元CTU3D,其中,所述平面由所述输入特征大小和所述输出特征大小形成;以及,对所述多个CTU3D进行熵编码。9.根据权利要求8所述的方法,其特征在于,所述CTU3D是不重叠的正方形块。10.根据权利要求8所述的方法,其特征在于,进一步包括:设置一个标志,以指示每个CTU3D都有一个恒定的大小,其中,所述对所述3D参数张量进行分区包括:基于设置为指示所述每个CTU3D都有一个恒定大小的所述标志,将所述3D参数张量沿着所述平面划分为具有所述恒定大小的所述多个CTU3D。11.根据权利要求8所述的方法,其特征在于,进一步包括:设置一个标志,以指示每个CTU3D都有一个基于所述卷积核大小缩放的大小,其中,所述对所述3D参数张量进行分区包括:基于设置为指示所述每个CTU3D都有一个基于所述卷积核大小缩放的大小,将所述3D参数张量沿着所述平面划分为所述多个CTU3D,其中,所述多个CTU3D中每个CTU3D都有一个基于所述卷积核大小缩放的大小。12.根据权利要求8所述的方法,其特征在于,所述对所述多个CTU3D进行熵编码包括:
在水平方向或垂直方向上,以光栅扫描顺序...

【专利技术属性】
技术研发人员:王炜蒋薇刘杉崔秉斗史蒂芬
申请(专利权)人:腾讯美国有限责任公司
类型:发明
国别省市:

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

1