【技术实现步骤摘要】
【国外来华专利技术】神经网络的自适应位宽缩减
本公开涉及机器学习实时应用,并且更具体地,涉及通过缩减机器学习模型的模型大小和计算占用(computationalfootprint)改善用于便携式设备和实时应用的机器学习模型,并且保持相同的精确度。
技术介绍
机器学习在许多领域具有广泛的适用性,这些领域包括计算机视觉、语音识别、机器翻译、社交网络过滤、棋牌游戏和视频游戏、医疗诊断以及许多其他领域。诸如人工神经网络(ANN)的机器学习模型是由简单单元(神经元)组成的网络,简单单元接收输入,根据该输入改变其内部状态(激活),并且根据输入和激活产生输出。该网络是通过有向加权图将某些神经元的输出连接到其他神经元的输入而形成的。权重以及计算激活的函数根据预定学习规则,通过迭代学习过程逐渐进行修改,直到实现预定的收敛为止。机器学习模型有很多变型,并且有不同的学习范式。卷积神经网络(CNN)是一类前馈网络,其由一个或多个具有全连接层(对应于ANN的层)的卷积层组成。CNN具有关联权重和池化层,且能够利用标准逆向传播训练。深度学习模型,诸如VGG16和不同类型的ResNet,是包含多于一个隐藏层的大型模型,其能够产生与人类专家相媲美的分析结果,这使它们成为许多真实世界应用的有吸引力的候选对象。神经网络模型通常具有几千到几百万个单位和数百万个参数。更深和更高精确度的CNN要求大量的计算资源,这使得它们对于实时应用或在电池寿命、内存和处理能力有限的便携式设备上的部署不太实用。现有的用于为各种应用部署大型神经网络模型(例如,深度学习模型)的最新解决方案 ...
【技术保护点】
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
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。