CN109359728B - 计算神经网络压缩最佳定点位数的方法、存储介质和装置 - Google Patents

计算神经网络压缩最佳定点位数的方法、存储介质和装置 Download PDF

Info

Publication number
CN109359728B
CN109359728B CN201810992672.3A CN201810992672A CN109359728B CN 109359728 B CN109359728 B CN 109359728B CN 201810992672 A CN201810992672 A CN 201810992672A CN 109359728 B CN109359728 B CN 109359728B
Authority
CN
China
Prior art keywords
fixed
point
deep learning
learning algorithm
current
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.)
Active
Application number
CN201810992672.3A
Other languages
English (en)
Other versions
CN109359728A (zh
Inventor
杨志明
陈巍巍
陈腊梅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Shenxin Intelligent Technology Co., Ltd.
Original Assignee
Deep Thinking Of Artificial Intelligence Technology Shanghai Co ltd
Ideepwise Artificial Intelligence Robot Technology Beijing Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Deep Thinking Of Artificial Intelligence Technology Shanghai Co ltd, Ideepwise Artificial Intelligence Robot Technology Beijing Co ltd filed Critical Deep Thinking Of Artificial Intelligence Technology Shanghai Co ltd
Priority to CN201810992672.3A priority Critical patent/CN109359728B/zh
Publication of CN109359728A publication Critical patent/CN109359728A/zh
Application granted granted Critical
Publication of CN109359728B publication Critical patent/CN109359728B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)

Abstract

本发明提供一种计算神经网络压缩最佳定点位数的方法、存储介质和装置,包括:步骤11:设置FPn为初始值;步骤12:按照当前FPn,将卷积层参数进行定点化处理,以构建当前定点化深度学习算法;将L个样本数据对中的样本输入值逐个输入当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及Xl的标准输出Yl,记录当前定点化深度学习算法的输出Y’l,l=1,2…L;步骤13:通过比较Yl与Y’l,判断Y’l是否符合预设要求,如果是,则记录当前FPn为定点化深度学习算法的定点位数最终值,结束本流程,否则执行步骤14;步骤14:调整FPn数值,返回步骤12。本发明方法,可以快速确定定点化深度学习算法中的定点位数,可提高深度学习算法的运算速度,节省运算时间。

Description

计算神经网络压缩最佳定点位数的方法、存储介质和装置
技术领域
本发明涉及计算机领域,特别涉及一种计算神经网络压缩最佳定点位数的方法、存储介质和装置。
背景技术
深度学习算法是指多层神经网络上运用各种机器学习算法解决图像,文本等各种问题的算法集合。深度学习算法的核心是特征学习,旨在通过分层网络获取分层次的特征信息,从而解决以往需要人工设计特征的重要难题。
深度学习算法在很多应用中都取得了极大的成功。在计算机视觉领域,特别是针对图像分类问题,卷积神经网络的引入使得图像分类的精度大幅提高。
虽然深度学习算法具有先进的性能,但与传统方法相比需要更多的计算和内存资源,因此大多数深度学习算法需要依赖于大型服务器。然而,许多嵌入式系统也希望具有由深度学习算法实现的高精度实时目标识别功能或其他多种功能。不过将功能强大的深度学习算法用于小型系统必须克服资源有限的问题。
深度学习算法多采用32位或64位浮点数数字表示系统数据,然而在某些情况下,使用低bit的定点数代替浮点数对算法的运算结果影响不大。因此针对现有深度学习算法参数和数据具备大量冗余的事实,可以通过深度学习算法定点化(把浮点数转换位定点数)来大幅降低资源使用量。
因此,在不影响算法精度的条件下,如何快速确定深度学习算法的定点化策略至关重要。
发明内容
有鉴于此,本发明提供一种计算神经网络压缩最佳定点位数的方法、存储介质和装置,应用于深度学习算法,可解决深度学习算法运算定点化策略的确定问题。
本发明提供一种计算神经网络压缩最佳定点位数的方法,应用于定点化深度学习算法中,定点化深度学习算法包括N个卷积层,该方法用于为卷积层n的卷积层参数确定定点化处理的预设进制位数FPn,n=1,2…N,包括:
步骤11:设置FPn为初始值;
步骤12:按照当前FPn,将卷积层参数进行定点化处理,以构建当前定点化深度学习算法;卷积层参数至少包括输入矩阵数据、输出矩阵数据、卷积层权值、偏差中的任一参数;
将L个样本数据对中的样本输入值逐个输入当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及Xl的标准输出Yl,记录当前定点化深度学习算法的输出Y’l,l=1,2…L;
步骤13:通过比较Yl与Y’l,判断Y’l是否符合预设要求,如果是,则记录当前FPn为定点化深度学习算法的定点位数最终值,结束本流程,否则执行步骤14;
步骤14:调整FPn数值,返回步骤12。
本发明还提供一种非瞬时计算机可读存储介质,非瞬时计算机可读存储介质存储指令,指令在由处理器执行时使得处理器执行上述的计算神经网络压缩最佳定点位数的方法中的步骤。
本发明还提供一种计算神经网络压缩最佳定点位数的装置,包括处理器和上述的非瞬时计算机可读存储介质。
本发明计算神经网络压缩最佳定点位数的方法,在不影响深度学习算法计算精度的前提下,可以快速确定定点化深度学习算法中的定点位数,算法提高未定点化深度学习算法的运算速度,节约未定点化深度学习算法运算时间,降低运算功耗。
附图说明
图1为本发明计算神经网络压缩最佳定点位数的方法的流程图;
图2为深度学习算法中神经元的结构示意图;
图3为图1的第一实施例;
图4为图1的第二实施例;
图5为图1的第三实施例;
图6为本发明计算神经网络压缩最佳定点位数的装置的结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
为了便于理解本发明,首先对本发明涉及的一些概念进行如下定义:
定点数为具有固定字长位数的数据。例如某一32位(二进制)定点数,其中符号部分1位,整数部分15位,小数部分16位,则分别计算浮点数的符号、整数部分与小数部分,对应得到定点数的各部分。
定点化处理:将浮点数转换为定点数。
未定点化深度学习算法:保留该算法中各个数据的浮点数特征,不对浮点数做定点化处理。
定点化深度学习算法:是指深度学习算法的运行中嵌入定点化处理,用定点数替代浮点数。例如在深度学习算法调用、输入或输出某一浮点数之前,先将该浮点数转换为定点数;再调用、输入或输出该浮点数对应的定点数。
如图1所示,本发明提供一种计算神经网络压缩最佳定点位数的方法,应用于定点化深度学习算法中,定点化深度学习算法包括N个卷积层,该方法用于为卷积层n的卷积层参数确定定点化处理的预设进制位数FPn,n=1,2…N。
例如,确定第1卷积层的预设进制位数为FP1,第2卷积层的预设进制位数FP2……,当第1卷积层的某个浮点数需要定点化处理时,将该浮点转换为预设进制FPn位数的定点数。
预设进制可以是二进制、八进制或十六进制,一般采用二进制。
以二进制为例,定点化处理的二进制位数包括:三十二位定点、十六位定点、八位定点、四位定点等,也可是1~32中的任一自然数定点,例如,三十二位定点表示用32个二进制来表示一个定点数,十六位定点表示用16个二进制来表示一个定点数,不同个数的二进制位表示定点数的数值范围不同。
如图2所示,深度学习算法包括多层卷积层,图中每一层为一个卷积层,每个卷积层包含至少一个神经元,其中一个圆圈代表一个神经元,每个神经元包含数据输入接口、数据处理器和数据输出接口,并且每个神经元都包含至少一个权重参数。每个神经元的在数据输出接口输出的数据传入下一个神经元的数据输入接口。
本申请方法包括:
步骤11:设置FPn为初始值。
假设N=8,则步骤11可设置定点化处理的二进制位数FP1~FP8的初始值为相同的一个值,例如8或16,也可以设置FP1~FP8具有各自不同的初始值。
经大量测试,4≤初始值≤16时,本申请方法的运行时长最短。
步骤12:按照当前FPn,将卷积层参数进行定点化处理,以构建当前定点化深度学习算法;卷积层参数至少包括输入矩阵数据、输出矩阵数据、卷积层权值、偏差中的任一参数;
将L个样本数据对中的样本输入值逐个输入当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及Xl的标准输出Yl,记录当前定点化深度学习算法的输出Y’l,l=1,2…L。
上述卷积层参数为定点化深度学习算法中需进行定点化处理的数据。
步骤12为按当前FPn运行定点化深度学习算法,并记录该定点化深度学习算法的结果。
步骤13:通过比较Yl与Y’l,判断Y’l是否符合预设要求,如果是,则记录当前FPn为定点化深度学习算法的定点位数最终值,结束本流程,否则执行步骤14;
步骤14:调整FPn数值,返回步骤12。
样本数据中Yl是Y’l的标准答案,通过比较Y’l与Yl即可判断定点化模型的输出是否符合预设要求,预设要求为用户设定的定点化模型的输出精度要求。
可选地,可根据Y’l与Yl计算定点化模型的准确率,l=1,2…L,判断准确率是否不低于预设最低准确率。
例如,设P为L个样本的正确率,令P=m/L,m为Y’l正确的样本个数。
本发明图1的方法,可以快速确定定点化深度学习算法中的定点位数,且本申请的定点化深度学习算法在不影响深度学习算法计算精度的前提下,提高了深度学习算法的运算速度,节约深度学习算法运算时间,降低运算功耗。
下面给出图1方法的实施例。
实施例一
令定点化深度学习算法的最小预设进制位数为bw1;定点化深度学习算法的最大预设进制位数为bw2。
则本申请图1的一种实现方式如图3所示,与图1的差异仅在于步骤11和步骤14。
步骤11:设置FPn为初始值,初始值为bw1;
步骤12:按照当前FPn,将卷积层参数进行定点化处理,以构建当前定点化深度学习算法;卷积层参数至少包括输入矩阵数据、输出矩阵数据、卷积层权值、偏差中的任一参数;
将L个样本数据对中的样本输入值逐个输入当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及Xl的标准输出Yl,记录当前定点化深度学习算法的输出Y’l,l=1,2…L;
步骤13:通过比较Yl与Y’l,判断Y’l是否符合预设要求,如果是,则记录当前FPn为定点化深度学习算法的定点位数最终值,结束本流程,否则执行步骤14;
步骤14为:调整FPn数值,FPn=取整((FPn+bw2)/2),返回步骤12。
基于图3可知,实施例一采用二分法确定定点化深度学习算法的FPn数值,该方法的优势在于,处理速度快,可迅速定位最佳FPn数值。
实施例二
本申请图1的另一种实现方法还可以如图4所示,包括:
步骤11:设置FPn为初始值;
步骤21:按照当前FPn,将卷积层参数进行定点化处理,以构建当前定点化深度学习算法;将L个样本数据对中的样本输入值逐个输入当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及Xl的标准输出Yl,记录当前定点化深度学习算法的输出Y’l,l=1,2…L;
步骤22:通过比较Yl与Y’l,判断Y’l是否符合预设要求,如果是,则记录当前FPn(n=1,2…N)为定点化深度学习算法的定点位数最终值,结束本流程,否则执行步骤23;
步骤23:将L个样本数据对中的样本输入值逐个输入未定点化深度学习算法,记录数据集An={Sni|l=1,2…L,i≥1},其中,Sni为任一卷积层参数,n=1,2…N;
步骤24:计算N个卷积层每一层的离散化指数Dn,Dn用于指示数据集An的离散程度,取前预设个数最大Dn所对应的卷积层为短板层;
步骤25:调整短板层的FPn数值,执行步骤12;
步骤12:按照当前FPn,将卷积层参数进行定点化处理,以构建当前定点化深度学习算法;卷积层参数至少包括输入矩阵数据、输出矩阵数据、卷积层权值、偏差中的任一参数;
将L个样本数据对中的样本输入值逐个输入当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及Xl的标准输出Yl,记录当前定点化深度学习算法的输出Y’l,l=1,2…L;
步骤13:通过比较Yl与Y’l,判断Y’l是否符合预设要求,如果是,则记录当前FPn为定点化深度学习算法的定点位数最终值,结束本流程,否则执行步骤14;
步骤14为:调整短板层的FPn数值,返回步骤12。
图4的方法通过定位最关键的“短板层”,而短板层是在整个算法中需定点位数最大的卷积层,图4通过调整“短板层”的定点位数,达到网络压缩最优化的目的。
实施例三
本申请图1的另一种实现方法还可以如图5所示,包括:
步骤31:将L个样本数据对中的样本输入值逐个输入未定点化深度学习算法,记录数据集An={Sni|l=1,2…L,i≥1},其中,Sni为任一所述卷积层参数,n=1,2…N;
步骤32:计算N个卷积层每一层的离散化指数Dn,Dn用于指示数据集An的离散程度;
步骤11:根据Dn设置FPn的初始值;
步骤12:按照当前FPn,将卷积层参数进行定点化处理,以构建当前定点化深度学习算法;卷积层参数至少包括输入矩阵数据、输出矩阵数据、卷积层权值、偏差中的任一参数;
将L个样本数据对中的样本输入值逐个输入当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及Xl的标准输出Yl,记录当前定点化深度学习算法的输出Y’l,l=1,2…L;
步骤13:通过比较Yl与Y’l,判断Y’l是否符合预设要求,如果是,则记录当前FPn为定点化深度学习算法的定点位数最终值,结束本流程,否则执行步骤14;
步骤14为:调整FPn数值,返回步骤12。
一般而言Dn值越大,则表示数据越离散,则对应FPn也应越大,因此根据Dn匹配FPn的初始值也可以达到快定确定定点化位数的目的。
在图4或图5的方法中,Dn可以是An的标准偏差,或者Dn=log2(maxn)-log2(meann)或Dn=log2(maxn)-log2(mediann),其中,maxn=max(An),meann=mean(An),mediann=median(An),n=1,2…N。
或者,令卷积层参数中的输入矩阵数据为S1ni、输出矩阵数据为S2ni、卷积层权值或偏差参数为S3ni,n=1,2…N;相应地,A1n={S1ni|l=1,2…L,i≥1},A2n={S2ni|l=1,2…L,i≥1};A3n={S3ni|l=1,2…L,i≥1},参照上述离散化指数的计算公式分别计算D1n、D2n、D3n;最后令Dn=max(D1n,D2n,D3n)。
图4中的预设个数可以根据经验来设定,大量测试表明,预设个数满足:1≤预设个数≤8,即需要调整的短板层不大于8个。。
图1或图4中的FPn的初始值可设置为8或16。
假设短板层的初始值FPn均为最小值8,则步骤14中的调整为“增大FPn数值”,增大的数值可以是1或2或其他数值。
假设短板层的初始值FPn不是最小值8,则步骤14中的调整可以为“增大FPn数值”或“减小FPn数值”。
鉴于硬件对定点数运算的速度高于对浮点数的运算速度,且功耗低于对浮点数运算的功耗,因而定点化深度学习算法相比未定点化深度学习算法,可极大提高算法的运算速度。本发明的另一个优点在于,经过本发明确认后的定点化位数最终值,能确保不影响深度学习算法的计算精度。
本发明还提供一种非瞬时计算机可读存储介质,非瞬时计算机可读存储介质存储指令,指令在由处理器执行时使得处理器执行上述的计算神经网络压缩最佳定点位数的方法中的步骤。
本发明还提供一种计算神经网络压缩最佳定点位数的装置,包括处理器和上述的非瞬时计算机可读存储介质。
本发明的计算神经网络压缩最佳定点位数的装置,应用于定点化深度学习算法中,定点化深度学习算法包括N个卷积层,该装置用于为卷积层n的卷积层参数确定定点化处理的预设进制位数FPn,n=1,2…N,如图6所示,该装置包括:
初始化模块:设置FPn为初始值;
定点化深度学习算法模块:按照当前FPn,将卷积层参数进行定点化处理,以构建当前定点化深度学习算法;卷积层参数至少包括输入矩阵数据、输出矩阵数据、卷积层权值、偏差中的任一参数;
将L个样本数据对中的样本输入值逐个输入当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及Xl的标准输出Yl,记录当前定点化深度学习算法的输出Y’l,l=1,2…L;
判断模块1:通过比较Yl与Y’l,判断Y’l是否符合预设要求,如果是,则记录当前FPn为定点化深度学习算法的定点位数最终值,结束本流程,否则执行调整模块;
调整模块:调整FPn数值,返回定点化深度学习算法模块。
令定点化深度学习算法的最小预设进制位数为bw1;定点化深度学习算法的最大预设进制位数为bw2;
则初始化模块还包括:初始值为bw1;
调整模块还包括:FPn=取整((FPn+bw2)/2)。
可选地,在初始化模块之后以及定点化深度学习算法模块还包括:
定点化深度学习算法模块:按照当前FPn,将所述卷积层参数进行定点化处理,以构建当前定点化深度学习算法;将L个样本数据对中的样本输入值逐个输入当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及Xl的标准输出Yl,记录当前定点化深度学习算法的输出Y’l,l=1,2…L;
判断模块2:通过比较Yl与Y’l,判断Y’l是否符合预设要求,如果是,则记录当前FPn为定点化深度学习算法的定点位数最终值,结束本流程,否则执行未定点化深度学习算法模块;
未定点化深度学习算法模块:将L个样本数据对中的样本输入值逐个输入未定点化深度学习算法,记录数据集An={Sni|l=1,2…L,i≥1},其中,Sni为任一卷积层参数,n=1,2…N;
离散化指数模块:计算N个卷积层每一层的离散化指数Dn,Dn用于指示数据集An的离散程度,取前预设个数最大Dn所对应的卷积层为短板层;
调整模块1:调整短板层的FPn数值,执行定点化深度学习算法模块;
其中,调整模块中调整FPn数值包括:调整短板层的FPn数值。
可选地,在初始化模块之前还包括:
未定点化深度学习算法模块:将L个样本数据对中的样本输入值逐个输入未定点化深度学习算法,记录数据集An={Sni|l=1,2…L,i≥1},其中,Sni为任一卷积层参数,n=1,2…N;
离散化指数模块:计算N个卷积层每一层的离散化指数Dn,Dn用于指示数据集An的离散程度;
初始化模块中设置FPn为初始值包括:根据Dn设置FPn的初始值。
可选地,Dn=log2(maxn)-log2(meann)或Dn=log2(maxn)-log2(mediann),其中,maxn=max(An),meann=mean(An),mediann=median(An),n=1,2…N。
或者,令卷积层参数中的输入矩阵数据为S1ni、输出矩阵数据为S2ni、卷积层权值或偏差参数为S3ni,n=1,2…N;相应地,A1n={S1ni|l=1,2…L,i≥1},A2n={S2ni|l=1,2…L,i≥1};A3n={S3ni|l=1,2…L,i≥1},参照上述离散化指数的计算公式分别计算D1n、D2n、D3n;最后令Dn=max(D1n,D2n,D3n)。
可选地,4≤初始值≤16。
可选地,1≤预设个数≤8。
需要说明的是,本发明的计算神经网络压缩最佳定点位数的装置的实施例,与计算神经网络压缩最佳定点位数的方法的实施例原理相同,相关之处可以互相参照。
以上所述仅为本发明的较佳实施例而已,并不用以限定本发明的包含范围,凡在本发明技术方案的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种计算神经网络压缩最佳定点位数的方法,其特征在于,所述方法在嵌入式系统中实现,所述方法应用于定点化深度学习算法中,所述定点化深度学习算法包括N个卷积层,所述方法用于为卷积层n的卷积层参数确定定点化处理的预设进制位数FPn,n=1,2…N,包括:
步骤11:设置FPn为初始值;
步骤12:按照当前FPn,将所述卷积层参数进行定点化处理,以构建当前定点化深度学习算法;所述卷积层参数至少包括输入矩阵数据、输出矩阵数据、卷积层权值、偏差中的任一参数;
将L个样本数据对中的样本输入值逐个输入所述当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及所述Xl的标准输出Yl,记录所述当前定点化深度学习算法的输出Y’l,l=1,2…L;
步骤13:通过比较Yl与Y’l,判断所述Y’l是否符合预设要求,如果是,则记录当前FPn为所述定点化深度学习算法的定点位数最终值,结束本流程,否则执行步骤14;
步骤14:调整所述FPn数值,返回步骤12;
在所述步骤11之后以及步骤12之前还包括:
步骤21:按照当前FPn,将所述卷积层参数进行定点化处理,以构建当前定点化深度学习算法;
将L个样本数据对中的样本输入值逐个输入所述当前定点化深度学习算法,其中,一样本数据对包括样本输入值Xl、以及所述Xl的标准输出Yl,记录所述当前定点化深度学习算法的输出Y’l,l=1,2…L;
步骤22:通过比较Yl与Y’l,判断所述Y’l是否符合预设要求,如果是,则记录当前FPn为所述定点化深度学习算法的定点位数最终值,结束本流程,否则执行步骤23;
步骤23:将L个样本数据对中的样本输入值逐个输入未定点化深度学习算法,记录数据集An={Sni|l=1,2…L,i≥1},其中,Sni为任一所述卷积层参数,n=1,2…N;
步骤24:计算所述N个卷积层每一层的离散化指数Dn,所述Dn用于指示数据集An的离散程度,取前预设个数最大Dn所对应的卷积层为短板层;
步骤25:调整所述短板层的FPn数值,执行步骤12;
所述步骤14中调整所述FPn数值包括:调整所述短板层的FPn数值。
2.根据权利要求1所述的方法,其特征在于,令所述定点化深度学习算法的最小预设进制位数为bw1;所述定点化深度学习算法的最大预设进制位数为bw2;
则所述步骤11还包括:所述初始值为bw1;
所述步骤14还包括:FPn=取整((FPn+bw2)/2)。
3.根据权利要求1所述的方法,其特征在于,在所述步骤11之前还包括:
步骤31:将L个样本数据对中的样本输入值逐个输入未定点化深度学习算法,记录数据集An={Sni|l=1,2…L,i≥1},其中,Sni为任一所述卷积层参数,n=1,2…N;
步骤32:计算所述N个卷积层每一层的离散化指数Dn,所述Dn用于指示数据集An的离散程度;
所述步骤11中设置FPn为初始值包括:根据所述Dn设置FPn的初始值。
4.根据权利要求1或3所述的方法,其特征在于,Dn=log2(maxn)-log2(meann)或Dn=log2(maxn)-log2(mediann),
其中,maxn=max(An),meann=mean(An),mediann=median(An),n=1,2…N。
5.根据权利要求1所述的方法,其特征在于,4≤初始值≤16。
6.根据权利要求1所述的方法,其特征在于,1≤预设个数≤8。
7.一种非瞬时计算机可读存储介质,所述非瞬时计算机可读存储介质存储指令,其特征在于,所述指令在由处理器执行时使得所述处理器执行如权利要求1至6中任一所述的计算神经网络压缩最佳定点位数的方法中的步骤。
8.一种计算神经网络压缩最佳定点位数的装置,其特征在于,包括处理器和如权利要求7所述的非瞬时计算机可读存储介质。
CN201810992672.3A 2018-08-29 2018-08-29 计算神经网络压缩最佳定点位数的方法、存储介质和装置 Active CN109359728B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810992672.3A CN109359728B (zh) 2018-08-29 2018-08-29 计算神经网络压缩最佳定点位数的方法、存储介质和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810992672.3A CN109359728B (zh) 2018-08-29 2018-08-29 计算神经网络压缩最佳定点位数的方法、存储介质和装置

Publications (2)

Publication Number Publication Date
CN109359728A CN109359728A (zh) 2019-02-19
CN109359728B true CN109359728B (zh) 2021-04-09

Family

ID=65350094

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810992672.3A Active CN109359728B (zh) 2018-08-29 2018-08-29 计算神经网络压缩最佳定点位数的方法、存储介质和装置

Country Status (1)

Country Link
CN (1) CN109359728B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106845640A (zh) * 2017-01-12 2017-06-13 南京大学 基于深度卷积神经网络的层内非均匀的等间隔定点量化方法
CN107239829A (zh) * 2016-08-12 2017-10-10 北京深鉴科技有限公司 一种优化人工神经网络的方法
CN107480770A (zh) * 2017-07-27 2017-12-15 中国科学院自动化研究所 可调节量化位宽的神经网络量化与压缩的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107239829A (zh) * 2016-08-12 2017-10-10 北京深鉴科技有限公司 一种优化人工神经网络的方法
CN106845640A (zh) * 2017-01-12 2017-06-13 南京大学 基于深度卷积神经网络的层内非均匀的等间隔定点量化方法
CN107480770A (zh) * 2017-07-27 2017-12-15 中国科学院自动化研究所 可调节量化位宽的神经网络量化与压缩的方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Fixed Point Quantization of Deep Convolutional Networks;Darryl D. Lin et.al;《arXiv:1511.06393v3 [cs.LG]》;20160602;第1-10页 *
卷积神经网络的定点化研究;陈俊保 等;《信息技术》;20180731(第7期);第94-96页 *

Also Published As

Publication number Publication date
CN109359728A (zh) 2019-02-19

Similar Documents

Publication Publication Date Title
CN108701250B (zh) 数据定点化方法和装置
US10491239B1 (en) Large-scale computations using an adaptive numerical format
WO2019238029A1 (zh) 卷积神经网络系统和卷积神经网络量化的方法
CN110874625B (zh) 一种数据处理方法及装置
CN111723901B (zh) 神经网络模型的训练方法及装置
JP2021072103A (ja) 人工ニューラルネットワークの量子化方法とそのためのシステム及び人工ニューラルネットワーク装置
CN109344893B (zh) 一种基于移动终端的图像分类方法
WO2021135715A1 (zh) 一种图像压缩方法及装置
CN111240746B (zh) 一种浮点数据反量化及量化的方法和设备
CN110717585A (zh) 神经网络模型的训练方法、数据处理方法和相关产品
WO2022021834A1 (zh) 神经网络模型确定方法、装置、电子设备、介质及产品
CN111967608A (zh) 数据处理方法、装置、设备及存储介质
CN112200296A (zh) 网络模型量化方法、装置、存储介质及电子设备
CN110874627A (zh) 数据处理方法、数据处理装置及计算机可读介质
Wu et al. Phoenix: A low-precision floating-point quantization oriented architecture for convolutional neural networks
CN116884398B (zh) 语音识别方法、装置、设备和介质
CN109359728B (zh) 计算神经网络压缩最佳定点位数的方法、存储介质和装置
CN113780523A (zh) 图像处理方法、装置、终端设备及存储介质
CN112686365B (zh) 运行神经网络模型的方法、装置和计算机设备
CN114065913A (zh) 模型量化方法、装置及终端设备
CN111614358B (zh) 基于分通道量化的特征提取方法、系统、设备及存储介质
CN114222997A (zh) 用于对神经网络进行后训练量化的方法和装置
WO2016110125A1 (zh) 高维向量的哈希方法、向量量化方法及装置
CN113902928A (zh) 图像特征的提取方法、装置及电子设备
CN113760407A (zh) 信息处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20190619

Address after: B203-205, Block B, Zhongguancun Development Building, 12 Information Road, Haidian District, Beijing, 100085

Applicant after: Deep thinking artificial intelligence robot technology (Beijing) Co., Ltd.

Applicant after: Shanghai Shenxin Intelligent Technology Co., Ltd.

Address before: 100084 B203, Zone B, Zhongguancun Development Building, 12 Shangdi Information Road, Haidian District, Beijing

Applicant before: Deep thinking artificial intelligence robot technology (Beijing) Co., Ltd.

CB02 Change of applicant information
CB02 Change of applicant information

Address after: B203-205, Block B, Zhongguancun Development Building, 12 Information Road, Haidian District, Beijing, 100085

Applicant after: IDEEPWISE ARTIFICIAL INTELLIGENCE ROBOT TECHNOLOGY (BEIJING) Co.,Ltd.

Applicant after: Deep thinking of artificial intelligence technology (Shanghai) Co.,Ltd.

Address before: B203-205, Block B, Zhongguancun Development Building, 12 Information Road, Haidian District, Beijing, 100085

Applicant before: IDEEPWISE ARTIFICIAL INTELLIGENCE ROBOT TECHNOLOGY (BEIJING) Co.,Ltd.

Applicant before: Shanghai Shenxin Intelligent Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant