CN107330515A - 一种用于执行人工神经网络正向运算的装置和方法 - Google Patents

一种用于执行人工神经网络正向运算的装置和方法 Download PDF

Info

Publication number
CN107330515A
CN107330515A CN201610282480.4A CN201610282480A CN107330515A CN 107330515 A CN107330515 A CN 107330515A CN 201610282480 A CN201610282480 A CN 201610282480A CN 107330515 A CN107330515 A CN 107330515A
Authority
CN
China
Prior art keywords
data
point
fixed
unit
neural network
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
Application number
CN201610282480.4A
Other languages
English (en)
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.)
Cambricon Technologies Corp Ltd
Beijing Zhongke Cambrian Technology Co Ltd
Original Assignee
Beijing Zhongke Cambrian Technology 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 Beijing Zhongke Cambrian Technology Co Ltd filed Critical Beijing Zhongke Cambrian Technology Co Ltd
Priority to CN201610282480.4A priority Critical patent/CN107330515A/zh
Priority to CN201910152660.4A priority patent/CN109934331B/zh
Priority to KR1020187033951A priority patent/KR102476343B1/ko
Priority to EP16899923.3A priority patent/EP3451164B1/en
Priority to PCT/CN2016/081839 priority patent/WO2017185412A1/zh
Publication of CN107330515A publication Critical patent/CN107330515A/zh
Priority to US16/174,100 priority patent/US11295196B2/en
Priority to US17/683,817 priority patent/US20220308831A1/en
Pending legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • 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/061Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using biological neurons, e.g. biological neurons connected to an integrated circuit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/14Conversion to or from non-weighted codes
    • H03M7/24Conversion to or from floating-point codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/28Programmable structures, i.e. where the code converter contains apparatus which is operator-changeable to modify the conversion process

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Neurology (AREA)
  • Nonlinear Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Complex Calculations (AREA)
  • Image Analysis (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)

Abstract

一种用于执行人工神经网络正向运算的装置和方法,该装置包括:浮点数据统计模块,用于对所需各类型数据进行统计分析,得到定点数据的小数点位置Point locaiton;数据转换单元,用于根据定点数据的小数点位置来实现长位浮点数据类型向短位数定点数据类型的转换;定点数据运算模块,用于对短位数定点数据进行人工神经网络正向运算。本发明的装置通过对多层人工神经网络正向运算中的数据使用短位数定点表示,并使用相对应的定点运算模块,实现人工神经网络短位数定点的正向运算,从而极大提高硬件的性能功耗比。

Description

一种用于执行人工神经网络正向运算的装置和方法
技术领域
本发明涉及人工神经网络运算技术领域,更具体地涉及一种用于执行人工神经网络正向运算的装置和方法。
背景技术
多层人工神经网络被广泛应用于模式识别、图像处理、函数逼近和优化计算等领域,多层人工网络在近年来由于其较高的识别准确度和较好的可并行性,受到学术界和工业界越来越广泛的关注。
传统的人工神经网络正向运算对数据的存储通常采用的是32位浮点数据类型,但在大部分人工神经网络的正向运算中,同一类型的数据都会集中在某一数据范围之内,而32位浮点所能表示的数据范围远远大于正向运算同一类型数据的数据范围,采用32位浮点数据类型存在着大量的冗余,增加了硬件的面积开销。
发明内容
有鉴于此,本发明的一个目的在于提供一种用于执行人工神经网络正向运算的装置,本发明的另一个目的在于提供一种执行人工神经网络正向运算的方法,以解决上述技术问题中的至少之一。
为了实现上述目的,作为本发明的一个方面,本发明提供了一种用于执行人工神经网络正向运算的装置,包括浮点数据统计模块、数据转换单元和定点数据运算模块,其中,
所述浮点数据统计模块用于对所述人工神经网络正向运算所需的各个类型的数据进行统计分析,得到小数点位置Point location;
所述数据转换单元用于根据所述浮点数据统计模块得到的所述小数点位置Pointlocation来实现长位数浮点数据类型向短位数定点数据类型的转换;
所述浮点数据运算模块用于在所述数据转换单元将所有所述人工神经网络正向运算中所需的输入、权值和/或偏置数据均采用短位数定点数据类型表示之后,对所述短位数定点数据进行人工神经网络正向运算。
其中,所述浮点数据统计模块包括数据提取单元、统计单元和分析单元,其中,所述数据提取单元用于提取基于长位数浮点数据的正向运算中各不同类型的数据;所述统计单元用于统计同一类型数据的数据范围及各数据段的数据分布情况;所述分析单元根据统计单元统计的结果,得出用短位数定点表示各个类型数据应当设定的小数点位置Pointlocation。
其中,所述用于执行人工神经网络正向运算的装置还包括舍入单元,所述舍入单元用于在运算结束后,对超出短位数定点精度范围的数据进行舍入操作。
其中,所述舍入单元选自随机舍入单元、四舍五入单元、向上舍入单元、向下舍入单元、截断舍入单元中的任一种;
其中,所述随机舍入单元执行如下操作:
其中,y表示随机舍入后的短位定点数据,x表示随机舍入前的长位浮点数据,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location表示对原数据x直接截得短位数定点数据所得的数,w.p.表示概率,即随机舍入获得的数据y为的概率为的概率为
所述四舍五入单元执行如下操作:
其中,y表示四舍五入后的短位定点数据,x表示四舍五入前的长位浮点数据,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location为ε的整数倍,其值为小于或等于x的最大数;
所述向上舍入单元执行如下操作:
其中,y表示向上舍入后的短位定点数据,x表示向上舍入前的长位浮点数据,为ε的整数倍,其值为大于或等于x的最小数,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location
所述向下舍入单元执行如下操作:
其中,y表示向上舍入后的短位定点数据,x表示向上舍入前的长位浮点数据,为ε的整数倍,其值为小于或等于x的最大数,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location
所述截断舍入单元执行如下操作:
y=[x];
其中,y表示截断舍入后的短位定点数据,x表示截断舍入前的长位浮点数据,[x]表示对原数据x直接截得短位数定点数据所得的数。
其中,所述数据转换单元先通过所述舍入单元对待处理的数据进行舍入操作,再根据浮点数据统计模块得到的小数点位置Point location来实现长位数浮点数据类型向短位数定点数据类型的转换。
其中,所述用于执行人工神经网络正向运算的装置还包括运算缓存单元,所述运算缓存单元采用长位数浮点数据类型存储正向运算中加法和乘法的中间运算结果。
作为本发明的另一个方面,本发明还提供了一种执行人工神经网络正向运算的方法,包括以下步骤:
步骤1,获取所述人工神经网络各个层的长位数浮点数据,包括每一层的权值、偏置和/或输入输出值;
步骤2,对获取的所述长位数浮点数据,统计落在一列逐渐缩小的区间:[-2X-1-i,2X-1-i-2-i]i=0,1,…,N中的比例,其中X是短位数定点数据类型的总位数;得到的相应的比例记为:p0,p1,…,pN,其中N是预先设定的一个正整数;
步骤3,对于所述长位数浮点数据,预先设定一个溢出率EPL,取小数点位置Pointlocation为:max{i|pi≥1-EPL,i∈{0,1,…,N}};即在0,1,…,N中取最大的i,使得pi≥1-EPL;
步骤4,根据所述小数点位置Point location,将所有所述长位数浮点数据采用短位数定点数据类型表示;
步骤5,对所述短位数定点数据执行人工神经网络正向运算。
其中,在所述执行人工神经网络正向运算的方法中,对所述人工神经网络不同层、不同类型的数据分别进行统计分析,获得相对于所述人工神经网络不同类型的数据的小数点位置Point location,并分别进行计算。
其中,所述对短位数定点数据执行人工神经网络正向运算的步骤中,对于正向运算中的加法运算和乘法运算,将其中间计算结果采用长位数浮点数据形式存储。
其中,在执行完所述人工神经网络正向运算之后,将参与反向运算的权值和偏置数据采用在正向运算时保留的长位数浮点数据表示的副本、其余数据采用由短位数定点数据转换成的长位数浮点数据后再进行反向运算。
基于上述技术方案可知,本发明的运算装置和方法具有如下有益效果:可以实现多层人工神经网络的短位数定点形式的正向运算,从而极大地减少了存储网络参数所需的空间,减少硬件的面积开销,优化了硬件的面积功耗比;训练完成的神经网络模型参数数据可用于专用神经网络加速器,由于采用了短位定点形式表示数据,所以可以降低对专用神经网络加速器传输带宽的要求,同时,减少计算带来的功耗。
附图说明
图1为根据本发明一实施例的用于存储数据的定点数据结构的具体表示方法;
图2为根据本发明一实施例的用于执行人工神经网络正向运算的装置中浮点数据统计模块的示例框图;
图3为根据本发明一实施例的用于执行人工神经网络正向运算的装置中正向运算模块的短位数定点计算部分示例框图;
图4为根据本发明一实施例的神经网络正向运算过程的示例框图;
图5示意性示出了根据本发明一实施例的用于执行人工神经网路正向运算装置的运算流程示例框图;
图6为根据本发明一实施例的算法实施总体流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明作进一步的详细说明。通过以下详细描述,本发明的其它方面、优势和突出特征对于本领域技术人员将变得显而易见。
在本说明书中,下述用于描述本发明原理的各种实施例只是说明,不应该以任何方式解释为限制发明的范围。参照附图的下述描述用于帮助全面理解由权利要求及其等同物限定的本发明的示例性实施例。下述描述包括多种具体细节来帮助理解,但这些细节应认为仅仅是示例性的。因此,本领域普通技术人员应认识到,在不悖离本发明的范围和精神的情况下,可以对本文中描述的实施例进行多种改变和修改。此外,为了清楚和简洁起见,省略了公知功能和结构的描述。此外,贯穿附图,相同附图标记用于相似功能和操作。
本发明公开了一种用于执行神经网络正向运算的装置,包括浮点数据统计模块、数据转换单元及相应的定点数据运算模块。其中,浮点数据统计模块用于统计及计算获得人工神经网络正向运算中存储各个类型数据的合适的定点位置;数据转换单元用于实现短位数定点数据类型与长位数浮点数据类型的转换;定点运算模块用于完成针对于短位数定点数据所需的各类正向运算。
其中,“长位数浮点数据”表示原来的浮点数据,例如32位浮点数据,也可以是针对标准的64位或者16位浮点数等,这里只是以32位为具体实施例进行说明;“较少位数定点数据”,又名“短位数定点数据”,表示相对于原来的浮点数据来说,采用更少的位数来表示的定点数据。
根据本发明实施例的多层人工神经网络的正向运算,包括两层或者两层以上的多个神经元。对于正向运算中所需的输入、权值、偏置等数据, 均采用短位数定点数据类型表示,并用短位数定点数据类型参与各个层之间的运算。
图1示出了根据本发明实施例的用于存储数据的短位数定点数据结构的具体表示方法。其中,1bit位用于表示符号,M位用于表示整数部分,N位用于表示小数部分;相比于32位浮点数据表示形式,本发明采用的短位定点数据表示形式除了占用比特位数更少外,对于神经网络中同一层、同一类型的数据,如第一个卷积层的所有权值数据,还另外设置了一个标志位Point location记录小数点的位置,这样可以根据实际数据的分布调整数据表示的精度与可表示数据范围。
图2示出了浮点数据统计模块的示例框图。包括数据提取单元21、统计单元22和分析单元23。该模块的目的是,通过提取采用32位浮点数据类型的神经网络中的所有32位浮点数据,并通过分析这些数据得到神经网络中用短位数定点描述各个不同类型数据所需的小数点位置Point location,以便在之后的短位数定点正向运算中有更好的效果。其中,数据提取单元用于提取32位浮点正向训练中各个不同类型的数据;统计单元用于统计同一类型数据的数据范围及各个数据段的数据分布情况;分析单元根据统计单元统计的结果,得出用短位数定点表示各个类型数据应当设定的小数点位置Point location。
图3示出了正向运算模块的短位数定点计算部分的示例框图。包括运算缓存单元31、数据转换单元32、舍入单元33。其中:运算缓存单元用精度较高的数据类型存储正向运算的中间结果,这是由于在正向运算时,加法或者乘法运算可能会导致数据范围扩大;运算结束后,对超出短位数定点精度范围的数据,进行舍入操作,接着通过数据转换单元32将缓存区的数据转换为短位数定点数据。
舍入单元33可以完成对超出短位定点精度范围的数据进行舍入操作,该单元可以为随机舍入单元、四舍五入单元、向上舍入单元、向下舍入单元、截断舍入单元等,通过不同的舍入单元可以实现对超出短位数定点精度范围数据进行不同的舍入操作。
随机舍入单元执行如下操作:
其中,ε为当前短位数定点数据表示格式所能表示的最小正数,即2-Point_location表示对原数据x直接截得短位数定点数据所得的数(类似于对小数做向下取整操作),w.p.表示概率,即随机舍入获得的数据y为 的概率为的概率为
四舍五入单元执行如下操作:
其中,y表示四舍五入后的短位定点数据,x表示四舍五入前的长位浮点数据,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location为ε的整数倍,其值为小于或等于x的最大数。
向上舍入单元执行如下操作:
其中,y表示向上舍入后的短位定点数据,x表示向上舍入前的长位浮点数据,为ε的整数倍,其值为大于或等于x的最小数,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location
向下舍入单元执行如下操作:
其中,y表示向上舍入后的短位定点数据,x表示向上舍入前的长位浮点数据,为ε的整数倍,其值为小于或等于x的最大数,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location
截断舍入单元执行如下操作:
y=[x];
其中,y表示截断舍入后的短位定点数据,x表示截断舍入前的长位浮点数据,[x]表示对原数据x直接截得短位数定点数据所得的数。
本发明还公开了一种执行人工神经网络正向运算的方法,具体实施步骤为:
通过已训练好的神经网络32位浮点模型获取神经网络各个层的32位浮点模型数据,包括每一层的权值、偏置、输入输出值及其它数据参数。
对不同层,对于每一种类型的数据,统计落在一列逐渐缩小的区间:[-2X-1-i,2X -1-i-2-i]i=0,1,…,N中的比例(X是短位数定点数据类型的总位数);得到的相应的比例记为:p0,p1,…,pN,其中N是预先设定的一个正整数;
对于每一种类型的数据,预先设定一个溢出率EPL,取小数点位置Point location为:max{i|pi≥1-EPL,i∈{0,1,…,N}};即在0,1,…,N中取最大的i,使得pi≥1-EPL;
根据所述小数点位置Point location,将所有所述长位数浮点数据采用短位数定点数据类型表示。
对统计得到的短位定点表示方式用于神经网络正向运算,即神经网络正向运算中所有数据用短位定点格式表示,同时,对神经网络的权值和偏置数据保留一份32位浮点数据表示的副本,然后做正向训练。对于正向运算中,某些运算会导致数据范围扩大,如加法、乘法等,需要用缓存空间存储中间计算结果,中间结果用32位浮点形式存储,计算完后再转回相应的短位定点格式。32位浮点转短位定点过程需要用舍入方式,其中包括随机舍入、四舍五入舍入等,分别表示如下:
随机舍入单元执行如下操作:
其中,ε为当前短位数定点数据表示格式所能表示的最小正数,即2-Point_location表示对原数据x直接截得短位数定点数据所得的数(类似于对小数做向下取整操作),w.p.表示概率,即随机舍入获得的数据y为 的概率为的概率为
四舍五入单元执行如下操作:
其中,y表示四舍五入后的短位定点数据,x表示四舍五入前的长位浮点数据,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location为ε的整数倍,其值为小于或等于x的最大数。
向上舍入单元执行如下操作:
其中,y表示向上舍入后的短位定点数据,x表示向上舍入前的长位浮点数据,为ε的整数倍,其值为大于或等于x的最小数,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location
向下舍入单元执行如下操作:
其中,y表示向上舍入后的短位定点数据,x表示向上舍入前的长位浮点数据,为ε的整数倍,其值为小于或等于x的最大数,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location
截断舍入单元执行如下操作:
y=[x];
其中,y表示截断舍入后的短位定点数据,x表示截断舍入前的长位浮点数据,[x]表示对原数据x直接截得短位数定点数据所得的数。
正向运算结束后,做反向运算时,需要通过短位定点转32位浮点数据转换单元将正向运算中的数据转换为32位浮点参与反向运算,其中,参与反向运算的权值和偏置数据用正向运算中保留的32位浮点数据表示的副本,反向运算结束后,在通过32位浮点转短位定点数据转换单元转为短位定点参与之后的正向运算,同时,仍对神经网络的权值和偏置数据保留32位定点数据表示的副本,转换过程中需要做舍入操作,操作同正向运算中的舍入操作。
重复进行如上所述的正向及反向运算直到神经网络训练完成。
图4是示出根据一个实施例的单层人工神经网络正向运算流程图。该流程图描述利用本发明的装置和指令集实现的一种单层神经网络正向运算的过程。对于每一层来说,首先对输入神经元向量进行加权求和计算出本层的中间结果向量。该中间结果向量加偏置并激活得到输出神经元向量。将输出神经元向量作为下一层的输入神经元向量。
图5示意性示出了根据本发明一实施例的运算流程示例框图。其中,正向运算模块51包含了图3所示的短位数定点计算模块,正向运算得到的除权值、偏置外的参数在进行反向传播时要先通过X位-32位浮点转换单元53转换成32位浮点数进行反向传播运算,反向运算模块53进行的反向传播运算结束后,需要通过32位浮点-X位转换单元54转换成短位数定点数据,在转换过程中,需对超出短位数定点精度范围的数据进行同图3中的舍入操作,此处舍入操作由随机舍入单元55完成。
图6示出了根据本发明实施例的算法实施总体流程图。细节操作在对图1到图5的说明中已经给出,详细步骤和发明内容中的具体实施步骤完全相同,这里不作赘述。
通过将正向运算的数据用短位数定点表示,充分利用了短位数定点数据格式的数据范围空间,相对于32位浮点数据表示,极大地减少了存储网络参数所需的空间,优化了硬件的面积功耗比。
前面的附图中所描绘的进程或方法可通过包括硬件(例如,电路、专用逻辑等)、固件、软件(例如,被承载在非瞬态计算机可读介质上的软件),或两者的组合的处理逻辑来执行。虽然上文按照某些顺序操作描述了进程或方法,但是,应该理解,所描述的某些操作能以不同顺序来执行。此外,可并行地而非顺序地执行一些操作。
在前述的说明书中,参考其特定示例性实施例描述了本发明的各实施例。显然,可对各实施例做出各种修改,而不悖离所附权利要求所述的本发明的更广泛的精神和范围。相应地,说明书和附图应当被认为是说明性的,而不是限制性的。

Claims (10)

1.一种用于执行人工神经网络正向运算的装置,包括浮点数据统计模块、数据转换单元和定点数据运算模块,其特征在于,
所述浮点数据统计模块用于对所述人工神经网络正向运算所需的各个类型的数据进行统计分析,得到小数点位置Point location;
所述数据转换单元用于根据所述浮点数据统计模块得到的所述小数点位置Pointlocation来实现长位数浮点数据类型向短位数定点数据类型的转换;
所述定点数据运算模块用于在所述数据转换单元将所有所述人工神经网络正向运算中所需的输入、权值和/或偏置数据均采用短位数定点数据类型表示之后,对所述短位数定点数据进行人工神经网络正向运算。
2.如权利要求1所述的用于执行人工神经网络正向运算的装置,其特征在于,所述浮点数据统计模块包括数据提取单元、统计单元和分析单元,其中,所述数据提取单元用于提取基于长位数浮点数据的正向运算中各种不同类型的数据;所述统计单元用于统计同一类型数据的数据范围及各数据段的数据分布情况;所述分析单元根据统计单元统计的结果,得出用短位数定点表示各个类型数据应当设定的小数点位置Point location。
3.如权利要求1所述的用于执行人工神经网络正向运算的装置,其特征在于,所述用于执行人工神经网络正向运算的装置还包括舍入单元,所述舍入单元用于在运算结束后,对超出短位数定点精度范围的数据进行舍入操作。
4.如权利要求3所述的用于执行人工神经网络正向运算的装置,其特征在于,所述舍入单元选自随机舍入单元、四舍五入单元、向上舍入单元、向下舍入单元、截断舍入单元中的任一种;
其中,所述随机舍入单元执行如下操作:
其中,y表示随机舍入后的短位定点数据,x表示随机舍入前的长位浮点数据,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location表示对原数据x直接截得短位数定点数据所得的数,w.p.表示概率,即随机舍入获得的数据y为的概率为的概率为
所述四舍五入单元执行如下操作:
其中,y表示四舍五入后的短位定点数据,x表示四舍五入前的长位浮点数据,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location为ε的整数倍,其值为小于或等于x的最大数;
所述向上舍入单元执行如下操作:
其中,y表示向上舍入后的短位定点数据,x表示向上舍入前的长位浮点数据,为ε的整数倍,其值为大于或等于x的最小数,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location
所述向下舍入单元执行如下操作:
其中,y表示向上舍入后的短位定点数据,x表示向上舍入前的长位浮点数据,为ε的整数倍,其值为小于或等于x的最大数,ε为当前短位数定点数据表示格式所能表示的最小正整数,即2-Point_location
所述截断舍入单元执行如下操作:
y=[x];
其中,y表示截断舍入后的短位定点数据,x表示截断舍入前的长位浮点数据,[x]表示对原数据x直接截得短位数定点数据所得的数。
5.如权利要求3所述的用于执行人工神经网络正向运算的装置,其特征在于,所述数据转换单元先通过所述舍入单元对待处理的数据进行舍入操作,再根据浮点数据统计模块得到的小数点位置Point location来实现长位数浮点数据类型向短位数定点数据类型的转换。
6.如权利要求1所述的用于执行人工神经网络正向运算的装置,其特征在于,所述用于执行人工神经网络正向运算的装置还包括运算缓存单元,所述运算缓存单元采用长位数浮点数据类型存储正向运算中加法和乘法的中间运算结果。
7.一种执行人工神经网络正向运算的方法,其特征在于,包括以下步骤:
步骤1,获取所述人工神经网络各个层的长位数浮点数据,包括每一层的权值、偏置和/或输入输出值;
步骤2,对获取的所述长位数浮点数据,统计落在一列逐渐缩小的区间:[-2X-1-i,2X-1-i-2-i]i=0,1,...,N中的比例,其中x是短位数定点数据类型的总位数;得到的相应的比例记为:p0,p1,...,pN,其中N是预先设定的一个正整数;
步骤3,对于所述长位数浮点数据,预先设定一个溢出率EPL,取小数点位置Pointlocation为:max{i|pi≥1-EPL,i∈{0,1,...,N}};即在0,1,...,N中取最大的i,使得pi≥1-EPL;
步骤4,根据所述小数点位置Point location,将所有所述长位数浮点数据采用短位数定点数据类型表示;
步骤5,对所述短位数定点数据执行人工神经网络正向运算。
8.如权利要求7所述的方法,其特征在于,在所述执行人工神经网络正向运算的方法中,对所述人工神经网络不同层、不同类型的数据分别进行统计分析,获得相对于所述人工神经网络不同类型的数据的小数点位置Point location,并分别进行计算。
9.如权利要求7所述的方法,其特征在于,所述对短位数定点数据执行人工神经网络正向运算的步骤中,对于正向运算中的加法运算和乘法运算,将其中间计算结果采用长位数浮点数据形式存储。
10.如权利要求7所述的方法,其特征在于,在执行完所述人工神经网络正向运算之后,将参与反向运算的权值和偏置数据采用在正向运算时保留的长位数浮点数据表示的副本、其余数据采用由短位数定点数据转换成的长位数浮点数据后再进行反向运算。
CN201610282480.4A 2016-04-29 2016-04-29 一种用于执行人工神经网络正向运算的装置和方法 Pending CN107330515A (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN201610282480.4A CN107330515A (zh) 2016-04-29 2016-04-29 一种用于执行人工神经网络正向运算的装置和方法
CN201910152660.4A CN109934331B (zh) 2016-04-29 2016-04-29 用于执行人工神经网络正向运算的装置和方法
KR1020187033951A KR102476343B1 (ko) 2016-04-29 2016-05-12 자리수가 비교적 적은 고정 소수점 수치의 신경망 연산에 대한 지원 장치와 방법
EP16899923.3A EP3451164B1 (en) 2016-04-29 2016-05-12 Neural network operation device and method supporting few-bit fixed-point number
PCT/CN2016/081839 WO2017185412A1 (zh) 2016-04-29 2016-05-12 一种支持较少位数定点数的神经网络运算的装置和方法
US16/174,100 US11295196B2 (en) 2016-04-29 2018-10-29 Apparatus and methods for neural network operations supporting fixed point numbers of short bit length
US17/683,817 US20220308831A1 (en) 2016-04-29 2022-03-01 Apparatus and methods for neural network operations supporting fixed point numbers of short bit length

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610282480.4A CN107330515A (zh) 2016-04-29 2016-04-29 一种用于执行人工神经网络正向运算的装置和方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201910152660.4A Division CN109934331B (zh) 2016-04-29 2016-04-29 用于执行人工神经网络正向运算的装置和方法

Publications (1)

Publication Number Publication Date
CN107330515A true CN107330515A (zh) 2017-11-07

Family

ID=60161679

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201610282480.4A Pending CN107330515A (zh) 2016-04-29 2016-04-29 一种用于执行人工神经网络正向运算的装置和方法
CN201910152660.4A Active CN109934331B (zh) 2016-04-29 2016-04-29 用于执行人工神经网络正向运算的装置和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201910152660.4A Active CN109934331B (zh) 2016-04-29 2016-04-29 用于执行人工神经网络正向运算的装置和方法

Country Status (5)

Country Link
US (1) US11295196B2 (zh)
EP (1) EP3451164B1 (zh)
KR (1) KR102476343B1 (zh)
CN (2) CN107330515A (zh)
WO (1) WO2017185412A1 (zh)

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109583579A (zh) * 2018-11-30 2019-04-05 上海寒武纪信息科技有限公司 计算装置及相关产品
WO2019114842A1 (zh) * 2017-12-14 2019-06-20 北京中科寒武纪科技有限公司 一种集成电路芯片装置
WO2019120114A1 (zh) * 2017-12-21 2019-06-27 深圳励飞科技有限公司 数据定点化处理方法、装置、电子设备及计算机存储介质
CN109961137A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109961131A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 神经网络正向运算方法及相关产品
CN109961138A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 神经网络训练方法及相关产品
CN109961136A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109960673A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109961135A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
WO2019129070A1 (zh) * 2017-12-27 2019-07-04 北京中科寒武纪科技有限公司 一种集成电路芯片装置
CN109977071A (zh) * 2017-12-27 2019-07-05 北京中科寒武纪科技有限公司 神经网络处理器板卡及相关产品
CN109978147A (zh) * 2017-12-27 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109977446A (zh) * 2017-12-28 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109978157A (zh) * 2017-12-28 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109978155A (zh) * 2017-12-28 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109978153A (zh) * 2017-12-27 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109978148A (zh) * 2017-12-28 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109993284A (zh) * 2017-12-29 2019-07-09 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN110069240A (zh) * 2019-04-30 2019-07-30 北京探境科技有限公司 定点与浮点数据计算方法及装置
CN110163356A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163350A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110210611A (zh) * 2019-05-13 2019-09-06 西安交通大学 一种用于卷积神经网络计算的动态自适应数据截断方法
WO2019165679A1 (zh) * 2018-03-01 2019-09-06 中国科学院计算技术研究所 一种包括比特转换装置的神经网络处理器及其方法
CN110276447A (zh) * 2018-03-14 2019-09-24 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110337658A (zh) * 2018-04-26 2019-10-15 深圳市大疆创新科技有限公司 神经网络加速装置与方法
CN110383300A (zh) * 2018-02-13 2019-10-25 上海寒武纪信息科技有限公司 一种计算装置及方法
CN111105033A (zh) * 2017-12-14 2020-05-05 中科寒武纪科技股份有限公司 神经网络处理器板卡及相关产品
CN111240606A (zh) * 2020-04-24 2020-06-05 支付宝(杭州)信息技术有限公司 一种基于安全内存的存储优化方法及系统
JP2020112901A (ja) * 2019-01-09 2020-07-27 日本電信電話株式会社 推論処理装置および推論処理方法
CN111488976A (zh) * 2019-01-28 2020-08-04 中科寒武纪科技股份有限公司 神经网络计算装置、神经网络计算方法及相关产品
CN111488963A (zh) * 2019-01-28 2020-08-04 中科寒武纪科技股份有限公司 神经网络计算装置和方法
CN111753951A (zh) * 2019-03-29 2020-10-09 富士通株式会社 信息处理器、信息处理方法和存储介质
TWI768160B (zh) * 2017-12-14 2022-06-21 大陸商中科寒武紀科技股份有限公司 集成電路芯片裝置及相關產品
US11620130B2 (en) 2018-02-13 2023-04-04 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
US11630666B2 (en) 2018-02-13 2023-04-18 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
US11847554B2 (en) 2019-04-18 2023-12-19 Cambricon Technologies Corporation Limited Data processing method and related products

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107340993B (zh) 2016-04-28 2021-07-16 中科寒武纪科技股份有限公司 运算装置和方法
CN107330515A (zh) 2016-04-29 2017-11-07 北京中科寒武纪科技有限公司 一种用于执行人工神经网络正向运算的装置和方法
CN107679618B (zh) * 2017-07-28 2021-06-11 赛灵思电子科技(北京)有限公司 一种静态策略定点化训练方法及装置
US11437032B2 (en) 2017-09-29 2022-09-06 Shanghai Cambricon Information Technology Co., Ltd Image processing apparatus and method
CN116991226A (zh) 2018-02-14 2023-11-03 上海寒武纪信息科技有限公司 处理器的控制装置、方法及设备
JP7056225B2 (ja) * 2018-02-26 2022-04-19 富士通株式会社 演算処理装置、情報処理装置、情報処理方法、およびプログラム
CN109716288A (zh) * 2018-04-17 2019-05-03 深圳鲲云信息科技有限公司 网络模型编译器及相关产品
EP3624020A4 (en) 2018-05-18 2021-05-05 Shanghai Cambricon Information Technology Co., Ltd CALCULATION PROCEDURES AND RELATED PRODUCTS
KR102470893B1 (ko) 2018-06-27 2022-11-25 상하이 캠브리콘 인포메이션 테크놀로지 컴퍼니 리미티드 온 칩 코드의 브레이크 포인트에 의한 디버그 방법, 온 칩 프로세서 및 브레이크 포인트에 의한 칩 디버그 시스템
US11966583B2 (en) 2018-08-28 2024-04-23 Cambricon Technologies Corporation Limited Data pre-processing method and device, and related computer device and storage medium
US11703939B2 (en) 2018-09-28 2023-07-18 Shanghai Cambricon Information Technology Co., Ltd Signal processing device and related products
JP2020098469A (ja) * 2018-12-18 2020-06-25 富士通株式会社 演算処理装置および演算処理装置の制御方法
CN109670582B (zh) * 2018-12-28 2021-05-07 四川那智科技有限公司 一种全定点化神经网络的设计方法
CN111383638A (zh) 2018-12-28 2020-07-07 上海寒武纪信息科技有限公司 信号处理装置、信号处理方法及相关产品
CN111832738B (zh) 2019-04-18 2024-01-09 中科寒武纪科技股份有限公司 一种数据处理方法及相关产品
US11676028B2 (en) 2019-06-12 2023-06-13 Shanghai Cambricon Information Technology Co., Ltd Neural network quantization parameter determination method and related products
CN112085191B (zh) 2019-06-12 2024-04-02 上海寒武纪信息科技有限公司 一种神经网络的量化参数确定方法及相关产品
US12001955B2 (en) 2019-08-23 2024-06-04 Anhui Cambricon Information Technology Co., Ltd. Data processing method, device, computer equipment and storage medium
WO2021036905A1 (zh) 2019-08-27 2021-03-04 安徽寒武纪信息科技有限公司 数据处理方法、装置、计算机设备和存储介质
CN112446460A (zh) * 2019-08-28 2021-03-05 上海寒武纪信息科技有限公司 用于处理数据的方法、装置以及相关产品
CN112446461A (zh) * 2019-08-29 2021-03-05 杭州海康威视数字技术股份有限公司 一种神经网络模型训练方法及装置
WO2021077283A1 (zh) * 2019-10-22 2021-04-29 深圳鲲云信息科技有限公司 神经网络计算压缩方法、系统及存储介质
CN111008230B (zh) * 2019-11-22 2023-08-04 远景智能国际私人投资有限公司 数据存储方法、装置、计算机设备及存储介质
CN113128659B (zh) * 2020-01-14 2024-06-28 杭州海康威视数字技术股份有限公司 神经网络定点化方法、装置、电子设备及可读存储介质
CN111651490A (zh) * 2020-06-04 2020-09-11 深圳前海微众银行股份有限公司 数据筛选方法、装置、设备及计算机存储介质
KR102477533B1 (ko) * 2020-08-06 2022-12-15 한국과학기술원 희소성 데이터를 이용하는 연산 장치 및 그것의 동작 방법
US12112265B2 (en) * 2020-12-18 2024-10-08 Analog Devices International Unlimited Company Architecture for running convolutional networks on memory and mips constrained embedded devices

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6144977A (en) * 1995-07-10 2000-11-07 Motorola, Inc. Circuit and method of converting a floating point number to a programmable fixed point number
DE19718224A1 (de) * 1997-04-30 1997-11-27 Harald Dipl Phys Wuest Digitaler Neuroprozessor
CN1668995A (zh) * 2002-06-06 2005-09-14 克瑞迪科公司 用于改善伪随机数发生器的输出的不可预测性的方法
CN101419245B (zh) * 2008-12-16 2011-02-16 北京市产品质量监督检验所 数字音频信号标准测试源生成方法
CN101510149B (zh) * 2009-03-16 2011-05-04 炬力集成电路设计有限公司 一种数据处理方法和装置
GB2488322B (en) * 2011-02-22 2017-09-20 Advanced Risc Mach Ltd Number format pre-conversion instructions
JP5734717B2 (ja) * 2011-03-24 2015-06-17 セミコンダクター・コンポーネンツ・インダストリーズ・リミテッド・ライアビリティ・カンパニー 浮動小数点数のビット長変換回路およびそれを用いた振動補正制御回路
CN102981854A (zh) * 2012-11-16 2013-03-20 天津市天祥世联网络科技有限公司 基于浮点数运算内联函数库的神经网络优化方法
US9449257B2 (en) * 2012-12-04 2016-09-20 Institute Of Semiconductors, Chinese Academy Of Sciences Dynamically reconstructable multistage parallel single instruction multiple data array processing system
US9582248B2 (en) * 2014-09-26 2017-02-28 Arm Limited Standalone floating-point conversion unit
US20170061279A1 (en) * 2015-01-14 2017-03-02 Intel Corporation Updating an artificial neural network using flexible fixed point representation
CN105224284B (zh) * 2015-09-29 2017-12-08 北京奇艺世纪科技有限公司 一种浮点数处理方法及装置
CN107330515A (zh) 2016-04-29 2017-11-07 北京中科寒武纪科技有限公司 一种用于执行人工神经网络正向运算的装置和方法
CN106502626A (zh) * 2016-11-03 2017-03-15 北京百度网讯科技有限公司 数据处理方法和装置

Cited By (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111126588A (zh) * 2017-12-14 2020-05-08 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
CN109961137A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109961136B (zh) * 2017-12-14 2020-05-19 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
CN111160541A (zh) * 2017-12-14 2020-05-15 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
CN109961131A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 神经网络正向运算方法及相关产品
CN109961138A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 神经网络训练方法及相关产品
CN109961136A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109960673A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109961135A (zh) * 2017-12-14 2019-07-02 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
TWI767098B (zh) * 2017-12-14 2022-06-11 大陸商中科寒武紀科技股份有限公司 神經網絡正向運算方法及相關產品
TWI767097B (zh) * 2017-12-14 2022-06-11 大陸商中科寒武紀科技股份有限公司 集成電路芯片裝置及相關產品
TWI768160B (zh) * 2017-12-14 2022-06-21 大陸商中科寒武紀科技股份有限公司 集成電路芯片裝置及相關產品
US11507809B2 (en) 2017-12-14 2022-11-22 Cambricon Technologies Corporation Limited Integrated circuit chip apparatus
US11507810B2 (en) 2017-12-14 2022-11-22 Cambricon Technologies Corporation Limited Integrated circuit chip apparatus
US11562219B2 (en) 2017-12-14 2023-01-24 Cambricon Technologies Corporation Limited Integrated circuit chip apparatus
US11562216B2 (en) 2017-12-14 2023-01-24 Cambricon Technologies Corporation Limited Integrated circuit chip apparatus
US11586891B2 (en) 2017-12-14 2023-02-21 Cambricon Technologies Corporation Limited Integrated circuit chip apparatus
CN109960673B (zh) * 2017-12-14 2020-02-18 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
WO2019114842A1 (zh) * 2017-12-14 2019-06-20 北京中科寒武纪科技有限公司 一种集成电路芯片装置
US11900242B2 (en) 2017-12-14 2024-02-13 Cambricon Technologies Corporation Limited Integrated circuit chip apparatus
US11900241B2 (en) 2017-12-14 2024-02-13 Cambricon Technologies Corporation Limited Integrated circuit chip apparatus
CN111105033B (zh) * 2017-12-14 2024-01-12 中科寒武纪科技股份有限公司 神经网络处理器板卡及相关产品
CN110826712B (zh) * 2017-12-14 2024-01-09 中科寒武纪科技股份有限公司 神经网络处理器板卡及相关产品
CN109961131B (zh) * 2017-12-14 2020-05-08 中科寒武纪科技股份有限公司 神经网络正向运算方法及相关产品
CN111105033A (zh) * 2017-12-14 2020-05-05 中科寒武纪科技股份有限公司 神经网络处理器板卡及相关产品
CN109961138B (zh) * 2017-12-14 2020-04-14 中科寒武纪科技股份有限公司 神经网络训练方法及相关产品
CN110909872A (zh) * 2017-12-14 2020-03-24 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
US11308389B2 (en) 2017-12-14 2022-04-19 Cambricon Technologies Corporation Limited Integrated circuit chip apparatus
CN110826712A (zh) * 2017-12-14 2020-02-21 中科寒武纪科技股份有限公司 神经网络处理器板卡及相关产品
CN110909872B (zh) * 2017-12-14 2023-08-25 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
US11704545B2 (en) 2017-12-14 2023-07-18 Cambricon Technologies Corporation Limited Integrated circuit chip apparatus
CN111126588B (zh) * 2017-12-14 2023-05-23 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
CN111160541B (zh) * 2017-12-14 2023-05-19 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
TWI795482B (zh) * 2017-12-14 2023-03-11 大陸商中科寒武紀科技股份有限公司 集成電路芯片裝置及相關產品
TWI793225B (zh) * 2017-12-14 2023-02-21 大陸商中科寒武紀科技股份有限公司 神經網絡訓練方法及相關產品
WO2019120114A1 (zh) * 2017-12-21 2019-06-27 深圳励飞科技有限公司 数据定点化处理方法、装置、电子设备及计算机存储介质
US11748603B2 (en) 2017-12-27 2023-09-05 Cambricon Technologies Corporation Limited Integrated circuit chip device
US11544546B2 (en) 2017-12-27 2023-01-03 Cambricon Technologies Corporation Limited Integrated circuit chip device
US11748602B2 (en) 2017-12-27 2023-09-05 Cambricon Technologies Corporation Limited Integrated circuit chip device
US11748605B2 (en) 2017-12-27 2023-09-05 Cambricon Technologies Corporation Limited Integrated circuit chip device
US11748604B2 (en) 2017-12-27 2023-09-05 Cambricon Technologies Corporation Limited Integrated circuit chip device
US11748601B2 (en) 2017-12-27 2023-09-05 Cambricon Technologies Corporation Limited Integrated circuit chip device
US11983621B2 (en) 2017-12-27 2024-05-14 Cambricon Technologies Corporation Limited Integrated circuit chip device
WO2019129070A1 (zh) * 2017-12-27 2019-07-04 北京中科寒武纪科技有限公司 一种集成电路芯片装置
CN109977071A (zh) * 2017-12-27 2019-07-05 北京中科寒武纪科技有限公司 神经网络处理器板卡及相关产品
CN109978147A (zh) * 2017-12-27 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109978153A (zh) * 2017-12-27 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
US11741351B2 (en) 2017-12-27 2023-08-29 Cambricon Technologies Corporation Limited Integrated circuit chip device
CN109978155A (zh) * 2017-12-28 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109978148B (zh) * 2017-12-28 2020-06-23 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
CN109978157A (zh) * 2017-12-28 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109977446A (zh) * 2017-12-28 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109978157B (zh) * 2017-12-28 2020-06-02 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
CN109978148A (zh) * 2017-12-28 2019-07-05 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
CN109993284B (zh) * 2017-12-29 2020-08-04 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
CN109993284A (zh) * 2017-12-29 2019-07-09 北京中科寒武纪科技有限公司 集成电路芯片装置及相关产品
US11620130B2 (en) 2018-02-13 2023-04-04 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
CN110163360A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163362B (zh) * 2018-02-13 2020-12-11 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163363B (zh) * 2018-02-13 2021-05-11 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163350B (zh) * 2018-02-13 2021-06-08 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163361B (zh) * 2018-02-13 2021-06-25 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163360B (zh) * 2018-02-13 2021-06-25 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163354B (zh) * 2018-02-13 2020-10-09 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163355B (zh) * 2018-02-13 2020-10-09 上海寒武纪信息科技有限公司 一种计算装置及方法
US12073215B2 (en) 2018-02-13 2024-08-27 Shanghai Cambricon Information Technology Co., Ltd Computing device with a conversion unit to convert data values between various sizes of fixed-point and floating-point data
CN110163356B (zh) * 2018-02-13 2020-10-09 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110383300B (zh) * 2018-02-13 2024-03-05 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163356A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163362A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163361A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163355A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163363A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110383300A (zh) * 2018-02-13 2019-10-25 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163359B (zh) * 2018-02-13 2020-12-11 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163359A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
US11630666B2 (en) 2018-02-13 2023-04-18 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
CN110163350A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163358A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
US11663002B2 (en) 2018-02-13 2023-05-30 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
US11704125B2 (en) 2018-02-13 2023-07-18 Cambricon (Xi'an) Semiconductor Co., Ltd. Computing device and method
US11740898B2 (en) 2018-02-13 2023-08-29 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
US11709672B2 (en) 2018-02-13 2023-07-25 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
US11720357B2 (en) 2018-02-13 2023-08-08 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
CN110163354A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163357A (zh) * 2018-02-13 2019-08-23 上海寒武纪信息科技有限公司 一种计算装置及方法
WO2019165679A1 (zh) * 2018-03-01 2019-09-06 中国科学院计算技术研究所 一种包括比特转换装置的神经网络处理器及其方法
CN110276447A (zh) * 2018-03-14 2019-09-24 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110276447B (zh) * 2018-03-14 2024-09-24 上海寒武纪信息科技有限公司 一种计算装置及方法
CN111626413A (zh) * 2018-03-14 2020-09-04 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110337658A (zh) * 2018-04-26 2019-10-15 深圳市大疆创新科技有限公司 神经网络加速装置与方法
WO2019205064A1 (zh) * 2018-04-26 2019-10-31 深圳市大疆创新科技有限公司 神经网络加速装置与方法
CN109583579A (zh) * 2018-11-30 2019-04-05 上海寒武纪信息科技有限公司 计算装置及相关产品
JP2020112901A (ja) * 2019-01-09 2020-07-27 日本電信電話株式会社 推論処理装置および推論処理方法
JP7379821B2 (ja) 2019-01-09 2023-11-15 日本電信電話株式会社 推論処理装置および推論処理方法
CN111488963A (zh) * 2019-01-28 2020-08-04 中科寒武纪科技股份有限公司 神经网络计算装置和方法
CN111488976A (zh) * 2019-01-28 2020-08-04 中科寒武纪科技股份有限公司 神经网络计算装置、神经网络计算方法及相关产品
CN111488963B (zh) * 2019-01-28 2023-11-24 中科寒武纪科技股份有限公司 神经网络计算装置和方法
CN111753951A (zh) * 2019-03-29 2020-10-09 富士通株式会社 信息处理器、信息处理方法和存储介质
US11847554B2 (en) 2019-04-18 2023-12-19 Cambricon Technologies Corporation Limited Data processing method and related products
CN110069240A (zh) * 2019-04-30 2019-07-30 北京探境科技有限公司 定点与浮点数据计算方法及装置
CN110210611A (zh) * 2019-05-13 2019-09-06 西安交通大学 一种用于卷积神经网络计算的动态自适应数据截断方法
CN111240606A (zh) * 2020-04-24 2020-06-05 支付宝(杭州)信息技术有限公司 一种基于安全内存的存储优化方法及系统

Also Published As

Publication number Publication date
EP3451164A1 (en) 2019-03-06
KR102476343B1 (ko) 2022-12-09
KR20190003613A (ko) 2019-01-09
US20190122094A1 (en) 2019-04-25
EP3451164B1 (en) 2022-12-14
US11295196B2 (en) 2022-04-05
CN109934331B (zh) 2020-06-19
WO2017185412A1 (zh) 2017-11-02
EP3451164A4 (en) 2020-01-15
CN109934331A (zh) 2019-06-25

Similar Documents

Publication Publication Date Title
CN107330515A (zh) 一种用于执行人工神经网络正向运算的装置和方法
CN107340993A (zh) 一种支持较少位数浮点数的神经网络运算的装置和方法
CN105512289B (zh) 基于深度学习和哈希的图像检索方法
CN112784964A (zh) 基于桥接知识蒸馏卷积神经网络的图像分类方法
CN109214509B (zh) 一种用于深度神经网络高速实时量化结构和运算实现方法
US20180018555A1 (en) System and method for building artificial neural network architectures
CN109791628B (zh) 神经网络模型分块压缩方法、训练方法、计算装置及系统
CN107609641A (zh) 稀疏神经网络架构及其实现方法
CN105512679A (zh) 一种基于极限学习机的零样本分类方法
CN108009638A (zh) 一种神经网络模型的训练方法、电子设备及存储介质
CN107292458A (zh) 一种应用于神经网络芯片的预测方法和预测装置
Chowdhury et al. Towards ultra low latency spiking neural networks for vision and sequential tasks using temporal pruning
CN110163350A (zh) 一种计算装置及方法
WO2019006976A1 (zh) 神经网络权重离散化方法、系统、设备和可读存储介质
CN105224577A (zh) 一种多标签文本分类方法及系统
CN113313244B (zh) 面向加法网络的近存储神经网络加速器及其加速方法
Pei et al. Carbon emissions reduction of neural network by discrete rank pruning
CN104573331A (zh) 一种基于MapReduce的K近邻数据预测方法
Xu et al. An efficient channel-level pruning for CNNs without fine-tuning
CN113033795B (zh) 基于时间步的二值脉冲图的脉冲卷积神经网络硬件加速器
CN113705784A (zh) 一种基于矩阵共享的神经网络权重编码方法及硬件系统
Wang et al. Robot Path Planning with Low Learning Cost Using a Novel K-means-based Pointer Networks
CN109416757A (zh) 用于处理数值数据的方法、设备和计算机可读存储介质
Hwang et al. One-Spike SNN: Single-Spike Phase Coding with Base Manipulation for ANN-to-SNN Conversion Loss Minimization
CN115545190B (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
CB02 Change of applicant information

Address after: 100190 room 644, comprehensive research building, No. 6 South Road, Haidian District Academy of Sciences, Beijing

Applicant after: Zhongke Cambrian Technology Co., Ltd

Address before: 100190 room 644, scientific research complex, No. 6, South Road, Academy of Sciences, Haidian District, Beijing

Applicant before: Beijing Zhongke Cambrian Technology Co., Ltd.

CB02 Change of applicant information