CN105976027A - 数据处理方法和装置、芯片 - Google Patents
数据处理方法和装置、芯片 Download PDFInfo
- Publication number
- CN105976027A CN105976027A CN201610285564.3A CN201610285564A CN105976027A CN 105976027 A CN105976027 A CN 105976027A CN 201610285564 A CN201610285564 A CN 201610285564A CN 105976027 A CN105976027 A CN 105976027A
- Authority
- CN
- China
- Prior art keywords
- network
- layer network
- data
- layer
- output
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例公开了一种数据处理方法、数据装置及芯片。其中,数据处理方法包括:在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络;若该第i层网络为线性网络,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据;其中,N为大于1的整数,i为整数、且1<i≤N;通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i‑1层网络的训练数据;其中,i=N时,第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,第i层网络的输出相关数据为第i层网络的输出数据。本发明实施例可以节约片上存储资源。
Description
技术领域
本发明属于数据处理领域,特别是涉及一种数据处理方法和装置、芯片。
背景技术
近年来随着深度学习技术的飞速发展,深度学习技术中的代表性技术——卷积神经网络(Convolutional Neural Networks,简称CNN)在图像识别、语音识别等模式识别领域得到了广泛地应用。
为了缩短图像、语音等识别的时间,需要CNN具有强大的数据处理能力。目前通过增加片上存储资源来提高数据处理的速度已经成为一种趋势。但是片上存储资源是一种非常宝贵的资源,并且片上存储资源的增加是有限制的。
CNN对数据的处理过程包括:正向处理过程和反向处理过程两部分。对于图像、语音等的识别来说,只需要对数据进行正向处理,不需要对中间数据进行存储,这样对片上存储资源的要求不高。但是,对CNN的训练过程却需要对数据进行正向处理和反向处理两部分操作,并且正向处理过程中的中间数据都要存储下来,以用于通过反向处理过程对网络参数进行优化。因此,对CNN的训练过程需要占用大量的片上存储资源,可能会导致片上存储资源耗尽,从而影响CNN的数据处理能力。
发明内容
本发明实施例要解决的一个技术问题是:提供一种数据处理方法和装置、芯片,以节约片上存储资源。
根据本发明实施例的一个方面,提供一种数据处理方法,包括:
在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络;
若该第i层网络为线性网络,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据;其中,N为大于1的整数,i为整数、且1<i≤N;
通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据;
其中,i=N时,所述第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,所述第i层网络的输出相关数据为第i层网络的输出数据。
基于本发明上述方法的另一实施例中,还包括:
获取第N层网络的输出数据与参考数据之间的差异,获得所述差异函数;
计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
基于本发明上述方法的另一实施例中,所述差异函数具体为损失函数。
基于本发明上述方法的另一实施例中,还包括:
若该第i层网络为非线性网络,从存储单元中获取该第i层网络的输入数据;
通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
基于本发明上述方法的另一实施例中,所述识别该第i层网络是否为线性网络包括:
基于预先设置的网络类型标识,识别第i层网络是否为线性网络;所述网络类型标识包括非线性网络标识和/或非线性网络;或者
识别存储单元中是否存储有所述第i层网络的输入数据;若存储单元中未存储所述第i层网络的输入数据,所述第i层网络为线性网络;否则,若存储单元中存储有所述第i层网络的输入数据,所述第i层网络为非线性网络。
基于本发明上述方法的另一实施例中,所述基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据包括:
基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的输入数据的导数,获得第i-1层网络输出数据的导数值;所述训练数据具体为输出数据的导数值。
基于本发明上述方法的另一实施例中,还包括:
针对当前待处理的第i层网络,识别第i层网络是否为卷积层;
若第i层网络为卷积层,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的网络参数的导数,获得第i层网络的网络参数的导数值。
基于本发明上述方法的另一实施例中,获取第i-1层网络的训练数据之后,还包括:
识别i-1的值是否大于1;
若i-1的值大于1,以第i-1层网络作为新的第i层网络,执行所述识别该第i层网络是否为线性网络的操作;
若i-1的值等于1,识别第1层网络是否为卷积层;
若第1层网络为卷积层,基于第1层网络输出数据的导数值,计算第1层网络的输出相关数据对第1层网络的网络参数的导数,获得第1层网络的网络参数的导数值。
基于本发明上述方法的另一实施例中,获得网络参数的导数值之后,还包括:
分别采用各层网络参数的导数值对各自层的卷积系数进行更新。
基于本发明上述方法的另一实施例中,还包括:
在对N层神经网络进行正向处理的过程中,选择性存储各层网络的输入数据。
基于本发明上述方法的另一实施例中,所述选择性存储各层网络的输入数据包括:
分别根据各层网络的网络类型,存储网络类型为非线性网络的输入数据。
基于本发明上述方法的另一实施例中,所述线性网络包括:卷积层、批量规格化层、局部响应归一化层、激活函数层及全连接层。
基于本发明上述方法的另一实施例中,所述N层神经网络包括深度神经网络DNN、卷积神经网络CNN、或循环神经网络RNN。
根据本发明实施例的另一个方面,提供一种数据处理装置,包括:
第一识别单元,用于在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络;
第一处理单元,用于根据第一识别单元的识别结果,若该第i层网络为线性网络,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据;其中,N为大于1的整数,i为整数、且1<i≤N;以及通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据;
其中,i=N时,所述第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,所述第i层网络的输出相关数据为第i层网络的输出数据。
基于本发明上述装置的另一实施例中,还包括:
比较单元,用于获取第N层网络的输出数据与参考数据之间的差异,获得所述差异函数;
第一计算单元,用于计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
基于本发明上述装置的另一实施例中,所述差异函数具体为损失函数。
基于本发明上述装置的另一实施例中,所述第一处理单元,还用于根据第一识别单元的识别结果,若该第i层网络为非线性网络,从存储单元中获取该第i层网络的输入数据;通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
基于本发明上述装置的另一实施例中,所述第一识别单元,具体用于基于预先设置的网络类型标识,识别第i层网络是否为线性网络;所述网络类型标识包括非线性网络标识和/或非线性网络;或者识别存储单元中是否存储有所述第i层网络的输入数据;若存储单元中未存储所述第i层网络的输入数据,所述第i层网络为线性网络;否则,若存储单元中存储有所述第i层网络的输入数据,所述第i层网络为非线性网络。
基于本发明上述装置的另一实施例中,所述第一处理单元基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据,具体用于基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的输入数据的导数,获得第i-1层网络输出数据的导数值;所述训练数据具体为输出数据的导数值。
基于本发明上述装置的另一实施例中,还包括:
第二识别单元,用于针对当前待处理的第i层网络,识别第i层网络是否为卷积层;
第二处理单元,用于根据第二识别单元的识别结果,若第i层网络为卷积层,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的网络参数的导数,获得第i层网络的网络参数的导数值。
基于本发明上述装置的另一实施例中,还包括:
第三识别单元,用于识别i-1的值是否大于1;若i-1的值大于1,以第i-1层网络作为新的第i层网络,回到所述第一识别单元执行相应的操作;若i-1的值等于1,回到所述第二识别单元执行相应的操作。
基于本发明上述装置的另一实施例中,还包括:
更新单元,用于分别采用各层网络参数的导数值对各自层的卷积系数进行更新。
基于本发明上述装置的另一实施例中,还包括:
存储单元,用于在对N层神经网络进行正向处理的过程中,选择性存储各层网络的输入数据。
基于本发明上述装置的另一实施例中,所述选择性存储各层网络的输入数据包括:
分别根据各层网络的网络类型,存储网络类型为非线性网络的输入数据。
基于本发明上述装置的另一实施例中,所述线性网络包括:卷积层、批量规格化层、局部响应归一化层、激活函数层及全连接层。
基于本发明上述装置的另一实施例中所述N层神经网络包括深度神经网络DNN、卷积神经网络CNN、或循环神经网络RNN。
根据本发明实施例的又一个方面,提供一种芯片,包括:上述任意一项所述的数据处理装置。
基于本发明上述芯片的另一实施例中包括:专用集成电路ASIC、现场可编程门阵列FPGA、中央处理单元CPU或图形处理单元GPU。
基于本发明实施例提供的数据处理方法和装置、芯片,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1是本发明数据处理方法一个实施例的流程图。
图2是本发明数据处理方法另一个实施例的流程图。
图3是本发明数据处理方法又一个实施例的流程图。
图4是本发明数据处理方法再一个实施例的流程图。
图5是本发明数据处理方法再一个实施例的流程图。
图6是本发明数据处理方法再一个实施例的流程图。
图7是本发明数据处理方法再一个实施例的流程图。
图8是本发明数据处理方法再一个实施例的流程图。
图9是本发明数据处理方法再一个实施例的流程图。
图10是本发明数据处理方法一个具体实施例的示意图。
图11是本发明数据处理方法一个具体实施例的流程图。
图12是本发明数据处理装置一个实施例的结构图。
图13是本发明数据处理装置另一个实施例的结构图。
图14是本发明数据处理装置又一个实施例的结构图。
图15是本发明数据处理装置再一个实施例的结构图。
图16是本发明数据处理装置再一个实施例的结构图。
图17是本发明数据处理装置再一个实施例的结构图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1是本发明数据处理方法一个实施例的流程图。如图1所示,本发明实施例的数据处理方法,包括:
120,在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络。
其中,线性网络具体指输入数据与输出数据符合线性变换关系的网络。
140,若该第i层网络为线性网络,采用预设算法,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据。
其中,N为大于1的整数,i为整数、且1<i≤N。
160,通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
其中,i=N时,第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,第i层网络的输出相关数据为第i层网络的输出数据。
基于本发明实施例提供的数据处理方法,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
图2是本发明数据处理方法另一个实施例的流程图。如图2所示,本发明实施例的数据处理方法与图1的数据处理方法的不同之处在于,在操作120之前还包括:
220,获取第N层网络的输出数据与参考数据之间的差异,获得差异函数。
240,计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
基于本发明实施例提供的数据处理方法,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
在本发明的另一个实施例中,差异函数具体为损失函数。
图3是本发明数据处理方法又一个实施例的流程图。如图3所示,本发明实施例的数据处理方法包括:
310,获取第N层网络的输出数据与参考数据之间的差异,获得差异函数。
320,计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
330,在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络。
若该第i层网络为线性网络,执行操作340。否则,若该第i层网络为非线性网络,执行操作350。
其中,线性网络具体指输出与输入数据符合线性变换关系的网络,非线性网络是与线性网络相对的,具体指输入数据与输出数据不符合线性变换关系的网络。
340,采用预设算法,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据。
其中,N为大于1的整数,i为整数、且1<i≤N。
在操作340之后,执行操作360。
350,从存储单元中获取该第i层网络的输入数据。
360,通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
其中,i=N时,第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,第i层网络的输出相关数据为第i层网络的输出数据。
基于本发明实施例提供的数据处理方法,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
图4是本发明数据处理方法再一个实施例的流程图。如图4所示,本发明实施例的数据处理方法,包括:
410,获取第N层网络的输出数据与参考数据之间的差异,获得差异函数。
420,计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
430,在对N层神经网络中的第i层网络进行反向处理时,基于预先设置的网络类型标识,识别第i层网络是否为线性网络。
若该第i层网络为线性网络,执行操作440。否则,若该第i层网络为非线性网络,执行操作450。
其中,网络类型标识包括非线性网络标识和/或非线性网络。
440,采用预设算法,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据。
其中,N为大于1的整数,i为整数、且1<i≤N。
在操作440之后,执行操作460。
450,从存储单元中获取该第i层网络的输入数据。
460,通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
其中,i=N时,第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,第i层网络的输出相关数据为第i层网络的输出数据。
图5是本发明数据处理方法再一个实施例的流程图。如图5所示,本发明实施例的数据处理方法,包括:
510,获取第N层网络的输出数据与参考数据之间的差异,获得差异函数。
520,计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
530,识别存储单元中是否存储有第i层网络的输入数据。
若存储单元中未存储第i层网络的输入数据,第i层网络为线性网络,执行操作540。否则,若存储单元中存储有第i层网络的输入数据,第i层网络为非线性网络,执行操作550。
540,采用预设算法,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据。
其中,N为大于1的整数,i为整数、且1<i≤N。
在操作540之后,执行操作560。
550,从存储单元中获取该第i层网络的输入数据。
560,通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
其中,i=N时,第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,第i层网络的输出相关数据为第i层网络的输出数据。
图6是本发明数据处理方法再一个实施例的流程图。如图6所示,本发明实施例的数据处理方法,包括:
610,获取第N层网络的输出数据与参考数据之间的差异,获得差异函数。
620,计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
630,在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络。
若该第i层网络为线性网络,执行操作640。否则,若该第i层网络为非线性网络,执行操作650。
其中,线性网络具体指输出与输入数据符合线性变换关系的网络,非线性网络是与线性网络相对的,具体指输入数据与输出数据不符合线性变换关系的网络。
640,采用预设算法,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据。
其中,N为大于1的整数,i为整数、且1<i≤N。
在操作640之后,执行操作660。
650,从存储单元中获取该第i层网络的输入数据。
660,通过预设方式,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的输入数据的导数,获得第i-1层网络输出数据的导数值;其中训练数据具体为输出数据的导数值。
其中,i=N时,第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,第i层网络的输出相关数据为第i层网络的输出数据。
基于本发明实施例提供的数据处理方法,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
图7是本发明数据处理方法再一个实施例的流程图。如图7所示,本发明实施例的数据处理方法与图6的数据处理方法的不同之处在于,在操作660之后还包括:
720,针对当前待处理的第i层网络,识别第i层网络是否为卷积层。
740,若第i层网络为卷积层,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的网络参数的导数,获得第i层网络的网络参数的导数值。
基于本发明实施例提供的数据处理方法,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
图8是本发明数据处理方法再一个实施例的流程图。如图8所示,本发明实施例的数据处理方法与图6的数据处理方法的不同之处在于,在操作660之后还包括:
810,针对当前待处理的第i层网络,识别第i层网络是否为卷积层。
若第i层网络为卷积层,执行操作820。否则,若第i层网络不为卷积层,直接执行操作830。
820,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的网络参数的导数,获得第i层网络的网络参数的导数值。
830,识别i-1的值是否大于1。
若i-1的值大于1,执行操作840。否则,若i-1的值等于1,执行操作850。
840,以第i-1层网络作为新的第i层网络,执行操作630。
850,识别第1层网络是否为卷积层。
860,若第1层网络为卷积层,基于第1层网络输出数据的导数值,计算第1层网络的输出相关数据对第1层网络的网络参数的导数,获得第1层网络的网络参数的导数值。
操作860之后,或者第1层网络不为卷积层,可以分别采用各层网络参数的导数值对各自层的卷积系数进行更新。
基于本发明实施例提供的数据处理方法,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
图9是本发明数据处理方法再一个实施例的流程图。如图9所示,本发明实施例的数据处理方法与图6的数据处理方法的不同之处在于,在操作660之后还包括:
910,针对当前待处理的第i层网络,识别第i层网络是否为卷积层。
若第i层网络为卷积层,执行操作920。否则,若第i层网络不为卷积层,直接执行操作930。
920,若第i层网络为卷积层,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的网络参数的导数,获得第i层网络的网络参数的导数值。
930,识别i-1的值是否大于1。
若i-1的值大于1,执行操作940。否则,若i-1的值等于1,执行操作950。
940,以第i-1层网络作为新的第i层网络,执行操作630。
950,识别第1层网络是否为卷积层。
若第1层网络为卷积层,执行操作960。否则,若第1层网络不为卷积层,直接执行操作970。
960,若第1层网络为卷积层,基于第1层网络输出数据的导数值,计算第1层网络的输出相关数据对第1层网络的网络参数的导数,获得第1层网络的网络参数的导数值。
970,分别采用各层网络参数的导数值对各自层的卷积系数进行更新。
基于本发明实施例提供的数据处理方法,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
图10是本发明数据处理方法一个具体实施例的示意图。图11是本发明数据处理方法一个具体实施例的流程图。如图10所示,本发明具体实施例的数据处理方法是对一个6层的神经网络进行处理,它包括正向处理和反向处理两个过程,其中,在图10中,以实线表示输入数据的正向传递,以虚线表示输出数据的反向传递。在这里我们以Li层表示第i层网络,其中i=1、2、3、4、5、6。如图11所示,本实施例的数据处理方法具体包括:
1101,输入样本经过L1层,产生L2层的输入数据,不存储输入样本。
1102,L2层的输入数据经过L2层,产生L3层的输入数据,不存储L2层的输入数据。
1103,L3层的输入数据经过L3层,产生L4层的输入数据,同时存储L3层的输入数据。
1104,L4层的输入数据经过L4层,产生L5层的输入数据,不存储L4层的输入数据。
1105,L5层的输入数据经过L5层,产生L6层的输入数据,不存储L5层的输入数据。
1106,L6层的输入数据经过L6层,产生L6层的输出数据,不存储L6层的输入数据。
1107,获取L6层的输出数据与参考数据之间的差异,获得损失函数,即loss函数。
1108,计算loss函数值对L6层的输出数据的导数,获得L6层输出数据的导数值。
1109,识别L6层为线性网络,通过L6层对L6层的输出数据进行逆运算,获得L6层的输入数据。
1110,通过预设方式,基于L6层输出数据的导数值,计算loss函数值对L6层的输入数据的导数,获得L5层输出数据的导数值。
1111,识别L6层为卷积层,基于L6层输出数据的导数值,计算loss函数值对L6层的网络参数的导数,获得L6层的网络参数的导数值。
1112,识别6-1的值大于1,识别L5层为线性网络,通过L5层对L5层的输出数据进行逆运算,获得L5层的输入数据。
1113,通过预设方式,基于L5层输出数据的导数值,计算L5层的输出数据对L5层的输入数据的导数,获得L4层输出数据的导数值。
1114,识别L5层为卷积层,基于L5层输出数据的导数值,计算L5层的输出数据对L5层的网络参数的导数,获得L5层的网络参数的导数值。
1115,识别5-1的值大于1,识别L4层为线性网络,通过L4层对L4层的输出数据进行逆运算,获得L4层的输入数据。
1116,通过预设方式,基于L4层输出数据的导数值,计算L4层的输出数据对L4层的输入数据的导数,获得L3层输出数据的导数值。
1117,识别L4层不为卷积层,识别4-1的值大于1,识别L3层为非线性网络,从存储单元中获取L3层的输入数据。
1118,通过预设方式,基于L3层输出数据的导数值,计算L3层的输出数据对L3层的输入数据的导数,获得L2层输出数据的导数值。
1119,识别3-1的值大于1,识别L2层为线性网络,通过L2层对L2层的输出数据进行逆运算,获得L2层的输入数据。
1120,通过预设方式,基于L2层输出数据的导数值,计算L2层的输出数据对L2层的输入数据的导数,获得L1层输出数据的导数值。
1121,识别L2层不为卷积层,识别2-1的值等于1,识别L1层为卷积层,基于L1层输出数据的导数值,计算L1层的输出数据对L1层的网络参数的导数,获得L1层的网络参数的导数值。
1122,分别采用各层网络参数的导数值对各自层的卷积系数进行更新。
由上述可见,本发明上述任意一个实施例的方法,还包括:在对N层神经网络进行正向处理的过程中,选择性存储各层网络的输入数据。
在本发明的另一个实施例中,选择性存储各层网络的输入数据包括:分别根据各层网络的网络类型,存储网络类型为非线性网络的输入数据。
在本发明的另一个实施例中,线性网络包括:卷积层、批量规格化(BatchNorm)层、局部响应归一化(Local Response Normalization,LRN)层、激活函数层及全连接层。
在本发明上述任意一个实施例的方法中,N层神经网络包括深度神经网络DNN、卷积神经网络CNN、或循环神经网络RNN。
图12是本发明数据处理装置一个实施例的结构图。如图12所示,本发明实施例的数据处理装置,包括:
第一识别单元,用于在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络。
其中,线性网络具体指输出与输入数据符合线性变换关系的网络,非线性网络是与线性网络相对的,具体指输入数据与输出数据不符合线性变换关系的网络。
第一处理单元,用于根据第一识别单元的识别结果,若该第i层网络为线性网络,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据;其中,N为大于1的整数,i为整数、且1<i≤N;以及通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
其中,i=N时,第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,第i层网络的输出相关数据为第i层网络的输出数据。
基于本发明实施例提供的数据处理装置,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
图13是本发明数据处理装置另一个实施例的结构图。如图13所示,本发明实施例的数据处理装置与图12的数据处理装置的不同之处在于,还包括:
比较单元,用于获取第N层网络的输出数据与参考数据之间的差异,获得所述差异函数。
第一计算单元,用于计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
在本发明的另一实施例中,差异函数具体为损失函数。
在本发明的另一实施例中,第一处理单元,还用于根据第一识别单元的识别结果,若该第i层网络为非线性网络,从存储单元中获取该第i层网络的输入数据;通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
在本发明的另一实施例中,第一识别单元,具体用于基于预先设置的网络类型标识,识别第i层网络是否为线性网络;其中网络类型标识包括非线性网络标识和/或非线性网络;或者识别存储单元中是否存储有第i层网络的输入数据;若存储单元中未存储第i层网络的输入数据,第i层网络为线性网络;否则,若存储单元中存储有第i层网络的输入数据,第i层网络为非线性网络。
在本发明的另一实施例中,第一处理单元基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据,具体用于基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的输入数据的导数,获得第i-1层网络输出数据的导数值;其中训练数据具体为输出数据的导数值。
图14是本发明数据处理装置再一个实施例的结构图。如图14所示,本发明实施例的数据处理装置与图13的数据处理装置的不同之处在于,还包括:
第二识别单元,用于针对当前待处理的第i层网络,识别第i层网络是否为卷积层。
第二处理单元,用于根据第二识别单元的识别结果,若第i层网络为卷积层,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的网络参数的导数,获得第i层网络的网络参数的导数值。
图15是本发明数据处理装置再一个实施例的结构图。如图15所示,本发明实施例的数据处理装置与图14的数据处理装置的不同之处在于,还包括:
第三识别单元,用于识别i-1的值是否大于1;若i-1的值大于1,以第i-1层网络作为新的第i层网络,回到第一识别单元执行相应的操作;若i-1的值等于1,回到第二识别单元执行相应的操作。
图16是本发明数据处理装置再一个实施例的结构图。如图16所示,本发明实施例的数据处理装置与图15的数据处理装置的不同之处在于,还包括:
更新单元,用于分别采用各层网络参数的导数值对各自层的卷积系数进行更新。
图17是本发明数据处理装置再一个实施例的结构图。如图17所示,本实施例的数据处理装置与上述任意一个实施例的数据处理装置的不同之处在于,还包括:
存储单元,用于在对N层神经网络进行正向处理的过程中,选择性存储各层网络的输入数据。
基于本发明实施例提供的数据处理装置,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
在本发明的另一个实施例中,选择性存储各层网络的输入数据包括:分别根据各层网络的网络类型,存储网络类型为非线性网络的输入数据。
在本发明的另一个实施例中,线性网络包括:卷积层、批量规格化(BatchNorm)层、局部响应归一化(Local Response Normalization,LRN)层、激活函数层及全连接层。
在本发明上述任意一个实施例的数据处理装置中,N层神经网络包括深度神经网络DNN、卷积神经网络CNN、或循环神经网络RNN。
本发明实施例还提供了一种芯片,包括:上述任意一个实施例的数据处理装置。
基于本发明实施例提供的芯片,包括:本发明上述任意一个实施例的数据处理装置,通过在对神经网络进行训练的反向处理过程中,利用线性网络的输入数据与输出数据符合线性变换关系的特点,采用线性网络的输出数据通过线性网络的逆运算获得线性网络的输入数据,从而在对神经网络进行训练的正向处理过程中可以不用存储线性网络的输入数据,这样在对神经网络进行训练的过程中可以不用将正向处理过程中的中间数据都存储下来,节约了片上存储资源,进而保证了CNN的数据处理能力。
本发明实施例的芯片可以包括:专用集成电路ASIC、现场可编程门阵列FPGA、中央处理单元CPU或图形处理单元GPU。
本发明实施例提供了以下技术方案:
1、一种数据处理方法,包括:
在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络;
若该第i层网络为线性网络,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据;其中,N为大于1的整数,i为整数、且1<i≤N;
通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据;
其中,i=N时,所述第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,所述第i层网络的输出相关数据为第i层网络的输出数据。
2、根据1所述的方法,还包括:
获取第N层网络的输出数据与参考数据之间的差异,获得所述差异函数;
计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
3、根据2所述的方法,所述差异函数具体为损失函数。
4、根据3所述的方法,还包括:
若该第i层网络为非线性网络,从存储单元中获取该第i层网络的输入数据;
通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
5、根据4所述的方法,所述识别该第i层网络是否为线性网络包括:
基于预先设置的网络类型标识,识别第i层网络是否为线性网络;所述网络类型标识包括非线性网络标识和/或非线性网络;或者
识别存储单元中是否存储有所述第i层网络的输入数据;若存储单元中未存储所述第i层网络的输入数据,所述第i层网络为线性网络;否则,若存储单元中存储有所述第i层网络的输入数据,所述第i层网络为非线性网络。
6、根据5所述的方法,所述基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据包括:
基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的输入数据的导数,获得第i-1层网络输出数据的导数值;所述训练数据具体为输出数据的导数值。
7、根据6所述的方法,还包括:
针对当前待处理的第i层网络,识别第i层网络是否为卷积层;
若第i层网络为卷积层,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的网络参数的导数,获得第i层网络的网络参数的导数值。
8、根据7所述的方法,获取第i-1层网络的训练数据之后,还包括:
识别i-1的值是否大于1;
若i-1的值大于1,以第i-1层网络作为新的第i层网络,执行所述识别该第i层网络是否为线性网络的操作;
若i-1的值等于1,识别第1层网络是否为卷积层;
若第1层网络为卷积层,基于第1层网络输出数据的导数值,计算第1层网络的输出相关数据对第1层网络的网络参数的导数,获得第1层网络的网络参数的导数值。
9、根据8所述的方法,获得网络参数的导数值之后,还包括:
分别采用各层网络参数的导数值对各自层的卷积系数进行更新。
10、根据1至9任意一项所述的方法,还包括:
在对N层神经网络进行正向处理的过程中,选择性存储各层网络的输入数据。
11、根据10所述的方法,所述选择性存储各层网络的输入数据包括:
分别根据各层网络的网络类型,存储网络类型为非线性网络的输入数据。
12、根据1至11任意一项所述的方法,所述线性网络包括:卷积层、批量规格化层、局部响应归一化层、激活函数层及全连接层。
13、根据1至11任意一项所述的方法,所述N层神经网络包括深度神经网络DNN、卷积神经网络CNN、或循环神经网络RNN。
14、一种数据处理装置,包括:
第一识别单元,用于在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络;
第一处理单元,用于根据第一识别单元的识别结果,若该第i层网络为线性网络,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据;其中,N为大于1的整数,i为整数、且1<i≤N;以及通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据;
其中,i=N时,所述第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,所述第i层网络的输出相关数据为第i层网络的输出数据。
15、根据14所述的装置,还包括:
比较单元,用于获取第N层网络的输出数据与参考数据之间的差异,获得所述差异函数;
第一计算单元,用于计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
16、根据15所述的装置,所述差异函数具体为损失函数。
17、根据16所述的装置,所述第一处理单元,还用于根据第一识别单元的识别结果,若该第i层网络为非线性网络,从存储单元中获取该第i层网络的输入数据;通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
18、根据17所述的装置,所述第一识别单元,具体用于基于预先设置的网络类型标识,识别第i层网络是否为线性网络;所述网络类型标识包括非线性网络标识和/或非线性网络;或者识别存储单元中是否存储有所述第i层网络的输入数据;若存储单元中未存储所述第i层网络的输入数据,所述第i层网络为线性网络;否则,若存储单元中存储有所述第i层网络的输入数据,所述第i层网络为非线性网络。
19、根据18所述的装置,所述第一处理单元基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据时,具体用于基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的输入数据的导数,获得第i-1层网络输出数据的导数值;所述训练数据具体为输出数据的导数值。
20、根据19所述的装置,还包括:
第二识别单元,用于针对当前待处理的第i层网络,识别第i层网络是否为卷积层;
第二处理单元,用于根据第二识别单元的识别结果,若第i层网络为卷积层,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的网络参数的导数,获得第i层网络的网络参数的导数值。
21、根据20所述的装置,还包括:
第三识别单元,用于识别i-1的值是否大于1;若i-1的值大于1,以第i-1层网络作为新的第i层网络,回到所述第一识别单元执行相应的操作;若i-1的值等于1,回到所述第二识别单元执行相应的操作。
22、根据21所述的装置,还包括:
更新单元,用于分别采用各层网络参数的导数值对各自层的卷积系数进行更新。
23、根据14至22任意一项所述的装置,还包括:
存储单元,用于在对N层神经网络进行正向处理的过程中,选择性存储各层网络的输入数据。
24、根据23所述的装置,所述选择性存储各层网络的输入数据包括:
分别根据各层网络的网络类型,存储网络类型为非线性网络的输入数据。
25、根据14至24任意一项所述的装置,所述线性网络包括:卷积层、批量规格化层、局部响应归一化层、激活函数层及全连接层。
26、根据14至24任意一项所述的装置,所述N层神经网络包括深度神经网络DNN、卷积神经网络CNN、或循环神经网络RNN。
27、一种芯片,其特征在于,包括:14至26中任意一项所述的数据处理装置。
28、根据27所述的芯片,所述芯片包括:专用集成电路ASIC、现场可编程门阵列FPGA、中央处理单元CPU或图形处理单元GPU。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于装置实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的方法、装置和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法、装置和系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络;
若该第i层网络为线性网络,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据;其中,N为大于1的整数,i为整数、且1<i≤N;
通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据;
其中,i=N时,所述第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,所述第i层网络的输出相关数据为第i层网络的输出数据。
2.根据权利要求1所述的方法,其特征在于,还包括:
获取第N层网络的输出数据与参考数据之间的差异,获得所述差异函数;
计算差异函数对第N层网络的输出数据的导数,获得第N层网络输出数据的导数值。
3.根据权利要求2所述的方法,其特征在于,还包括:
若该第i层网络为非线性网络,从存储单元中获取该第i层网络的输入数据;
通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据。
4.根据权利要求3所述的方法,其特征在于,所述识别该第i层网络是否为线性网络包括:
基于预先设置的网络类型标识,识别第i层网络是否为线性网络;所述网络类型标识包括非线性网络标识和/或非线性网络;或者
识别存储单元中是否存储有所述第i层网络的输入数据;若存储单元中未存储所述第i层网络的输入数据,所述第i层网络为线性网络;否则,若存储单元中存储有所述第i层网络的输入数据,所述第i层网络为非线性网络。
5.根据权利要求4所述的方法,其特征在于,所述基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据包括:
基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的输入数据的导数,获得第i-1层网络输出数据的导数值;所述训练数据具体为输出数据的导数值。
6.根据权利要求5所述的方法,其特征在于,还包括:
针对当前待处理的第i层网络,识别第i层网络是否为卷积层;
若第i层网络为卷积层,基于第i层网络输出数据的导数值,计算第i层网络的输出相关数据对第i层网络的网络参数的导数,获得第i层网络的网络参数的导数值。
7.根据权利要求6所述的方法,其特征在于,获取第i-1层网络的训练数据之后,还包括:
识别i-1的值是否大于1;
若i-1的值大于1,以第i-1层网络作为新的第i层网络,执行所述识别该第i层网络是否为线性网络的操作;
若i-1的值等于1,识别第1层网络是否为卷积层;
若第1层网络为卷积层,基于第1层网络输出数据的导数值,计算第1层网络的输出相关数据对第1层网络的网络参数的导数,获得第1层网络的网络参数的导数值。
8.根据权利要求7所述的方法,其特征在于,获得网络参数的导数值之后,还包括:
分别采用各层网络参数的导数值对各自层的卷积系数进行更新。
9.一种数据处理装置,其特征在于,包括:
第一识别单元,用于在对N层神经网络中的第i层网络进行反向处理时,识别该第i层网络是否为线性网络;
第一处理单元,用于根据第一识别单元的识别结果,若该第i层网络为线性网络,通过第i层网络对该第i层网络的输出数据进行逆运算,获得该第i层网络的输入数据;其中,N为大于1的整数,i为整数、且1<i≤N;以及通过预设方式,基于该第i层网络的输出相关数据和该第i层网络的输入数据,获取第i-1层网络的训练数据;
其中,i=N时,所述第i层网络的输出相关数据为表示第i层网络的输出数据与参考数据之间差异的差异函数;i<N时,所述第i层网络的输出相关数据为第i层网络的输出数据。
10.一种芯片,其特征在于,包括:权利要求9所述的数据处理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610285564.3A CN105976027A (zh) | 2016-04-29 | 2016-04-29 | 数据处理方法和装置、芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610285564.3A CN105976027A (zh) | 2016-04-29 | 2016-04-29 | 数据处理方法和装置、芯片 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105976027A true CN105976027A (zh) | 2016-09-28 |
Family
ID=56994444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610285564.3A Pending CN105976027A (zh) | 2016-04-29 | 2016-04-29 | 数据处理方法和装置、芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105976027A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107807900A (zh) * | 2017-11-14 | 2018-03-16 | 浙江亿邦通信科技股份有限公司 | 数据处理系统及服务器 |
CN107885464A (zh) * | 2017-11-28 | 2018-04-06 | 北京小米移动软件有限公司 | 数据存储方法、装置及计算机可读存储介质 |
WO2018076331A1 (zh) * | 2016-10-31 | 2018-05-03 | 北京中科寒武纪科技有限公司 | 一种神经网络训练方法及装置 |
CN111126596A (zh) * | 2019-12-17 | 2020-05-08 | 百度在线网络技术(北京)有限公司 | 神经网络训练中的信息处理方法、设备与存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080037804A1 (en) * | 2006-08-01 | 2008-02-14 | Dts, Inc. | Neural network filtering techniques for compensating linear and non-linear distortion of an audio transducer |
CN102147856A (zh) * | 2010-02-10 | 2011-08-10 | 佳能株式会社 | 图像识别设备及其控制方法 |
CN102282559A (zh) * | 2008-10-20 | 2011-12-14 | 诺丁汉特伦特大学 | 数据分析方法和系统 |
CN102693724A (zh) * | 2011-03-22 | 2012-09-26 | 张燕 | 一种基于神经网络的高斯混合模型的噪声分类方法 |
CN104899641A (zh) * | 2015-05-25 | 2015-09-09 | 杭州朗和科技有限公司 | 深度神经网络学习方法、处理器和深度神经网络学习系统 |
CN105205449A (zh) * | 2015-08-24 | 2015-12-30 | 西安电子科技大学 | 基于深度学习的手语识别方法 |
US20160026913A1 (en) * | 2014-07-24 | 2016-01-28 | Samsung Electronics Co., Ltd. | Neural network training method and apparatus, and data processing apparatus |
-
2016
- 2016-04-29 CN CN201610285564.3A patent/CN105976027A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080037804A1 (en) * | 2006-08-01 | 2008-02-14 | Dts, Inc. | Neural network filtering techniques for compensating linear and non-linear distortion of an audio transducer |
CN102282559A (zh) * | 2008-10-20 | 2011-12-14 | 诺丁汉特伦特大学 | 数据分析方法和系统 |
CN102147856A (zh) * | 2010-02-10 | 2011-08-10 | 佳能株式会社 | 图像识别设备及其控制方法 |
CN102693724A (zh) * | 2011-03-22 | 2012-09-26 | 张燕 | 一种基于神经网络的高斯混合模型的噪声分类方法 |
US20160026913A1 (en) * | 2014-07-24 | 2016-01-28 | Samsung Electronics Co., Ltd. | Neural network training method and apparatus, and data processing apparatus |
CN104899641A (zh) * | 2015-05-25 | 2015-09-09 | 杭州朗和科技有限公司 | 深度神经网络学习方法、处理器和深度神经网络学习系统 |
CN105205449A (zh) * | 2015-08-24 | 2015-12-30 | 西安电子科技大学 | 基于深度学习的手语识别方法 |
Non-Patent Citations (1)
Title |
---|
曾喆昭: "神经网络优化方法及其在信息处理中的应用研究", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018076331A1 (zh) * | 2016-10-31 | 2018-05-03 | 北京中科寒武纪科技有限公司 | 一种神经网络训练方法及装置 |
CN107807900A (zh) * | 2017-11-14 | 2018-03-16 | 浙江亿邦通信科技股份有限公司 | 数据处理系统及服务器 |
CN107885464A (zh) * | 2017-11-28 | 2018-04-06 | 北京小米移动软件有限公司 | 数据存储方法、装置及计算机可读存储介质 |
CN107885464B (zh) * | 2017-11-28 | 2021-11-02 | 北京小米移动软件有限公司 | 数据存储方法、装置及计算机可读存储介质 |
CN111126596A (zh) * | 2019-12-17 | 2020-05-08 | 百度在线网络技术(北京)有限公司 | 神经网络训练中的信息处理方法、设备与存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11887005B2 (en) | Content adaptive attention model for neural network-based image and video encoders | |
CN104915322B (zh) | 一种卷积神经网络硬件加速方法 | |
CN110084221A (zh) | 一种基于深度学习的带中继监督的序列化人脸关键点检测方法 | |
CN109740657A (zh) | 一种用于图像数据分类的神经网络模型的训练方法与设备 | |
CN108647585A (zh) | 一种基于多尺度循环注意力网络的交通标识符检测方法 | |
CN105976027A (zh) | 数据处理方法和装置、芯片 | |
CN112465748A (zh) | 基于神经网络的裂缝识别方法、装置、设备及存储介质 | |
EP3616130A1 (en) | Using simulation and domain adaptation for robotic control | |
CN107798697A (zh) | 一种基于卷积神经网络的医学图像配准方法、系统及电子设备 | |
CN109902548A (zh) | 一种对象属性识别方法、装置、计算设备及系统 | |
CN112381763A (zh) | 一种表面缺陷检测方法 | |
CN106339984A (zh) | 基于k均值驱动卷积神经网络的分布式图像超分辨方法 | |
JP2019075114A (ja) | アクティベーション演算とコンボリューション演算を同時に遂行するための方法及び装置、そしてこのための学習方法及び学習装置 | |
US20220164413A1 (en) | Method and System for Predicting Operation Time of Sparse Matrix Vector Multiplication | |
CN115170565B (zh) | 基于自动神经网络架构搜索的图像欺诈检测方法及装置 | |
Rios et al. | Feature visualization for 3D point cloud autoencoders | |
Foo et al. | Era: Expert retrieval and assembly for early action prediction | |
CN113724128A (zh) | 一种训练样本的扩充方法 | |
CN111915618A (zh) | 基于峰值响应增强的实例分割算法、计算设备 | |
CN112084911A (zh) | 一种基于全局注意力的人脸特征点定位方法及系统 | |
CN114998601A (zh) | 基于Transformer的在线更新目标跟踪方法及系统 | |
CN107851007A (zh) | 宽数据类型的比较 | |
Li et al. | NDNet: Spacewise multiscale representation learning via neighbor decoupling for real-time driving scene parsing | |
Zhao et al. | SRK-Augment: A self-replacement and discriminative region keeping augmentation scheme for better classification | |
CN109359542A (zh) | 基于神经网络的车辆损伤级别的确定方法及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20170830 Address after: 100029 Beijing city Haidian District Baosheng Road No. 1 Building No. 25 hospital three layer 301 Applicant after: Feng Feng Technology (Beijing) Co., Ltd. Address before: 100029 Beijing, Haidian District North Austrian industrial base project, building 2, floor 6 Applicant before: BEIJING BITMAIN TECHNOLOGY CO., LTD. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160928 |