CN109190755B - 面向神经网络的矩阵转换装置及方法 - Google Patents

面向神经网络的矩阵转换装置及方法 Download PDF

Info

Publication number
CN109190755B
CN109190755B CN201811040908.XA CN201811040908A CN109190755B CN 109190755 B CN109190755 B CN 109190755B CN 201811040908 A CN201811040908 A CN 201811040908A CN 109190755 B CN109190755 B CN 109190755B
Authority
CN
China
Prior art keywords
matrix
conversion
data
result
intermediate result
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
CN201811040908.XA
Other languages
English (en)
Other versions
CN109190755A (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.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201811040908.XA priority Critical patent/CN109190755B/zh
Publication of CN109190755A publication Critical patent/CN109190755A/zh
Application granted granted Critical
Publication of CN109190755B publication Critical patent/CN109190755B/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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Abstract

本发明涉及一种面向神经网络的矩阵转换装置,包括:数据接收接口,用于接收并传递神经网络的待转换矩阵数据;转换矩阵接收接口,用于接收并传递对应于所述待转换矩阵数据的转换矩阵;矩阵运算单元,与所述数据接收接口和所述转换矩阵接收接口分别连接,利用所述待转换矩阵数据和所述对应的转换矩阵执行矩阵转换运算;输出接口,与所述矩阵运算单元相连,用于拼接并输出所述矩阵运算单元获得的运算结果;暂存单元,与所述数据接收接口和所述输出接口相连,用于暂存所述输出接口输出的运算结果,并将所述运算结果输入至所述数据接收接口。

Description

面向神经网络的矩阵转换装置及方法
技术领域
本发明涉及计算领域,特别涉及一种面向神经网络的矩阵转换装置及方法。
背景技术
神经网络是人工智能领域具有高发展水平的感知模型之一,因广泛的应用和出色的表现使其成为了学术界和工业界的研究热点。神经网络通过模拟人类大脑的神经连接结构来建立模型结构,为大规模数据(例如图像、视频或音频)处理任务带来了突破性进展,该模型结构是一种由大量节点通过网状互联结构构成的运算模型,其中的节点被称为神经元,每两个节点间的连接强度都代表通过该连接信号在这两个节点间的加权值,被称为权重,对应于人类神经网络中的记忆。
神经网络的计算过程一般包括卷积、激活和池化等步骤,经研究,其中在执行卷积过程的矩阵运算时,针对数据的重复性操作任务极大,特别是关于矩阵的乘法运算,这不仅增加了神经网络计算难度,同时重复的计算还浪费了大量的计算资源,导致运算速度下降。
因此,需要一种特别适用于神经网络的低成本且高灵活性的矩阵转换装置及方法。
发明内容
本发明提供一种面向神经网络的矩阵转换运算装置及方法,包括:
数据接收接口,用于接收并传递神经网络的待转换矩阵数据;
转换矩阵接收接口,用于接收并传递对应于所述待转换矩阵数据的转换矩阵;
矩阵运算单元,与所述数据接收接口和所述转换矩阵接收接口分别连接,利用所述待转换矩阵数据和所述对应的转换矩阵执行矩阵转换运算;
输出接口,与所述矩阵运算单元相连,用于拼接并输出所述矩阵运算单元获得的运算结果;
暂存单元,与所述数据接收接口和所述输出接口相连,用于暂存所述输出接口输出的运算结果,并将所述运算结果输入至所述数据接收接口。
优选的,所述待转换矩阵数据包括权值矩阵数据g和输入特征图数据d;
所述转换矩阵包括对应于所述权值矩阵数据g的权值转换矩阵G,以及对应于所述输入特征图数据d的输入特征图转换矩阵B;
所述矩阵运算单元用于执行所述转换矩阵G/B及其转置矩阵GT/BT与所述待转换矩阵数据g/d之间的向量乘累加和/或矩阵乘法运算;
所述输出接口用于拼接获得中间结果矩阵Lg/Ld
所述暂存单元用于暂存所述中间结果矩阵Lg/Ld
优选的,所述数据接收接口用于将所述中间结果矩阵Lg/Ld传递至所述矩阵运算单元;
所述矩阵运算单元用于执行所述中间结果矩阵Lg/Ld与所述转换矩阵G/B和/或其转换矩阵GT/BT之间的向量乘累加和/或矩阵乘法运算;
所述输出接口用于拼接获得对应于所述权值矩阵数据/所述输入特征图数据的转换结果矩阵U/V;
所述暂存单元用于暂存所述转换结果矩阵U/V。
优选的,所述矩阵运算单元用于执行针对所述转换结果矩阵U和所述转换结果矩阵V的点乘运算;
所述输出接口用于拼接获得中间运算矩阵M;
所述暂存单元用于暂存所述中间运算矩阵M。
优选的,所述转换矩阵还包括对应于所述权值矩阵数据g和所述输入特征图数据d的目标转换矩阵A;
所述矩阵运算单元用于执行针对所述转换矩阵A及其转置矩阵AT与所述中间运算矩阵M的向量乘累加和/或矩阵乘法运算;
所述输出接口用于拼接获得中间结果矩阵LM
所述暂存单元用于暂存所述中间结果矩阵LM
优选的,所述矩阵运算单元用于执行中间结果矩阵LM与所述转换矩阵A之间的向量乘累加运算;
用所述输出接口用于拼接获得最终的点乘结果矩阵F。
优选的,所述矩阵运算单元包括用于执行向量乘法运算的乘法模块和用于执行累加运算的累加模块。
优选的,所述矩阵运算单元还包括用于针对静态转换矩阵执行移位运算的移位运算单元,所述静态转换矩阵是指用于执行矩阵运算的转换矩阵的参数为固定值,且属于集合{0、±(1/2)n},其中,n∈{0、1、2、3、......};所述乘法运算单元用于针对动态转换矩阵执行矩阵乘法运算,所述动态矩阵是指用于执行矩阵运算的转换矩阵的参数为动态值或不属于静态转换矩阵的参数范围。
根据本发明的另一个方面,还提供一种利用如上所述的矩阵转换装置进行矩阵转换的方法,包括以下步骤:
利用所述数据接收接口和所述转换矩阵接收接口分别接收并分配待转换的矩阵数据和对应的转换矩阵;
利用矩阵运算单元执行针对待转换矩阵数据和对应转换矩阵的矩阵转换运算和/或矩阵乘法运算,并获得矩阵转换运算的中间结果;
利用所述输出接口将获得的所述中间结果传输至暂存单元;
循环利用所述矩阵运算单元执行针对待转换的矩阵数据和对应的转换矩阵以及中间结果与对应的转换矩阵之间的矩阵转换运算,直到获得最终的点乘结果矩阵。
优选的,所述中间结果包括对应于权值矩阵转换运算的第一中间结果,或对应于特征图矩阵转换运算的第二中间结果,或对应于所述点乘结果矩阵的第三中间结果
相对于现有技术,本发明取得了如下有益技术效果:本发明提供的面向神经网络的矩阵转换运算装置及方法,将基于Winograd的卷积运算转化为待转换矩阵数据与对应转换矩阵及其转置矩阵之间的向量乘累加运算和向量点乘运算,通过利用简单的乘法运算和累加运算配合暂存单元就可以完成与卷积运算等效的运算,简化了运算方式,节约了运算资源,提高了运算速度;同时,可以根据实际应用需求,考虑成本控制和速度要求等因素,任意调整运算装置的运算阵列配置,具有灵活的运算操作方式,普适性强,有利于广泛推广使用。
附图说明
图1是本发明提供的面向神经网络的矩阵转换装置示意图。
图2是本发明优选实施例提供的矩阵运算单元结构示意图。
图3是本发明优选实施例提供的具有16个矩阵运算单元的装置结构示意图。
图4是本发明优选实施例提供的矩阵转换的运算过程示意图。
具体实施方式
为了使本发明的目的、技术方案以及优点更加清楚明白,以下结合附图,对根据本发明的实施例中提供的面向神经网络的矩阵转换装置及方法进一步详细说明。
由于神经网络中的卷积运算重复性操作较多,而卷积运算量又与卷积窗口移动的次数成正比。经研究,学者们提出了一种基于Winograd的卷积运算方式,这种方式通过利用特定的转换矩阵对输入特征图数据与权值数据进行矩阵转换,从而完成等效的卷积运算任务,以便减少卷积运算过程中大量的乘法运算,因此,如何设计出高效的用于矩阵转换的运算装置成为了研究重点。
一般来说,基于Winograd的卷积运算可以利用如下公式表示:
F(m×n,r×s)=AT[[GgGT]⊙[BTdB]]A (1)
其中,m与n分别表示单次Winograd卷积运算的输出特征图神经元规模的边长;r与s表示卷积核的边长;g表示单次Winograd卷积运算输入的权值矩阵;d表示单次Winograd卷积运算输入的特征图矩阵;A、G、B分别为对应的转换矩阵,F表示卷积运算的输出特征图神经元的点乘结果矩阵,⊙表示的是将矩阵向量元素依次相乘。
发明人通过研究现有的基于Winograd的卷积运算,提出了一种矩阵转换装置及方法,通过将基于Winograd的矩阵转换任务转化为矩阵乘法任务,假设U=[GgGT],V=[BTdB],M=U⊙V,则上述公式(1)可以表示为F=ATMA;因此,发明人提出的矩阵转换装置可以分别执行针对U、V的转换过程中的矩阵乘法运算、M的矩阵点乘运算,以及针对F=ATMA的转换的矩阵乘法运算,通过上述方式,不仅能够提高基于Winograd卷积运算的运算速度,同时还能节约计算资源。
图1是本发明提供的面向神经网络的矩阵转换装置示意图,如图1所示,本发明提供的矩阵转换装置101包括用于接收权值数据和输入特征图数据的数据接收接口102;用于接收对应于上述权值数据和输入特征图数据的转换矩阵的转换矩阵接收接口103;与上述数据接收接口102和转换矩阵接收接口103分别连接的,用于执行针对权值数据和输入特征图数据的矩阵转换运算的由若干个可并行执行运算的矩阵运算单元104组成的矩阵运算阵列;以及与矩阵运算单元104连接,用于拼接各矩阵运算单元获得的计算结果并输出的数据输出接口105;另外,上述矩阵转换装置101还包括用于各单元间的链接线路(图1中未示出)以及保证数据正确运算和传输的暂存单元(图1中未示出)。
其中,数据接收接口102包括用于接收和传递权值数据的第一接口,以及用于接收和传递输入特征图数据的第二接口;转换矩阵接收接口103包括用于接收和传递对应于权值数据的权值转换矩阵的第三接口,用于接收和传递对应于输入特征图数据的特征图数据转换矩阵的第四接口,以及用于接收和传递对应于点乘结果矩阵数据的转换矩阵的第五接口模块。
图2是本发明优选实施例提供的矩阵运算单元结构示意图,如图2所示,矩阵运算单元104根据运算控制信号执行运算,具体包括适用于动态转换矩阵的乘法运算模块111,适用于静态转换矩阵的移位运算模块112,与乘法运算模块111和移位运算模块112分别连接的,用于接收并累加移位运算模块112或乘法运算模块111获得的运算结果的累加运算模块11,以及与累加运算模块连接的暂存模块12。乘法运算模块111和移位运算模块112可以根据运算控制信号中的选通控制信号执行运算控制,选通控制信号中包含了转换矩阵的类型。其中,动态转换矩阵是指暂存在矩阵运算单元104中并且用于执行矩阵运算的转换矩阵的参数为动态值或不属于静态转换矩阵的参数范围;静态转换矩阵是指暂存在矩阵运算单元104中,并且用于执行矩阵运算的转换矩阵的参数为固定值,且属于集合{0、±(1/2)n},n∈{0、1、2、3、......}。上述累加运算模块11输出的累加结果即为矩阵转换运算的点乘结果矩阵F内的单一元素。
图3是本发明优选实施例提供的具有16个矩阵运算单元的装置结构示意图,如图3所示,下面以具有16个矩阵运算单元104组成的阵列式结构为例,详细描述本发明提供的矩阵转换装置执行矩阵转换的过程。
以求取上述公式中的特征图数据V=[BTdB]为例,假设数据接收接口102的第二接口模块接收到的输入特征图数据d为4×4的矩阵向量,其中每一个矩阵元素的位宽为8bit,转换矩阵接收接口103的第三接口模块接收到的对应于输入特征图数据d的转换矩阵B为4×4的矩阵向量,其中每一个矩阵元素的位宽为8bit。
如图4所示,在执行求取V=[BTdB]的过程时,首先载入转换矩阵参数BT以及待转换的输入特征图数据矩阵d执行BT与d的向量乘累加运算,其中,
Figure BDA0001792069620000061
如图3所示,将BT与d分别按行和按列对应输入至4×4的矩阵运算单元104构成的矩阵运算阵列中,其中,每个矩阵运算单元104均接收一列d向量数据和一行BT向量数据,同时,该矩阵运算单元104会根据运算控制信号开始执行针对该行向量与列向量的乘法运算和累加运算。
以利用矩阵运算阵列中第一列的第一个矩阵运算单元104为例,当矩阵运算单元104接收了来自于数据接收接口102的第二接口模块的输入特征图数据d的第一列向量,以及来自于转换矩阵接收接口103的第四接口模块的对应于d的转换矩阵BT的第一行向量时,首先利用矩阵运算单元104中的乘法运算模块依次执行对应的向量乘法,即1×0.8=0.8,0×0.7=0,-1×0=0,0×0.5=0,其中每获得一个乘法运算结果,将该乘法运算结果输出至该矩阵运算单元104的累加运算模块执行累加,直到完成四组乘法结果的全部累加,此时累加模块可以将获得的累加结果输出存入暂存单元,即该累加结果可用于拼接为中间结果矩阵L第一行的第一个元素“0.8”,其中L=BT*d。
类似地,可以利用矩阵运算阵列第一列的第二个矩阵运算单元104运算获得中间结果矩阵L第一行的第二个数据元素,利用矩阵运算阵列第二列的第一个矩阵运算单元104运算获得中间结果矩阵L第二行的第一个元素,待16个矩阵运算单元104均完成向量乘累加运算后,将获得的所有乘累加结果输出至输出接口105,即可通过拼接或中间结果矩阵L,其中
Figure BDA0001792069620000062
待完成BT与d的向量乘累加运算并中间结果矩阵L后,类似地,可以将L和B分别再次载入矩阵运算阵列,以便执行向量乘累加运算并获得最终的针对输入特征图数据d的转换结果V=L*B,其中,
Figure BDA0001792069620000071
获得了对应于输入特征图数据d的矩阵结果V后,可将该数据V存入暂存单元,继续利用上述矩阵运算阵列,采用相类似的向量乘累加运算操作计算对应于权值数据g的矩阵U=[GgGT]。
在本发明的一个实施例中,上述对于权值数据g的向量乘累加计算还可以通过离线处理方式直接获得矩阵U,即,完成针对上述数据V的运算后,无需暂存,直接继续执行如下的步骤。
完成运算并获得矩阵结果U后,结合暂存单元中的矩阵结果V,可以进一步利用矩阵运算阵列求取M=U⊙V,具体方式是将大小均为4×4的矩阵向量U和矩阵向量V对应位置的矩阵元素分别输入至16个矩阵运算单元104。例如,假设矩阵向量U第一行的第一个矩阵元素为u1,矩阵向量V第一行的第一个矩阵元素为v1,矩阵向量M第一行的第一个矩阵元素为m1,将u1和v1分别输入至矩阵运算阵列的第一行的第一个矩阵运算单元104中,利用乘法运算模块,可以直接获得m1=u1×v1,类似地,可以利用16个矩阵运算单元104分别计算矩阵向量M的各个数据元素并利用输出接口105拼接获得完整的矩阵向量M。
获得矩阵向量M后,可以结合转换矩阵接收接口103的第五接口模块传递至矩阵运算阵列的目标转换矩阵A,采用与上述求解V类似的运算操作计算获得基于Winograd的卷积点乘结果矩阵F=ATMA。
在本发明的一个实施例中,若输入的待转换数据超过了矩阵转换装置101中矩阵转换阵列的一次性计算规模,可以将待转换数据分批次输入至矩阵转换阵列中,并将中间的运算结果存入相应的暂存单元,直到完成所有批次的矩阵转换运算,再利用其中的输出接口105对所有运算结果进行拼接获得最终的转换结果并输出至矩阵转换装置101的外部。
尽管在上述实施例中,采用了具有十六个并行矩阵运算单元104的矩阵转换装置101为例来对本发明提供的面向神经网络的矩阵转换装置进行了举例说明,但本领域普通技术人员应理解,上述可并行执行运算的矩阵运算单元104的数量,可以根据实际应用需求或成本条件任意调整。
相对于现有技术,在本发明实施例中所提供的面向神经网络的矩阵转换装置及方法,将矩阵任务转化为分阶段的矩阵乘法任务,运算速度快,计算成本低,特别适用于神经网络计算中的基于Winograd的卷积矩阵转换。
虽然本发明已经通过优选实施例进行了描述,然而本发明并非局限于这里所描述的实施例,在不脱离本发明范围的情况下还包括所作出的各种改变以及变化。

Claims (8)

1.一种面向神经网络的矩阵转换装置,包括:
数据接收接口,用于接收并传递神经网络的待转换矩阵数据;
转换矩阵接收接口,用于接收并传递对应于所述待转换矩阵数据的转换矩阵;
矩阵运算单元,与所述数据接收接口和所述转换矩阵接收接口分别连接,利用所述待转换矩阵数据和所述对应的转换矩阵执行矩阵转换运算;其中所述矩阵运算单元包括用于针对动态转换矩阵执行矩阵乘法运算的乘法运算模块、用于针对静态转换矩阵执行移位运算的移位运算模块以及用于执行接收并累加移位运算模块或乘法运算模块获得的运算结果的累加运算模块;其中所述矩阵运算单元还用于对经累加运算模块累加后的移位运算模块和乘法运算模块获得的运算结果进行点乘运算;所述静态转换矩阵是指用于执行矩阵运算的转换矩阵的参数为固定值,且属于集合{0、±(1/2)n},其中,n∈{0、1、2、3、……};所述动态转换矩阵是指用于执行矩阵运算的转换矩阵的参数为动态值或不属于静态转换矩阵的参数范围;
输出接口,与所述矩阵运算单元相连,用于拼接并输出所述矩阵运算单元获得的运算结果;
暂存单元,与所述数据接收接口和所述输出接口相连,用于暂存所述输出接口输出的运算结果,并将所述运算结果输入至所述数据接收接口。
2.根据权利要求1所述的矩阵转换装置,其特征在于,
所述待转换矩阵数据包括权值矩阵数据g和输入特征图数据d;
所述转换矩阵包括对应于所述权值矩阵数据g的权值转换矩阵G,以及对应于所述输入特征图数据d的输入特征图转换矩阵B;
所述矩阵运算单元用于执行所述转换矩阵G/B及其转置矩阵GT/BT与所述待转换矩阵数据g/d之间的向量乘累加和/或矩阵乘法运算;
所述输出接口用于拼接获得中间结果矩阵Lg/Ld
所述暂存单元用于暂存所述中间结果矩阵Lg/Ld
3.根据权利要求2所述的矩阵转换装置,其特征在于,
所述数据接收接口用于将所述中间结果矩阵Lg/Ld传递至所述矩阵运算单元;
所述矩阵运算单元用于执行所述中间结果矩阵Lg/Ld与所述转换矩阵G/B和/或其转换矩阵GT/BT之间的向量乘累加和/或矩阵乘法运算;
所述输出接口用于拼接获得对应于所述权值矩阵数据/所述输入特征图数据的转换结果矩阵U/V;
所述暂存单元用于暂存所述转换结果矩阵U/V。
4.根据权利要求3所述的矩阵转换装置,其特征在于,
所述矩阵运算单元用于执行针对所述转换结果矩阵U和所述转换结果矩阵V的点乘运算;
所述输出接口用于拼接获得中间运算矩阵M;
所述暂存单元用于暂存所述中间运算矩阵M。
5.根据权利要求4所述的矩阵转换装置,其特征在于,
所述转换矩阵还包括对应于所述权值矩阵数据g和所述输入特征图数据d的目标转换矩阵A;
所述矩阵运算单元用于执行针对所述转换矩阵A及其转置矩阵AT与所述中间运算矩阵M的向量乘累加和/或矩阵乘法运算;
所述输出接口用于拼接获得中间结果矩阵LM
所述暂存单元用于暂存所述中间结果矩阵LM
6.根据权利要求5所述的矩阵转换装置,其特征在于,
所述矩阵运算单元用于执行中间结果矩阵LM与所述转换矩阵A之间的向量乘累加运算;
用所述输出接口用于拼接获得最终的点乘结果矩阵F。
7.一种利用如权利要求1-6任一项所述的矩阵转换装置进行矩阵转换的方法,包括以下步骤:
利用所述数据接收接口和所述转换矩阵接收接口分别接收并分配待转换的矩阵数据和对应的转换矩阵;
利用矩阵运算单元执行针对待转换矩阵数据和对应转换矩阵的矩阵转换运算和/或矩阵乘法运算,并获得矩阵转换运算的中间结果;
利用所述输出接口将获得的所述中间结果传输至暂存单元;
循环利用所述矩阵运算单元执行针对待转换的矩阵数据和对应的转换矩阵以及中间结果与对应的转换矩阵之间的矩阵转换运算,直到获得最终的点乘结果矩阵。
8.根据权利要求7所述的矩阵转换方法,其特征在于,所述中间结果包括对应于权值矩阵转换运算的第一中间结果,或对应于特征图矩阵转换运算的第二中间结果,或对应于所述点乘结果矩阵的第三中间结果。
CN201811040908.XA 2018-09-07 2018-09-07 面向神经网络的矩阵转换装置及方法 Active CN109190755B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811040908.XA CN109190755B (zh) 2018-09-07 2018-09-07 面向神经网络的矩阵转换装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811040908.XA CN109190755B (zh) 2018-09-07 2018-09-07 面向神经网络的矩阵转换装置及方法

Publications (2)

Publication Number Publication Date
CN109190755A CN109190755A (zh) 2019-01-11
CN109190755B true CN109190755B (zh) 2021-07-20

Family

ID=64915106

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811040908.XA Active CN109190755B (zh) 2018-09-07 2018-09-07 面向神经网络的矩阵转换装置及方法

Country Status (1)

Country Link
CN (1) CN109190755B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110288086B (zh) * 2019-06-13 2023-07-21 天津大学 一种基于Winograd的可配置卷积阵列加速器结构
EP4220448A1 (en) * 2020-09-27 2023-08-02 Cambricon (Xi'an) Semiconductor Co., Ltd. Data processing device, integrated circuit chip, device, and implementation method therefor

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107844826A (zh) * 2017-10-30 2018-03-27 中国科学院计算技术研究所 神经网络处理单元及包含该处理单元的处理系统
CN108229654A (zh) * 2016-12-14 2018-06-29 上海寒武纪信息科技有限公司 神经网络卷积运算装置及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170344876A1 (en) * 2016-05-31 2017-11-30 Samsung Electronics Co., Ltd. Efficient sparse parallel winograd-based convolution scheme

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108229654A (zh) * 2016-12-14 2018-06-29 上海寒武纪信息科技有限公司 神经网络卷积运算装置及方法
CN107844826A (zh) * 2017-10-30 2018-03-27 中国科学院计算技术研究所 神经网络处理单元及包含该处理单元的处理系统

Also Published As

Publication number Publication date
CN109190755A (zh) 2019-01-11

Similar Documents

Publication Publication Date Title
CN109886400B (zh) 基于卷积核拆分的卷积神经网络硬件加速器系统及其计算方法
CN109190756B (zh) 基于Winograd卷积的运算装置及包含该装置的神经网络处理器
CN107689948B (zh) 应用于神经网络硬件加速系统的高效数据访存管理装置
CN109325591B (zh) 面向Winograd卷积的神经网络处理器
CN110348574B (zh) 一种基于zynq的通用卷积神经网络加速结构及设计方法
US20180197067A1 (en) Methods and apparatus for matrix processing in a convolutional neural network
CN108446761B (zh) 一种神经网络加速器及数据处理方法
CN111898733B (zh) 一种深度可分离卷积神经网络加速器架构
KR20220047680A (ko) 하드웨어에서의 커널 스트라이딩 수행
CN105512723A (zh) 一种用于稀疏连接的人工神经网络计算装置和方法
CN114781629B (zh) 基于并行复用的卷积神经网络的硬件加速器及并行复用方法
US10706353B2 (en) Integrated circuit
CN111652360B (zh) 一种基于脉动阵列的卷积运算装置
CN109190755B (zh) 面向神经网络的矩阵转换装置及方法
CN112703511B (zh) 运算加速器和数据处理方法
CN113222101A (zh) 深度学习处理装置、方法、设备和存储介质
CN109299487B (zh) 神经网络系统、加速器、建模方法及装置、介质及系统
CN110580519A (zh) 一种卷积运算结构及其方法
CN111198670B (zh) 执行矩阵乘法运算的方法、电路及soc
CN111882028B (zh) 用于卷积神经网络的卷积运算装置
CN110766136B (zh) 一种稀疏矩阵与向量的压缩方法
CN111222090B (zh) 卷积计算模块、神经网络处理器、芯片和电子设备
CN116702851A (zh) 适用于权重复用神经网络的脉动阵列单元及脉动阵列结构
CN108090865B (zh) 光学卫星遥感影像在轨实时流式处理方法及系统
CN111860819A (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
GR01 Patent grant
GR01 Patent grant