CN110472735A - 神经网络的稀疏方法及相关产品 - Google Patents
神经网络的稀疏方法及相关产品 Download PDFInfo
- Publication number
- CN110472735A CN110472735A CN201910752534.2A CN201910752534A CN110472735A CN 110472735 A CN110472735 A CN 110472735A CN 201910752534 A CN201910752534 A CN 201910752534A CN 110472735 A CN110472735 A CN 110472735A
- Authority
- CN
- China
- Prior art keywords
- sparse
- data
- neural network
- parameter
- chip
- 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
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 114
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000012545 processing Methods 0.000 claims abstract description 30
- 238000004590 computer program Methods 0.000 claims description 7
- 210000005036 nerve Anatomy 0.000 claims description 3
- 238000013497 data interchange Methods 0.000 claims description 2
- 235000013399 edible fruits Nutrition 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 4
- 238000005265 energy consumption Methods 0.000 abstract 1
- 239000000758 substrate Substances 0.000 description 20
- 238000010586 diagram Methods 0.000 description 17
- 238000005538 encapsulation Methods 0.000 description 7
- 239000000463 material Substances 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000001174 ascending effect Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 239000002184 metal Substances 0.000 description 4
- 229910052751 metal Inorganic materials 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 4
- 230000002441 reversible effect Effects 0.000 description 4
- 238000001816 cooling Methods 0.000 description 3
- 239000000945 filler Substances 0.000 description 3
- 238000009413 insulation Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000004020 conductor Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000004519 grease Substances 0.000 description 2
- 210000002364 input neuron Anatomy 0.000 description 2
- 210000004205 output neuron Anatomy 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000003466 welding Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 244000247747 Coptis groenlandica Species 0.000 description 1
- 235000002991 Coptis groenlandica Nutrition 0.000 description 1
- 238000005481 NMR spectroscopy Methods 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 229910052581 Si3N4 Inorganic materials 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000004378 air conditioning Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 229910052732 germanium Inorganic materials 0.000 description 1
- GNPVGFCGXDBREM-UHFFFAOYSA-N germanium atom Chemical compound [Ge] GNPVGFCGXDBREM-UHFFFAOYSA-N 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007087 memory ability Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000000377 silicon dioxide Substances 0.000 description 1
- HQVNEWCFYHHQES-UHFFFAOYSA-N silicon nitride Chemical group N12[Si]34N5[Si]62N3[Si]51N64 HQVNEWCFYHHQES-UHFFFAOYSA-N 0.000 description 1
- 239000002210 silicon-based material Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供一种神经网络的稀疏的方法及计算芯片,所述方法用于在神经网络运算中执行稀疏处理后进行运算。本申请提供的技术方案具有计算量小,功耗低的优点。
Description
技术领域
本披露涉及神经网络领域,尤其涉及一种神经网络的稀疏方法及相关产品。
背景技术
人工神经网络(Artificial Neural Network,即ANN),是20世纪80年代以来人工智能领域兴起的研究热点。它从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型,按不同的连接方式组成不同的网络。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。现有的神经网络的运算基于输入数据与权值等原始数据计算得到对应的结果,此种原始数据执行计算的计算量大,功耗高。
发明内容
本披露实施例提供了一种神经网络的稀疏方法及相关产品,可降低神经网络的计算量,提升计算芯片的处理速度,提高效率。
第一方面,提供一种神经网络的稀疏的方法,所述方法包括如下步骤:
确定待稀疏数据以及待稀疏数据的第一稀疏参数;
确定所述第一稀疏参数的第一类型;
调用与所述第一类型匹配的第一稀疏方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据。
第二方面,提供一种计算芯片,所述计算芯片包括:
确定单元,用于确定待稀疏数据以及待稀疏数据的第一稀疏参数;确定所述第一稀疏参数的第一类型;
处理单元,用于调用与所述第一类型匹配的第一稀疏方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据。
第三方面,提供一种神经网络的稀疏装置,所述神经网络的稀疏装置包括一个或多个第二方面提供的芯片。
第四方面,提供一种组合处理装置,所述组合处理装置包括:第三方面提供的神经网络的稀疏装置、通用互联接口和通用处理装置;
所述神经网络的稀疏装置通过所述通用互联接口与所述通用处理装置连接。
第五方面,提供一种电子设备,所述电子设备包括第二方面提供的芯片或第三方面提供的神经网络的稀疏装置。
第六方面,提供一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行第一方面提供的方法。
第七方面,提供一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行第一方面提供的方法
附图说明
图1a是一种神经网络的训练方法示意图。
图1b是一种稀疏示意图。
图2是一种神经网络的稀疏的方法的流程示意图。
图3是一种芯片示意图。
图4a是一种芯片示意图。
图4b是另一种芯片示意图。
图5a为本披露还揭露了一个组合处理装置结构示意图。
图5b为本披露还揭露了一个组合处理装置另一种结构示意图。
图5c为本披露实施例提供的一种神经网络处理器板卡的结构示意图。
图5d为本披露实施例流提供的一种神经网络芯片封装结构的结构示意图。
图5e为本披露实施例流提供的一种神经网络芯片的结构示意图。
图6为本披露实施例流提供的一种神经网络芯片封装结构的示意图。
图6a为本披露实施例流提供的另一种神经网络芯片封装结构的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本披露方案,下面将结合本披露实施例中的附图,对本披露实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本披露一部分实施例,而不是全部的实施例。基于本披露中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本披露保护的范围。
在上述一种神经网络的稀疏的方法中,所述第一类型包括:稀疏阈值或稀疏率。
在上述一种神经网络的稀疏的方法中,所述调用与所述第一类型匹配的第一稀疏方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据具体包括:
如所述第一类型为稀疏阈值,采用比较方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据;
如所述第一类型为稀疏率,采用排序方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据。
在上述一种神经网络的稀疏的方法中,所述方法还包括:
确定计算精度阈值,将计算精度阈值与预设精度比较确定比较结果,依据所述比较结果对所述第一稀疏参数调整。
在上述一种神经网络的稀疏的方法中,所述对所述第一稀疏参数调整具体包括:
对所述第一稀疏参数向上调整、向下调整、逐步向上调整或逐步向下调整。
在上述一种神经网络的稀疏的方法中,所述依据所述比较结果对所述第一稀疏参数调整具体包括:
如比较结果为计算精度阈值大于预设精度,则确定该第一稀疏参数的调整策略为向上调整或逐步向上调整;
如比较结果为计算精度阈值小于预设精度,则确定该第一稀疏参数的调整策略为向下调整或逐步向下调整。
在上述一种神经网络的稀疏的方法中,所述确定待稀疏数据具体包括:
所述待稀疏数据具体包括:输入数据、权值、输入神经元导数、输出神经元导数、权重导数中的一种或任意组合。
在上述一种神经网络的稀疏的方法中,所述采用比较方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据具体包括:
将所述待稀疏数据的每个元素与所述稀疏阈值比较,将小于或等于该稀疏阈值的元素值置零得到稀疏后的数据。
在上述一种神经网络的稀疏的方法中,所述采用排序方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据具体包括:
将待稀疏数据的元素值按升序或降序排列得到排列后的元素,将该排列后的元素的前k个元素或后k个元素置零得到稀疏后的数据;
k=β*待稀疏数据元素的总个数,其中β为稀疏率。
在上述一种神经网络的稀疏的方法中,所述采用排序方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据具体包括:
确定待稀疏数据的稀疏元素个数k,将该待稀疏数据执行k次最小值操作,每执行一次最小值操作,将最小值元素置零即得到稀疏后的数据;
其中,k=β*待稀疏数据元素的总个数,其中β为稀疏率。
参阅图1a,图1a为本申请提供的一种神经网络的一个运算层的训练示意图,如图1a所示,该运算层可以为全连接层或卷积层,如该运算层为全连接层,其对应的为全连接运算,例如图1a所示的矩阵乘法运算,如该运算层为卷积层,其对应的为卷积运算。如图1a所示,该训练包含正向推理(简称推理或正向运算)和反向训练,如图1a所示,该实线所示为正向推理的过程,该虚线为反向训练的过程。如图1a所示的正向推理,运算层的输入数据与权值执行运算得到运算层的输出数据,该输出数据可以为该运算层的下一层的输入数据。如图1a所示的反向训练过程,运算层的输出数据梯度与权值执行运算得到输入数据梯度,该输出数据梯度与输入数据运算得到权值梯度,该权值梯度用于对本运算层的权值进行更新,该输入数据梯度作为该运算层的下一层的输出数据梯度。
如图1b所示,图1b为一种稀疏示意图,如图1a所示,一个原始5*5的数据经过稀疏化以后,可以得到一个仅仅包含部分有效数值的输入数据,稀疏元素的值全部置零,该稀疏的方式可以有两种方式,在一个可选的实施例中,可以通过稀疏阈值的方式对输入数据进行稀疏处理,具体的,设定一个稀疏阈值α,如输入数据的元素值小于α的全部元素值全部置零。在另一个可选的实施例中,可以通过稀疏率的方式对输入数据进行稀疏处理,具体的,设定一个稀疏率β,确定输入数据的元素总个数,稀疏个数γ=β*总个数;将输入数据的元素中从小到大排列后将排列在前γ个元素值全部置零。当然在实际应用中,还可以采用其他的稀疏方式,本申请并不设置具体的稀疏方式。对于稀疏后的数据执行神经网络运算时,可以提出置零元素的计算,这样减少了计算量,提高了计算速度,因此其具有提高计算处理速度,提高效率的优点。
参阅图2,图2提供了一种神经网络的稀疏的方法,该运算可以包括,正向推理和/或反向训练;该方法由计算芯片执行,该计算芯片可以为通用的处理器,例如中央处理器、图形处理器,当然其也可以为专用的神经网络处理器。当然上述方法还可以由包含计算芯片的装置来执行,该方法如图2所示,包括如下步骤:
步骤S201、计算芯片确定待稀疏数据以及待稀疏数据的第一稀疏参数;
上述待稀疏数据具体包括:输入数据、权值、输入神经元导数、输出神经元导数、权重导数中的一种或任意组合。
步骤S202、计算芯片确定所述第一稀疏参数的第一类型;
可选的,上述第一类型包括:稀疏阈值或稀疏率。上述第一稀疏参数可以通过一个稀疏命令来实现,该稀疏命令可以包括上述第一稀疏参数。
步骤S203、计算芯片调用与所述第一类型匹配的第一稀疏方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据。
上述第一类型匹配的第一稀疏方式可以通过映射关系的方式来确定,例如一个映射关系为,稀疏阈值对应的第一稀疏方式为比较方式,另一个映射关系可以为,稀疏率对应的第一稀疏方式为排序方式。当然还可以为其他的映射关系,本申请并不限制上述映射关系的具体表现形式。
本申请提供的技术方案在确定待稀疏数据以及第一稀疏参数以后,获取待稀疏数据的稀疏信息,确定第一稀疏参数的第一类型,调用与第一类型匹配的稀疏方式对该稀疏数据进行稀疏操作得到稀疏后的数据,然后将稀疏后的数据执行神经网络运算得到运算结果,由于采用稀疏后的数据执行神经网络运算,减少了运算量,提高了运算速度以及运算效率。另外,本申请的技术方案的稀疏参数可以动态调整,这样更能贴合待稀疏数据的实际场景,扩大了稀疏应用范围。
可选的,上述调用与所述第一类型匹配的第一稀疏方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据具体包括:
如所述第一类型为稀疏阈值,采用比较方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据;
如所述第一类型为稀疏率,采用排序方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据。
可选的,上述方法还可以包括:
确定计算精度阈值,将计算精度阈值与预设精度比较确定比较结果,依据所述比较结果对所述第一稀疏参数调整。
上述调整策略可以包括:不调整、向上调整、向下调整、逐步向上调整或逐步向下调整。上述比较结果可以为:计算精度阈值大于预设精度,计算精度阈值小于预设精度,计算精度阈值等于预设精度。
可选的,上述依据所述比较结果对所述第一稀疏参数调整具体包括:
如比较结果为计算精度阈值大于预设精度,则确定该第一稀疏参数的调整策略为向上调整或逐步向上调整;
如比较结果为计算精度阈值小于预设精度,则确定该第一稀疏参数的调整策略为向下调整或逐步向下调整。
可选的,上述采用比较方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据具体可以包括:
将所述待稀疏数据的每个元素与所述稀疏阈值比较,将小于或等于该稀疏阈值的元素值置零得到稀疏后的数据。
可选的,上述采用排序方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据具体包括:
将待稀疏数据的元素值按升序或降序排列得到排列后的元素,将该排列后的元素的前k个元素或后k个元素置零得到稀疏后的数据;
k=β*待稀疏数据元素的总个数,其中β为稀疏率。
将待稀疏数据按元素值的大小升序或降序排列得到排列后的元素的前k个元素或后k个元素。上述k为稀疏元素个数,k=β*总个数,其中β可以为稀疏率。当排列为升序排列时,该置零的元素值具体可以为,排列后的元素中后k个元素,当排列为降序排列时,该置零的元素值具体可以为,排列前的元素中后k个元素。
下面以一个实际的例子来说明具体的稀疏方法,例如:对于待稀疏的神经元数据为(0.1,0.6,0.4,0.7,0.9),稀疏率为40%。首先对神经元数据进行排序获得新的序列(0.1,0.4,0.6,0.7,0.9)根据稀疏率40%,确定k=2,则将元素值0.1、0.4置零得到稀疏后的数据(0,0.6,0,0.7,0.9)。
可选的,上述采用排序方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据具体包括:
确定待稀疏数据的稀疏元素个数k,将该待稀疏数据执行k次最小值操作,每执行一次最小值操作,将最小值元素置零即得到稀疏后的数据;
其中,k=β*待稀疏数据元素的总个数,其中β为稀疏率。
在另一种可选实施例中,依据稀疏率确定待稀疏数据的稀疏元素个数k,将该待稀疏数据执行k次最小值操作,每执行一次最小值操作,将最小值元素置零即得到稀疏后的数据。
下面以一个实际的例子来说明具体的稀疏方法,例如:对于待稀疏的神经元数据为(0.1,0.6,0.4,0.7,0.9),稀疏率为40%,确定k=2。对(0.1,0.6,0.4,0.7,0.9)执行第一次最小值操作,并将最小值0.1置零,然后(0.6,0.4,0.7,0.9)进行第二次最小值操作,将第二次最小值0.4置零,即得到稀疏后的数据(0,0.6,0,0.7,0.9)。
如图3所示,图3为本申请还提供一种计算芯片,所述计算芯片包括:
确定单元,用于确定待稀疏数据以及待稀疏数据的第一稀疏参数;确定所述第一稀疏参数的第一类型;
处理单元,用于调用与所述第一类型匹配的第一稀疏方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据。
上述稀疏单元可以执行如图2所示步骤以及步骤的细化方案。
本披露还揭露了一个神经网络的稀疏装置,其包括一个或多个在如图4a或如图4b所示的芯片,用于从其他处理装置中获取待运算数据和控制信息,执行指定的神经网络的稀疏,执行结果通过I/O接口传递给***设备。***设备譬如摄像头,显示器,鼠标,键盘,网卡,wifi接口,服务器。当包含一个以上神如图4a或如图4b所示的芯片时,如图4a或如图4b所示的芯片间可以通过特定的结构进行链接并传输数据,譬如,通过PCIE总线进行互联并传输数据,以支持更大规模的神经网络的运算。此时,可以共享同一控制***,也可以有各自独立的控制***;可以共享内存,也可以每个加速器有各自的内存。此外,其互联方式可以是任意互联拓扑。如图4a或如图4b所示的芯片可以包含如图3所示的确定单元,该确定单元可以设置在主处理电路或主单元内。当然在实际应用中,还可以设置在其他电路或单元内,例如如图4a所示的分支处理电路或如图4b所示的基础单元内。
该神经网络的稀疏装置具有较高的兼容性,可通过PCIE接口与各种类型的服务器相连接。
本披露还揭露了一个组合处理装置,其包括上述的神经网络的稀疏装置,通用互联接口,和其他处理装置(即通用处理装置)。神经网络的稀疏装置与其他处理装置进行交互,共同完成用户指定的操作。如图5a为组合处理装置的示意图。
其他处理装置,包括中央处理器CPU、图形处理器GPU、神经网络处理器等通用/专用处理器中的一种或以上的处理器类型。其他处理装置所包括的处理器数量不做限制。其他处理装置作为神经网络的稀疏装置与外部数据和控制的接口,包括数据搬运,完成对本神经网络的稀疏装置的开启、停止等基本控制;其他处理装置也可以和神经网络的稀疏装置协作共同完成运算任务。
通用互联接口,用于在所述神经网络的稀疏装置与其他处理装置间传输数据和控制指令。该神经网络的稀疏装置从其他处理装置中获取所需的输入数据,写入神经网络的稀疏装置片上的存储装置;可以从其他处理装置中获取控制指令,写入神经网络的稀疏装置片上的控制缓存;也可以读取神经网络的稀疏装置的存储模块中的数据并传输给其他处理装置。
如图5b所示,可选的,该结构还包括存储装置,用于保存在本运算单元/运算装置或其他运算单元所需要的数据,尤其适用于所需要运算的数据在本神经网络的稀疏装置或其他处理装置的内部存储中无法全部保存的数据。
该组合处理装置可以作为手机、机器人、无人机、视频监控设备等设备的SOC片上***,有效降低控制部分的核心面积,提高处理速度,降低整体功耗。此情况时,该组合处理装置的通用互联接口与设备的某些部件相连接。某些部件譬如摄像头,显示器,鼠标,键盘,网卡,wifi接口。
请参照图5c,图5c为本披露实施例提供的一种神经网络处理器板卡的结构示意图。如图5c所示,上述神经网络处理器板卡10包括神经网络芯片封装结构11、第一电气及非电气连接装置12和第一基板(substrate)13。
本披露对于神经网络芯片封装结构11的具体结构不作限定,可选的,如图5d所示,上述神经网络芯片封装结构11包括:神经网络芯片111、第二电气及非电气连接装置112、第二基板113。
本披露所涉及的神经网络芯片111的具体形式不作限定,上述的神经网络芯片111包含但不限于将神经网络处理器集成的神经网络晶片,上述晶片可以由硅材料、锗材料、量子材料或分子材料等制成。根据实际情况(例如:较严苛的环境)和不同的应用需求可将上述神经网络晶片进行封装,以使神经网络晶片的大部分被包裹住,而将神经网络晶片上的引脚通过金线等导体连到封装结构的外边,用于和更外层进行电路连接。
本披露对于神经网络芯片111的具体结构不作限定,可选的,请参照图4a或图4b所示的结构。
本披露对于第一基板13和第二基板113的类型不做限定,可以是印制电路板(printed circuit board,PCB)或印制线路板(printed wiring board,PWB),还可能为其它电路板。对PCB的制作材料也不做限定。
本披露所涉及的第二基板113用于承载上述神经网络芯片111,通过第二电气及非电气连接装置112将上述的神经网络芯片111和第二基板113进行连接得到的神经网络芯片封装结构11,用于保护神经网络芯片111,便于将神经网络芯片封装结构11与第一基板13进行进一步封装。
对于上述具体的第二电气及非电气连接装置112的封装方式和封装方式对应的结构不作限定,可根据实际情况和不同的应用需求选择合适的封装方式并进行简单地改进,例如:倒装芯片球栅阵列封装(Flip Chip Ball Grid Array Package,FCBGAP),薄型四方扁平式封装(Low-profile Quad Flat Package,LQFP)、带散热器的四方扁平封装(QuadFlat Package with Heat sink,HQFP)、无引脚四方扁平封装(Quad Flat Non-leadPackage,QFN)或小间距四方扁平式封装(Fine-pitch Ball Grid Package,FBGA)等封装方式。
倒装芯片(Flip Chip),适用于对封装后的面积要求高或对导线的电感、信号的传输时间敏感的情况下。除此之外可以用引线键合(Wire Bonding)的封装方式,减少成本,提高封装结构的灵活性。
球栅阵列(Ball Grid Array),能够提供更多引脚,且引脚的平均导线长度短,具备高速传递信号的作用,其中,封装可以用引脚网格阵列封装(Pin Grid Array,PGA)、零插拔力(Zero Insertion Force,ZIF)、单边接触连接(Single Edge Contact Connection,SECC)、触点阵列(Land Grid Array,LGA)等来代替。
可选的,采用倒装芯片球栅阵列(Flip Chip Ball Grid Array)的封装方式对神经网络芯片111和第二基板113进行封装,具体的神经网络芯片封装结构的示意图可参照图6。如图6所示,上述神经网络芯片封装结构包括:神经网络芯片21、焊盘22、焊球23、第二基板24、第二基板24上的连接点25、引脚26。
其中,焊盘22与神经网络芯片21相连,通过在焊盘22和第二基板24上的连接点25之间焊接形成焊球23,将神经网络芯片21和第二基板24连接,即实现了神经网络芯片21的封装。
引脚26用于与封装结构的外部电路(例如,神经网络处理器板卡10上的第一基板13)相连,可实现外部数据和内部数据的传输,便于神经网络芯片21或神经网络芯片21对应的神经网络处理器对数据进行处理。对于引脚的类型和数量本披露也不作限定,根据不同的封装技术可选用不同的引脚形式,并遵从一定规则进行排列。
可选的,上述神经网络芯片封装结构还包括绝缘填充物,置于焊盘22、焊球23和连接点25之间的空隙中,用于防止焊球与焊球之间产生干扰。
其中,绝缘填充物的材料可以是氮化硅、氧化硅或氧氮化硅;干扰包含电磁干扰、电感干扰等。
可选的,上述神经网络芯片封装结构还包括散热装置,用于散发神经网络芯片21运行时的热量。其中,散热装置可以是一块导热性良好的金属片、散热片或散热器,例如,风扇。
举例来说,如图6a所示,神经网络芯片封装结构11包括:神经网络芯片21、焊盘22、焊球23、第二基板24、第二基板24上的连接点25、引脚26、绝缘填充物27、散热膏28和金属外壳散热片29。其中,散热膏28和金属外壳散热片29用于散发神经网络芯片21运行时的热量。
可选的,上述神经网络芯片封装结构11还包括补强结构,与焊盘22连接,且内埋于焊球23中,以增强焊球23与焊盘22之间的连接强度。
其中,补强结构可以是金属线结构或柱状结构,在此不做限定。
本披露对于第一电气及非电气装置12的具体形式也不作限定,可参照第二电气及非电气装置112的描述,即通过焊接的方式将神经网络芯片封装结构11进行封装,也可以采用连接线连接或插拔方式连接第二基板113和第一基板13的方式,便于后续更换第一基板13或神经网络芯片封装结构11。
可选的,第一基板13包括用于扩展存储容量的内存单元的接口等,例如:同步动态随机存储器(Synchronous Dynamic Random Access Memory,SDRAM)、双倍速率同步动态随机存储器(Double Date Rate SDRAM,DDR)等,通过扩展内存提高了神经网络处理器的处理能力。
第一基板13上还可包括快速外部设备互连总线(Peripheral ComponentInterconnect-Express,PCI-E或PCIe)接口、小封装可热插拔(Small Form-factorPluggable,SFP)接口、以太网接口、控制器局域网总线(Controller Area Network,CAN)接口等等,用于封装结构和外部电路之间的数据传输,可提高运算速度和操作的便利性。
将神经网络处理器封装为神经网络芯片111,将神经网络芯片111封装为神经网络芯片封装结构11,将神经网络芯片封装结构11封装为神经网络处理器板卡10,通过板卡上的接口(插槽或插芯)与外部电路(例如:计算机主板)进行数据交互,即直接通过使用神经网络处理器板卡10实现神经网络处理器的功能,并保护神经网络芯片111。且神经网络处理器板卡10上还可添加其他模块,提高了神经网络处理器的应用范围和运算效率。
在一个实施例里,本公开公开了一个电子装置,其包括了上述神经网络处理器板卡10或神经网络芯片封装结构11。
电子装置包括数据处理装置、机器人、电脑、打印机、扫描仪、平板电脑、智能终端、手机、行车记录仪、导航仪、传感器、摄像头、服务器、相机、摄像机、投影仪、手表、耳机、移动存储、可穿戴设备、交通工具、家用电器、和/或医疗设备。
所述交通工具包括飞机、轮船和/或车辆;所述家用电器包括电视、空调、微波炉、冰箱、电饭煲、加湿器、洗衣机、电灯、燃气灶、油烟机;所述医疗设备包括核磁共振仪、B超仪和/或心电图仪。
以上所述的具体实施例,对本披露的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本披露的具体实施例而已,并不用于限制本披露,凡在本披露的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本披露的保护范围之内。
Claims (10)
1.一种神经网络的稀疏的方法,其特征在于,所述方法包括如下步骤:
确定待稀疏数据以及待稀疏数据的第一稀疏参数;
确定所述第一稀疏参数的第一类型;
调用与所述第一类型匹配的第一稀疏方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据,采用所述稀疏后的数据执行神经网络的运算。
2.根据权利要求1所述的方法,其特征在于,所述第一类型包括:稀疏阈值或稀疏率。
3.根据权利要求2所述的方法,其特征在于,所述调用与所述第一类型匹配的第一稀疏方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据具体包括:
如所述第一类型为稀疏阈值,采用比较方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据;
如所述第一类型为稀疏率,采用排序方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定计算精度阈值,将计算精度阈值与预设精度比较确定比较结果,依据所述比较结果对所述第一稀疏参数调整。
5.根据权利要求4所述的方法,其特征在于,所述对所述第一稀疏参数调整具体包括:
对所述第一稀疏参数向上调整、向下调整、逐步向上调整或逐步向下调整。
6.一种计算芯片,其特征在于,所述计算芯片包括:
确定单元,用于确定待稀疏数据以及待稀疏数据的第一稀疏参数;确定所述第一稀疏参数的第一类型;
处理单元,用于调用与所述第一类型匹配的第一稀疏方式对所述待稀疏数据执行稀疏操作得到稀疏后的数据。
7.一种神经网络的稀疏装置,其特征在于,所述神经网络的稀疏装置包括一个或多个如权利要求6所述的计算芯片。
8.一种组合处理装置,其特征在于,所述组合处理装置包括:如权利要求7所述的神经网络的稀疏装置、通用互联接口和通用处理装置;
所述神经网络的稀疏装置通过所述通用互联接口与所述通用处理装置连接。
9.一种电子设备,其特征在于,所述电子设备包括如权利要求6所述的芯片或如权利要求7所述的神经网络的稀疏装置。
10.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-5任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910752534.2A CN110472735A (zh) | 2019-08-14 | 2019-08-14 | 神经网络的稀疏方法及相关产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910752534.2A CN110472735A (zh) | 2019-08-14 | 2019-08-14 | 神经网络的稀疏方法及相关产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110472735A true CN110472735A (zh) | 2019-11-19 |
Family
ID=68510079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910752534.2A Pending CN110472735A (zh) | 2019-08-14 | 2019-08-14 | 神经网络的稀疏方法及相关产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110472735A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688850A (zh) * | 2017-08-08 | 2018-02-13 | 北京深鉴科技有限公司 | 一种深度神经网络压缩方法 |
US20190087713A1 (en) * | 2017-09-21 | 2019-03-21 | Qualcomm Incorporated | Compression of sparse deep convolutional network weights |
CN109726045A (zh) * | 2017-10-27 | 2019-05-07 | 百度(美国)有限责任公司 | 用于块稀疏递归神经网络的***和方法 |
CN109740739A (zh) * | 2018-12-29 | 2019-05-10 | 北京中科寒武纪科技有限公司 | 神经网络计算装置、神经网络计算方法及相关产品 |
CN110084364A (zh) * | 2018-01-25 | 2019-08-02 | 北京深鉴智能科技有限公司 | 一种深度神经网络压缩方法和装置 |
-
2019
- 2019-08-14 CN CN201910752534.2A patent/CN110472735A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688850A (zh) * | 2017-08-08 | 2018-02-13 | 北京深鉴科技有限公司 | 一种深度神经网络压缩方法 |
US20190087713A1 (en) * | 2017-09-21 | 2019-03-21 | Qualcomm Incorporated | Compression of sparse deep convolutional network weights |
CN109726045A (zh) * | 2017-10-27 | 2019-05-07 | 百度(美国)有限责任公司 | 用于块稀疏递归神经网络的***和方法 |
CN110084364A (zh) * | 2018-01-25 | 2019-08-02 | 北京深鉴智能科技有限公司 | 一种深度神经网络压缩方法和装置 |
CN109740739A (zh) * | 2018-12-29 | 2019-05-10 | 北京中科寒武纪科技有限公司 | 神经网络计算装置、神经网络计算方法及相关产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI793225B (zh) | 神經網絡訓練方法及相關產品 | |
CN109725936A (zh) | 扩展计算指令的实现方法以及相关产品 | |
EP3789871A1 (en) | Integrated circuit chip device | |
TWI791725B (zh) | 神經網絡運算方法、集成電路芯片裝置及相關產品 | |
CN110826712B (zh) | 神经网络处理器板卡及相关产品 | |
CN111105033B (zh) | 神经网络处理器板卡及相关产品 | |
EP3770824A1 (en) | Computation method and related products of recurrent neural network | |
TWI767098B (zh) | 神經網絡正向運算方法及相關產品 | |
CN110490315A (zh) | 神经网络的反向运算稀疏方法及相关产品 | |
CN215451412U (zh) | 用于芯片的封装框架、封装器件、集成电路装置、电子设备及板卡 | |
TW201931219A (zh) | 集成電路芯片裝置及相關產品 | |
TWI767097B (zh) | 集成電路芯片裝置及相關產品 | |
CN110472735A (zh) | 神经网络的稀疏方法及相关产品 | |
CN109978147A (zh) | 集成电路芯片装置及相关产品 | |
CN110490314A (zh) | 神经网络的稀疏方法及相关产品 | |
WO2019165946A1 (zh) | 集成电路芯片装置、板卡及相关产品 | |
CN109978152A (zh) | 集成电路芯片装置及相关产品 | |
CN111832695A (zh) | 运算数据的量化精度调整方法及相关产品 | |
TWI768160B (zh) | 集成電路芯片裝置及相關產品 | |
CN109978157A (zh) | 集成电路芯片装置及相关产品 | |
CN109978151A (zh) | 神经网络处理器板卡及相关产品 | |
CN110197264A (zh) | 神经网络处理器板卡及相关产品 | |
CN111382864A (zh) | 一种神经网络训练方法及装置 | |
WO2020211783A1 (zh) | 运算数据的量化频率调整方法及相关产品 | |
CN109978156A (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, comprehensive research building, No. 6 South Road, Haidian District Academy of Sciences, Beijing Applicant before: Beijing Zhongke Cambrian Technology Co.,Ltd. |
|
CB02 | Change of applicant information | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191119 |
|
RJ01 | Rejection of invention patent application after publication |