神经网络的自适应位宽缩减制造技术

技术编号:23352297 阅读:20 留言:0更新日期:2020-02-15 07:05
一种在计算设备上提供自适应位宽神经网络模型的方法,包括:获得第一神经网络模型,其中,第一神经网络模型的每一层具有利用第一神经网络模型的原始位宽表示的对应参数集;通过使用用于存储第一神经网络模型的不同层的对应参数集的对应缩减位宽,缩减第一神经网络模型的占用,其中:当第一神经网络模型的两个或者多个层中的每一层用不同量化程度表示时,使用验证数据集进行通过第一神经网络模型的前向传播的多次迭代,直到满足预定信息丢失阈值为止,从而确定对应缩减位宽的优选值;以及,利用由对应缩减位宽表示的量化参数,生成缩减的神经网络模型。

Adaptive bit width reduction of neural network

【技术实现步骤摘要】
【国外来华专利技术】神经网络的自适应位宽缩减
本公开涉及机器学习实时应用,并且更具体地,涉及通过缩减机器学习模型的模型大小和计算占用(computationalfootprint)改善用于便携式设备和实时应用的机器学习模型,并且保持相同的精确度。
技术介绍
机器学习在许多领域具有广泛的适用性,这些领域包括计算机视觉、语音识别、机器翻译、社交网络过滤、棋牌游戏和视频游戏、医疗诊断以及许多其他领域。诸如人工神经网络(ANN)的机器学习模型是由简单单元(神经元)组成的网络,简单单元接收输入,根据该输入改变其内部状态(激活),并且根据输入和激活产生输出。该网络是通过有向加权图将某些神经元的输出连接到其他神经元的输入而形成的。权重以及计算激活的函数根据预定学习规则,通过迭代学习过程逐渐进行修改,直到实现预定的收敛为止。机器学习模型有很多变型,并且有不同的学习范式。卷积神经网络(CNN)是一类前馈网络,其由一个或多个具有全连接层(对应于ANN的层)的卷积层组成。CNN具有关联权重和池化层,且能够利用标准逆向传播训练。深度学习模型,诸如VGG16和不同类型的ResNet,是包含多于一个隐藏层的大型模型,其能够产生与人类专家相媲美的分析结果,这使它们成为许多真实世界应用的有吸引力的候选对象。神经网络模型通常具有几千到几百万个单位和数百万个参数。更深和更高精确度的CNN要求大量的计算资源,这使得它们对于实时应用或在电池寿命、内存和处理能力有限的便携式设备上的部署不太实用。现有的用于为各种应用部署大型神经网络模型(例如,深度学习模型)的最新解决方案专注于两种方法,模型缩减和硬件升级。专注于缩减模型结构的复杂度的模型缩减通常会极大地损害模型的精确度,而实际成本和能量消耗问题限制了硬件升级。因此,需要用于产生有效的轻量级机器学习模型的改进技术。
技术实现思路
本公开描述了一种用于产生具有针对模型的不同层的参数的自适应位宽的高精确度、轻量级机器学习模型的技术。具体而言,修改了常规训练阶段,以将模型的每一层的参数朝8位范围内的整数值推进。在完成训练阶段之后,所获得的浮点精度模型(例如,FP32精度)可选地通过剪枝过程以产生精简的稀疏网络。另外,全精度模型(例如,原始训练模型或剪枝模型)通过非均匀量化转换为缩减的自适应位宽模型,例如,将FP32参数转换为其具有对应缩减位宽的量化对等物,该对应缩减位宽通过使用校准数据集的多轮测试确认。具体地,校准数据集前向传播通过带有用于不同层的不同位宽组合的数据模型的量化版本,直到确认合适的缩减位宽集(例如,最小位宽集)为止,该合适的缩减位宽集产生可接受的模型精确度水平(例如,具有低于阈值信息丢失量的信息丢失量,或者具有最小的信息丢失量)。然后部署缩减的自适应位宽模型(例如,部署在便携式电子设备上)以执行预定任务。一方面,一种在计算设备上提供自适应位宽神经网络模型的方法,包括:获得包括多个层的第一神经网络模型,其中,多个层中的每一层具有对应参数集,并且每一个参数都用与第一神经网络模型的原始位宽对应的数据精度水平表示;通过使用用于存储第一神经网络模型的不同层的对应参数集的对应缩减位宽,缩减第一神经网络模型在计算设备上的占用,其中:当第一神经网络模型的两个或者多个层中的每一层用对应于不同缩减位宽的不同量化程度表示时,使用验证数据集进行通过第一神经网络模型的前向传播的多次迭代,直到两个或更多层的对应响应统计满足预定信息丢失阈值为止,从而确定对应缩减位宽的优选值;以及,生成包括多个层的缩减的神经网络模型,其中,多个层中的两个或者更多个中的每一层包括对应量化参数集,且每一个量化参数由通过多次迭代确定的用于层的对应缩减位宽的优选值表示。根据一些实施例,一种电子设备包括:一个或多个处理器,以及,存储一个或多个程序的内存;一个或多个程序配置成由一个或多个处理器执行,并且该一个或多个程序包括用于执行本文中所描述的方法中的任一项的操作或者引起操作的执行的指令。根据一些实施例,一种非瞬态计算机可读存储介质具有在其中存储的指令,当由电子设备执行该指令时,导致设备执行本文中所描述的方法中的任一项的操作或者导致操作的执行。根据一些实施例,一种电子设备包括:用于执行本文中所描述的方法中的任一项的操作或者引起其操作的装置。根据一些实施例,用于在电子设备中使用的一种信息处理装置包括用于执行本文中所描述的方法中的任一项的操作或者引起操作的执行的手段。在附图和下文的描述中陈述在该说明书中描述的本主题的一个或多个实施方式的细节。从说明书、附图以及权利要求,本主题的其他特征、方面和优势将变得显而易见。附图说明图1示出根据一些实施例的示例机器学习系统在其中操作的环境。图2是根据一些实施例的示例模型生成系统的框图。图3是根据一些实施例的示例模型部署系统的框图。图4是根据一些实施例的示例机器学习模型。图5是根据一些实施例的模型缩减过程的流程图。具体实施方式现在将详细参考实施例,其示例在附图中示出。在下文的详细描述中,阐述了许多具体细节以便提供对所描述的各种实施例的透彻理解。然而,对于本领域普通技术人员将显而易见的是,可以在没有这些具体细节的情况下实践各种所述实施例。在其他情形中,没有详细描述众所周知的方法、步骤、部件、电路和网络,以免不必要地使实施例的方面晦涩难懂。还将理解,尽管在本文中在一些情形中使用术语第一、第二等描述各种元件,但是这些元件不应该被这些术语限制。这些术语仅用于区分一个元件与另一个元件。例如,在不脱离所描述的各种实施例的范围的情况下,第一层可以被称为第二层,并且类似地,一个层可以被称为第一层。第一层和第二层都是模型的层,但是除非上下文另有明确指示,否则它们不是同一层。在本文中对所述各种实施例的描述中使用的术语仅出于描述具体实施例的目的,而不旨在进行限制。如在所述各种实施例和所附权利要求的描述中使用地,单数形式“一个”、“一种”和“所述”也旨在包括复数形式,除非上下文另外明确指出。还应理解,本文所用的术语“和/或”是指并涵盖一个或多个关联所列项目的任何和所有可能的组合。还将理解,当在本说明书中使用时,术语“包括”和/或“包含”规定了所陈述的特征、整体、步骤、操作、元件和/或部件的存在,但是不预先排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、部件和/或其组合。如本文所用地,取决于上下文,术语“如果”可选地被解释为意思是“何时”或“在……时”或“响应于确定”或“响应于检测”。类似地,取决于上下文,短语“如果确定”或“如果检测到[所陈述的状况或事件]”可选地被解释为意思是“在确定时”或“响应于确定”或“在检测到[所陈述的状况或事件]时”或“响应检测到[所陈述的状况或事件]”。图1是示出示例机器学习系统100的框图,模型生成系统102和模型部署系统104在该示例机器学习系统100中操作。在一些实施例中,模型生成系统102是有一个或多个处理器和内存的服务器系统,该服务器系统能够进行大型计算和数据处理任务。在一些实施例中,模型部署系统本文档来自技高网
...

【技术保护点】
1.一种在计算设备上提供自适应位宽神经网络模型的方法,包括:/n在所述计算设备处,其中,所述计算设备具有一个或多个处理器和内存:/n获得包括多个层的第一神经网络模型,其中,所述多个层中的每一层具有对应参数集,并且每一个参数都用与所述第一神经网络模型的原始位宽对应的数据精度水平表示;/n通过使用用于存储所述第一神经网络模型的不同层的对应参数集的对应缩减位宽,缩减所述第一神经网络模型在所述计算设备上的占用,其中:/n当所述第一神经网络模型的两个或者多个层中的每一层用对应于不同缩减位宽的不同量化程度表示时,使用验证数据集进行通过所述第一神经网络模型的前向传播的多次迭代,直到所述两个或更多层的对应响应统计满足预定信息丢失阈值为止,从而确定所述对应缩减位宽的优选值;以及,/n生成包括所述多个层的缩减的神经网络模型,其中,所述多个层中的两个或者更多个层中的每一层包括一个对应量化参数集,且每个量化参数用所述层的所述对应缩减位宽的优选值来表示,所述对应缩减位宽的优选值是通过所述多次迭代确定的。/n

【技术特征摘要】
【国外来华专利技术】20170814 US 15/676,7011.一种在计算设备上提供自适应位宽神经网络模型的方法,包括:
在所述计算设备处,其中,所述计算设备具有一个或多个处理器和内存:
获得包括多个层的第一神经网络模型,其中,所述多个层中的每一层具有对应参数集,并且每一个参数都用与所述第一神经网络模型的原始位宽对应的数据精度水平表示;
通过使用用于存储所述第一神经网络模型的不同层的对应参数集的对应缩减位宽,缩减所述第一神经网络模型在所述计算设备上的占用,其中:
当所述第一神经网络模型的两个或者多个层中的每一层用对应于不同缩减位宽的不同量化程度表示时,使用验证数据集进行通过所述第一神经网络模型的前向传播的多次迭代,直到所述两个或更多层的对应响应统计满足预定信息丢失阈值为止,从而确定所述对应缩减位宽的优选值;以及,
生成包括所述多个层的缩减的神经网络模型,其中,所述多个层中的两个或者更多个层中的每一层包括一个对应量化参数集,且每个量化参数用所述层的所述对应缩减位宽的优选值来表示,所述对应缩减位宽的优选值是通过所述多次迭代确定的。


2.根据权利要求1所述的方法,其特征在于:
在所述缩减的神经网络模型的多个层中的第一层具有第一缩减位宽,所述第一缩减位宽小于所述第一神经网络模型的原始位宽,
在所述缩减的神经网络模型的多个层中的第二层具有第二缩减位宽,所述第二缩减位宽小于所述第一神经网络模型的原始位宽;以及,
在所述缩减的神经网络模型中,所述第一缩减位宽与所述第二缩减位宽不同。


3.根据权利要求1所述的方法,其特征在于,缩减所述第一神经网络的占用包括:
对于所述两个或更多层中具有第一参数集的第一层,所述第一参数集用对应于所述第一神经网络模型的原始位宽的数据精度水平表示:
当所述多个层的对应参数集用所述第一神经网络模型的原始位宽表示时,随着所述验证数据集作为输入通过所述第一神经网络模型前向传播,收集所述第一层的激活值的对应基准统计分布;
当所述第一层的对应参数集用小于所述第一神经网络模型的原始位宽的第一缩减位宽表示时,随着所述验证数据集作为输入通过所述第一神经网络模型前向传播,收集所述第一层的激活值的对应修改的统计分布;
确定在所述第一层的激活值的对应修改的统计分布和所述第一层的激活值的对应基准统计分布之间的预定散度;以及,
确认所述第一缩减位宽的最小值,对于所述最小值,由于所述第一层的位宽的进一步缩减引起的预定散度的缩减低于预定阈值。


4.根据权利要求3所述的方法,其特征在于:
用所述第一缩减位宽表示所述第一层的对应参数集包括,对所述第一层的对应参数集执行非均匀量化,以生成所述第一层的第一量化参数集,以及,
在通过所述第一层的每一次前向传播期间,基于所述第一层的激活值的基准统计分布,选择所述第一层的非均匀量化的最大边界值。


5.根据权利要求1所述的方法,其特征在于,获得包括所述多个层的第一神经网络模型包括:
在所述第一神经网络的训练期间:
对于所述两个或更多层中具有第一参数集的第一层,所述第一参数集用对应于所述第一神经网络模型的原始位宽的数据精度水平表示:
根据在与所述第一层对应的第一权重集和所述第一权重集的整数部分之间的差异,获得对应于所述第一层的整数正则化项;以及,
在通过所述第一层的前向传播期间,将所述整数正则化项添加至偏差项,使得在通过所述第一层的逆向传播期间,梯度被更改,以将所述第一参数集的值推向整数值。


6.根据权利要求5所述的方法,其特征在于,获得包括所述多个层的第一神经网络模型包括:
在所述第一神经网络的训练期间:
对于所述两个或更多层中具有第一参数集的第一层,所述第一参数集用对应于所述第一神经网络模型的原始位宽的数据精度水平表示,在通过所述第一层的前向传播期间,利用小于所述第一神经网络模型的原始位宽的预定缩减位宽,对所述第一参数集执行均匀量化。


7.根据权利要求6所述的方法,其特征在于,获得包括所述多个层的第一神经网络模型包括:
在所述第一神经网络的训练期间:
对于所述两个或更多层中具有第一参数集的第一层,所述第一参数集用对应于所述第一神经网络模型的原始位宽的数据精度水平表示,在通过所述第一层的逆向传播期间,舍弃利用所述预定缩减位宽对所述第一参数集执行均匀量化。


8.一种计算设备,包括:
一个或多个处理器;以及,
内存,所述内存包括指令,当由所述一个或多个处理器执行所述指令时,导致所述处理器执行包括如下的操作:
获得包括多个层的第一神经网络模型,其中,所述多个层中的每一层具有对应参数集,并且每一个参数都用与所述第一神经网络模型的原始位宽对应的数据精度水平表示;
通过使用用于存储所述第一神经网络模型的不同层的对应参数集的对应缩减位宽,缩减所述第一神经网络模型在所述计算设备上的占用,其中:
当所述第一神经网络模型的两个或者多个层中的每一层用对应于不同缩减位宽的不同量化程度表示时,使用验证数据集进行通过所述第一神经网络模型的前向传播的多次迭代,直到所述两个或更多层的对应响应统计满足预定信息丢失阈值为止,从而确定所述对应缩减位宽的优选值;以及,
生成包括所述多个层的缩减的神经网络模型,其中,所述多个层中的两个或者更多个层中的每一层包括一个对应量化参数集,且每个量化参数用所述层的所述对应缩减位宽的优选值表示,所述对应缩减位宽的优选值通过所述多次迭代确定。


9.根据权利要求8所述的计算设备,其特征在于:
在所述缩减的神经网络模型的多个层中的第一层具有第一缩减位宽,所述第一缩减位宽小于所述第一神经网络模型的原始位宽,
在所述缩减的神经网络模型的多个层中的第二层具有第二缩减位宽,所述第二缩减位宽小于所述第一神经网络模型的原始位宽;以及,
在所述缩减的神经网络模型,所述第一缩减位宽与所述第二缩减位宽不同。


10.根据权利要求8所述的计算设备,其特征在于,缩减所述第一神经网络的占用包括:
对于所述两个或更多层中具有第一参数集的第一层,所述第一参数集用对应于所述第一神经网络模型的原始位宽的数据精度水平表示:
当所述多个层的对应参数集用所述第一神经网络模型的原始位宽表示时,随着所述验证数据集作为输入通过所述第一神经网络模型前向传播,收集所述第一层的激活值的对应...

【专利技术属性】
技术研发人员:王奥森周华陈昕
申请(专利权)人:美的集团股份有限公司
类型:发明
国别省市:广东;44

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

1