CN111126593A - 可重构的自然语言深度卷积神经网络加速器 - Google Patents

可重构的自然语言深度卷积神经网络加速器 Download PDF

Info

Publication number
CN111126593A
CN111126593A CN201911083419.7A CN201911083419A CN111126593A CN 111126593 A CN111126593 A CN 111126593A CN 201911083419 A CN201911083419 A CN 201911083419A CN 111126593 A CN111126593 A CN 111126593A
Authority
CN
China
Prior art keywords
input
calculation
reconfigurable
computing
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.)
Granted
Application number
CN201911083419.7A
Other languages
English (en)
Other versions
CN111126593B (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.)
Fudan University
Original Assignee
Fudan University
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 Fudan University filed Critical Fudan University
Priority to CN201911083419.7A priority Critical patent/CN111126593B/zh
Publication of CN111126593A publication Critical patent/CN111126593A/zh
Application granted granted Critical
Publication of CN111126593B publication Critical patent/CN111126593B/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/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Complex Calculations (AREA)

Abstract

本发明属于集成电路技术领域,具体为一种可重构的自然语言深度卷积神经网络加速器。本发明加速器是基于时间序列输入的,包括:多组可重构的计算单元向量,用于实现不同尺寸卷积核的计算;多组多输入加法树,用于求和不同输入通道的乘法结果;一个输入特征图存储单元;多组输出特征图存储单元,用于存储计算过程中的中间结果以及最终的输出特征值;一个控制单元,用于配置计算单元向量、计算流程以及数据流向。本加速器特意针对输入的语言时间序列进行优化,避免当前输入序列小于空洞卷积感受野时的重复计算与计算暂停的问题;同时可重构的计算单元向量可以实现不同尺寸的卷积核计算。

Description

可重构的自然语言深度卷积神经网络加速器
技术领域
本发明属于集成电路技术领域,具体涉及一种可重构的自然语言深度卷积神经网络加速器。
背景技术
当今,深度卷积神经网络被广泛的应用与自动驾驶、图像分类、目标识别以及自然语言处理等各个领域。在诸如语义分割、语音识别等自然语言处理任务中,为了解决卷积神经网络感受野较小的问题,特别引入了空洞卷积。
空洞卷积区别于传统的卷积,在卷积核相连权重之间插入零值,得到一个尺寸更大的卷积核,进而增加了卷积的感受野。
语音序列一般随着时间逐次输入,造成当前时刻的输入序列长度可能小于空洞卷积的感受野。此时,对于CPU/GPU来说,一般需要等待后续语音序列的输入,使计算资源利用率较低。此外,空洞卷积在语音序列上滑动完成卷积,相邻滑动窗口之间重叠较大,引入了数据的重复计算,降低了计算能耗。
为解决以上问题,本发明提供了一种基于时间序列输入的可重构的自然语言深度卷积神经网络加速器。该加速器将输入的语音时间序列逐次传播到相连的计算单元中,当前时刻产生的中间结果暂存在片上存储单元中,以供与之后输入的时间序列完成卷积计算。
发明内容
为克服上述现有技术的缺点,本发明提供基于时间序列输入的可重构的自然语言深度卷积神经网络加速器。
本发明提供的可重构的自然语言深度卷积神经网络加速器,是基于时间序列输入技术的,包括:
16组可重构的计算单元向量,每组计算单元向量包含6个计算单元;用于计算卷积神经网络中16个不同的输入通道。通过配置该计算单元向量,可以计算不同尺寸的卷积核;
6组16输入加法树,用于求和16个输入通道的乘法结果,得到最多6个输出通道的中间结果;
16个用于存储输入特征图的存储单元;
6组输出特征图存储单元,用于存储最多6个输出通道上的中间结果以及最终的输出特征图;
一个控制单元,用于配置计算单元向量、计算流程以及数据流向。
本发明中,所述计算单元向量中的6个计算单元,其连接关系可以重构,用于计算不同尺寸的卷积核,以高的计算资源利用率;所述的输出特征图存储单元暂存中间结果并与不同的计算单元进行数据交互,避免逐层计算空洞卷积时输出特征图的重复计算。
本发明中,每组输入特征图存储单元与计算单元向量用于计算卷积的一个输入通道; 16个输入通道的乘法结果经过加法器得到一个输出通道的中间结果;当前时刻的中间结果与之后输入的时间序列对应的中间结果在下一个计算单元中完成累加得到最终的输出特征图。
本发明中,同一输入通道内的6个计算单元,可以重构为1x6、2x3、3x2、5x1的连接结构,用于同时计算1x1卷积核的6个输出通道,或同时计算2x1卷积核的3个输出通道,或同时计算3x1卷积核的2个输出通道,或计算5x1卷积核的1个输出通道。除最后一种连接结构外,其余结构均可实现100%的计算资源利用率。
本发明中,输入特征图根据输入通道索引存储在不同的输入特征图存储单元中,作为同组的计算单元向量的输入;输出特征图根据输出通道索引存储在不同的输出特征图存储单元中。
本发明中,输入特征图存储单元通过广播的方式将输入时间序列传输到不同连接结构的起始计算单元。并传播到后续计算单元中,与暂存在计算单元中的权重完成乘法运算。乘法结果求和后的中间结果存储在输出存储特征图存储单元中,以供与之后输入的时间序列完成卷积运算。避免了时间序列长度暂未到达空洞卷积的感受野造成的重复计算与计算暂停问题。
附图说明
图1是本发明的顶层电路模块框图。
图2是本发明的可重构计算单元向量的重构示意图。
图3是本发明的计算时序图。
具体实施方式
下面结合实施例和图示进一步描述本发明,本发明提供的实施例,不应该被认为仅限于在此阐述的实施例。
实施例是一个基于时间序列输入的可重构的自然语言深度卷积神经网络加速器。图1为其顶层电路模块框图。
所述装置包括16组可重构的计算单元向量,每个计算单元向量包含6个计算单元;6组16输入加法树;16个用于存储输入特征图的存储单元;6个存储输出特征图以及中间计算结果的存储单元以及一个控制单元。
每组输入特征图存储单元与计算单元向量用于计算卷积的一个输入通道。
16个输入通道的乘法结果经过加法器得到一个输出通道的中间结果。
当前时刻的中间结果与之后输入的时间序列对应的中间结果在下一个计算单元中完成累加得到最终的输出特征图。
图2是可重构计算单元向量不同的重构连接结构。其可以重构为1x6,2x3,3x2,5x1的连接结构,用于同时计算1x1卷积核的6个输出通道,或同时计算2x1卷积核的3个输出通道,或同时计算3x1卷积核的2个输出通道,或计算5x1卷积核的1个输出通道。
图3是基于语音时间序列输入的计算流程,其所示卷积核大小为2x1,空洞卷积相邻权重之间插入一个零值。W1、W2为卷积核中的权重,A1至A5为5个时刻内逐次到达的输入特征值,P1至P3为中间结果,O1、O2为最终的输出特征值。如此,当前时刻权重W1与输入序列(A1、A2)产生的中间结果(P1、P2)需要同3个时间点之后W2与A1、A2的中间结果完成累加,得到最后的输出特征图(O1、O2)。中间结果依次存储在输出特征图存储单元中,并从t3时刻开始依次在计算单元2中完成累加。
以上通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。

Claims (6)

1.一种可重构的自然语言深度卷积神经网络加速器,是基于时间序列输入的,其特征在于,包括:
16组可重构的计算单元向量,每组计算单元向量包含6个计算单元;用于计算卷积神经网络中16个不同的输入通道;
6组16输入加法树,用于求和16个输入通道的乘法结果,得到最多6个输出通道的中间结果;
16个用于存储输入特征图的存储单元;
6组输出特征图存储单元,用于存储最多6个输出通道上的中间结果以及最终的输出特征图;
一个控制单元,用于配置计算单元向量、计算流程以及数据流向;
其中,所述计算单元向量中的6个计算单元,其连接关系可以重构,用于计算不同尺寸的卷积核,以高的计算资源利用率;所述的输出特征图存储单元暂存中间结果并与不同的计算单元进行数据交互,避免逐层计算空洞卷积时输出特征图的重复计算。
2. 根据权利要求1所述的可重构的自然语言深度卷积神经网络加速器,其特征在于,每组输入特征图存储单元与计算单元向量用于计算卷积的一个输入通道; 16个输入通道的乘法结果经过加法器得到一个输出通道的中间结果;当前时刻的中间结果与之后输入的时间序列对应的中间结果在下一个计算单元中完成累加得到最终的输出特征图。
3.根据权利要求1所述的可重构的自然语言深度卷积神经网络加速器,其特征在于,所述计算单元向量中的6个计算单元连接关系可以重构,具体配置为1x6,2x3,3x2,5x1的连接结构,用于同时计算1x1卷积核的6个输出通道,或同时计算2x1卷积核的3个输出通道,或同时计算3x1卷积核的2个输出通道,或计算5x1卷积核的1个输出通道。
4.根据权利要求1所述的的可重构的自然语言深度卷积神经网络加速器,其特征在于,输入特征图根据输入通道索引存储在不同的输入特征图存储单元中,作为同组的计算单元向量的输入;输出特征图根据输出通道索引存储在不同的输出特征图存储单元中。
5.根据权利要求1、2、3或4所述的可重构的自然语言深度卷积神经网络加速器,其特征在于,输入特征图存储单元通过广播的方式将输入特征值传输到不同连接结构的起始计算单元。
6.根据权利要求5所述的可重构的自然语言深度卷积神经网络加速器,其特征在于,
输入的时间序列逐次传入起始计算单元中并传播到后续计算单元中,与暂存在计算单元中的权重完成乘法运算;乘法结果求和后的中间结果存储在输出存储特征图存储单元中,以供与之后输入的时间序列完成卷积运算。
CN201911083419.7A 2019-11-07 2019-11-07 可重构的自然语言深度卷积神经网络加速器 Active CN111126593B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911083419.7A CN111126593B (zh) 2019-11-07 2019-11-07 可重构的自然语言深度卷积神经网络加速器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911083419.7A CN111126593B (zh) 2019-11-07 2019-11-07 可重构的自然语言深度卷积神经网络加速器

Publications (2)

Publication Number Publication Date
CN111126593A true CN111126593A (zh) 2020-05-08
CN111126593B CN111126593B (zh) 2023-05-05

Family

ID=70495784

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911083419.7A Active CN111126593B (zh) 2019-11-07 2019-11-07 可重构的自然语言深度卷积神经网络加速器

Country Status (1)

Country Link
CN (1) CN111126593B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106951961A (zh) * 2017-02-24 2017-07-14 清华大学 一种粗粒度可重构的卷积神经网络加速器及系统
CN108241890A (zh) * 2018-01-29 2018-07-03 清华大学 一种可重构神经网络加速方法及架构
CN108805266A (zh) * 2018-05-21 2018-11-13 南京大学 一种可重构cnn高并发卷积加速器
CN109901814A (zh) * 2019-02-14 2019-06-18 上海交通大学 自定义浮点数及其计算方法和硬件结构
CN110222818A (zh) * 2019-05-13 2019-09-10 西安交通大学 一种用于卷积神经网络数据存储的多bank行列交织读写方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106951961A (zh) * 2017-02-24 2017-07-14 清华大学 一种粗粒度可重构的卷积神经网络加速器及系统
CN108241890A (zh) * 2018-01-29 2018-07-03 清华大学 一种可重构神经网络加速方法及架构
CN108805266A (zh) * 2018-05-21 2018-11-13 南京大学 一种可重构cnn高并发卷积加速器
CN109901814A (zh) * 2019-02-14 2019-06-18 上海交通大学 自定义浮点数及其计算方法和硬件结构
CN110222818A (zh) * 2019-05-13 2019-09-10 西安交通大学 一种用于卷积神经网络数据存储的多bank行列交织读写方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ICHEN WANG 等: ""Efficient hardware architectures for deep convolution neural network"" *
蹇强: ""基于FPGA的卷积神经网络加速器"" *

Also Published As

Publication number Publication date
CN111126593B (zh) 2023-05-05

Similar Documents

Publication Publication Date Title
US11270187B2 (en) Method and apparatus for learning low-precision neural network that combines weight quantization and activation quantization
US10691996B2 (en) Hardware accelerator for compressed LSTM
CN109543830B (zh) 一种用于卷积神经网络加速器的拆分累加器
US20180197084A1 (en) Convolutional neural network system having binary parameter and operation method thereof
US9477925B2 (en) Deep neural networks training for speech and pattern recognition
CN108764466A (zh) 基于现场可编程门阵列的卷积神经网络硬件及其加速方法
CN111242289A (zh) 一种规模可扩展的卷积神经网络加速系统与方法
CN109472356A (zh) 一种可重构神经网络算法的加速装置及方法
US11663444B2 (en) Pipelined neural network processing with continuous and asynchronous updates
US20220164663A1 (en) Activation Compression Method for Deep Learning Acceleration
CN113033794B (zh) 基于深度可分离卷积的轻量级神经网络硬件加速器
CN110147252A (zh) 一种卷积神经网络的并行计算方法及装置
CN110555516A (zh) 基于FPGA的YOLOv2-tiny神经网络低延时硬件加速器实现方法
CN109144469A (zh) 流水线结构神经网络矩阵运算架构及方法
KR20200111948A (ko) 인공 신경망을 처리하는 방법 및 이를 위한 전자 장치
CN115115032A (zh) 一种同态卷积加速方法和系统
CN108964671A (zh) 一种译码方法及译码器
Bao et al. LSFQ: A low precision full integer quantization for high-performance FPGA-based CNN acceleration
CN111126593A (zh) 可重构的自然语言深度卷积神经网络加速器
Zong-ling et al. The design of lightweight and multi parallel CNN accelerator based on FPGA
CN108734270A (zh) 一种兼容型神经网络加速器及数据处理方法
Paul et al. Hardware-software co-design approach for deep learning inference
CN110716751B (zh) 高并行度计算平台、系统及计算实现方法
Lahdhiri et al. Dnnzip: Selective layers compression technique in deep neural network accelerators
US11934954B2 (en) Pure integer quantization method for lightweight neural network (LNN)

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