一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

具有脉动阵列的神经网络计算设备的制作方法

2021-10-20 00:12:00 来源:中国专利 TAG:神经网络 韩国 申请 脉动 阵列

具有脉动阵列的神经网络计算设备
1.相关申请的交叉引用
2.本技术要求于2020年4月10日向韩国知识产权局提交的申请号为10

2020

0044192的韩国申请的优先权,该韩国申请通过引用整体并入本文。
技术领域
3.各个实施例总体上涉及一种神经网络计算设备,并且特别地,涉及一种具有脉动阵列的神经网络计算设备。


背景技术:

4.神经网络是使用至少一个非线性单元层以便预测所接收的输入的输出的机器学习模型。一些神经网络除了输出层之外还包括至少一个隐藏层。
5.每个隐藏层的输出用作网络的下一层(即,下一隐藏层或输出层)的输入。网络的每一层根据各自参数集的当前值从所接收的输入生成输出。诸如针对时间系列问题或序列间学习而设计的神经网络(例如,递归神经网络(rnn))的一些神经网络包括递归循环(recurrent loop),该递归循环允许记忆以隐藏状态变量的形式保留在数据输入之间的层中。
6.作为改进的rnn的长短期记忆(lstm)神经网络在每一层中包括多个门,以便控制数据输入之间的数据持久性。
7.lstm神经网络使用矩阵乘法运算和逐元素运算(element

wise operation)。脉动阵列可以有效地执行矩阵乘法运算,但是对于逐元素运算可能用处不大。因此,脉动阵列可以包括单独的专用逐元素运算块。
8.在这种情况下,当脉动阵列运行诸如多层感知器(mlp)或卷积神经网络(cnn)的不使用逐元素运算的其它神经网络时,该逐元素运算块的资源被浪费。


技术实现要素:

9.各个实施例旨在提供一种具有脉动阵列的神经网络计算设备,在该神经网络计算设备中可以进行逐元素运算。
10.在实施例中,一种神经网络计算设备可以包括:第一处理块,包括多个处理单元,每个处理单元对输入数据和权重执行矩阵乘法运算;以及第二处理块,包括多个逐元素运算处理组。逐元素运算处理组选择性地执行第一神经网络计算操作和第二神经网络计算操作。第一神经网络计算操作包括对输入数据和权重的矩阵乘法运算以及对矩阵乘法运算的结果值的激活运算,并且第二神经网络计算操作包括对从第一处理块传送的矩阵乘法运算的结果值的激活运算以及逐元素运算。
11.在实施例中,一种神经网络计算设备可以包括:脉动阵列,其中输出对输入数据和权重的运算结果的多个处理单元以矩阵形式布置。脉动阵列可以包括:多个第一处理单元,每个第一处理单元被配置为对输入数据和权重执行矩阵乘法运算;以及多个第二处理单
元,每个第二处理单元被配置为执行从对输入数据和权重的矩阵乘法运算与对从多个第一处理单元传送的输出数据的逐元素运算中选择的一种运算。
12.根据实施例,因为在脉动阵列中可以进行逐元素运算,所以不需要为逐元素运算单独地提供专用块,从而不会发生资源浪费。
附图说明
13.图1示出根据实施例的神经网络计算设备的结构。
14.图2示出图1的脉动阵列的配置。
15.图3a示出处理单元的结构。
16.图3b示出根据实施例的逐元素运算处理单元的结构。
17.图4示出诸如可以在实施例中执行的长短期记忆(lstm)神经网络算法的结构。
18.图5示出根据实施例的逐元素运算处理组的结构。
19.图6a示出在逐元素运算处理组中执行逐元素运算的示例。
20.图6b是示出当执行逐元素运算时逐元素运算处理组的操作的时序图。
21.图7a示出在逐元素运算处理组中不执行逐元素运算的示例。
22.图7b是示出当不执行逐元素运算时逐元素运算处理组的操作的时序图。
具体实施方式
23.在下文中,将参照附图详细描述本公开的实施例。
24.图1是示出根据实施例的神经网络计算设备10的结构的示图。
25.参照图1,根据本实施例的神经网络计算设备10可以包括脉动阵列100、存储器200和权重获取器接口300。
26.脉动阵列100可以包括第一处理块110和第二处理块150。
27.第一处理块110可以包括如图2所示的多个处理单元(pe)。多个处理单元中的每一个可以对各自的权重与各自的输入数据执行各自的矩阵乘法运算。多个处理单元可以以二维矩阵形式设置。多个处理单元中的每一个可以将该处理单元接收的从存储器200传送的输入数据传送到在行方向上相邻的处理单元,并且将该处理单元接收的通过权重获取器接口300输入的权重传送到在列方向上相邻的处理单元。
28.如图2所示,第二处理块150可以包括多个逐元素运算处理组150a。多个逐元素运算处理组中的每一个可以分别对从第一处理块110传送的各自输出数据执行激活运算、逐元素运算或这两者。下面将参照图2详细描述脉动阵列100的第一处理块110和第二处理块150中的每一个的详细配置。
29.存储器200可以被配置为存储被传送到脉动阵列100的输入数据以及从脉动阵列100传送的输出数据。此外,存储器200可以存储脉动阵列100的第一处理块110中包括的处理单元中的每一个的单元状态值。此外,存储器200可以存储被输入到脉动阵列100的权重。
30.权重获取器接口300可以获取存储器200中存储的权重,并且将所获取的权重传送到脉动阵列100中的处理单元。例如,权重获取器接口300可以将权重传送到以二维矩阵形式设置的处理单元之中位于最上一行的处理单元。
31.图2是示出根据本实施例的脉动阵列100的配置的示图。
32.参照图2,脉动阵列100可以包括第一处理块110和第二处理块150。
33.第一处理块110可以包括以二维矩阵形式布置的多个处理单元pe。处理单元pe中的每一个可以从位于该处理单元左侧的处理单元pe接收输入数据,并且将输出数据传送到位于该处理单元右侧的处理单元pe。此外,处理单元pe中的每一个可以将权重传送到位于该处理单元下方的处理单元pe。
34.第一处理块110的列数可多于行数,行数可多于列数,或者行数和列数基本相同。第一处理块110可以通过使用多个处理单元pe对输入数据和权重执行矩阵乘法运算,并且将运算结果传送到第二处理块150。
35.第二处理块150可以包括多个逐元素运算处理单元epe1和epe2以及多个激活单元act。多个逐元素运算处理单元epe1和epe2可以包括第一逐元素运算处理单元epe1和第二逐元素运算处理单元epe2。在本实施例中,将一个第一逐元素运算处理单元epe1、一个第二逐元素运算处理单元epe2和一个激活单元act的集合称为逐元素运算处理组150a。
36.第二处理块150可以包括多个逐元素运算处理组150a。如图2所示,可以在列方向上设置多个逐元素运算处理组150a。多个逐元素运算处理组150a的数量可以与第一处理块110的行的数量基本相同。例如,多个逐元素运算处理组150a中的每一个可以对从位于第一处理块110中的相应行的处理单元pe传送的输出数据进行处理。
37.第二处理块150的逐元素运算处理组150a可以被配置为根据神经网络计算设备10中运行的神经网络算法的类型来选择性地执行逐元素运算。
38.例如,当神经网络计算设备10运行不需要逐元素运算的神经网络算法(即,诸如多层感知器(mlp)或卷积神经网络(cnn)的神经网络算法)时,第二处理块150可以仅对从第一处理块110传送的输出数据执行激活运算。
39.另一方面,当神经网络计算设备10运行需要逐元素运算的神经网络算法(即,诸如长短期记忆(lstm)的神经网络算法)时,第二处理块150可以对从第一处理块110传送的输出数据执行激活运算和逐元素运算两者。
40.当第二处理块150不执行逐元素运算时,逐元素运算处理组150a可以如下进行操作。
41.逐元素运算处理组150a的第一逐元素运算处理单元epe1可以将输入数据input传送到被设置在第一处理块110的相应行中的处理单元pe之中位于最左侧的处理单元pe。例如,第一逐元素运算处理单元epe1可以将从存储器200(图1)传送的输入数据input传送到第一处理块110中的处理单元pe之中位于最左侧的相应处理单元pe。在实施例中,输入数据input可以从存储器200传送到第二逐元素运算处理单元epe2,并且可以从第二逐元素运算处理单元epe2传送到第一逐元素运算处理单元epe1。
42.此外,第一逐元素运算处理单元epe1可以将从第一处理块110的相应行中位于最左侧的处理单元pe传送的输出数据传送到第二逐元素运算处理单元epe2。第二逐元素运算处理单元epe2可以将从第一逐元素运算处理单元epe1传送的输出数据传送到激活单元act,并且激活单元act可以将激活的输出数据传送到存储器200。
43.此外,第一逐元素运算处理单元epe1和第二逐元素运算处理单元epe2可以通过权重获取器接口300接收权重。第一逐元素运算处理单元epe1中的每一个可以将权重传送到该第一逐元素运算处理单元下方的第一逐元素运算处理单元epe1。第二逐元素运算处理单
元epe2中的每一个可以将权重传送到该第二逐元素运算处理单元下方的第二逐元素运算处理单元epe2。
44.也就是说,当第二处理块150不执行逐元素运算时,逐元素运算处理组150a的第一逐元素运算处理单元epe1和第二逐元素运算处理单元epe2可以以与第一处理块110中的处理单元pe基本相同的方式进行操作。
45.同时,当第二处理块150执行逐元素运算时,逐元素运算处理组150a可以如下进行操作。
46.逐元素运算处理组150a的第一逐元素运算处理单元epe1和第二逐元素运算处理单元epe2以与上述基本相同的方式,将从存储器200传送的输入数据传送到第一处理块110中的处理单元pe。
47.激活单元act可以对从第一处理块110中的处理单元pe传送的输出数据执行激活运算,并且将激活的输出数据传送到第一逐元素运算处理单元epe1和第二逐元素运算处理单元epe2两者。
48.逐元素运算处理组150a的第一逐元素运算处理单元epe1可以从存储器200接收单元状态值c
t
。例如,被传送到第一逐元素运算处理单元epe1的单元状态值可以是由第一逐元素运算处理单元epe1在先前步骤中计算并存储在存储器200中的先前单元状态值。例如,第一逐元素运算处理单元epe1可以通过使用从存储器200传送的先前单元状态值以及从激活单元act传送的激活的输出数据来执行逐元素运算,从而计算当前单元状态值。
49.第一逐元素运算处理单元epe1可以将当前单元状态值传送到存储器200和激活单元act。此外,激活单元act可以将激活的当前单元状态值传送到第二逐元素运算处理单元epe2。
50.第二逐元素运算处理单元epe2可以通过对从激活单元act传送的激活的输出数据以及当前单元状态值执行逐元素运算来计算最终输出值,并且将计算出的最终输出值传送到存储器200。
51.也就是说,当第二处理块150执行逐元素运算时,除了传送输入数据的操作之外,逐元素运算处理组150a的第一逐元素运算处理单元epe1和第二逐元素运算处理单元epe2可以与第一处理块110中的处理单元pe不同地操作。
52.下面将参照图5、图6a、图6b、图7a和图7b详细描述第二处理块150的逐元素运算处理组150a的详细配置和操作方法。
53.图3a是示出处理单元pe的配置的示图。
54.处理单元pe可以包括第一至第五寄存器reg1至reg5、乘法器m和加法器a。
55.第一寄存器reg1可以存储输入数据input,并且将输入数据input提供到乘法器m。另外,第一寄存器reg1可以将输入数据input提供到位于该处理单元pe右侧的处理单元right pe。第二寄存器reg2可以存储权重w,并且将权重w提供到乘法器m以及该处理单元pe下方的处理单元below pe。
56.乘法器m可以对从第一寄存器reg1提供的输入数据input和从第二寄存器reg2提供的权重w执行乘法运算,并且将乘法结果值v_m提供到第三寄存器reg3。
57.第三寄存器reg3可以存储从乘法器m提供的乘法结果值v_m,并且将乘法结果值v_m提供到加法器a。加法器a可以对从第三寄存器reg3传送的乘法结果值v_m和从第四寄存器
reg4反馈的先前加法结果值v_ap执行加法运算,并且将加法结果值v_a提供到第四寄存器reg4。第四寄存器reg4可以存储从加法器a提供的加法结果值v_a,并且将加法结果值v_a提供到多路复用器mux。另外,第四寄存器reg4可以将加法结果值v_a作为先前加法结果值v_ap反馈到加法器a。
58.多路复用器mux可以将输出数据output_r和加法结果值v_a中的一个提供到第五寄存器reg5,该输出数据output_r是从位于该处理单元pe右侧的处理单元right pe传送,该加法结果值v_a由加法器a产生并由第四寄存器reg4提供到多路复用器mux。
59.第五寄存器reg5可以将从多路复用器mux传送的值作为最终输出数据output提供到位于该处理单元pe左侧的处理单元left pe或激活单元act。
60.图3b是示出根据实施例的逐元素运算处理单元epe的结构的示图。在参照图3b描述逐元素运算处理单元epe的结构时,将省略对与图3a所描述的基本相同的配置的描述。
61.逐元素运算处理单元epe可以包括第一至第三多路复用器mux1至mux3。
62.第一多路复用器mux1可以选择从存储器200传送的输入数据input与单元状态值c
t
以及第三数据中的一个,该第三数据包括从位于该逐元素运算处理单元epe右侧的处理单元right pe或逐元素运算处理单元right epe提供的输出数据output_r或者从激活单元act提供的激活数据data_a。然后,第一多路复用器mux1可以将所选择的一个输出到第一寄存器reg1。在实施例中,第三数据是输出数据output_r还是激活数据data_a可以由处于逐元素运算处理组150a内但是处于逐元素运算处理单元epe外的多路复用器(诸如,图5所示的多路复用器153和154)确定。
63.第二多路复用器mux2可以选择权重w和第二数据中的一个,该第二数据包括从位于该逐元素运算处理单元epe右侧的处理单元right pe或逐元素运算处理单元right epe传送的输出数据output_r或者从激活单元act传送的激活数据data_a。然后,第二多路复用器mux2可以将所选择的一个输出到第二寄存器reg2。
64.输入数据input可以被输入到第一多路复用器mux1,并且同时被提供到第六寄存器reg6。然后,第六寄存器reg6可以将输入数据input提供到位于该逐元素运算处理单元epe右侧的处理单元right pe或逐元素运算处理单元right epe。此外,存储在第四寄存器reg4中的加法结果值v_a可以作为先前加法结果值v_ap被反馈到加法器a,并且被提供到激活单元act和第三多路复用器mux3。
65.例如,当逐元素运算处理单元epe执行逐元素运算时,第一多路复用器mux1可以选择单元状态值c
t
并将该单元状态值c
t
传送到第一寄存器reg1,并且可以顺序地将由激活单元act激活的多个数据传送到第一寄存器reg1。
66.当逐元素运算处理单元epe不执行逐元素运算时,逐元素运算处理单元epe可以以如下与图3a所示的处理单元pe基本相同的方式操作:例如,通过使第一多路复用器mux1选择输入数据input,使第二多路复用器mux2选择权重w,并且使第三多路复用器mux3以图3a的多路复用器mux的方式进行操作。
67.图4是示出可以由实施例执行的长短期记忆(lstm)神经网络算法的结构的示图。
68.参照图4,lstm神经网络算法可以大致包括激活运算部分410和逐元素运算部分420。在本实施例中,激活运算部分410可以对应于在实施例的激活单元中执行的操作。此外,逐元素运算部分420可以对应于在实施例的一个或多个逐元素运算处理单元中执行的
操作。
69.激活运算部分410可以基于输入值x
t
和先前最终输出值h
t
‑1(对应于先前步骤的隐藏状态),通过使用sigmoid函数和双曲正切(tanh)函数来计算四个值,即“f
t”、“i
t”、“a
t”和“o
t”。此外,“f
t”可以指示用于确定待从先前单元状态值c
t
‑1丢弃的信息的值。“i
t”可以指示用于确定输入的信息中待存储在单元状态值中的信息的值。“a
t”可以指示待存储在单元状态值中的候选值。“o
t”可以指示用于确定待从当前单元状态值c
t
最终输出的值的值。
70.逐元素运算部分420可以更新先前单元状态值c
t
‑1以计算当前单元状态值c
t
。例如,逐元素运算部分420可以执行先前单元状态值c
t
‑1与“f
t”的元素乘法,并且丢弃来自先前单元状态值c
t
‑1的一些信息。然后,通过将“i
t”和“a
t”元素乘法的结果值加上已经丢弃了一些信息的先前单元状态值c
t
‑1,可以计算更新后的单元状态值,即当前单元状态值c
t

71.此外,逐元素运算部分420可以确定最终输出值h
t
(对应于该步骤的隐藏状态)。例如,逐元素运算部分420可以将对计算出的当前单元状态值c
t
进行的双曲正切(tanh)运算的结果值与“o
t”进行元素乘法运算的结果值确定为最终输出值h
t

72.如上所述,lstm神经网络算法使用矩阵乘法运算和逐元素运算。现有技术中的脉动阵列有效地执行矩阵乘法运算,但是对于逐元素运算不太有用。因此,在现有技术中,脉动阵列单独包括用于逐元素运算的专用块。因此,当脉动阵列运行诸如多层感知器(mlp)和卷积神经网络(cnn)的不使用逐元素运算的其它神经网络时,逐元素运算块的资源被浪费。
73.在这方面,在本实施例中,如图1和图2所示,脉动阵列100包括执行矩阵乘法运算的第一处理块110以及连接到第一处理块110并执行逐元素运算的第二处理块150。第二处理块150被配置为根据正在执行的应用的需要选择性地执行逐元素运算和矩阵乘法运算中的一个。
74.图5是示出根据实施例的逐元素运算处理组150a的配置的示图。图5的逐元素运算处理组150a能够支持lstm神经网络的操作,诸如图4所示的操作。
75.参照图5,根据本实施例的逐元素运算处理组150a可以包括一个第一逐元素运算处理单元epe1、一个第二逐元素运算处理单元epe2、一个激活单元act以及第一至第六多路复用器151至156。激活单元act可以包括第一激活子单元act1和第二激活子单元act2。例如,第一激活子单元act1可以是sigmoid函数,第二激活子单元act2可以是双曲正切函数,但是本公开不特别限于此。
76.第一多路复用器151可以选择从相邻处理单元pe(例如,位于逐元素运算处理组150a右侧的处理单元pe)提供的输出数据以及从第二逐元素运算处理单元epe2的加法结果值v_a提供的数据中的一个,并且将所选择的数据提供到第一激活子单元act1。
77.第二多路复用器152可以选择从位于逐元素运算处理组150a右侧的处理单元pe提供的输出数据、从第二逐元素运算处理单元epe2的加法结果值v_a提供的数据以及从第一逐元素运算处理单元epe1的加法结果值v_a提供的单元状态值(例如,当前单元状态值)中的一个,并且将所选择的一个传送到第二激活子单元act2。
78.第三多路复用器153可以选择从位于逐元素运算处理组150a右侧的处理单元pe传送的输出数据、从第一激活子单元act1提供的第一激活数据以及从第二激活子单元act2提供的第二激活数据中的一个,并且将所选择的一个提供到第一逐元素运算处理单元epe1的output_r/data_a输入(图3b所示)。
79.第四多路复用器154可以选择从第二激活子单元act2提供的第二激活数据以及从第一逐元素运算处理单元epe1提供的数据中的一个,并且将所选择的一个提供到第二逐元素运算处理单元epe2的output_r/data_a输入。
80.第五多路复用器155可以选择从第一激活子单元act1提供的第一激活数据以及从第二激活子单元act2提供的第二激活数据中的一个,并且将所选择的一个提供到第六多路复用器156。
81.第六多路复用器156可以选择从第五多路复用器155提供的数据以及从第二逐元素运算处理单元epe2的output(图3b所示)提供的数据中的一个,并且将所选择的一个提供到存储器200。
82.图6a是示出在图5的逐元素运算处理组150a中执行逐元素运算的示例的示图,其中隐藏了在逐元素运算中未使用的数据路径。图6b是示出在执行逐元素运算时的时钟周期期间逐元素运算处理组150a的组件的输出的时序图。在图6b中,使用相应的大写字母指代值的激活版本;例如,激活的“i
t”值被称为i
t

83.参照图6a和图6b,在第一时钟周期clk1中,将“f
t”值从处理单元pe输入到激活单元act的第一激活子单元act1并将激活的“f
t”值f
t
(在该示例中等于σ(f
t
))从第一激活子单元act1提供到第一逐元素运算处理单元epe1,并且同时将单元状态值c
t
‑1(例如,先前单元状态值)从存储器200传送到第一逐元素运算处理单元epe1。
84.在第二时钟周期clk2中,将“i
t”值从处理单元pe输入到激活单元act的第一激活子单元act1并从第一激活子单元act1提供激活的“i
t”值i
t
(在该示例中等于σ(i
t
)),并且第一逐元素运算处理单元epe1对单元状态值c
t
和激活的“f
t”值f
t
执行元素乘法运算。
85.在第三时钟周期clk3中,将激活的“i
t”值i
t
提供到第一逐元素运算处理单元epe1,并且将“a
t”值从处理单元pe输入到激活单元act的第二激活子单元act2以产生激活的“a
t”值a
t
(在该示例中等于tanh(a
t
))。
86.在第四时钟周期clk4中,将激活的“a
t”值a
t
提供到第一逐元素运算处理单元epe1,并且第一逐元素运算处理单元epe1对激活的“i
t”值i
t
和激活的“a
t”值a
t
执行元素乘法运算。此外,第一逐元素运算处理单元epe1对激活的“i
t”值i
t
和激活的“a
t”值a
t
的元素乘法运算的结果值与单元状态值c
t
和激活的“f
t”值f
t
的元素乘法运算的结果值执行元素加法运算,从而计算当前单元状态值c
t
。同时,将“o
t”值从处理单元pe输入到第一激活子单元act1,从而从第一激活子单元act1提供激活的“o
t”值o
t
(在该示例中等于σ(o
t
))。
87.在第五时钟周期clk5中,将激活的“o
t”值o
t
以及计算出的当前单元状态值c
t
提供到第一逐元素运算处理单元epe1。
88.在第六时钟周期clk6中,将激活的“o
t”值o
t
提供到第二逐元素运算处理单元epe2,并且将当前单元状态值c
t
输入到激活单元act的第二激活子单元act2以产生激活的当前单元状态值c
t
(在该示例中等于tanh(c
t
))。
89.在第七时钟周期clk7中,第二逐元素运算处理单元epe2对激活的“o
t”值o
t
以及激活的当前单元状态值c
t
执行元素乘法运算,从而计算最终输出值h
t

90.可以连续和重复地执行这种运算过程。例如,在从第一时钟周期clk1至第四时钟周期clk4的每个时钟输入到激活单元act的“f
t”、“i
t”、“a
t”和“o
t”也可以在从第五时钟周期clk5至第八时钟周期clk8的每个时钟顺序地输入。因此,第五至第十一时钟周期clk5至
clk11中的阴影块示出了第二lstm运算的部分,这些部分分别对应于第一至第七时钟周期clk1至clk7中示出第一lstm运算的部分的非阴影块。
91.图7a是示出在图5的逐元素运算处理组150a中不执行逐元素运算的示例的示图,其中隐藏了在逐元素运算中未使用的数据路径。图7b是示出不执行逐元素运算时的时序图。图7b仅示出了从第一处理块110(图2)传送的输出数据的最终输出值被传送到存储器200的过程。
92.输入数据input可以从存储器200传送到第二逐元素运算处理单元epe2,第二逐元素运算处理单元epe2可以将所接收的输入数据input传送到第一逐元素运算处理单元epe1,并且第一逐元素运算处理单元epe1可以将所接收的输入数据input传送到第一处理块110(图2)中的处理单元pe之中位于最左侧的相应处理单元pe。
93.参照图7a和图7b,在第一时钟周期clk1中,可以将第一输出数据o1从处理单元pe传送到第一逐元素运算处理单元epe1。
94.在第二时钟周期clk2中,第一逐元素运算处理单元epe1可以将第一输出数据o1传送到第二逐元素运算处理单元epe2。同时,可以将第二输出数据o2从处理单元pe传送到第一逐元素运算处理单元epe1。
95.在第三时钟周期clk3中,第一逐元素运算处理单元epe1可以将第二输出数据o2传送到第二逐元素运算处理单元epe2,并且第二逐元素运算处理单元epe2可以将第一输出数据o1传送到激活单元act。同时,可以将第三输出数据o3从处理单元pe传送到第一逐元素运算处理单元epe1,并且可以将第二输出数据o2传送到第二逐元素运算处理单元epe2。
96.此外,激活单元act可以对从第二逐元素运算处理单元epe2传送的第一输出数据o1执行激活运算。然后,可以将激活的第一输出数据o1作为最终输出数据output存储在存储器200中。
97.如上所述,当逐元素运算处理组不执行逐元素运算时,逐元素运算处理组中包括的第一逐元素运算处理单元epe1和第二逐元素运算处理单元epe2以与第一处理块110中包括的处理单元pe(图2)基本相同的方式进行操作。因此,即使在运行不需要逐元素运算的神经网络算法时,也可以基本上防止处理单元pe的资源被浪费。
98.已经通过特定实施例描述了本公开,但是将理解的是,在不脱离本公开的范围的情况下,可以以各种方式修改本公开。因此,本公开的范围不应限于前述实施例,而应由所附权利要求及其等同方案来限定。将理解的是,在不脱离本公开的范围或技术精神的情况下,可以对本公开的结构进行各种校正或修改。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜