CN117808062A - 计算装置、电子装置以及用于计算装置的操作方法 - Google Patents

计算装置、电子装置以及用于计算装置的操作方法 Download PDF

Info

Publication number
CN117808062A
CN117808062A CN202311861659.1A CN202311861659A CN117808062A CN 117808062 A CN117808062 A CN 117808062A CN 202311861659 A CN202311861659 A CN 202311861659A CN 117808062 A CN117808062 A CN 117808062A
Authority
CN
China
Prior art keywords
output layer
computing device
calculation
unit
pool
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
CN202311861659.1A
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.)
Tsinghua University
Original Assignee
Tsinghua 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 Tsinghua University filed Critical Tsinghua University
Priority to CN202311861659.1A priority Critical patent/CN117808062A/zh
Publication of CN117808062A publication Critical patent/CN117808062A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Feedback Control In General (AREA)

Abstract

本公开提供一种计算装置、电子装置和用于计算装置的操作方法,该计算装置包括输入单元、储备池计算单元和输出层单元,其中输入单元配置为接收输入信号;储备池计算单元,配置为对输入信号进行储备池神经网络的储备池层计算;输出层单元,包括多个输出层子单元,其中,多个输出层子单元分别配置为从储备池计算单元储备池计算单元对于输入信号的计算结果,并且分别对所述计算结果执行储备池神经网络的输出层计算,分别得到多个输出结果。该计算装置能够同时执行多个不同的任务。

Description

计算装置、电子装置以及用于计算装置的操作方法
技术领域
本公开的实施例涉及一种基于储备池的计算装置、电子装置及用于计算装置的操作方法。
背景技术
近年来,基于冯诺依曼架构的传统计算机发展遇到瓶颈,单位面积晶体管数量的发展受限于沟道长度的极限,在此背景下,研究人员参考生物神经系统的运行方式,挖掘更多电子元器件动态特性用于高效计算,以进一步发展人工智能系统的计算能力,即类脑计算。物理储备池计算是类脑计算领域的一个重要研究方向,储备池计算是递归神经网络(RNN)的一种,与传统的RNN算法相比,储备池计算易于训练,不存在RNN训练中常见的梯度消失和梯度爆炸等问题。储备池网络中的输入层和储备池层的连接都随机生成且固定不变,其中储备池层还存在递归连接以提供短时记忆能力,输入信号或数据在经过输入层和储备池层后被映射到高维特征空间,使其可以被一个全连接线性层读出至目标值或者类别,用于机器学习任务,如分类、预测等。
同时,利用电子元器件中的动态特性和非线性可以对输入信号作高维映射,从而直接在硬件层面上实现储备池层的功能,这种实现方法能够将机器学习算法的实现保留在模拟域,省去数模转换和二进制数据的存储和操作,提升计算效率的同时没有冯诺依曼架构瓶颈的限制。在过去的工作中,研究人员研究了多种不同的储备池架构,尝试了不同的储备池神经元实现方式,也尝试将其与传感器结合实现感存算一体,均取得了良好的效果,实现了对传感器信号进行直接的处理、计算和分类等操作,大大降低了边缘端计算所需的功耗。
然而,物理储备池计算接收信号或者数据并对其处理,其输出通常为单一输出,这样的输出结果形式和背后的物理意义单一。
发明内容
本公开至少一实施例提供一种计算装置,包括输入单元、储备池计算端元和输出层计算单元,其中,所述输入单元配置为接收输入信号;所述储备池计算单元配置为对所述输入信号进行储备池神经网络的储备池层计算;所述输出层单元包括多个输出层子单元,其中,所述多个输出层子单元分别配置为从所述储备池计算单元接收所述储备池计算单元对于所述输入信号的计算结果,并且分别对所述计算结果执行所述储备池神经网络的输出层计算,分别得到多个输出结果。
例如,在本公开至少一实施例提供的计算装置中,所述输入单元包括n个输入端口,并且配置为接收包括n个元素的输入信号,其中,n为大于等于1的正整数。
例如,在本公开至少一实施例提供的计算装置中,每个输出层子单元包括第一忆阻器阵列以执行所述储备池神经网络的输出层计算。
例如,在本公开至少一实施例提供的计算装置中,每个输出层子单元的第一忆阻器阵列包括在输出层的忆阻器主阵列中,并且分别为所述忆阻器主阵列的不同部分。
例如,在本公开至少一实施例提供的计算装置中,所述储备池计算单元包括多个状态通道,通过所述多个状态通道分别将所述计算结果输出到所述多个输出层子单元。
例如,在本公开至少一实施例提供的计算装置中,所述储备池层计算包括对所述输入信号进行升维计算。
例如,在本公开至少一实施例提供的计算装置中,所述储备池计算单元包括第二忆阻器阵列,所述第二忆阻器的忆阻器为易失性忆阻器。
例如,在本公开至少一实施例提供的计算装置中,还包括执行单元,其中,所述执行单元配置为接收所述输出层子单元的用于所述不同任务之一的第一输出结果;对所述第一输出结果进行处理,并且将所述处理结果作为下一输入信号提供到所述输入单元。
本公开的实施例提供了一种电子装置,包括本公开任一实施例提供的计算装置。
本公开的实施例提供了一种用于本公开任一实施例的计算装置的操作方法,所述操作方法包括:通过所述输入单元,接收所述输入信号;通过所述储备池计算单元对所述输入信号进行所述储备池神经网络的储备池层计算;通过所述多个输出层子单元,分别从所述储备池计算单元接收所述储备池计算单元对于所述输入信号的计算结果,并且分别对所述计算结果执行所述储备池神经网络的输出层计算,分别得到多个输出结果。
例如,本公开至少一实施例提供的操作方法还包括:对所述储备池计算单元进行设置以写入用于所述储备池层计算的第一权重值;对所述输出层单元进行设置以写入用于所述输出层计算的第二权重值。
例如,本公开至少一实施例提供的操作方法还包括:对所述计算装置进行训练,以得到用于所述储备池计算的所述第一权重值和所述第二权重值。
例如,本公开至少一实施例提供的操作方法中,对所述计算装置进行训练包括:对不同的所述多个输出层子单元分别针对所述不同任务进行训练,以得到用于所述不同任务的权重值。
根据本公开的实施例的计算装置以及对该计算装置应用对应的操作方法能够同时执行多个不同的任务,例如,同时具有对环境的分析和与环境的交互的多种能力。
附图说明
为了更清楚地说明本公开的实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1A为一种储备池神经网络工作示意图。
图1B为根据本公开的实施例的一种储备池神经网络工作示意图。
图1C为根据本公开的实施例的另一种储备池神经网络工作示意图。
图2为根据本公开的实施例的一种应用储备池神经网络的计算装置的结构示意图。
图3为根据本公开的实施例的一种计算装置的基于易失性忆阻器的储备池计算单元的结构示意图。
图4为根据本公开的实施例的一种计算装置的基于非易失性忆阻器的输出层单元的结构示意图。
图5为根据本公开的实施例的一种计算装置的操作方法的流程图。
具体实施方式
为使本公开的实施例的目的、技术方案和优点更加清楚,下面将结合本公开的实施例的附图,对本公开的实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现在该词前面的元素或者物件涵盖出现在该词后面列举的元素或者物件及其等同,而不排除其他元素或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
此外,下面所描述的本公开不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。同时,为了保持本公开的实施例的以下说明清楚且简明,可省略已知功能和已知部件的详细说明。当本公开的实施例的任一部件在一个以上的附图中出现时,该部件在每个附图中由相同或类似的附图标记表示。
在现有技术中,物理储备池计算装置接收信号或者数据并对其处理,但其输出通常为单一输出。
图1A为一种储备池神经网络工作示意图。如图1A所示的储备池神经网络中,输入信号1经由储备池层2进行计算,将计算结果输出到输出层3,以执行分类或预测任务;但是,该储备池神经网络的输出结果单一,可以为分类结果或预测结果,无法同时进行对环境的分析以及与环境的交互。
本公开至少一实施例提供一种储备池神经网络计算装置,包括输入单元、储备池计算单元和输出层单元。输入单元配置为接收输入信号;储备池计算单元配置为对输入信号进行储备池神经网络的储备池层计算;输出层单元包括多个输出层子单元,其中,多个输出层子单元分别配置为从储备池计算单元储备池计算单元对于输入信号的计算结果,并且分别对所述计算结果执行储备池神经网络的输出层计算,分别得到多个输出结果,例如该多个输出结果分别用于不同任务。因此,该计算装置能够同时执行多种不同类型的任务,例如,可以具有对复杂环境的更强的分析能力。
此外,本公开至少一实施例提供的计算装置还可以包括执行单元,其中,执行单元配置为:接收输出层子单元的用于所述不同任务之一的第一输出结果;对第一输出结果进行处理,并且将处理结果作为下一输入信号提供到输入单元。
因此,本公开的至少一实施例提出一种能够同时执行多任务的物理储备池计算装置,该装置可以作为一个智能体的核心计算单元,在与环境实现闭环的同时对当前的状态进行分类或预测,从而实现同时拥有对环境的分析与交互的多种能力的更高级的智能体。
例如,图1B为根据本公开一实施例的一种储备池神经网络工作示意图。
如图1B所示的储备池神经网络的装置中,输入信号10经由储备池层20进行计算,将计算结果输出到输出层31-33;特别地,该实施例的储备池神经网络的装置同时包括三个输出层(即,输出层31-33),并且例如可以通过将输出层31配置为输出分类任务计算结果,输出层32配置为输出预测任务计算结果以及将输出层33配置为输出控制命令任务计算结果,以同时执行多种不同类型的任务,从而使得具有该储备池神经网络的装置可以具有对复杂环境的更强的分析能力。
此外,在至少一实施例中,储备池神经网络的输出层还能够使得其中一个输出结果用于控制一个或多个执行单元,使得执行单元能够影响输入信号,从而使得装置能够和环境进行交互。
图1C为根据本公开的另一实施例的另一种储备池神经网络工作示意图。与图1B类似,如图1C中所示的储备池神经网络的装置包括两个输出层,即输出层32和输出层33,并且还包括执行单元90,其中,输出层33输出第一输出结果,用于产生控制命令以控制执行单元90作用于环境,使得环境发生改变,进而产生新的输入信号10(或经改变的输入信号);输出层32输出第二输出结果,用于进行分类任务或预测任务,从而使得具有该储备池神经网络的装置可以同时具有对环境的分析与交互的多种能力。在不同实施例的实施方式中,本领域的技术人员可以根据具体的智能体的实际任务目标选择任何类型的执行单元90。
图2为根据本公开的实施例的一种储备池神经网络计算装置800的结构示意图。
如图2所示,储备池神经网络计算装置800包括输入单元100、储备池计算单元200以及输出层单元300。储备池计算单元200经由输入单元100接收输入信号10,并且对该输入信号10进行储备池神经网络的储备池层计算以得到计算结果。输出层单元300的多个输出层子单元(例如,包括输出层子单元3001和输出层子单元3002)接收该计算结果,并分别对其执行储备池神经网络的输出层计算,以分别得到多个输出结果(例如,包括输出结果_1、输出结果_2、…、输出结果_N),这些输出结果可以用于不同任务。
在本公开至少一实施例提供的计算装置中,输入单元100可以包括n个输入端口,并且配置为接收包括n个元素的输入信号10,其中,n为大于等于1的正整数。
例如,结合图1C与图2,在一个示例中,当该计算装置800在一实施例中作为一个避障机器人的核心系统时,实施为储备池计算单元200的储备池层神经网络可以设置为具有分别用于避障任务和用于分类任务或预测任务的两个输出层31和32,并且可以根据实施为输入单元100(例如,通过超声波测距仪或红外探测器)所提供的输入进行计算,通过实施为输出层子单元3001的输出层31得到用于控制执行单元90(例如,直流电机)的避障控制命令,以控制避障机器人完成避障任务。与此同时,由于完成避障任务后,所处环境发生改变从而使得输入发生改变,该储备池层还可以根据新的输入进行计算,以通过实施为输出层子单元3002的输出层32输出用于分类任务或与预测任务的输出结果,例如,判断障碍物的数量或预测危险情况的发生,使得避障机器人能够在环境改变后继续完成避障任务,从而使得避障机器人同时拥有对环境进行分析以及与环境交互的多种能力。
例如,在本公开的至少一实施例提供的计算装置中,储备池计算单元可以配置为包括多个状态通道,通过该多个状态通道分别将计算结果输出到所述多个输出层子单元,从而本公开提供的储备池计算单元能够对输入信号进行升维计算。
例如,在本公开的实施例提供的储备池计算单元的具体实施方式中,可以综合考虑储备池层计算的动态特性、记忆能力和非线性高维映射能力。例如,在一具体实施中,储备池层计算单元可以被实施为包括多个动态非线性单元(即,作为储备池层神经网络的神经元,因此又可称为神经元电路或神经元器件)的电路,这些动态非线性单元以特定方式连接形成阵列,使其在接收输入信号时能够产生多路线性不相关的输出。请注意,在本公开中,“动态”(或“易失性”)可以被理解为:
(1)具有短时记忆能力(或,时间常数),即,在接收到新的刺激之后不会马上达到稳态,而是会经过一小段的上升/下降时间,这种短时记忆能力能够使每个时间点的储备池层状态向量与之前一段时间内的储备池层状态建立联系;
(2)具有非线性变换能力,即要求神经元的输入输出存在非线性变换的区间,使得储备池层的每个状态通道之间线性不相关,从而能够提取出更多输入信号的特征。
因此,在本公开至少一实施例提供的计算装置中,储备池计算单元可以包括忆阻器阵列,并且如上所述的动态非线性单元可以具有例如单个忆阻器结构,或可以具有1T1R结构或者2T2R结构,但不限于此。其中,1T1R结构的动态非线性单元包括一个开关元件(例如,晶体管)和一个忆阻器,2T2R结构的动态非线性单元包括两个开关元件和两个忆阻器。
例如,图3为根据本公开的实施例的一种计算装置800的基于易失性忆阻器的储备池计算单元的结构示意图。如图3所示的储备池计算单元200包括忆阻器阵列400,忆阻器阵列400包括多个以一定方式相连的忆阻器(例如,图中的忆阻器4001、4002、4003),每个忆阻器的输出分别经由状态通道500输出,并且经由该储备池计算单元200对输入信号10(例如,电压信号)进行升维运算。
如上所述,在本公开的实施例中,忆阻器可以例如为易失性忆阻器,例如,阻变存储材料为氧化钽或氧化钛材料的忆阻器。本公开的实施例对于忆阻器的结构、材料等不作限制。
如图3所示,以忆阻器4001为例,由于忆阻器4001的电导值会受到一段时间内输入电压的累积影响,即,在接收到输入信号10后,其在每个时间点上的电导值将与过去一段时间内每个时间点上接收到的输入电压有关,因此,忆阻器4001的电导值能够实现短期记忆的效果,并且其输入端与输出端之间的信号存在非线性变换关系。
例如,在根据本公开的实施例提供的计算装置800中,忆阻器阵列400中包括的N个忆阻器(即,忆阻器4001-400N,其中N为正整数)可以存在一定程度的不一致性(即,器件之间的非线性区间和动态特性存在一定程度的不一致性),这使得在相同的输入下,经由每个忆阻器得到的输出能够存在差异性和线性不相关性,从而实现将输入信号10映射为N维的高维状态向量(例如,N个电压值)的计算结果。
因此,本公开的实施例提供的计算装置通过采用忆阻器可以在硬件层面上直接实现储备池层神经网络,可以极大节省功耗和硬件开销。
在本公开至少一实施例提供的计算装置中,每个输出层子单元包括忆阻器阵列以执行储备池神经网络的输出层计算,并且该忆阻器阵列可以包括在输出层的忆阻器主阵列中,并且分别构成忆阻器主阵列的不同部分。例如,忆阻器主阵列可以包括多个阵列排布的忆阻器单元,其中的忆阻器可以为非易失性忆阻器,包括但不限于阻变存储器(RRAM)、相变存储器(PCRAM)、电化学随机存取储存器(ECRAM)、闪存(Flash)等。本公开的实施例对忆阻器单元的结构不作限制,也可以采用可以实现乘积累加运算的其他结构形式的忆阻器单元。
在本公开至少一实施例提供的计算装置中,输出层计算例如可以是经由储备池层计算单元得到的计算结果(即,N维的高维状态向量矩阵)和输出层权重矩阵之间的矩阵向量乘法,因此,可以采用忆阻器阵列作为输出层计算单元的一部分。
图4为根据本公开的实施例的一种计算装置800的基于非易失性忆阻器的输出层单元300的电路结构示意图。结合图2和图4所示的输出层单元300包括多个输出层子单元(例如,输出层子单元3001、输出层子单元3002等,在图4中未示出),其中每个输出层子单元包括子阵列,其分别为构成忆阻器主阵列600的一部分,例如,输出层子单元3001对应于图中忆阻器主阵列600的前两行,输出层子单元3002对应于图中忆阻器主阵列600的第三、第四行。经由储备池层计算单元200得到的计算结果(即,N维状态向量)被输入到忆阻器主阵列600中进行储备池神经网络的输出层计算。
如图4所示,该忆阻器主阵列600包括以M行N列进行阵列排布的非易失性忆阻器(即,忆阻器6011至60NM,M和N均为正整数),其中,该忆阻器600的多个阵列排布的多个电导值与如上所述的输出层权重矩阵相对应,即将多个元素的数值进行量化处理之后转换为对应的忆阻器的电导值,并由此对每个忆阻器的电导值进行写入。
在图4中,BL<1>、BL<2>……BL<N>分别表示第一列、第二列……第N列的位线,分别用于接收N个计算结果,这些结算结果例如为电压信号;SL<1>、SL<2>……SL<M>分别表示第一行、第二行……第M行的源线,因此,对于1T1R的忆阻器单元而言,每一行的忆阻器单元中的开关元件的源极(例如,晶体管的源极)和该行对应的源线连接,每一行的忆阻器单元中的忆阻器一端与开关晶体管的漏极连接,一端与对应的列的位线连接;此外,每一行的忆阻器单元中的开关元件的控制极(例如,晶体管的栅极)和该行对应的字线连接(图中未示出)。该忆阻器阵列还可以进一步包括用于各个晶体管的字线(图中未示出),每条字线用于控制例如一行忆阻器单元中的晶体管的导通或截止。
例如,在另一示例中,忆阻器单元还可以采用2T2R结构,即包括两个开关元件和两个忆阻器;此时,则对于忆阻器中的每一列需要一对位线(即,两条位线)
需要说明的是,本公开的实施例中采用的晶体管可以为薄膜晶体管、场效应晶体管(例如MOS场效应晶体管)或其他特性相同的开关器件。这里采用的晶体管的源极、漏极在结构上可以是对称的,所以其源极、漏极在结构上可以是没有区别的。
如图4所示,对于上述忆阻器阵列,根据基尔霍夫定律,通过设置每个忆阻器单元的状态(例如,电阻值或电导值)并且在字线与位线施加相应的字线信号与位线信号,则上述忆阻器阵列可以用于并行地完成乘积累加计算。
例如,经由储备池层计算单元得到的计算结果例如为电压输出(V1、V2……VN),即N维状态向量,可以用于输出层单元300的输出层计算。例如,例如,M行N列排布的忆阻器的多个电导值Gt=[G11,G12…G1N;G21,G22…G2N;…;GM1,GM2…GMN]与输出层单元300的权重矩阵的多个元素的值对应。根据该权重矩阵,可以对应地对该M行N列排布的忆阻器的多个电导值进行写入。
例如,当在位线BL<1>、BL<2>……BL<N>上输入计算结果(例如,输入电压向量Vt=[V1,V2,…,VN])时,计算结果与M行N列的输出层权重矩阵(例如,电导矩阵Gt)相乘得到M个处理结果(例如,输出电流向量It=[I1,I2,…,IM]),并在源线SL<1>、SL<2>……SL<M>上输出该M/2个处理结果,其中M为偶数正整数。例如,具体计算过程如公式(1)所示。
由于输出层权重值由正负之分,因此对于1T1R的情形,需要两组忆阻器通过跨阻放大电路相减得到最终的结果。
在本公开至少一实施例提供的计算装置中,输出层单元300还包括跨阻放大电路700,该跨阻放大电路700包括多个跨阻放大器(Trans-Impedance Amplifier,TIA),例如,跨阻放大器7001和7002等。
因此,在本公开至少一实施例提供的计算装置中,输出层子单元3001(图中未示出)可以包括输出层子阵列(例如,排布为2行N列排布的忆阻器子阵列)和跨阻放大器7001。例如,将处理结果I1和I2通过跨阻放大器7001相减得到输出结果_1。类似地,还可以通过跨阻放大电路700处理分别得到用于不同任务的输出结果(例如,输出结果_2至输出结果_M/2)。
例如,在本公开的一实施例中,当该计算装置800作为一个避障机器人的核心系统时,输出层单元300可以包括三个输出层子单元(例如,3001、3002、3003),其包括6行N列的忆阻器主矩阵600,经由跨阻放大器7001处理得出的输出结果_1可以用于进行左电机驱动,经由跨阻放大器7002处理得出的输出结果_2可以用于右电机驱动,输出结果_3可以用于进行避障机器人的轨迹识别。在上述实施例的计算装置800中,元器件的物理特性被充分挖掘用于实现硬件层面的神经网络计算,在误差可接受范围内,能够极大降低系统成本和运行功耗。
本公开的至少一实施例还提供了一种电子装置,该电子装置包括上述任一实施例的计算装置,提供给出多个不同的输出结果,由此可以用于同时执行多种不同的任务。
例如,在如本公开的一个实施例中,该电子装置可以为一种避障机器人,如上述任一实施例所述的计算装置800可以作为该避障机器人的核心系统,通过设置计算装置800可以使得该避障机器人同时完成多种不同的任务,从而拥有对环境进行分析以及与环境交互的多种能力。
本公开的至少一实施例还提供了一种用于上述任一实施例的计算装置的操作方法。
图5为根据本公开的实施例的一种计算装置800的操作方法的流程图,该操作方法包括如下步骤S901-S903:
步骤S901:通过输入单元,接收输入信号。
步骤S902:通过储备池计算单元对输入信号进行储备池神经网络的储备池层计算。
步骤S903:通过多个输出层子单元,分别从储备池计算单元接收储备池计算单元对于输入信号的计算结果,并且分别对计算结果执行储备池神经网络的输出层计算,分别得到多个输出结果,例如用于多个不同任务。
例如,在如图2所示的计算装置800中进行计算操作时,首先通过输入单元100接收输入信号10(例如,输入信号10可以包括n个元素,其中,n为大于等于1的正整数),通过储备池计算单元200对该输入信号10进行储备池神经网络的储备池层计算。例如,当该储备池计算单元200设置为包括N个易失性忆阻器组成的忆阻器阵列400时,该输入信号10经由储备池计算单元200中的忆阻器阵列400可以升维为包括N个状态的计算结果,即N维状态向量,用于后续的输出层计算。
然后,将该N维计算结果分别通过N个状态通道输出到输出层单元300的多个输出层子单元(例如,当忆阻器主阵列600设置为M行N列的非易失性阵列时,可以为M/2个输出层子单元,其中M为偶数正整数)中,并且通过每个输出层子单元分别进行计算(例如,进行乘加和相减计算),并且分别得到多个不同的输出结果(例如,输出结果_2至输出结果_M/2),用于不同的任务设置。
在至少另一实施例中,在步骤S901之前,计算装置的操作方法还可以包括对储备池计算单元200进行设置(例如初始化或权重更新)以写入用于储备池层计算的第一权重值,以及对输出层单元300进行设置(例如初始化或权重更新)以写入用于输出层计算的第二权重值。
例如,如结合图3和图4所示,第一权重值矩阵可以与储备池计算单元200的忆阻器阵列400中的N个易失性忆阻器的电导值矩阵或电阻值矩阵相对应,第二权重值矩阵可以与输出层单元300的忆阻器主阵列600中的M行N列的非易失性忆阻器的电导值矩阵或电阻值矩阵相对应。本公开的实施例对具体的写入方式不作限制。
如上所述,根据本公开的实施例的计算装置的储备池计算单元和输出层单元均采用神经网络进行计算,因此在使用根据本公开的实施例的计算装置之前,还需要对储备池计算单元和输出层单元进行训练。
例如,本公开至少一实施例提供的操作方法还包括对根据本公开的实施例的计算装置800进行训练,以分别得到如上所述的用于储备池计算的第一权重值和第二权重值。
可以对不同的多个输出层子单元分别针对不同任务进行训练,以得到用于不同任务的权重值。
例如,当根据本公开的实施例的计算装置800作为一个避障机器人的核心系统并且所设置的任务例如为控制任务(例如,左电机驱动或右电机驱动)和轨迹识别任务两种不同类型的任务时,需要针对这两种任务分别对输出子单元3001和3002在忆阻器主阵列600的一部分对应忆阻器的相应权重矩阵(例如,电导值或电阻值)进行训练。
例如,此时忆阻器主阵列600包括4行N列的非易失性忆阻器,其中,输出子单元3001包括阻器主阵列600的第1-2行以设置用于控制任务,输出子单元3002包括阻器主阵列600的第3-4行以设置用于轨迹识别任务。在训练时,可以分别对这两部分阵列的权重值矩阵进行训练和更新,以分别用于上述两个任务。
例如,对于控制任务,训练方法可以用进化策略或者强化学习,通过评估对环境的适应能力对权重矩阵进行更新并且反复迭代上述修改步骤,最终得到用于输出层子单元3001的忆阻器阵列(即,忆阻器主阵列600的第1-2行)的权重矩阵(例如,电导值或电阻值)。
又例如,对于轨迹识别任务,可以当控制任务的效果稳定之后,在机器人自动巡航的过程中保存整个过程的一段时间内得到的储备池层计算单元输出的每个时间点的状态向量函数x(t),同时手动设置一组随时间变化的目标值函数y(t),例如当时间t在需要检测的轨迹的某一时间段内时,将目标值y设置为1,在其余时间段内将目标值设置为0。最后将岭回归算法应用于该x(t)和y(t)函数以最终得到应用于识别任务的输出层子单元3002的忆阻器阵列(即,忆阻器主阵列600的第3-4行)的权重矩阵。
除了在上述实施例中所应用的岭回归算法之外,本公开其他的实施例中还可以应用其他线性回归算法(例如,简单线性回归算法、岭回归算法、套索回归算法(LASSO)、贝叶斯回归算法等线性回归算法等),本公开的实施例对此不作限制。
此外,如果需要对装置进行设置使其能够计算以实现新的任务,可以在本公开的实施例基础上,在输出层单元300中增加新的输出层子单元,对应的输出层子单元忆阻器阵列的具体权重矩阵的写入与训练方法与上述类似,在此不再赘述。
因此,与传统控制系统实现多任务时往往需要额外增加或配置新的模块应用(例如,需要进行机器学习,则需要增加与原有控制系统相互独立的机器学习模块)相比,本公开的实施例提供的计算装置及其操作方法可以充分利用物理储备池计算的动态信息处理能力,具有可训练和自适应的特性,只需对用于计算的对应权重矩阵进行修改即可实现优化和适应不同任务。
除了上述示例性描述,对于本公开,有以下几点需要说明:
(1)本公开的实施例的附图中,只涉及到与本公开的实施例涉及到的结构,其他结构可参考通常设计。
(2)在不冲突的情况下,本公开同一实施例及不同实施例中的特征可以相互组合。
以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。

Claims (13)

1.一种计算装置,包括:
输入单元,配置为接收输入信号;
储备池计算单元,配置为对所述输入信号进行储备池神经网络的储备池层计算;
输出层单元,包括多个输出层子单元,其中,所述多个输出层子单元分别配置为从所述储备池计算单元接收所述储备池计算单元对于所述输入信号的计算结果,并且分别对所述计算结果执行所述储备池神经网络的输出层计算,分别得到多个输出结果。
2.如权利要求1所述的计算装置,其中,所述输入单元包括n个输入端口,并且配置为接收包括n个元素的输入信号,其中,n为大于等于1的正整数。
3.如权利要求1所述的计算装置,其中,所述多个输出层子单元的每一个包括第一忆阻器阵列以执行所述储备池神经网络的输出层计算。
4.如权利要求3所述的计算装置,其中,所述多个输出层子单元的每一个的第一忆阻器阵列包括在输出层的忆阻器主阵列中,并且分别为所述忆阻器主阵列的不同部分。
5.如权利要求1所述的计算装置,其中,所述储备池计算单元包括多个状态通道,通过所述多个状态通道分别将所述计算结果输出到所述多个输出层子单元。
6.如权利要求5所述的计算装置,其中,所述储备池层计算包括对所述输入信号进行升维计算。
7.如权利要求5所述的计算装置,其中,所述储备池计算单元包括第二忆阻器阵列,所述第二忆阻器阵列的忆阻器为易失性忆阻器。
8.如权利要求1所述的计算装置,还包括执行单元,其中,所述执行单元配置为:
接收所述输出层子单元的用于所述不同任务之一的第一输出结果;
对所述第一输出结果进行处理,并且将所述处理结果作为下一输入信号提供到所述输入单元。
9.一种电子装置,包括:如权利要求1-8所述的计算装置。
10.一种用于权利要求1-8任一所述的计算装置的操作方法,包括:
通过所述输入单元,接收所述输入信号;
通过所述储备池计算单元对所述输入信号进行所述储备池神经网络的储备池层计算;
通过所述多个输出层子单元,分别从所述储备池计算单元接收所述储备池计算单元对于所述输入信号的计算结果,并且分别对所述计算结果执行所述储备池神经网络的输出层计算,分别得到多个输出结果。
11.如权利要求10所述的操作方法,还包括:
对所述储备池计算单元进行设置以写入用于所述储备池层计算的第一权重值;
对所述输出层单元进行设置以写入用于所述输出层计算的第二权重值。
12.如权利要求10所述的操作方法,还包括:
对所述计算装置进行训练,以得到用于所述储备池计算的所述第一权重值和所述第二权重值。
13.如权利要求12所述的操作方法,其中,对所述计算装置进行训练包括:
对不同的所述多个输出层子单元分别针对所述不同任务进行训练,以得到用于所述不同任务的权重值。
CN202311861659.1A 2023-12-29 2023-12-29 计算装置、电子装置以及用于计算装置的操作方法 Pending CN117808062A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311861659.1A CN117808062A (zh) 2023-12-29 2023-12-29 计算装置、电子装置以及用于计算装置的操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311861659.1A CN117808062A (zh) 2023-12-29 2023-12-29 计算装置、电子装置以及用于计算装置的操作方法

Publications (1)

Publication Number Publication Date
CN117808062A true CN117808062A (zh) 2024-04-02

Family

ID=90429570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311861659.1A Pending CN117808062A (zh) 2023-12-29 2023-12-29 计算装置、电子装置以及用于计算装置的操作方法

Country Status (1)

Country Link
CN (1) CN117808062A (zh)

Similar Documents

Publication Publication Date Title
US11361216B2 (en) Neural network circuits having non-volatile synapse arrays
US20190122105A1 (en) Training of artificial neural networks
US20200053299A1 (en) Image sensor with analog sample and hold circuit control for analog neural networks
US20200012924A1 (en) Pipelining to improve neural network inference accuracy
Fouda et al. Spiking neural networks for inference and learning: A memristor-based design perspective
US11620505B2 (en) Neuromorphic package devices and neuromorphic computing systems
US11531898B2 (en) Training of artificial neural networks
JPWO2019049741A1 (ja) 不揮発性半導体記憶素子を用いたニューラルネットワーク演算回路
US11615299B2 (en) Neural network computation circuit including non-volatile semiconductor memory element
US11531871B2 (en) Stacked neuromorphic devices and neuromorphic computing systems
CN111581141B (zh) 存储器装置及其操作方法
US11087204B2 (en) Resistive processing unit with multiple weight readers
US20210319293A1 (en) Neuromorphic device and operating method of the same
TWI699711B (zh) 記憶體裝置及其製造方法
TWI751403B (zh) 具有非揮發性突觸陣列的神經網路電路及神經晶片
WO2023217027A1 (zh) 利用基于忆阻器阵列的环境模型的策略优化方法和装置
US20230113627A1 (en) Electronic device and method of operating the same
Ahmed et al. Spatial-spindrop: Spatial dropout-based binary bayesian neural network with spintronics implementation
CN115796252A (zh) 权重写入方法及装置、电子设备和存储介质
CN117808062A (zh) 计算装置、电子装置以及用于计算装置的操作方法
García-Redondo et al. Training DNN IoT applications for deployment on analog NVM crossbars
KR20230090849A (ko) 뉴럴 네트워크 장치 및 이를 포함하는 전자 시스템
KR20230005309A (ko) 아날로그 인공지능 네트워크 추론을 위한 행별 컨볼루션 신경망 매핑을 위한 효율적 타일 매핑
KR102511526B1 (ko) 하드웨어 기반 인공 신경망 제공 장치
US20220351035A1 (en) Apparatus and method for neural network learning using synapse based on multi element

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