CN118171698A - 神经网络模型量化方法 - Google Patents
神经网络模型量化方法 Download PDFInfo
- Publication number
- CN118171698A CN118171698A CN202410591591.8A CN202410591591A CN118171698A CN 118171698 A CN118171698 A CN 118171698A CN 202410591591 A CN202410591591 A CN 202410591591A CN 118171698 A CN118171698 A CN 118171698A
- Authority
- CN
- China
- Prior art keywords
- quantization
- neural network
- parameter
- target
- network layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013139 quantization Methods 0.000 title claims abstract description 1027
- 238000003062 neural network model Methods 0.000 title claims abstract description 255
- 238000000034 method Methods 0.000 title claims abstract description 110
- 238000013528 artificial neural network Methods 0.000 claims abstract description 365
- 230000035945 sensitivity Effects 0.000 claims abstract description 299
- 230000000694 effects Effects 0.000 claims description 99
- 238000012545 processing Methods 0.000 claims description 58
- 239000011159 matrix material Substances 0.000 claims description 51
- 238000012549 training Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 17
- 238000012937 correction Methods 0.000 claims description 10
- 238000011002 quantification Methods 0.000 claims description 4
- 239000013598 vector Substances 0.000 description 29
- 230000008569 process Effects 0.000 description 16
- 230000006835 compression Effects 0.000 description 12
- 238000007906 compression Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000001427 coherent effect Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000018109 developmental process Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本说明书实施例提供神经网络模型量化方法,其中所述神经网络模型量化方法包括:获取量化数据集合,并根据所述量化数据集合确定各神经网络层的初始参数敏感度特征信息;根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息;基于至少一个量化策略量化各参考参数信息,生成各神经网络层对应的至少一个神经网络层量化结果;根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定神经网络模型对应的神经网络模型量化结果。通过神经网络层中参数信息对于量化比例的敏感程度生成参数信息并对该参数信息根据多个预设量化策略进行量化,降低了较高准确度的模型对存储装置的要求。
Description
技术领域
本说明书实施例涉及计算机技术领域,特别涉及一种神经网络模型量化方法,一种应用于云端设备的神经网络模型量化方法,一种计算设备,一种计算机可读存储介质以及一种计算机程序产品。
背景技术
随着大规模行业数据预训练和指令微调技术的发展,大模型在特定领域展现出了较好的效果。然而,这些模型的规模通常非常庞大,需要消耗大量的算力和存储资源。
当前,已有的量化方法虽然能将大模型量化至较高的量化比例,但这往往会导致较大的量化误差,在量化后同样规模的情况下,其效果不如将一个更小的模型量化至相对较低的量化比例。这是因为较高的量化比例会导致更大的量化误差。因此,为了解决这一问题,需要一种能够在保持较高量化比例的同时降低量化误差的神经网络模型量化方法。
发明内容
有鉴于此,本说明书实施例提供了一种神经网络模型量化方法,一种应用于云端设备的神经网络模型量化方法。本说明书一个或者多个实施例同时涉及一种神经网络模型量化装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序产品,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种神经网络模型量化方法,所述神经网络模型包括至少一层神经网络层,包括:
获取量化数据集合,并根据所述量化数据集合确定各神经网络层的初始参数敏感度特征信息,其中,所述量化数据集合为基于样本数据集合确定的数据集合,所述样本数据集合为用于训练所述神经网络模型的数据集合,初始参数敏感度特征信息为用于表征神经网络层中各参数对量化比例的敏感程度;
根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息;
基于至少一个量化策略量化各参考参数信息,生成各神经网络层对应的至少一个神经网络层量化结果;
根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果。
根据本说明书实施例的第二方面,提供了一种应用于云端设备的神经网络模型量化方法,包括:
接收端侧设备发送的神经网络量化指令,并基于所述神经网络量化指令确定目标神经网络模型,其中,所述目标神经网络模型包括至少一层目标神经网络层;
获取量化数据集合,获取根据所述量化数据集合确定各目标神经网络层的初始参数敏感度特征信息,其中,所述量化数据集合为基于样本数据集合确定的数据集合,所述样本数据集合为用于训练所述目标神经网络模型的数据集合,初始参数敏感度特征信息为用于表征目标神经网络层中各参数对量化比例的敏感程度;
根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息;
基于至少一个量化策略量化各参考参数信息,生成各目标神经网络层对应的至少一个目标神经网络层量化结果;
根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果,其中,所述目标存储装置为所述端侧设备的存储装置;
获取所述目标神经网络模型量化结果对应的模型参数,并将所述模型参数发送至所述端侧设备。
根据本说明书实施例的第三方面,提供了一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述神经网络模型量化方法及应用于云端设备的神经网络模型量化方法的步骤。
根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述神经网络模型量化方法及应用于云端设备的神经网络模型量化方法的步骤。
根据本说明书实施例的第五方面,提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述神经网络模型量化方法及应用于云端设备的神经网络模型量化方法的步骤。
本说明书一个实施例实现了获取量化数据集合,并根据所述量化数据集合确定各神经网络层的初始参数敏感度特征信息,其中,所述量化数据集合为基于样本数据集合确定的数据集合,所述样本数据集合为用于训练所述神经网络模型的数据集合,初始参数敏感度特征信息为用于表征神经网络层中各参数对量化比例的敏感程度;根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息;基于至少一个量化策略量化各参考参数信息,生成各神经网络层对应的至少一个神经网络层量化结果;根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果。
应用本说明书实施例的方案,根据表征神经网络层中各参数对量化比例的敏感程度的初始参数敏感度特征信息获取参考参数信息,可以使获取到的参考参数信息中携带有各个参数对于压缩程度的敏感程度,由于上述通过参考参数信息中携带了各个参数对于压缩程度的敏感程度,所以通过多个预设量化策略量化参数信息可以为每个神经网络层生成多个不同量化比例和量化误差的量化结果,避免了在未知各个参数的敏感程度的情况下无法准确设置量化策略而导致的无法精准的降低量化误差的情况,进而实现了在对模型进行量化时保持较高量化比例并降低了量化误差,从而降低了较高准确度的模型对存储装置的要求。
附图说明
图1是本说明书一个实施例提供的一种神经网络模型量化方法的流程图;
图2是本说明书一个实施例提供的一种应用于云端设备的神经网络模型量化方法的流程图;
图3是本说明书一个实施例提供的一种神经网络模型量化系统的架构图;
图4是本说明书一个实施例提供的一种文本处理模型量化方法的处理过程流程图;
图5是本说明书一个实施例提供的一种神经网络模型量化装置的结构示意图;
图6是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
此外,需要说明的是,本说明书一个或多个实施例所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
本说明书一个或多个实施例中,大模型是指具有大规模模型参数的深度学习模型,通常包含上亿、上百亿、上千亿、上万亿甚至十万亿以上的模型参数。大模型又可以称为基石模型/基础模型(Foundation Model),通过大规模无标注的语料进行大模型的预训练,产出亿级以上参数的预训练模型,这种模型能适应广泛的下游任务,模型具有较好的泛化能力,例如大规模语言模型(Large Language Model, LLM)、多模态预训练模型(multi-modal pre-training model)等。
大模型在实际应用时,仅需少量样本对预训练模型进行微调即可应用于不同的任务中,大模型可以广泛应用于自然语言处理(Natural Language Processing,简称NLP)、计算机视觉等领域,具体可以应用于如视觉问答(Visual Question Answering,简称VQA)、图像描述(Image Caption,简称IC)、图像生成等计算机视觉领域任务,以及基于文本的情感分类、文本摘要生成、机器翻译等自然语言处理领域任务,大模型主要的应用场景包括数字助理、智能机器人、搜索、在线教育、办公软件、电子商务、智能设计等。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
模型量化:是一种降低神经网络模型存储和计算要求的技术。通过减少表示每个权重所需的位数,量化可以有效缩小模型尺寸并提高其运行速度。这通常涉及将浮点数权重转换为较低位深度的整数,如将32位的浮点数转换为8位或更少位的整数。尽管可能会轻微影响模型准确度,但通过后续的微调,这种影响可以被缓解。量化使模型更适合在资源受限的设备上部署。
在本说明书中,提供了一种神经网络模型量化方法,一种应用于云端设备的神经网络量化方法本说明书同时涉及一种神经网络模型量化装置,一种计算设备,以及一种计算机可读存储介质、一种计算机程序产品,在下面的实施例中逐一进行详细说明。
参见图1,图1示出了根据本说明书一个实施例提供的一种神经网络模型量化方法的流程图,具体包括以下步骤。
步骤102:获取量化数据集合,并根据所述量化数据集合确定各神经网络层的初始参数敏感度特征信息,其中,所述量化数据集合为基于样本数据集合确定的数据集合,所述样本数据集合为用于训练所述神经网络模型的数据集合,初始参数敏感度特征信息为用于表征神经网络层中各参数对量化比例的敏感程度。
实际应用中,神经网络模型为已经训练完成且具有多个神经网络层的深度学习模型,神经网络层中具有一个神经网络结构的网络层,量化数据集合为用于训练神经网络模型的样本数据中的至少一条数据组成的集合,样本数据集合为训练神经网络模型所使用的样本数据组成的集合,初始参数敏感度特征信息为神经网络层中参数的局部曲率的特征信息。
具体的,初始参数敏感度特征信息可以理解为通过计算神经网络层中参数的局部曲率的特征信息进而表征出神经网络层中各参数对量化比例的敏感程度的特征信息,由于局部曲率反映了当参数微小变化时,损失函数如何变化。高曲率意味着损失函数对参数的微小变化非常敏感,参数对量化比例的敏感程度越高则对该参数的量化会导致模型的量化损失造成较大影响。
神经网络模型可以是任意神经网络结构任意参数量的模型,例如,用于图形识别、图像分割、图像生成等等图像处理任务的图像处理模型,用于文本分类、文本生成等等文本处理任务的文本处理模型,或用于基于文本生成图像、总结图像中的信息、基于文本生成视频等等多模态处理模型,用于知识问答的大模型等等模型,本说明书对此不作任何限制。
由于量化数据集合的数据分布和训练时候的样本数据集合的数据分布越接近模型计算获得的初始参数敏感度特征信息越准确,所以,在用于训练神经网络模型的样本数据集合中随机确认量化数据集合,可以在保证获得的初始参数敏感度特征信息越准确保持足够的随机性,进而提高了对模型进行量化的效果。
进一步的,根据所述量化数据集合确定各神经网络层的初始参数敏感度特征信息,包括:确定第一神经网络层,并根据所述量化数据集合获取所述第一神经网络层的第一输入特征信息;根据所述第一输入特征信息,生成所述第一神经网络层对应的第一初始参数敏感度特征信息。
实际应用中,第一神经网络层为各个神经网络层中的任意一个,第一输入特征信息为第一神经网络层的输入特征信息,输入特征信息为量化数据进行处理之后输入该神经网络层的特征信息,第一初始参数敏感度特征信息为第一神经网络层的初始参数敏感度特征信息。
具体的,根据量化数据集合确认第一神经网络层的输入数据可以理解为,将量化数据集合中的各个数据逐条输入至神经网络模型中,根据每条量化数据都会获取到神经网络层的单条输入数据,随后对获取到的各个单条输入数据进行融合,以获取该神经网络层的输入数据,对输入数据进行融合方式可以计算相似度,并根据相似度进行融合,将融合之后的结果视为该神经网络层的输入数据,还可以是直接进行相加计算后进行归一化处理等等矩阵的融合方式将上述输入数据进行融合之后,将融合之后的结果视为该神经网络层的输入数据,本说明书对此不作任何限制。
通过由多条数据组成的量化数据集合在模型量化过程中获取神经网络层的输入数据有利于更准确地评估和适应数据的分布特性,可以确保量化策略不仅仅基于单一数据点的特征,而是基于更广泛的数据集,从而可以更有效地确定各个神经网络层的参数敏感度特征信息,减少量化误差,确保模型在量化后依然能够捕捉到关键的数据特征。
进一步的,根据所述第一输入特征信息,生成所述第一神经网络层对应的第一初始参数敏感度特征信息,包括:转置处理所述第一输入特征信息确定第一输入特征转置信息;基于预设正则化矩阵信息、所述第一输入特征信息和所述第一输入特征转置信息,生成第一初始参数敏感度特征信息。
实际应用中,第一输入特征转置信息为第一神经网络层对应的输入特征转置信息。
在本说明书所提供的一个实施例中,初始参数敏感度特征信息的计算方式如公式1所示:
……公式1
其中,H为初始参数敏感度特征信息,X为输入特征信息,XT为输入特征转置信息,λ为随机权重用于避免后续实现模型的量化时可能产生的数值问题优选的设置为0.01,I为单位矩阵既正则化矩阵信息。
通过上述方式计算获得的形式的初始参数敏感度特征信息来计算各个参数的量化敏感程度可以提供量化操作对模型性能可能造成的影响的具体信息。初始参数敏感度特征信息反映了损失函数在参数空间中的局部曲率,其中大的特征值表明对应位置的参数对微小变动非常敏感。因此,通过该初始参数敏感度特征信息,可以确定哪些参数更容易受到量化误差的影响,从而有助于优化量化策略,进而提高模型的量化准确率。
步骤104:根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息。
实际应用中,初始参数信息为神经网络层中神经网络结构中参数形成的矩阵,参考参数信息为根据神经网络结构中各个参数对量化比例的敏感程度对初始参数信息进行处理之后生成的矩阵。
根据初始参数敏感度特征信息生成参考参数信息,可以理解为根据初始参数敏感度特征信息对初始参数信息进行处理,生成携带有神经网络层中各参数对量化比例的敏感程度的参考参数信息。
具体的,生成参考参数信息的方式可以是对初始参数信息中的参数进行重新排序,生成参考参数信息,还可以是根据上述的初始参数敏感度特征信息为初始参数信息中的参数设置对应的索引,生成携带有索引信息的参考参数信息等等方式,本说明书对此不作任何限制。
根据各个参数对量化比例的敏感程度对初始参数信息生成携带有神经网络层中各参数对量化比例的敏感程度的参考参数信息,可以使得在模型进行量化时通过不同的量化策略实现更细致的量化控制,从而减小量化带来的量化误差。
进一步的,根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息,包括:根据各神经网络层对应的初始参数敏感度特征信息,确定各神经网络层对应的参数敏感度顺序信息;基于各参数敏感度顺序信息对各神经网络层的初始参数信息排序,生成参考参数信息。
实际应用中,参数敏感度顺序信息为基于各个参数对量化比例的敏感程度进行排序的顺序信息。
具体的,参考参数信息可以理解为根据神经网络结构中各个参数对量化比例的敏感程度对初始参数信息进行重新排序之后的矩阵,也就是说通过神经网络结构中各个参数对量化比例的敏感程度对初始参数信息进行重新排序,生成新的参考参数信息,由于新的参考参数信息是根据神经网络结构中各个参数对量化比例的敏感程度确定的,因此在后续对模型进行量化时针对新的参考参数信息进行量化可以实现根据每个参数的对量化比例的敏感程度来做出量化决策,而不是盲目地针对所有原始的初始参数信息进行量化,进而使得量化后的模型能够尽可能保留原始模型的性能,同时实现存储空间的有效利用,因此利用神经网络结构中各个参数对量化比例的敏感程度对初始参数信息进行处理生成新的参考参数信息可以使得在模型进行量化时通过不同的量化策略实现更细致的量化控制,从而减小量化带来的量化误差。
考虑到获取到的各个参数对于量化比例的敏感程度在参数信息以及参数敏感特征信息的矩阵中的整行或整列所表现的特征更加明显,并且对矩阵中的行或列进行操作也可以进一步的减少对模型进行量化造成的资源消耗,参数敏感度顺序信息包括通道敏感度顺序信息;根据各神经网络层对应的初始参数敏感度特征信息,确定各神经网络层对应的参数敏感度顺序信息,包括:确定第二神经网络层,并基于所述第二神经网络层对应的第二初始参数敏感度特征信息,确定所述第二神经网络层对应的第二通道敏感度顺序信息。
实际应用中,第二神经网络层为神经网络模型中各个神经网络层中的任意一个,第二初始参数敏感度特征信息为第二神经网络层对应的初始参数敏感度特征信息,第二通道敏感度顺序信息为第二神经网络层对应的通道敏感度顺序信息,通道敏感度顺序信息为表示由参数组成的各个参数通道信息对于量化比例的敏感程度,参数通道信息为参数信息对应矩阵中整行或整列的数据,参数信息对应的矩阵中每个数据为神经网络层中神经网络结构中的参数值,参数信息对应的矩阵中的行或列为神经网络层中神经网络结构对应的通道。
具体的,参数信息可以理解为表示神经网络层中神经网络结果中参数的矩阵,矩阵中的每个值为参数值,相应的参数信息中的参数通道信息可以理解为该矩阵中整行或整列的向量,同理该向量中的每个值为参数值。
在本说明书所提供的一个实施例中,通过确定初始参数敏感度特征信息中从右上角到左下角的对角线上的数值作为每一列(参数通道)对于量化比例的敏感程度,以确定各个列对于量化比例的敏感程度的排序信息。
由于初始参数敏感度特征信息中表征各个通道对于量化比例的敏感程度的特征更加便于获取,并且,对矩阵中的行或列进行操作也可以进一步的减少对模型进行量化造成的资源消耗,所以在此获取初始参数敏感度特征信息中表征各个通道对于量化比例的敏感程度的特征(通道敏感度顺序信息),以实现后续对各个神经网络层的量化处理。
进一步的,基于各参数敏感度顺序信息对各神经网络层的初始参数信息排序,生成参考参数信息,包括:基于所述第二通道敏感度顺序信息确定所述第二神经网络层各第二参数通道信息对应的第二通道位置;基于各第二参数通道信息对应的第二通道位置重新排列各第二参数通道信息,生成第二参考参数信息。
实际应用中,第二通道位置为第二神经网络层中各个参数值组成的通道根据该通道对于量化比例的敏感程度进行排序之后所处的位置。具体的,各个量化通道位置的确认方式可以是按照量化通道针对量化比例的敏感程度从大到小排列各个量化通道,敏感程度越大的量化通道对应的位置越靠前;也可以是按照量化通道针对量化比例的敏感程度从小到大排列各个量化通道,敏感程度越小的量化通道对应的位置越靠前,本说明书对此不作任何限制。
在本说明书所提供的一个实施例中,按照量化通道针对量化比例的敏感程度从大到小排列各个量化通道,敏感程度越大的量化通道对应的位置越靠前,基于此确定各个量化通道的位置,随后根据确定出各个量化通道的位置重新排列各个量化通道,获取到重新排列后的新的矩阵作为参考量化信息。
通过各个通道针对量化比例的敏感程度重新对通道进行排列,可以进一步的减少对模型进行量化造成的资源消耗,进而可以实现后续对各个神经网络层的量化处理。
步骤106:基于至少一个量化策略量化各参考参数信息,生成各神经网络层对应的至少一个神经网络层量化结果。
实际应用中,量化策略为对神经网络层进行量化的策略,神经网络层量化结果为神经网络层经过量化之后的神经网络结构。
具体的,量化策略可以理解为针对各个通道对于量化比例的敏感程度不同选择不同的量化比例,由于各个神经网络层在神经网络模型中所占的比例不同,重要程度也不同,并且考虑到对神经网络进行量化的所造成的消耗所以对各个神经网络层均使用相同的多个策略进行量化,可以减少对神经网络进行量化时所需的时间成本和人力成本。
对参考参数信息进行量化的方式可以为最大最小值量化,以及设置一组带有索引的向量进行量化等等,本说明书对此不作任何限制。考虑到在对模型进行量化时的量化效率,优选的,使用一组带有索引的向量(为方便描述,下述将该组带有索引的向量称为码本)进行量化,其具体方式为,根据预设的长度获取一组参数通道,将该参数通道相同位置的参数视为一组向量,随后获取上述码本中与该组向量相似度较高的向量对应索引,将该索引作为上述一组参数通道中对应位置的值,对该组向量通道中各个位置的值进行上述操作,即可将一组参数通道量化为一条向量,该向量中的每个值为上述码本中各个向量对应的索引。
需要注意的是,对于模型的量化比例通常使用bits作为单位,由于未量化之前模型参数的数据长度通常为32位的数据,此处的xbits则表示将模型的参数量化为长度为x,例如,量化比例为1bits,则代表将模型中的参数长度量化为1,即压缩后模型的大小为原始的1/32。
需要说明的是,由于通过码本将x个参数一起量化,因此需要一个x维的码本集合,其中包括了y个x维的向量,且当y=216,x=8时可以实现模型的2bits量化,也就是可以将模型中的参数量化为长度为2的整数型数据。
通过预设的多个量化策略对参数进行量化,可以充分的考虑到对神经网络进行量化的所造成的消耗,可以减少对神经网络进行量化时所需的时间成本和人力成本。
在本说明书所提供的一个实施例中如果要实现3和4bits可以简单的将y的数值分别设置成224和232以实现3bits和4bits的量化。但这考虑到这种设置将使得码本集合中的向量呈指数形式增加,这不但增大了存储码本所需要的空间,还增加了量化时搜索距离最近向量的时间,进而导致了对模型进行量化时效率过低,所以,量化结果的确认方式,包括以下步骤:确认待量化参数信息、所述待量化参数信息对应的参考量化精度,以及至少一个初始量化精度,其中,初始量化精度小于等于所述参考量化精度;确定第一初始量化精度,并根据所述第一初始量化精度量化待量化参数,获取第一初始量化结果;判断所述第一初始量化结果对应的量化精度是否与所述参考量化精度相同;若相同,则确定所述第一初始量化结果为所述待量化参数信息对应的量化结果;若不同,则根据所述待量化参数信息和所述第一初始量化结果确定残差参数信息;确定第二初始量化精度,并根据所述第二初始量化精度对所述残差参数信息进行量化,更新第一初始量化结果;继续执行步骤判断所述第一初始量化结果对应的量化精度是否与所述参考量化精度相同。
实际应用中,待量化参数信息为需要进行量化处理的参数信息,初始量化精度为基础量化表所提供的量化精度,第一初始量化精度和第二初始量化精度为各个初始量化精度中的任意一个,第一初始量化结果为根据选择的量化精度进行量化之后获取的量化结果。
具体的,待量化参数信息可以理解为任意规模需要进行量化的信息,例如,需要进行量化的多个量化通道中包括的参数信息、整个深度学习网络中包括的参数信息、划定区域对应的参数信息等等,本说明书对此不作任何限制。
初始量化精度可以理解为对应有较少向量的码本集合本对应的量化精度,通过使用具有较少向量的码本集合对参数进行较高精度的量化,可以有效的避免由于量化精度的提高而导致的码本以几何倍数增大,而导致的量化效率低的问题。
在本说明书所提供的一个实施例中,将基于3bits的量化,分解成一次2bits量化和一次1bits量化来实现,其中首先对需要进行量化的待量化参数信息进行一次2bits量化,随后再对于需要进行量化的待量化参数信息和第一初始量化结果相减之后的残差参数进行剩余的一次1bits量化,或首先对需要进行量化的待量化参数信息进行一次1bits量化,随后再对于需要进行量化的待量化参数信息和第一初始量化结果相减之后的残差参数进行剩余的一次2bits量化,最后生成量化精度为3bit的量化结果,将该量化结果确定为待量化参数信息对应的量化结果,其中,3bit量化对应的量化精度为参考量化精度、1bits量化和2bit量化对应的量化精度为初始量化精度。
在本说明书所提供的另一个实施例中,5bits量化则分成两次2bits量化和一次1bits量化,首先对待量化参数信息进行2bits量化生成第一初始量化结果,随后再对于需要进行量化的待量化参数信息和第一初始量化结果相减之后的残差参数再进行一次2bits量化更新第一初始量化结果,最后对再对于需要进行量化的待量化参数信息和更新之后的第一初始量化结果相减之后的残差参数再进行一次2bits量化更新第一初始量化结果,将该第一初始量化结果确定为待量化参数信息对应的量化结果,其中,5bit量化对应的量化精度为参考量化精度、1bits量化和2bit量化对应的量化精度为初始量化精度。
进一步的,基于至少一个量化策略量化各参考参数信息,生成各神经网络层对应的至少一个神经网络层量化结果,包括:确定第三神经网络层和目标量化策略,并获取所述目标量化策略对应的目标量化精度比例;基于所述目标量化精度比例量化所述第三神经网络层对应的第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果。
实际应用中,第三神经网络层为神经网络模型中各个神经网络层中的任意一个,目标量化策略为各量化策略中的任意一个,目标量化精度比例为目标量化策略中规定的量化精度比例。在本说明书所提供的一个实施例中,由于参考参数信息为根据参数对于量化比例的敏感度从大到小排列之后的参数信息,所以,规定有量化精度比例1:前25%使用4bit量化、后75%使用2bit量化、量化精度比例2:前40%使用4bit量化、后60%使用2bit量化,其中量化精度比例1所获取到的量化结果对应的量化损失更小、量化精度比例2所获取到的量化结果对应的量化比例更大,相较于常用的随机设置量化精度比例,例如,量化精度比例3:前75%使用2bit,后25%使用4bit量化,相较于上述的量化精度比例1所获取到的量化结果中,量化精度比例1对应的量化结果对应的量化损失更小的同时,量化比例也更高。
具体的,量化精度比例为表示神经网络层进行量化时各量化精度所需量化的比例,由于进行量化的参考参数信息为根据参数对于量化比例的敏感度从小到大或从大到小排列之后的参数信息,进而可以通过量化精度的比例即可实现对神经网络性能影响最小化的量化策略。这种方法能够指导量化过程中对不同参数应用不同的精度,从而优化模型的整体性能与大小之间的权衡。通过这样的优化量化策略,可以保持模型的有效性,同时提高其运算效率和适用性。
进一步的,基于所述目标量化精度比例量化所述第三神经网络层对应的第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果,包括:根据所述目标量化精度比例在所述第三参考参数信息中确定至少一个量化区域参数信息以及各量化区域参数信息对应的量化精度,其中,量化区域参数信息包括至少一个参数信息,所述第三参考参数信息由初始参数敏感度特征信息获得;确定目标量化区域参数信息以及所述目标量化区域参数信息对应的目标量化精度;基于所述目标量化精度和所述目标量化区域参数信息,生成所述目标量化区域参数信息对应的区域量化结果;根据各区域量化结果生成所述第三神经网络层量化结果。
实际应用中,量化区域参数信息为需要通过相同量化精度进行量化的某区域的参数,目标量化区域参数信息为各个量化区域参数信息中的任意一个。
具体的,量化区域参数信息可以理解为在神经网络层中需要通过相同的量化精度且相邻的区域的信息,以神经网络层中存储的参数以矩阵的形式存储为例,为量化区域作出说明,神经网络层中存储的参数为10*10的矩阵,根据量化精度比例25%以4bits的精度进行量化,75%以1bits的精度进行量化,则将角标(0,0)至(4,4)的5*5的矩阵作为一个量化区域参数信息,其对应的量化精度为4bits,将角标(0,5)至(4,9)的5*5的矩阵作为另一个量化区域参数信息,其对应的量化精度为1bits,将角标(5,0)至(9,4)的5*5的矩阵作为另一个量化区域参数信息,其对应的量化精度为1bits,将角标(5,5)至(9,9)的5*5的矩阵作为另一个量化区域参数信息,其对应的量化精度为1bits。
在本说明书所提供的一个实施例中,以神经网络层中存储的参数以向量的形式存储为例,为量化区域作出说明,神经网络层中存储的参数为长度40的向量,根据量化精度比例25%以4bits的精度进行量化,50%以2bits的精度进行量化,25%以1bits的精度进行量化则将序号0-9的长度为10的向量作为一个量化区域参数信息,其对应的量化精度为4bits,将序号10-29的长度为20的向量作为一个量化区域参数信息,其对应的量化精度为2bits,将序号30-39的长度为10的向量作为一个量化区域参数信息,其对应的量化精度为1bits。
通过预设的量化精度比例从参考量化参数信息中确定各个量化区域,并对量化区域中的参数依照其对应的量化精度进行量化,可以实现模型在精度和效率之间的平衡。这种差异化的量化方法允许对更敏感的参数使用较高的精度,而对于影响较小的参数则可以采用较低的精度。如此一来,可以在尽量减少模型性能损失的同时,显著降低模型的存储需求和提高计算速度,进而使得更好的神经网络模型可以在资源有限的设备上运行。
进一步的,基于所述目标量化精度比例量化所述第三神经网络层对应的第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果,包括:根据所述目标量化精度比例和所述第三参考参数信息,确定至少一个目标量化区间以及各目标量化区间对应的目标量化精度,其中,目标量化区间为参考参数信息中基于相同量化精度进行量化的参数通道信息对应的区间;基于各目标量化精度、各量化区间和所述第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果。
实际应用中,目标量化区间为使用相同精度进行量化通道对应的区间,目标量化精度为目标量化区间对应的量化精度。
具体的,根据于各个目标量化精度以及各个量化区间和参考参数信息生成神经网络层量化结果,可以理解为通过各个量化区间从参考参数信息中确定使用相同精度量化的参数通道之后,使用该量化区间对应的量化精度对确定出的参数都进行量化。
在本申请所提供的一个实施例中,参考参数信息具有0-127的128个参数通道,则在量化精度比例为:前25%使用4bit量化、后75%使用2bit量化,的情况下,确定量化区间0-31对应的量化精度为4bit,量化区间32-127对于滚的量化精度为2bit,即前32个量化通道使用量化精度为4bit进行量化,后96个通道使用2bit进行量化。
通过确定出不同精度的量化区间分别对各个参数通道进行量化,可以实现模型在精度和效率之间的平衡。这种差异化的量化方法允许对更敏感的参数使用较高的精度,而对于影响较小的参数则可以采用较低的精度。如此一来,可以在尽量减少模型性能损失的同时,显著降低模型的存储需求和提高计算速度,进而使得更好的神经网络模型可以在资源有限的设备上运行。
考虑到单纯的对参数通道进行量化,所获取到的量化结果具有较高的量化误差,所以通过将参数通道划分为多个组,并对多个组进行量化可以实现在对后面通道组进行量化时考虑到前面已经量化完成的通道组的误差,进而减少了整体量化误差的累积,所以参考参数信息包括至少一个参数通道组,参数通道组包括至少一个参数通道信息;基于各目标量化精度、各量化区间和所述第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果,包括:基于各目标量化精度在所述第三参考参数信息中确定至少一个第三参考参数通道组;确定各第三参考参数通道组对应的第三参考通道组量化精度;基于各第三参考通道组量化精度量化各第三参考参数通道组,生成各第三参考参数通道组对应的第三通道组量化结果;根据各第三通道组量化结果生成所述第三神经网络层量化结果。
实际应用中,第三参考参数通道组为第三神经网络层对应的参考参数通道组,第三通道组量化结果为各个第三参考参数通道组对应的通道组量化结果,第三参考通道组量化精度为各个第三参考参数通道组对应的量化精度,参考参数通道组为预设个数的通道组成的矩阵,通道组量化结果为对上述多个参数通道组成的矩阵进行量化之后获取的结果,参考通道组量化精度为各个通道组对应的量化精度。
确定各个参考通道组对应的量化结果可以通过上述确认的各个通道对应的量化精度确认,具体的,上述根据各个通道对应的量化精度确认各个参考通道组对应的通道组量化精度分为两种情况,若在进行本次模型量化时以缩小量化损失为目标,则确定该参考参数通道组对应的量化精度为该通道组中各个参考参数通道对应的量化精度中量化精度较高的,若在进行本次模型量化时以提高量化比例为目标,则确定该参考参数通道组对应的量化精度为该通道组中各个参考参数通道对应的量化精度中量化精度较低的。
在本申请所提供的一个实施例中,参考参数信息中具有144条参数通道,以8条通道为一组将上述的参考参数信息划分为18个参考参数通道组,由于使用的量化比例为前25%的向量使用4bit进行量化,后75%使用2bit进行量化,因此确认前36条向量以组向量以4bits量化率根据对应的目标通道敏感度组进行量化,因此确认18个参考参数通道组以及其包含的通道序号分别为:通道组1[0,7]、…、通道组5[32,39]、…、通道组18[136,143],可以看出通道组5中既包括有4bit进行量化的通道也包括有2bit进行量化的通道,由于在进行本次模型量化时以缩小量化损失为目标所以确认通道组5使用4bit进行量化,进而确认通道组1-5根据4bit进行量化,通道组6-18根据2bit进行量化.
具体的,参考参数通道组可以理解为将参考参数信息中各个通道按照固定个数划分为各个通道,进而可以逐个对各个通道进行量化,这样的逐步量化过程允许对之前量化步骤中引入的误差进行补偿,使得后续的量化更加精准,提高了整个模型量化后的性能。这种策略优化了量化流程,有助于在保持模型精度的同时实现更高效的压缩。
进一步的,基于各第三参考通道组量化精度量化各第三参考参数通道组,生成各第三参考参数通道组对应的第三通道组量化结果,包括:确定所述第三神经网络层对应的第三初始参数敏感度特征信息以及第三参数敏感度顺序信息;根据所述第三参数敏感度顺序信息对所述第三初始参数敏感度特征信息排序,生成第三参考参数敏感度特征信息,其中,参数敏感度特征信息包括至少一个通道敏感度特征信息;确定各第三参考参数通道组对应的第三参考通道敏感度特征信息组,其中,通道敏感度特征信息组包括至少一个通道敏感度特征信息;
基于各第三参考参数通道组、各第三参考通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果。
实际应用中,第三初始参数敏感度特征信息为第三神经网络层对应的初始参数敏感度特征信息,第三参数敏感度顺序信息为第三神经网络层对应的参数敏感度顺序信息,第三参考参数敏感度特征信息为经过排序之后的第三初始参数敏感度特征信息,第三参考通道敏感度特征信息组为各个第三参考参数通道组在第三参考参数敏感度特征信息中对应的矩阵,参考参数敏感度特征信息为针对各个参数对于压缩比例的敏感程度进行排序之后的参数敏感度特征信息,参考通道敏感度特征信息组为当前神经网络层中参考参数通道组在参考通道敏感度特征信息中对应的矩阵。
具体的,将初始参数敏感度特征信息重新排序为参考参数敏感度特征信息的方式与上述将初始参数信息排序为参考参数信息的方式相同,本说明书对此就不再赘述。参考通道敏感度特征信息组可以理解为各个参考参数通道组中各个通道对应的敏感度特征信息,由于参考参数敏感度特征信息通过与上述参考参数信息相同的排序方式进行排序的,所以,与参考参数通道组对应位置的多个参考通道敏感度特征信息即为参考通道敏感度组。
通过结合参考参数通道组和各个参考参数通道组对应的参考通道敏感度组对各个参考参数通道组进行量化可以,通过各个通道组对应的参考通道敏感度计算出之前的通道组进行量化的误差矫正值,进而可以使得后续的量化更加精准,提高了整个模型量化后的性能。
进一步的,基于各第三参考参数通道组、各第三参考通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果,包括:基于预设不相干处理策略处理所述第三参考参数信息和所述第三参考参数敏感度特征信息,生成第三目标参数信息和第三目标参数敏感度特征信息;在所述第三目标参数信息中确定各第三参考参数通道组对应的第三目标参数通道组,其中,第三目标参数通道组与对应的第三参考参数通道组具有相同的量化精度;在所述第三目标参数敏感度特征信息中确定各第三参考通道敏感度组对应的各第三目标通道敏感度组;基于各第三目标参数通道组、各第三目标通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果。
实际应用中,不相干处理策略为将参数信息与该参数信息对应的参数敏感度特征信息进行不相干处理的策略,目标参数信息为经过不相干处理之后的参考参数信息,目标参数敏感度特征信息为经过不相干处理之后的参考参数敏感度特征信息,目标参数通道组为目标参数信息中与参考参数通道组对应的参数通道组。
具体的,对参考参数信息和参考参数敏感度特征信息进行不相干处理的不相干处理策略可以为正则化处理、卷积分解、正交化处理等等不相干处理的方式,本说明书对此不作任何限制。
在本说明书所提供的一个实施例中,通过预设的不相干处理策略处理参考参数信息和参考参数敏感度特征信息如公式2所示:
……公式2/>
其中,U和V是两个随机正交矩阵,为目标参数信息,W`为参考参数信息,/>为目标参数敏感度特征信息,H`为参考参数敏感度特征信息。
通过应用去相关技术,可以减少参数信息中各元素之间以及参数敏感度特征信息中各个值之间的相互依赖性,这有助于降低在量化过程中出现的误差。这种方法优化了参数之间的关系,使得在进行量化时,每个参数更独立地被处理,从而减少了因参数间相互作用导致的误差累积,降低了量化结果的量化误差。
由于目标参数信息为代表神经网络层中神经网络结构中参数的矩阵,其中包括有n条向量,所以第三目标参数信息包括有n个第三目标参数通道组,所述第三目标参数敏感度特征信息中包括n个第三目标通道敏感度组,n为大于等于1的正整数;
进一步的,基于各第三目标参数通道组、各第三目标通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果,包括以下步骤:将第1个第三目标参数通道组基于该第三目标参数通道组对应的第三参考通道组量化精度进行量化,获得第1个第三目标参数通道组量化结果;根据第1至i-1个第三目标参数通道组量化结果、第1至i-1个第三目标参数通道组以及第1至i-1个第三目标通道敏感度组和第i个第三目标参数通道组,获取待量化参数通道组,其中,i为大于等于2且小于n的正整数;根据第i个第三目标参数通道组对应的第三参考通道组量化精度量化所述待量化参数通道组,生成第i个第三目标参数通道组量化结果;使i自增1并判断i是否大于n,若否,则继续执行步骤根据第1至i-1个第三目标参数通道组量化结果、第1至i-1个第三目标参数通道组以及第1至i-1个第三目标通道敏感度组和第i个第三目标参数通道组,获取待量化参数通道组,若是,则确定第i个第三目标参数通道组对应的第三通道组量化结果为第i个第三目标参数通道量化结果。
实际应用中,待量化参数通道组为需要进行量化操作的矩阵。具体的,由于仅仅对当前的参数通道组进行量化会导致量化结果的误差较大,所以为了进一步的降低量化误差,在此采用当前的参数通道组(也就是第i个第三目标参数通道组)以及当前参数通道组之前各个通道组进行量化结果以及之前各个通道组量化前的矩阵和各个通道组对应的通道敏感度组,确定需要进行量化的矩阵(也就是待量化参数通道组),可以有效地引入之前量化步骤中的误差,并进行补偿,使得后续的量化更加精准,提高了整个模型量化后的性能。这种策略优化了量化流程,有助于在保持模型精度的同时实现更高效的压缩。
进一步的,根据第1至i-1个第三目标参数通道组量化结果、第1至i-1个第三目标参数通道组以及第1至i-1个第三目标通道敏感度组和第i个第三目标参数通道组,获取待量化参数通道组,包括:根据第1至i-1个第三目标参数通道组量化结果获取混合参数通道组量化结果,根据第1至i-1个第三目标参数通道组获取混合目标参数通道组并根据第1至i-1个第三目标通道敏感度组获取混合目标通道敏感度组;根据所述混合参数通道组量化结果和所述混合目标参数通道组确定混合参数误差;根据所述混合目标通道敏感度组和所述混合参数误差确定混合误差校正信息;将第i个第三目标参数通道组和所述混合误差校正信息结合,生成待量化参数通道组。
实际应用中,混合目标参数通道组为当前进行量化的参数通道组之前的参数通道组进行混合之后的矩阵,混合参数通道组量化结果为当前进行量化的参数通道组之前的参数通道组对应的量化结果进行混合之后的矩阵,混合目标通道敏感度组为当前进行量化的参数通道组之前的参数通道组对应的通道敏感度组进行混合之后的矩阵,混合参数误差为根据当前进行量化的参数通道组之前的参数通道组进行量化的误差矩阵,混合误差校正信息为根据当前进行量化的参数通道组之前的参数通道组各个对应的通道敏感度组对误差进行矫正之后的矩阵。
具体的,上述混合目标参数通道组、混合参数通道组量化结果、混合目标通道敏感度组均可通过例如简单的加法、简单的乘法、权重和、卷积、正交合并等等矩阵混合的方式获取,本说明书对此不作任何限制。
在本说明书所提供的一个实施例中,当前参数通道的量化方式如公式3所示:
……公式3
其中,为第i个目标参数通道组对应的通道组量化结果,Q为表示根据第i个目标参数通道组量化精度进行量化的过程,/>为第i个目标参数通道组,/>为混合目标参数通道组,/>为混合参数通道组量化结果,/>为混合目标通道敏感度组。
通过结合参考参数通道组和各个参考参数通道组对应的参考通道敏感度组对各个参考参数通道组进行量化,并通过各个通道组对应的参考通道敏感度计算出之前的通道组进行量化的误差矫正值,可以使得后续的量化更加精准,提高了整个模型量化后的性能。
步骤108:根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果。
实际应用中,目标存储装置为用于存储量化后神经网络模型的存储装置,目标存储阈值为量化后神经网络模型的可以占用的最大存储空间,初始体积为神经网络模型在量化前所占用的存储空间。
具体的,目标存储装置可以理解为用于存储量化后神经网络模型的存储装置,该存储装置为所需要使用神经网络模型的设备中划分出的用于存储该神经网络模型的装置,例如,在终端设备中选定指定的硬盘作为存储装置、在多个服务器中选定的多个硬盘作为存储装置,还可以是需要对神经网络模型进行储存以及运输时的存储装置,例如光盘、移动硬盘、磁带等等可以用于存储数据的存储装置,本说明书对此不作任何限制。
由于不同存储装置具有不同的存储性能,而不同的存储性能也对应有最大的存储阈值,该存储阈值可以是由对应存储装置的读写速率决定,也可以是由对应存储装置的存储空间决定,本说明对于决定目标存储阈值的具体方式不作任何限定。
通过存储设备的存储阈值来确定模型的量化结果可以确保模型在特定设备上的适用性和高效性,由于通过存储设备的存储阈值来确定模型的量化结果,因此量化过程会根据可用存储空间的大小进行调整,以确保模型在不超过存储限制的情况下达到较好的性能,进而可以,既满足了内存和存储的约束,又尽可能地保留了原始模型的准确性和功能性,使得模型在资源受限的环境中运行时更加高效,同时也使得具有不同存储性能的存储装置的设备都可以运行具有较高准确度的神经网络模型。
进一步的,根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果,包括:根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积确定所述神经网络模型的目标量化比例;基于所述目标量化比例和各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果。
实际应用中,目标量化比例为对神经网络模型进行量化后与初始体积的比例。
根据计算获取到的目标量化比例确定神经网络模型的量化结果的方式可以是,组合各个神经网络层的各个神经网络层量化结果,生成多个待确认神经网络模型量化结果,并获取各个待确认神经网络模型量化结果对应的模型量化比例和模型量化误差,随后以目标量化比例为基准,寻找满足目标量化比例的前提下,量化误差较小的待确认神经网络模型量化结果为神经网络模型的量化结果。还可以通过计算各个层多个结果对应的量化比例和量化误差,随后上述的多个量化比例和量化误差确认神经网络模型的量化结果。
通过存储设备的存储阈值来确定模型的量化结果可以确保模型在特定设备上的适用性和高效性。这种方法意味着量化过程会根据可用存储空间的大小进行调整,以确保模型在不超过存储限制的情况下达到较好的性能。结果是得到了一个定制化的模型,既满足了内存和存储的约束,又尽可能地保留了原始模型的准确性和功能性,使得模型在资源受限的环境中运行时更加高效,同时也使得具有不同存储性能的存储装置的设备都可以运行具有较高准确度的神经网络模型。
进一步的,基于所述目标量化比例和各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果,包括:确定各神经网络层量化结果对应的神经网络层量化效果,其中,神经网络层量化效果包括神经网络层量化比例和神经网络层量化损失;基于各神经网络层量化比例和神经网络层量化结果,确定所述神经网络模型对应的至少一个神经网络模型量化效果,其中,所述神经网络模型量化效果包括神经网络模型量化比例和神经网络模型量化结果;基于所述目标量化比例在各神经网络模型量化效果中确定目标神经网络模型量化效果,并根据所述目标神经网络模型量化效果确定神经网络模型量化结果。
实际应用中,神经网络层量化效果为神经网络层中各个神经网络层量化结果所获得的效果,神经网络层量化比例为神经网络层中量化之后与该神经网络层初始的占用空间之间的比例,神经网络层量化损失为神经网络层经过量化之后与神经网络层量化之前根据相同数据生成的数据之间的差距。
具体的,根据上述的各个量化结果对应的量化比例和量化损失确定整个模型量化结果的方式可以是为每个层设置对应的量化权重,该量化权重代表着该神经网络层对于量化比例的敏感程度,随后根据设置的权重为各个层的比例进行加权处理,随后根据加权处理之后的量化比例以及目标量化比例确定神经网络模型的量化结果。
通过各个层不同量化结果的量化效果确定整个神经网络模型的量化结果,可以充分的考虑到每个神经网络层对于量化比例的敏感程度,进而可以实现在相同的量化比例的情况下,使敏感程度更高的神经网络层使用较低的压缩比例,进而进一步的降低了神经网络模型的压缩误差,从而使得后续的量化更加精准,提高了整个模型量化后的性能。
进一步的,基于所述目标量化比例在各神经网络模型量化效果中确定目标神经网络模型量化效果,包括:获取各神经网络模型量化效果对应的量化比例,并根据各神经网络模型量化效果对应的量化比例确定各神经网络模型量化效果对应的量化比例顺序信息;将各神经网络模型量化效果确定为待判断神经网络模型量化效果,并根据所述量化比例顺序信息在各待判断神经网络模型量化效果中确定参考神经网络量化效果;获取所述参考神经网络量化效果对应的参考量化比例,并判断所述参考量化比例与所述目标量化比例之间的关系;若所述参考量化比例大于所述目标量化比例,则确定量化比例小于所述参考量化比例的至少一个神经网络模型量化效果确定为待判断神经网络模型量化效果,并继续执行步骤根据所述量化比例顺序信息在各待判断神经网络模型量化效果中确定参考神经网络量化效果;若所述参考量化比例小于所述目标量化比例,则确定量化比例大于所述参考量化比例的至少一个神经网络模型量化效果确定为待判断神经网络模型量化效果,并继续执行步骤根据所述量化比例顺序信息在各待判断神经网络模型量化效果中确定参考神经网络量化效果;若所述参考量化比例等于所述目标量化比例,所述参考神经网络量化效果为目标神经网络模型量化效果。
实际应用中,待判断神经网络模型量化效果可以理解为根据量化比例顺序信息从各个神经网络模型量化效果中划分出的一段进行判断的量化效果,参考量化比例为待判断神经网络模型量化效果量化比例的中间值。
具体的,查找所需目标神经网络量化效果的方式可以理解为将多个神经网络模型量化效果根据量化比例排序之后,查找量化比例为中间值的量化效果,随后再将该查找出的参考量化比例与实际所要达到的目标量化比例进行比较,由于上述进行比较的待判断神经网络量化效果是根据量化比例排序之后的,所以当其中间值大于目标所要达到的值时,则说明目标值在顺序排序之后的中间值的量化效果的左侧,也就是需要对小于该中间值的量化效果进行判断,当其中间值小于目标所要达到的值时,则说明目标值在顺序排序之后的中间值的量化效果的右侧,也就是需要对大于该中间值的量化效果进行判断,直至找到对应量化比例与目标量化比例相同的量化效果。
通过每次比较后排除一半的搜索区间,大幅减少了比较次数,从而提高了确定目标量化效果的效率。
进一步的,确定各神经网络层量化结果对应的神经网络层量化效果,包括:基于预设参数位置还原策略处理各神经网络层量化结果,生成参考神经网络层量化结果,其中,所述参数位置还原策略根据预设不相干处理策略和对应的参数敏感度顺序信息确定;根据各神经网络层对应的初始参数信息和参考神经网络层量化结果,确定各神经网络层量化结果对应的神经网络层量化效果。
实际应用中,参数位置还原策略为将量化之后的量化结果中各个参数的位置还原为原始位置的策略。
具体的,参数位置还原策略包括有相干还原策略和重排序策略,在进行参数位置还原时,会根据上述模型量化时进行排序和不相干处理的顺序决定使用相干还原策略和重排序策略的顺序,例如,在进行量化时首先进行了参数的排序,然后再进行不相干处理,那么在此处的参数位置还原策略为首先使用相干还原策略进行相干还原,再使用重排序策略进行重新排序。其中的相干还原策略中所使用的权重或矩阵是根据上述进行不相干处理时所使用的权重或矩阵确定的,重排序策略所重新排布的顺序是根据上述的参数敏感度顺序信息中各个参数对应的原始位置确定的。
在本说明书所提供的一个实施例中,因为是首先进行的排序处理随后再进行的不相干处理,所以在进行量化时所使用的不相干处理策略处理参考参数信息和参考参数敏感度特征信息如公式2所示,相应的,其使用的相干还原策略如公式4所示:
……公式4
其中,U和V是与公式2中U和V相同的两个随机正交矩阵,UT为U进行转置处理之后的矩阵,W`q为进行相干处理策略之后但是还未进行排序的矩阵,为神经网络层量化结果。在进行了上述的相干还原策略进行还原之后,再根据该神经网络层对应的参数敏感度顺序信息对W`q进行反重排得到Wq,上述的Wq即为参考神经网络层量化结果。
由于在上述进行模型的量化时,对初始参数信息进行了排序处理和不相干处理,所以需要比较模型量化前以及量化后所输出的结果时,需要将量化之后的量化结果中各个参数的位置还原为原始位置,以实现更加精准的比较,以更精准的获取模型的量化误差。
应用本说明书实施例的方案,通过表征神经网络层中各参数对量化比例的敏感程度的初始参数敏感度特征信息将各个神经网络层对应的初始参数信息进行排序,并同时对初始参数敏感度特征信息进行排序,再对排序之后的参考参数信息和参考敏感度特征信息进行不相干处理,之后对上述两个不相干信息中的各个通道进行分组以实现依次对各个通道组进行量化处理,可以使在模型进行量化时考虑到已经量化完成的误差进而根据该误差进行矫正,进而降低了量化之后模型的量化损失。
随后通过多个预设量化策略量化排序之后的参数信息为每个神经网络层生成多个不同量化比例和量化误差的量化结果,由于进行量化的信息的顺序代表了量化参数对于量化比例的敏感程度,所以避免了在未知各个参数的敏感程度的情况下无法准确设置量化策略而导致的无法精准的降低量化误差的情况,进而实现了在对模型进行量化时保持较高量化比例并降低了量化误差,从而降低了较高准确度的模型对存储装置的要求。
与上述方法实施例相对应,本说明书还提供了应用于云端设备的神经网络模型量化方法实施例,参见图2,图2示出了根据本说明书一个实施例提供的一种应用于云端设备的神经网络模型量化方法的流程图,具体包括以下步骤。
步骤202:接收端侧设备发送的神经网络量化指令,并基于所述神经网络量化指令确定目标神经网络模型,其中,所述目标神经网络模型包括至少一层目标神经网络层。
步骤204:获取量化数据集合,获取根据所述量化数据集合确定各目标神经网络层的初始参数敏感度特征信息,其中,所述量化数据集合为基于样本数据集合确定的数据集合,所述样本数据集合为用于训练所述目标神经网络模型的数据集合,初始参数敏感度特征信息为用于表征目标神经网络层中各参数对量化比例的敏感程度。
步骤206:根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息。
步骤208:基于至少一个量化策略量化各参考参数信息,生成各目标神经网络层对应的至少一个目标神经网络层量化结果。
步骤210:根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果,其中,所述目标存储装置为所述端侧设备的存储装置。
步骤212:获取所述目标神经网络模型量化结果对应的模型参数,并将所述模型参数发送至所述端侧设备。
实际应用中,端侧设备为需要使用量化之后神经网络模型的设备,云端设备为对模型进行量化的模型,神经网络量化指令为端侧设备获取量化之后模型的指令。具体的,端侧设备通常具有较小的存储装置,而由于效果较好的神经网络模型需要的存储空间大于端侧设备的存储装置的存储性能,而导致端侧设备无法使用效果较好的神经网络模型,所以需要端侧设备发送所需模型的量化指令,该量化指令中可以包括有目标模型的标识或者目标模型的描述,还可以包括有发送指令的端侧设备中存储装置的目标存储阈值。
随后基于上述的模型量化指令确定目标神经网络模型,并通过上述神经网络量化方法对目标神经网络模型进行量化,随后根据确认的量化结果获取模型参数,最后将模型参数发送至端侧设备,以使该端侧设备运行原本对存储设备要求较高的神经网络模型。
上述为本实施例的一种应用于云端设备的神经网络模型量化方法的示意性方案。需要说明的是,该应用于云端设备神经网络模型量化方法的技术方案与上述的神经网络模型量化方法的技术方案属于同一构思,应用于云端设备的神经网络模型量化方法的技术方案未详细描述的细节内容,均可以参见上述神经网络模型量化方法的技术方案的描述。
应用本说明书实施例的方案,通过接收端侧设备的量化指令,并根据量化指令确定需要进行量化的量化模型,可以对端侧设备需求的模型进行量化。并且通过神经网络层中参数信息对于量化比例的敏感程度生成参数信息并对该参数信息根据多个预设量化策略进行量化,避免了在未知各个参数的敏感程度的情况下无法准确设置量化策略而导致的无法精准的降低量化误差的情况,进而实现了在对模型进行量化时保持较高量化比例并降低了量化误差,随后将量化完成的模型参数发送至端侧设备,可以使在相同存储装置具有相同目标存储阈值的情况下端侧设备存储的模型具有更高的准确度,也减少了端侧设备存储目标准确度模型对存储设备的要求。
参见图3,图3示出了本说明书一个实施例提供的一种神经网络模型量化系统的架构图,神经网络模型量化系统可以包括客户端100和服务端200;
客户端100,用于向服务端200发送模型量化指令;
服务端200,用于基于所述神经网络量化指令确定目标神经网络模型,其中,所述目标神经网络模型包括至少一层目标神经网络层;获取量化数据集合,获取根据所述量化数据集合确定各目标神经网络层的初始参数敏感度特征信息,其中,所述量化数据集合为基于样本数据集合确定的数据集合,所述样本数据集合为用于训练所述目标神经网络模型的数据集合,初始参数敏感度特征信息为用于表征目标神经网络层中各参数对量化比例的敏感程度;根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息;基于至少一个量化策略量化各参考参数信息,生成各目标神经网络层对应的至少一个目标神经网络层量化结果;根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果,其中,所述目标存储装置为所述客户端100的存储装置;获取所述目标神经网络模型量化结果对应的模型参数;向客户端100发送模型参数;
客户端100,还用于接收服务端200发送的模型参数。
应用本说明书实施例的方案,通过接收客户端的量化指令,并根据量化指令确定需要进行量化的量化模型,可以对客户端需求的模型进行量化。并且通过神经网络层中参数信息对于量化比例的敏感程度生成参数信息并对该参数信息根据多个预设量化策略进行量化避免了在未知各个参数的敏感程度的情况下无法准确设置量化策略而导致的无法精准的降低量化误差的情况,进而实现了在对模型进行量化时保持较高量化比例并降低了量化误差,随后将量化完成的模型参数发送至客户端,可以使在相同存储装置具有相同目标存储阈值的情况下客户端存储的模型具有更高的准确度,也减少了客户端存储目标准确度模型对存储设备的要求。
神经网络模型量化系统可以包括多个客户端100以及服务端200,其中,客户端100可以称为端侧设备,服务端200可以称为云侧设备。多个客户端100之间通过服务端200可以建立通信连接,在神经网络模型量化场景中,服务端200即用来在多个客户端100之间提供神经网络模型量化服务,多个客户端100可以分别作为发送端或接收端,通过服务端200实现通信。
用户通过客户端100可与服务端200进行交互以接收其它客户端100发送的数据,或将数据发送至其它客户端100等。在神经网络模型量化场景中,可以是用户通过客户端100向服务端200发布数据流,服务端200根据该数据流生成模型参数,并将模型参数推送至其他建立通信的客户端中。
其中,客户端100与服务端200之间通过网络建立连接。网络为客户端100与服务端200之间提供了通信链路的介质。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。客户端100所传输的数据可能需要经过编码、转码、压缩等处理之后才发布至服务端200。
客户端100可以为浏览器、APP(Application,应用程序)、或网页应用如H5(HyperText Markup Language5,超文本标记语言第5版)应用、或轻应用(也被称为小程序,一种轻量级应用程序)或云应用等,客户端100可以基于服务端200提供的相应服务的软件开发工具包(SDK,Software Development Kit),如基于实时通信(RTC,Real TimeCommunication)SDK开发获得等。客户端100可以部署在电子设备中,需要依赖设备运行或者设备中的某些APP而运行等。电子设备例如可以具有显示屏并支持信息浏览等,如可以是个人移动终端如手机、平板电脑、个人计算机等。在电子设备中通常还可以配置各种其它类应用,例如人机对话类应用、模型训练类应用、文本处理类应用、网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
服务端200可以包括提供各种服务的服务器,例如为多个客户端提供通信服务的服务器,又如为客户端上使用的模型提供支持的用于后台训练的服务器,又如对客户端发送的数据进行处理的服务器等。需要说明的是,服务端200可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(CDN,Content DeliveryNetwork)以及大数据和人工智能平台等基础云计算服务的云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。
值得说明的是,本说明书实施例中提供的神经网络模型量化方法一般由服务端执行,但是,在本说明书的其它实施例中,客户端也可以与服务端具有相似的功能,从而执行本说明书实施例所提供的神经网络模型量化方法。在其它实施例中,本说明书实施例所提供的神经网络模型量化方法还可以是由客户端与服务端共同执行。
下述结合附图4,以本说明书提供的神经网络模型量化方法在文本处理模型量化的应用为例,对所述神经网络模型量化方法进行进一步说明。其中,图4示出了本说明书一个实施例提供的一种文本处理模型量化方法的处理过程流程图,具体包括以下步骤。
步骤402:在用于训练文本处理模型的样本文本中随机选取512条数据作为量化数据集合。
步骤404:确定文本处理模型的两个神经网络层各自对应的初始参数矩阵,每个参数矩阵都具有144条通道,每条通道都具有64个参数。
步骤406:根据上述的量化数据集计算获取上述两个神经网络层各自对应的初始参数敏感度矩阵,并根据该初始参数敏感度矩阵确定每条通道对量化的敏感度。
步骤408:根据按照通道的敏感度从高到低的顺序,将每个神经网络层对应的初始参数矩阵重新排序,获取排序后的参考参数矩阵,并同时按照同样的顺序将初始参数敏感度矩阵重新排序,获取排序后的参考参数敏感度矩阵。
步骤410:通过两个随机正交矩阵对上述的参考参数矩阵和参考参数敏感度矩阵进行不相干处理,获取降低了相关性的目标参数矩阵和目标参数敏感度矩阵。
步骤412:以8条通道为一组将目标参数矩阵和目标参数敏感度矩阵分别划分为18条目标参数通道组和目标通道敏感度组。
步骤414:获取预设的压缩策略1:前25%使用4bits量化率进行量化,中间50%使用3bits的量化率进行量化,最后25%使用2bits的量化率进行量化。和预设的压缩策略2:前25%使用4bits量化率进行量化,后75%使用2bits的量化率进行量化。
步骤416:基于上述压缩策略1对上述的18条目标参数通道组中的前5组向量以4bits量化率根据对应的目标通道敏感度组进行量化,中间的9组以3bits量化率进行量化,最后4组以2bits的量化率进行量化,分别获取上述第一个神经网络层对应的量化结果A1和第二个神经网络层对应的量化结果B1。
步骤418:基于上述压缩策略2对上述的18条目标参数通道组中的前5组向量以4bits量化率根据对应的目标通道敏感度组进行量化,后面的13组以2bits的量化率进行量化,分别获取上述第一个神经网络层对应的量化结果A2和第二个神经网络层对应的量化结果B2。
步骤420:将上述的4个量化结果分别组合,获取待选模型量化结果:A1+B1、A1+B2、A2+B1、A2+B2,并分别计算各个待选模型量化结果对应的量化率和量化误差。
步骤422:根据预设存储阈值10G以及大小为160G的文本处理模型,确定需要的压缩率为95%,再结合文本处理的位数:32位,确定其需要的量化率为2bit。
步骤424:以2bit的量化率为最大值,获取量化误差最小的量化结果:A1+B2,确定A1+B2为该文本处理模型的量化结果。
应用本说明书实施例的方案,通过神经网络层中参数信息对于量化比例的敏感程度生成参数信息并对该参数信息根据多个预设量化策略进行量化,由于进行量化的信息的顺序代表了量化参数对于量化比例的敏感程度,所以避免了在未知各个参数的敏感程度的情况下无法准确设置量化策略而导致的无法精准的降低量化误差的情况,进而实现了在对文本处理模型进行量化时保持较高量化比例并降低了量化误差,从而降低了较高准确度的文本处理模型对存储装置的要求,进而可以使具有较小存储空间的存储装置的设备在进行例如文本分类、语言翻译、文本生成等等文本处理任务时具有更高的准确度。
与上述方法实施例相对应,本说明书还提供了神经网络模型量化装置实施例,图5示出了本说明书一个实施例提供的一种神经网络模型量化装置的结构示意图。如图5所示,该装置包括:
敏感度特征获取模块502,被配置为获取量化数据集合,并根据所述量化数据集合确定各神经网络层的初始参数敏感度特征信息,其中,所述量化数据集合为基于样本数据集合确定的数据集合,所述样本数据集合为用于训练所述神经网络模型的数据集合,初始参数敏感度特征信息为用于表征神经网络层中各参数对量化比例的敏感程度;
参数生成模块504,被配置为根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息;
神经网络层量化模块506,被配置为基于至少一个量化策略量化各参考参数信息,生成各神经网络层对应的至少一个神经网络层量化结果;
模型量化模块508,被配置为根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果。
可选的,所述敏感度特征获取模块502,进一步被配置为:确定第一神经网络层,并根据所述量化数据集合获取所述第一神经网络层的第一输入特征信息;根据所述第一输入特征信息,生成所述第一神经网络层对应的第一初始参数敏感度特征信息。
可选的,所述敏感度特征获取模块502,进一步被配置为:转置处理所述第一输入特征信息确定第一输入特征转置信息;基于预设正则化矩阵信息、所述第一输入特征信息和所述第一输入特征转置信息,生成第一初始参数敏感度特征信息。
可选的,参数敏感度顺序信息包括通道敏感度顺序信息;所述参数生成模块504,进一步被配置为:确定第二神经网络层,并基于所述第二神经网络层对应的第二初始参数敏感度特征信息,确定所述第二神经网络层对应的第二通道敏感度顺序信息。
可选的,神经网络层的参数信息包括至少一个参数通道信息,参数通道信息包括至少一个神经网络层的参数值;所述参数生成模块504,进一步被配置为:基于所述第二通道敏感度顺序信息确定所述第二神经网络层各第二参数通道信息对应的第二通道位置;基于各第二参数通道信息对应的第二通道位置重新排列各第二参数通道信息,生成第二参考参数信息。
可选的,所述参数生成模块504,进一步被配置为:根据各神经网络层对应的初始参数敏感度特征信息,确定各神经网络层对应的参数敏感度顺序信息;基于各参数敏感度顺序信息对各神经网络层的初始参数信息排序,生成参考参数信息。
可选的,所述神经网络层量化模块506,进一步被配置为:确定第三神经网络层和目标量化策略,并获取所述目标量化策略对应的目标量化精度比例;基于所述目标量化精度比例量化所述第三神经网络层对应的第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果。
可选的,所述神经网络层量化模块506,进一步被配置为:根据所述目标量化精度比例在所述第三参考参数信息中确定至少一个量化区域参数信息以及各量化区域参数信息对应的量化精度,其中,量化区域参数信息包括至少一个参数信息,所述第三参考参数信息由初始参数敏感度特征信息获得;确定目标量化区域参数信息以及所述目标量化区域参数信息对应的目标量化精度;基于所述目标量化精度和所述目标量化区域参数信息,生成所述目标量化区域参数信息对应的区域量化结果;根据各区域量化结果生成所述第三神经网络层量化结果。
可选的,所述神经网络层量化模块506,进一步被配置为:确认待量化参数信息、所述待量化参数信息对应的参考量化精度,以及至少一个初始量化精度,其中,初始量化精度小于等于所述参考量化精度;确定第一初始量化精度,并根据所述第一初始量化精度量化待量化参数,获取第一初始量化结果;判断所述第一初始量化结果对应的量化精度是否与所述参考量化精度相同;若相同,则确定所述第一初始量化结果为所述待量化参数信息对应的量化结果;若不同,则根据所述待量化参数信息和所述第一初始量化结果确定残差参数信息;确定第二初始量化精度,并根据所述第二初始量化精度对所述残差参数信息进行量化,更新第一初始量化结果;继续执行步骤判断所述第一初始量化结果对应的量化精度是否与所述参考量化精度相同。
可选的,神经网络层的参数信息包括至少一个参数通道信息,参数通道信息包括至少一个神经网络层的参数值;所述神经网络层量化模块506,进一步被配置为:根据所述目标量化精度比例和所述第三参考参数信息,确定至少一个目标量化区间以及各目标量化区间对应的目标量化精度,其中,目标量化区间为参考参数信息中基于相同量化精度进行量化的参数通道信息对应的区间;基于各目标量化精度、各量化区间和所述第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果。
可选的,参考参数信息包括至少一个参数通道组,参数通道组包括至少一个参数通道信息;所述神经网络层量化模块506,进一步被配置为:基于各目标量化精度在所述第三参考参数信息中确定至少一个第三参考参数通道组;确定各第三参考参数通道组对应的第三参考通道组量化精度;基于各第三参考通道组量化精度量化各第三参考参数通道组,生成各第三参考参数通道组对应的第三通道组量化结果;根据各第三通道组量化结果生成所述第三神经网络层量化结果。
可选的,所述神经网络层量化模块506,进一步被配置为:确定所述第三神经网络层对应的第三初始参数敏感度特征信息以及第三参数敏感度顺序信息;根据所述第三参数敏感度顺序信息对所述第三初始参数敏感度特征信息排序,生成第三参考参数敏感度特征信息,其中,参数敏感度特征信息包括至少一个通道敏感度特征信息;确定各第三参考参数通道组对应的第三参考通道敏感度特征信息组,其中,通道敏感度特征信息组包括至少一个通道敏感度特征信息;基于各第三参考参数通道组、各第三参考通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果。
可选的,所述神经网络层量化模块506,进一步被配置为:基于预设不相干处理策略处理所述第三参考参数信息和所述第三参考参数敏感度特征信息,生成第三目标参数信息和第三目标参数敏感度特征信息;在所述第三目标参数信息中确定各第三参考参数通道组对应的第三目标参数通道组,其中,第三目标参数通道组与对应的第三参考参数通道组具有相同的量化精度;在所述第三目标参数敏感度特征信息中确定各第三参考通道敏感度组对应的各第三目标通道敏感度组;基于各第三目标参数通道组、各第三目标通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果。
可选的,所述第三目标参数信息包括有n个第三目标参数通道组,所述第三目标参数敏感度特征信息中包括n个第三目标通道敏感度组,n为大于等于1的正整数;所述神经网络层量化模块506,进一步被配置为:将第1个第三目标参数通道组基于该第三目标参数通道组对应的第三参考通道组量化精度进行量化,获得第1个第三目标参数通道组量化结果;根据第1至i-1个第三目标参数通道组量化结果、第1至i-1个第三目标参数通道组以及第1至i-1个第三目标通道敏感度组和第i个第三目标参数通道组,获取待量化参数通道组,其中,i为大于等于2且小于n的正整数;根据第i个第三目标参数通道组对应的第三参考通道组量化精度量化所述待量化参数通道组,生成第i个第三目标参数通道组量化结果;使i自增1并判断i是否大于n,若否,则继续执行步骤根据第1至i-1个第三目标参数通道组量化结果、第1至i-1个第三目标参数通道组以及第1至i-1个第三目标通道敏感度组和第i个第三目标参数通道组,获取待量化参数通道组,若是,则确定第i个第三目标参数通道组对应的第三通道组量化结果为第i个第三目标参数通道量化结果。
可选的,所述神经网络层量化模块506,进一步被配置为:根据第1至i-1个第三目标参数通道组量化结果获取混合参数通道组量化结果,根据第1至i-1个第三目标参数通道组获取混合目标参数通道组并根据第1至i-1个第三目标通道敏感度组获取混合目标通道敏感度组;根据所述混合参数通道组量化结果和所述混合目标参数通道组确定混合参数误差;根据所述混合目标通道敏感度组和所述混合参数误差确定混合误差校正信息;将第i个第三目标参数通道组和所述混合误差校正信息结合,生成待量化参数通道组。
可选的,所述模型量化模块508,进一步被配置为:根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积确定所述神经网络模型的目标量化比例;基于所述目标量化比例和各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果。
可选的,所述模型量化模块508,进一步被配置为:确定各神经网络层量化结果对应的神经网络层量化效果,其中,神经网络层量化效果包括神经网络层量化比例和神经网络层量化损失;基于各神经网络层量化比例和神经网络层量化结果,确定所述神经网络模型对应的至少一个神经网络模型量化效果,其中,所述神经网络模型量化效果包括神经网络模型量化比例和神经网络模型量化结果;基于所述目标量化比例在各神经网络模型量化效果中确定目标神经网络模型量化效果,并根据所述目标神经网络模型量化效果确定神经网络模型量化结果。
可选的,所述模型量化模块508,进一步被配置为:获取各神经网络模型量化效果对应的量化比例,并根据各神经网络模型量化效果对应的量化比例确定各神经网络模型量化效果对应的量化比例顺序信息;将各神经网络模型量化效果确定为待判断神经网络模型量化效果,并根据所述量化比例顺序信息在各待判断神经网络模型量化效果中确定参考神经网络量化效果;获取所述参考神经网络量化效果对应的参考量化比例,并判断所述参考量化比例与所述目标量化比例之间的关系;若所述参考量化比例大于所述目标量化比例,则确定量化比例小于所述参考量化比例的至少一个神经网络模型量化效果确定为待判断神经网络模型量化效果,并继续执行步骤根据所述量化比例顺序信息在各待判断神经网络模型量化效果中确定参考神经网络量化效果;若所述参考量化比例小于所述目标量化比例,则确定量化比例大于所述参考量化比例的至少一个神经网络模型量化效果确定为待判断神经网络模型量化效果,并继续执行步骤根据所述量化比例顺序信息在各待判断神经网络模型量化效果中确定参考神经网络量化效果;若所述参考量化比例等于所述目标量化比例,所述参考神经网络量化效果为目标神经网络模型量化效果。
可选的,所述模型量化模块508,进一步被配置为:基于预设参数位置还原策略处理各神经网络层量化结果,生成参考神经网络层量化结果,其中,所述参数位置还原策略根据预设不相干处理策略和对应的参数敏感度顺序信息确定;根据各神经网络层对应的初始参数信息和参考神经网络层量化结果,确定各神经网络层量化结果对应的神经网络层量化效果。
上述为本实施例的一种神经网络模型量化装置的示意性方案。需要说明的是,该神经网络模型量化装置的技术方案与上述的神经网络模型量化方法的技术方案属于同一构思,神经网络模型量化装置的技术方案未详细描述的细节内容,均可以参见上述神经网络模型量化方法的技术方案的描述。
应用本说明书实施例的方案,通过敏感度特征获取模块获取神经网络层中参数信息,随后参数生成模块利用对于量化比例的敏感程度生成参数信息,然后使用神经网络层量化模块以及模型量化模块对上述参数信息根据多个预设量化策略进行量化,由于进行量化的参数信息是根据量化比例的敏感程度生成的,其中各个参数携带有量化参数对于量化比例的敏感程度,所以避免了在未知各个参数的敏感程度的情况下无法准确设置量化策略而导致的无法精准的降低量化误差的情况,进而实现了在对模型进行量化时保持较高量化比例并降低了量化误差,从而降低了较高准确度的模型对存储装置的要求。
图6示出了根据本说明书一个实施例提供的一种计算设备600的结构框图。该计算设备600的部件包括但不限于存储器610和处理器620。处理器620与存储器610通过总线630相连接,数据库650用于保存数据。
计算设备600还包括接入设备640,接入设备640使得计算设备600能够经由一个或多个网络660通信。这些网络的示例包括公用交换电话网(PSTN,Public SwitchedTelephone Network)、局域网(LAN,Local Area Network)、广域网(WAN,Wide AreaNetwork)、个域网(PAN,Personal Area Network)或诸如因特网的通信网络的组合。接入设备640可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC,networkinterface controller))中的一个或多个,诸如IEEE802.11无线局域网(WLAN,WirelessLocal Area Network)无线接口、全球微波互联接入(Wi-MAX,WorldwideInteroperability for Microwave Access)接口、以太网接口、通用串行总线(USB,Universal Serial Bus)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC,Near FieldCommunication)。
在本说明书的一个实施例中,计算设备600的上述部件以及图6中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图6所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备600可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或个人计算机(PC,Personal Computer)的静止计算设备。计算设备600还可以是移动式或静止式的服务器。
其中,处理器620用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述神经网络模型量化方法及应用于云端的神经网络模型量化方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的神经网络模型量化方法及应用于云端的神经网络模型量化方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述神经网络模型量化方法及应用于云端的神经网络模型量化方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述神经网络模型量化方法及应用于云端的神经网络模型量化方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的神经网络模型量化方法及应用于云端的神经网络模型量化方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述神经网络模型量化方法及应用于云端的神经网络模型量化方法的技术方案的描述。
本说明书一实施例还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述神经网络模型量化方法及应用于云端的神经网络模型量化方法的步骤。
上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的神经网络模型量化方法及应用于云端的神经网络模型量化方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述神经网络模型量化方法及应用于云端的神经网络模型量化方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据专利实践的要求进行适当的增减,例如在某些地区,根据专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (23)
1.一种神经网络模型量化方法,所述神经网络模型包括至少一层神经网络层,所述方法包括:
获取量化数据集合,并根据所述量化数据集合确定各神经网络层的初始参数敏感度特征信息,其中,所述量化数据集合为基于样本数据集合确定的数据集合,所述样本数据集合为用于训练所述神经网络模型的数据集合,初始参数敏感度特征信息为用于表征神经网络层中各参数对量化比例的敏感程度;
根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息;
基于至少一个量化策略量化各参考参数信息,生成各神经网络层对应的至少一个神经网络层量化结果;
根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果。
2.如权利要求1所述的方法,基于至少一个量化策略量化各参考参数信息,生成各神经网络层对应的至少一个神经网络层量化结果,包括:
确定第三神经网络层和目标量化策略,并获取所述目标量化策略对应的目标量化精度比例;
基于所述目标量化精度比例量化所述第三神经网络层对应的第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果。
3.如权利要求2所述的方法,神经网络层的参数信息包括至少一个参数通道信息,参数通道信息包括至少一个神经网络层的参数值;
基于所述目标量化精度比例量化所述第三神经网络层对应的第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果,包括:
根据所述目标量化精度比例和所述第三参考参数信息,确定至少一个目标量化区间以及各目标量化区间对应的目标量化精度,其中,目标量化区间为参考参数信息中基于相同量化精度进行量化的参数通道信息对应的区间;
基于各目标量化精度、各量化区间和所述第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果。
4.如权利要求3所述的方法,参考参数信息包括至少一个参数通道组,参数通道组包括至少一个参数通道信息;
基于各目标量化精度、各量化区间和所述第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果,包括:
基于各目标量化精度在所述第三参考参数信息中确定至少一个第三参考参数通道组;
确定各第三参考参数通道组对应的第三参考通道组量化精度;
基于各第三参考通道组量化精度量化各第三参考参数通道组,生成各第三参考参数通道组对应的第三通道组量化结果;
根据各第三通道组量化结果生成所述第三神经网络层量化结果。
5.如权利要求4所述的方法,基于各第三参考通道组量化精度量化各第三参考参数通道组,生成各第三参考参数通道组对应的第三通道组量化结果,包括:
确定所述第三神经网络层对应的第三初始参数敏感度特征信息以及第三参数敏感度顺序信息;
根据所述第三参数敏感度顺序信息对所述第三初始参数敏感度特征信息排序,生成第三参考参数敏感度特征信息,其中,参数敏感度特征信息包括至少一个通道敏感度特征信息;
确定各第三参考参数通道组对应的第三参考通道敏感度特征信息组,其中,通道敏感度特征信息组包括至少一个通道敏感度特征信息;
基于各第三参考参数通道组、各第三参考通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果。
6.如权利要求5所述的方法,基于各第三参考参数通道组、各第三参考通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果,包括:
基于预设不相干处理策略处理所述第三参考参数信息和所述第三参考参数敏感度特征信息,生成第三目标参数信息和第三目标参数敏感度特征信息;
在所述第三目标参数信息中确定各第三参考参数通道组对应的第三目标参数通道组,其中,第三目标参数通道组与对应的第三参考参数通道组具有相同的量化精度;
在所述第三目标参数敏感度特征信息中确定各第三参考通道敏感度组对应的各第三目标通道敏感度组;
基于各第三目标参数通道组、各第三目标通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果。
7.如权利要求6所述的方法,所述第三目标参数信息包括有n个第三目标参数通道组,所述第三目标参数敏感度特征信息中包括n个第三目标通道敏感度组,n为大于等于1的正整数;
基于各第三目标参数通道组、各第三目标通道敏感度组和第三参考通道组量化精度,确定各第三通道组量化结果,包括以下步骤:
将第1个第三目标参数通道组基于该第三目标参数通道组对应的第三参考通道组量化精度进行量化,获得第1个第三目标参数通道组量化结果;
根据第1至i-1个第三目标参数通道组量化结果、第1至i-1个第三目标参数通道组以及第1至i-1个第三目标通道敏感度组和第i个第三目标参数通道组,获取待量化参数通道组,其中,i为大于等于2且小于n的正整数;
根据第i个第三目标参数通道组对应的第三参考通道组量化精度量化所述待量化参数通道组,生成第i个第三目标参数通道组量化结果;
使i自增1并判断i是否大于n,若否,则继续执行步骤根据第1至i-1个第三目标参数通道组量化结果、第1至i-1个第三目标参数通道组以及第1至i-1个第三目标通道敏感度组和第i个第三目标参数通道组,获取待量化参数通道组,若是,则确定第i个第三目标参数通道组对应的第三通道组量化结果为第i个第三目标参数通道量化结果。
8.如权利要求7所述的方法,根据第1至i-1个第三目标参数通道组量化结果、第1至i-1个第三目标参数通道组以及第1至i-1个第三目标通道敏感度组和第i个第三目标参数通道组,获取待量化参数通道组,包括:
根据第1至i-1个第三目标参数通道组量化结果获取混合参数通道组量化结果,根据第1至i-1个第三目标参数通道组获取混合目标参数通道组并根据第1至i-1个第三目标通道敏感度组获取混合目标通道敏感度组;
根据所述混合参数通道组量化结果和所述混合目标参数通道组确定混合参数误差;
根据所述混合目标通道敏感度组和所述混合参数误差确定混合误差校正信息;
将第i个第三目标参数通道组和所述混合误差校正信息结合,生成待量化参数通道组。
9.如权利要求2所述的方法,基于所述目标量化精度比例量化所述第三神经网络层对应的第三参考参数信息,生成所述第三神经网络层对应的第三神经网络层量化结果,包括:
根据所述目标量化精度比例在所述第三参考参数信息中确定至少一个量化区域参数信息以及各量化区域参数信息对应的量化精度,其中,量化区域参数信息包括至少一个参数信息,所述第三参考参数信息由初始参数敏感度特征信息获得;
确定目标量化区域参数信息以及所述目标量化区域参数信息对应的目标量化精度;
基于所述目标量化精度和所述目标量化区域参数信息,生成所述目标量化区域参数信息对应的区域量化结果;
根据各区域量化结果生成所述第三神经网络层量化结果。
10.如权利要求1所述的方法,根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果,包括:
根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积确定所述神经网络模型的目标量化比例;
基于所述目标量化比例和各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果。
11.如权利要求10所述的方法,基于所述目标量化比例和各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果,包括:
确定各神经网络层量化结果对应的神经网络层量化效果,其中,神经网络层量化效果包括神经网络层量化比例和神经网络层量化损失;
基于各神经网络层量化比例和神经网络层量化结果,确定所述神经网络模型对应的至少一个神经网络模型量化效果,其中,所述神经网络模型量化效果包括神经网络模型量化比例和神经网络模型量化结果;
基于所述目标量化比例在各神经网络模型量化效果中确定目标神经网络模型量化效果,并根据所述目标神经网络模型量化效果确定神经网络模型量化结果。
12.如权利要求11所述的方法,基于所述目标量化比例在各神经网络模型量化效果中确定目标神经网络模型量化效果,包括:
获取各神经网络模型量化效果对应的量化比例,并根据各神经网络模型量化效果对应的量化比例确定各神经网络模型量化效果对应的量化比例顺序信息;
将各神经网络模型量化效果确定为待判断神经网络模型量化效果,并根据所述量化比例顺序信息在各待判断神经网络模型量化效果中确定参考神经网络量化效果;
获取所述参考神经网络量化效果对应的参考量化比例,并判断所述参考量化比例与所述目标量化比例之间的关系;
若所述参考量化比例大于所述目标量化比例,则确定量化比例小于所述参考量化比例的至少一个神经网络模型量化效果确定为待判断神经网络模型量化效果,并继续执行步骤根据所述量化比例顺序信息在各待判断神经网络模型量化效果中确定参考神经网络量化效果;
若所述参考量化比例小于所述目标量化比例,则确定量化比例大于所述参考量化比例的至少一个神经网络模型量化效果确定为待判断神经网络模型量化效果,并继续执行步骤根据所述量化比例顺序信息在各待判断神经网络模型量化效果中确定参考神经网络量化效果;
若所述参考量化比例等于所述目标量化比例,所述参考神经网络量化效果为目标神经网络模型量化效果。
13.如权利要求11所述的方法,确定各神经网络层量化结果对应的神经网络层量化效果,包括:
基于预设参数位置还原策略处理各神经网络层量化结果,生成参考神经网络层量化结果,其中,所述参数位置还原策略根据预设不相干处理策略和对应的参数敏感度顺序信息确定;
根据各神经网络层对应的初始参数信息和参考神经网络层量化结果,确定各神经网络层量化结果对应的神经网络层量化效果。
14.如权利要求1所述的方法,根据各神经网络层对应的初始参数敏感度特征信息,生成参考参数信息,包括:
根据各神经网络层对应的初始参数敏感度特征信息,确定各神经网络层对应的参数敏感度顺序信息;
基于各参数敏感度顺序信息对各神经网络层的初始参数信息排序,生成参考参数信息。
15.如权利要求14所述的方法,根据所述量化数据集合确定各神经网络层的初始参数敏感度特征信息,包括:
确定第一神经网络层,并根据所述量化数据集合获取所述第一神经网络层的第一输入特征信息;
根据所述第一输入特征信息,生成所述第一神经网络层对应的第一初始参数敏感度特征信息。
16.如权利要求15所述的方法,根据所述第一输入特征信息,生成所述第一神经网络层对应的第一初始参数敏感度特征信息,包括:
转置处理所述第一输入特征信息确定第一输入特征转置信息;
基于预设正则化矩阵信息、所述第一输入特征信息和所述第一输入特征转置信息,生成第一初始参数敏感度特征信息。
17.如权利要求14所述的方法,参数敏感度顺序信息包括通道敏感度顺序信息;
根据各神经网络层对应的初始参数敏感度特征信息,确定各神经网络层对应的参数敏感度顺序信息,包括:
确定第二神经网络层,并基于所述第二神经网络层对应的第二初始参数敏感度特征信息,确定所述第二神经网络层对应的第二通道敏感度顺序信息。
18.如权利要求17所述的方法,神经网络层的参数信息包括至少一个参数通道信息,参数通道信息包括至少一个神经网络层的参数值;
基于各参数敏感度顺序信息对各神经网络层的初始参数信息排序,生成参考参数信息,包括:
基于所述第二通道敏感度顺序信息确定所述第二神经网络层各第二参数通道信息对应的第二通道位置;
基于各第二参数通道信息对应的第二通道位置重新排列各第二参数通道信息,生成第二参考参数信息。
19.如权利要求1-18任意一项所述的方法,量化结果的确认方式,包括以下步骤:
确认待量化参数信息、所述待量化参数信息对应的参考量化精度,以及至少一个初始量化精度,其中,初始量化精度小于等于所述参考量化精度;
确定第一初始量化精度,并根据所述第一初始量化精度量化待量化参数,获取第一初始量化结果;
判断所述第一初始量化结果对应的量化精度是否与所述参考量化精度相同;
若相同,则确定所述第一初始量化结果为所述待量化参数信息对应的量化结果;
若不同,则根据所述待量化参数信息和所述第一初始量化结果确定残差参数信息;确定第二初始量化精度,并根据所述第二初始量化精度对所述残差参数信息进行量化,更新第一初始量化结果;继续执行步骤判断所述第一初始量化结果对应的量化精度是否与所述参考量化精度相同。
20.一种神经网络模型量化方法,应用于云端设备,包括:
接收端侧设备发送的神经网络量化指令,并基于所述神经网络量化指令确定目标神经网络模型,其中,所述目标神经网络模型包括至少一层目标神经网络层;
获取量化数据集合,获取根据所述量化数据集合确定各目标神经网络层的初始参数敏感度特征信息,其中,所述量化数据集合为基于样本数据集合确定的数据集合,所述样本数据集合为用于训练所述目标神经网络模型的数据集合,初始参数敏感度特征信息为用于表征目标神经网络层中各参数对量化比例的敏感程度;
根据各目标神经网络层对应的初始参数敏感度特征信息,生成参考参数信息;
基于至少一个量化策略量化各参考参数信息,生成各目标神经网络层对应的至少一个目标神经网络层量化结果;
根据目标存储装置的目标存储阈值和所述神经网络模型的初始体积,以及各神经网络层对应的各神经网络层量化结果,确定所述神经网络模型对应的神经网络模型量化结果,其中,所述目标存储装置为所述端侧设备的存储装置;
获取所述目标神经网络模型量化结果对应的模型参数,并将所述模型参数发送至所述端侧设备。
21.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机程序/指令,所述处理器用于执行所述计算机程序/指令,该计算机程序/指令被处理器执行时实现权利要求1-20任意一项所述方法的步骤。
22.一种计算机可读存储介质,其存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现权利要求1-20任意一项所述方法的步骤。
23.一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现权利要求1-20任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410591591.8A CN118171698A (zh) | 2024-05-13 | 2024-05-13 | 神经网络模型量化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410591591.8A CN118171698A (zh) | 2024-05-13 | 2024-05-13 | 神经网络模型量化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118171698A true CN118171698A (zh) | 2024-06-11 |
Family
ID=91353003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410591591.8A Pending CN118171698A (zh) | 2024-05-13 | 2024-05-13 | 神经网络模型量化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118171698A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112686384A (zh) * | 2020-12-31 | 2021-04-20 | 南京大学 | 一种自适应比特位宽的神经网络量化方法及其装置 |
US20210174214A1 (en) * | 2019-12-10 | 2021-06-10 | The Mathworks, Inc. | Systems and methods for quantizing a neural network |
CN117454944A (zh) * | 2023-11-20 | 2024-01-26 | 清华大学 | 分层确定神经网络量化模式的方法、系统、设备和介质 |
-
2024
- 2024-05-13 CN CN202410591591.8A patent/CN118171698A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210174214A1 (en) * | 2019-12-10 | 2021-06-10 | The Mathworks, Inc. | Systems and methods for quantizing a neural network |
CN112686384A (zh) * | 2020-12-31 | 2021-04-20 | 南京大学 | 一种自适应比特位宽的神经网络量化方法及其装置 |
CN117454944A (zh) * | 2023-11-20 | 2024-01-26 | 清华大学 | 分层确定神经网络量化模式的方法、系统、设备和介质 |
Non-Patent Citations (2)
Title |
---|
YIREN ZHOU 等: "Adaptive Quantization for Deep Neural Network", 《ASSOCIATION FOR THE ADVANCEMENT OF ARTIFICIAL INTELLIGENCE》, 31 December 2018 (2018-12-31) * |
张江永 等: "基于敏感度的YOLO 网络集成剪枝算法", 《计算机工程》, 30 September 2021 (2021-09-30) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111339433B (zh) | 基于人工智能的信息推荐方法、装置、电子设备 | |
CN107526725A (zh) | 基于人工智能的用于生成文本的方法和装置 | |
US20230401833A1 (en) | Method, computer device, and storage medium, for feature fusion model training and sample retrieval | |
CN111611488B (zh) | 基于人工智能的信息推荐方法、装置、电子设备 | |
CN115994226B (zh) | 基于联邦学习的聚类模型训练系统及方法 | |
CN114385376B (zh) | 一种异构数据下边缘侧联邦学习的客户端选择方法 | |
CN116050405A (zh) | 文本处理、问答文本处理及文本处理模型训练方法 | |
CN113283577A (zh) | 一种基于元学习和生成对抗网络的工业平行数据生成方法 | |
CN115292470A (zh) | 一种用于小额贷款智能客服的语义匹配方法及系统 | |
CN109982272B (zh) | 一种诈骗短信识别方法及装置 | |
CN116595154B (zh) | 任务处理方法以及自动问答方法 | |
CN117313837A (zh) | 一种基于联邦学习的大模型提示学习方法以及装置 | |
CN117350304A (zh) | 一种多轮对话上下文向量增强方法及系统 | |
CN111797220A (zh) | 对话生成方法、装置、计算机设备和存储介质 | |
CN118171698A (zh) | 神经网络模型量化方法 | |
CN114417251A (zh) | 一种基于哈希码的检索方法、装置、设备及存储介质 | |
Jiao et al. | Realization and improvement of object recognition system on raspberry pi 3b+ | |
CN109982295B (zh) | 业务模板的推送方法及业务模板的推送器 | |
CN118212460A (zh) | 图像分类方法、自动问答方法、图像类别特征融合模型训练方法及基于深度学习模型的信息处理方法 | |
CN113011555B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
Shi et al. | Quantize Sequential Recommenders Without Private Data | |
CN117076090B (zh) | 任务模型的构建方法、装置、设备及计算机可读存储介质 | |
CN117725972A (zh) | 数据处理方法 | |
CN113254597B (zh) | 模型训练方法、查询处理方法及相关设备 | |
CN117830447A (zh) | 图像生成、自动问答以及参数生成模型训练方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |