CN113240100B - 基于离散Hopfield神经网络的并行计算方法及*** - Google Patents
基于离散Hopfield神经网络的并行计算方法及*** Download PDFInfo
- Publication number
- CN113240100B CN113240100B CN202110781973.3A CN202110781973A CN113240100B CN 113240100 B CN113240100 B CN 113240100B CN 202110781973 A CN202110781973 A CN 202110781973A CN 113240100 B CN113240100 B CN 113240100B
- Authority
- CN
- China
- Prior art keywords
- computing
- nodes
- sample data
- calculation
- node
- 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
Links
Images
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/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- 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)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Neurology (AREA)
- Multi Processors (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种基于离散Hopfield神经网络的并行计算方法和***。将每个计算节点建模成一个Hopfield神经元,将多个不同的计算节点通过全交换网络进行通信以构建分布式Hopfield神经网络。基于该分布式Hopfield神经网络,根据计算任务中的样本数据的数据维数,选择适当的并行计算方法。当所述样本数据的数据维数小于或等于所述计算节点的个数时,可以采用一次性任务分发,对于每个样本数据,每个Hopfield神经元计算一个维度的权重向量值。当所述样本数据的数据维数大于所述计算节点的个数时,采用一次性分发只能计算有限维数个权重向量值,对于超出节点数的权重向量值需要进行再次分发,直到分发计算完成。
Description
技术领域
本发明涉及智能计算领域,更确切的说,涉及一种基于离散Hopfield神经网络的并行计算方法及***。
背景技术
人工神经网络(Artificial Neural Networks,ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,通过对人脑的基本单元-神经元的建模和联接,探索模拟人脑神经***功能的模型。研制一种具有学习、联想、记忆和模式识别等智能信息处理功能的人工***,其重要特性是它能够从环境中学习,并把学习的结果分布存储于网络的突触连接中。神经网络的学习是一个过程,在其所处环境的激励下,相继给网络输入一些样本模式,并按照一定的规则(学习算法)调整网络各层的权重值矩阵,待网络各层权重值都收敛到一定值,学习过程结束。这种网络依靠***的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理数据的目的。
在大数据与海量计算任务处理的发展趋势下,信息化应用面临的计算日趋复杂,需要满足高弹性、高实时性、低延迟、高可靠、高流量处理等要求。基于现有的物联网、人工智能等技术的不断涌现,对计算速度的要求越发严苛,现有计算方式已不能满足当前大数据、云计算、自动驾驶、智慧城市、智能医疗、区块链、等超大量信息处理需要与需求。
发明内容
本发明要解决的技术问题在于,针对现有技术的高延迟、低弹性、低算力和低可靠性的缺陷,提供一种满足高弹性、高实时性、低延迟性、高可靠性、大算力的基于离散Hopfield神经网络的并行计算方法及***。
根据本发明的第一方面,提供了一种基于离散Hopfield神经网络的并行计算方法,包括以下步骤:
步骤S1、将每个计算节点建模成一个Hopfield神经元,将多个不同的计算节点通过全交换网络进行通信以构建分布式Hopfield神经网络,所述计算节点的个数为x;
步骤S2、根据计算节点分发计算任务,所述计算任务中包括多个样本数据,每个样本数据包括多个数据维数m;
步骤S3、针对每个样本数据,按照所述样本数据的顺序依次执行以下步骤:
步骤S31、当所述样本数据的所述数据维数m小于或等于所述计算节点的个数x时,按照所述数据维数m选择m个所述计算节点,将所述样本数据的m个维度的权重向量值一一对应地并行分发给选择的m个Hopfield神经元进行计算;
步骤S32、当所述样本数据的所述数据维数m大于所述计算节点的个数x时,根据所述数据维数m和所述个数x选择对应数量的所述计算节点,将所述样本数据的m个维度的权重向量值循环分发给x个Hopfield神经元进行计算。
在本发明所述的基于离散Hopfield神经网络的并行计算方法中,在所述步骤S32中,所述循环分发包括维数循环分发和节点循环分发。
在本发明所述的基于离散Hopfield神经网络的并行计算方法中,采用维数循环分发时,所述步骤S32进一步包括以下步骤:
步骤S321、当所述样本数据的数据维数m大于所述计算节点的个数x时,选择全部x个计算节点,将所述样本数据的x个维度的权重向量值一一对应地并行分发给x个Hopfield神经元进行计算;
步骤S322、判断m-x是否小于或等于所述计算节点的个数x,如果是,执行步骤S323,否则执行步骤S324;
步骤S323、选择m-x个所述计算节点,将所述样本数据剩余的m-x个维度的权重向量值一一对应地并行分发给选择的m-x个Hopfield神经元进行计算;
步骤S324、令m=m-x并返回所述步骤S321。
在本发明所述的基于离散Hopfield神经网络的并行计算方法中,当采用节点循环分发时,所述步骤S32进一步包括以下步骤:
步骤S32a、当所述样本数据的数据维数m大于所述计算节点的个数x时,计算所述数据维数m与所述计算节点的个数x的商t和余数y;
步骤S32b、选择全部x个计算节点,向每个计算节点分别分发t个维度的权重向量值;
步骤S32c、选择y个计算节点,将所述样本数据的剩余y个维度的权重向量值一一对应地并行分发给选择的y个Hopfield神经元进行计算。
在本发明所述的基于离散Hopfield神经网络的并行计算方法中,所述计算节点包括物理节点和逻辑节点,所述全交换网络包括软件定义网络和功能虚拟化网络。
在本发明所述的基于离散Hopfield神经网络的并行计算方法中,进一步包括:根据所述计算任务,扩展所述物理节点或所述逻辑节点。
根据本发明的第二方面,提供了一种基于离散Hopfield神经网络的并行计算***,包括:
多个计算节点,每个所述计算节点建模成一个Hopfield神经元,多个不同的计算节点通过全交换网络进行通信以构建分布式Hopfield神经网络,所述计算节点的个数为x;
管理节点,用于根据所述计算节点分发计算任务,所述计算任务中包括多个样本数据,每个样本数据包括多个数据维数m;
当所述样本数据的所述数据维数m小于或等于所述计算节点的个数x时,针对每个样本数据,基于所述样本数据的顺序,按照所述数据维数m选择m个所述计算节点,将所述样本数据的m个维度的权重向量值一一对应地并行分发给选择的m个Hopfield神经元进行计算;
当所述样本数据的所述数据维数m大于所述计算节点的个数x时,针对每个样本数据,基于所述样本数据的顺序,根据所述数据维数m和所述个数x选择对应数量的所述计算节点,将所述样本数据的m个维度的权重向量值循环分发给x个Hopfield神经元进行计算。
在本发明所述的基于离散Hopfield神经网络的并行计算***中,进一步包括:登录节点和存储节点;
所述登录节点用于获取用户终端的计算任务请求并将所述计算任务发送给所述管理节点;
所述存储节点,用于接收来自所述计算节点的计算结果进行分布式存储。
在本发明所述的基于离散Hopfield神经网络的并行计算***中,所述循环分发包括维数循环分发和节点循环分发。
在本发明所述的基于离散Hopfield神经网络的并行计算***中,所述计算节点包括物理节点和逻辑节点,所述全交换网络包括软件定义网络和功能虚拟化网络。
实施本发明的基于离散Hopfield神经网络的并行计算方法及***,将仿生科学和计算相结合,单个计算节点采用与生物冲激响应原理相同的离散Hopfield神经网络单元,对计算任务进行分布式的Hopfield计算节点资源管理解决了现有超大量并行计算任务所需的计算方法及***构建难题,满足现有人工智能、5G通信、物联网等大数据应用的低时延、多并发、高可靠、大算力要求。进一步地,各个计算节点之间采用SDN/NFV网络进行任务间通信。可以基于计算任务需要任意分发和调度计算资源,实现计算资源的弹性伸缩及类脑神经网络的高度并行化,达到类脑计算的效果。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是根据本发明的优选实施例的基于离散Hopfield神经网络的并行计算方法的流程图;
图2是根据本发明的优选实施例的新增节点的流程图;
图3是根据本发明的优选实施例的基于离散Hopfield神经网络的并行计算***的原理框图;
图4是样本数据的数据维数小于或等于计算节点的个数时的分发计算过程示意图;
图5A-5B是采用维数循环分发时的分发计算过程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在对本发明申请实施例提供的神经网络搜索方法及***等技术方案作出详细说明之前,先对本发明申请中涉及到的技术术语进行简单介绍和说明。
(1)人工神经网络是实现人工智能的一种方法,受到脑神经网络***对物理世界信息的处理过程启发,通过连接大量具有相同计算功能的神经元节点形成的神经网络,实现对输入输出模式的拟合近似。到目前为止已经提出了多种人工神经网络模型,如Hopfield神经网络、卷积神经网络(CNN:convolu、tional neural networks)、反馈神经网络(RNN:recurrent neural networks)深度神经网络(DNN:deep neural works)、深度信念网络(DBN:deep belief neuralnetworks)、脉冲神经网络(spiking neural networks)等等。本发明中的计算节点上运行的神经网络模型可以是上述神经网络中的一种或几种模型的组合。
(2)Hopfield神经网络,Hopfield神经网络是神经网络发展历史上的一个重要的里程碑,由美国加州理工学院物理学家J.J.Hopfield 教授于1982年提出,是一种单层反馈神经网络,反馈神经网络,又称自联想记忆网络,其目的是为了设计一个网络,储存一组平衡点,使得当给网络一组初始值时,网络通过自行运行而最终收敛到这个设计的平衡点上,反馈神经网络是一种将输出经过一步时移再接入到输入层的神经网络***。反馈神经网络能够表现出非线性动力学***的动态特性,它所具有的主要特性为以下两点。
第一,网络***具有若干个稳定状态。当网络从某一初始状态开始运动,网络***总可以收敛到某一个稳定的平衡状态;
第二,***稳定的平衡状态可以通过设计网络的权重值而被存储到网络中。
该网络主要用于联想记忆和优化计算,在这种网络中,每个神经元同时将自身的输出信号作为输入信号反馈给其他神经元,它需要工作一段时间才能达到稳定。
人工神经网络是反馈神经网络中最简单且应用广泛的模型,它具有联想记忆的功能,也是一种循环神经网络,从输出到输入有反馈连接,在输入的激励下,会产生不断的状态变化。
(3)联想记忆,所谓的联想记忆,就是预先把要记忆的完整模式以一定方式形成记忆矩阵,然后把它们记忆在计算机中,以后,当神经网络输入不完整模式时,可通过记忆矩阵和阈值函数的作用,在网络的输出端得到完整的模式。
联想记忆有两个突出的特点:
第一,信息(数据)的存取不是像传统计算机那样通过存储器的地址来实现,而是由信息本身的内容来实现,所以它是“按内容存取记忆”;
第二,信息也不是集中存储在某些单元中,而是分布存储的,在人脑中记忆单元与处理单元是合一的。
需要说明的是,本发明实施例描述的结构或构造以及业务场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本发明实施例描述的数据可以是一些连续的值,比如声音、图像等模拟数据;也可以是一些离散的值,如符号、文字等数字数据,此处不对数据的类型作具体限定,本领域普通技术人员可知,随着设备结构或构造的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
本发明涉及一种基于离散Hopfield神经网络的并行计算方法。将每个计算节点建模成一个Hopfield神经元,将多个不同的计算节点通过全交换网络进行通信以构建分布式Hopfield神经网络。基于该分布式Hopfield神经网络,根据计算任务中的样本数据的数据维数,选择适当的并行计算方法。当所述样本数据的数据维数小于或等于所述计算节点的个数时,可以采用一次性任务分发,对于每个样本数据,每个Hopfield神经元计算一个维度的权重向量值。当所述样本数据的数据维数大于所述计算节点的个数时,采用一次性分发只能计算有限维数个权重向量值,对于超出节点数的权重向量值需要进行第二次分发,以及更多次分发,直到所有维数的权值都分发计算完成。本发明通过将仿生科学和计算相结合,单个计算节点采用与生物冲激响应原理相同的离散Hopfield神经网络单元,对计算任务进行分布式的Hopfield计算节点资源管理解决了现有超大量并行计算任务所需的计算方法及***构建难题,满足现有人工智能、5G通信、物联网等大数据应用的低时延、多并发、高可靠、大算力要求。
图1是根据本发明的优选实施例的基于离散Hopfield神经网络的并行计算方法的流程图。如图1所示,在步骤S1中,将每个计算节点建模成一个Hopfield神经元,将多个不同的计算节点通过全交换网络进行通信以构建分布式Hopfield神经网络,从而通过并行化扩展存储记忆功能。在本发明的优选实施例中,总体计算采用全局任务分发调度控制,对计算任务进行分布式的Hopfield神经元(也可以叫做计算节点或Hopfield神经元节点者)资源管理。不同计算节点之间通过软件定义网络(SDN)或功能虚拟化(NFV)网络进行任务间通信。为了方便后续实施例描述,可以将所述计算节点的个数为x(x可以为任何正整数,优选大于3)。在本发明的优选实施例中,所述计算节点可以包括物理节点和逻辑节点。
在步骤S2中,根据计算节点分发计算任务。所述计算任务中包括多个样本数据,每个样本数据包括多个数据维数。为了方便后续实施例描述,可以将所述样本数据的个数设置为x,将数据维数设置为m,(x和m均可以为任何正整数,优选大于3)。在本发明的优选实施例中,可以根据计算任务的数量和每个计算节点的算力来进行计算任务的分发,从而实现总体的任务分发和调度。在此可以根据现有技术中的任何分发方法来进行计算任务的分发和调度。
在本发明的优选实施例中,所有计算节点都可以进行弹性伸缩和扩展,主要包括物理节点扩展和逻辑节点扩展,即可以根据所述计算任务,扩展所述物理节点或所述逻辑节点。物理节点的扩展主要基于全交换式网络(SDN/NFV),可以进行并行计算节点及资源的弹性扩展,支持热插拔。具体实现时,当有新的物理节点要接入网络时,将新增节点的Mac地址,添加至管控程序的配置文件中,即可达到扩展物理节点的目标。实际使用时,管控程序将调用配置文件中所有已配置Mac地址对应的物理节点(包括新增物理节点),建立连接并用于计算,即通过在Mac表中增设Mac地址的方式,以达到扩展物理节点的目的。
由于无论实际拥有多少物理节点,基于不同的需求,所需的计算节点个数将是变化的、不固定的。因此当实际节点数不少于需求节点数时,可在物理节点中任意选择所需节点数参与计算即可,当实际节点数少于需求节点数时,则需逻辑扩展节点数,以满足实际计算需求。其中,逻辑扩展节点是指,在现有物理节点数量的基础上,增加部分或全部物理节点的计算量,以达到从逻辑上满足需求节点数的目的。换句话说,由于物理节点数不足,部分节点或全部节点将充当两个或两个以上节点的计算角色。
请参照图2,具体描述如下:假设所需计算节点数为x、物理节点数为p;按所需节点数,均分计算任务,每个节点对应一份任务;将所需节点数除以物理节点数,得到商t和余数r,即x = t*p + r,t和r均为非负整数。
为每个物理节点分配计算任务,规则如下:
依次为每个物理节点分配1份计算任务,重复步骤,直至为每个物理节点分配t份任务为止;
任取r个物理节点,每个再多分配1份计算任务。其中,选取r个计算节点时,可根据实现便利性进行选取,如按节点顺序选取或按随机顺序选取等。
当实际物理节点数少于所需节点数时,基于上述步骤,可逻辑扩展节点,做到多节点并行计算,完成计算任务,并得到结果。
更进一步的,当1个物理节点分配到多份计算任务时,可理解为1个物理节点等价于多个逻辑节点,如:1个物理节点分配到2份计算任务,可理解为1个物理节点等价于2个逻辑节点。若管控节点按权值并行方式分发任务时,每个逻辑节点计算得到一行权重向量值(即一个维度的权重向量值),每个物理节点基于其分配到的计算任务数,计算得到对应任务数量的权重向量值,如:某个物理节点分配到2份计算任务,则该物理节点将计算得到2行权重向量值。权值迭代计算过程可以采用随机梯度下降、批量梯度下降、模拟退火算法、最小二乘法等算法来提高收敛速度,从而提高各节点及整体计算速度。
在步骤S3中,针对每个样本数据,按照所述样本数据的顺序依次执行以下步骤S4或S5。
当所述样本数据的数据维数m小于或等于所述计算节点的个数x时,按照所述数据维数m选择m个所述计算节点,将所述样本数据的m个维度的权重向量值一一对应地并行分发给选择的m个Hopfield神经元进行计算。
举例来说,所述样本数据的数据维数m小于或等于所述计算节点的个数x时,可以采用一次性任务分发,对于每个样本数据,每个Hopfield神经元计算节点计算一个维度的权重向量值。例如,对于n个样本数据,每个样本数据的数据维数为m,按照所述数据维数m选择m个所述计算节点,将所述样本数据的m个维度的权重向量值一一对应地并行分发给选择的m个Hopfield神经元进行计算,每个Hopfield神经元计算一个维度的权重向量值,即Wi1,…,Wim,m个计算节点计算完成m个维度权值矩阵的计算。根据所述样本数据的个数n迭代n次,即可完成n个样本数据的计算。优选的,可以按照样本数据的序号作为顺序,依次计算1到n个样本数据,也可以按照其优先级依次分发计算1到n个样本数据。因此n个计算节点中,选中的m个计算节点node1-nodem的分发计算过程如图4所示。
在步骤S5中,当所述样本数据的数据维数大于所述计算节点的个数x时,根据所述数据维数m和所述个数x选择对应数量的所述计算节点,将所述样本数据的m个维度的权重向量值循环分发给x个Hopfield神经元进行计算。
在所述样本数据的数据维数大于所述计算节点的个数x时,一次性分发后每个计算节点只能计算有限个维度的权重向量值,对于超出计算节点个数的维度的权重向量值,需要进行第二次分发,或者更多次分发,直到所有维度的权重向量值都分发计算完成。在本优选实施例中,所述循环分发包括维数循环分发和节点循环分发。
维数循环分发主要根据所述数据维数m对超过计算节点的个数x的维度的权重向量值进一步循环分发到现有的计算节点中,直至分发完毕,其具体可以包括以下步骤1-4。在步骤1中,当所述样本数据的数据维数m小于或等于所述计算节点的个数x时,选择全部x个计算节点,将所述样本数据的x个维度的权重向量值一一对应地并行分发给x个Hopfield神经元进行计算。在步骤2中,判断m-x是否小于或等于所述计算节点的个数x,如果是,执行步骤3,否则执行步骤4。在步骤3中,选择m-x个所述计算节点,将所述样本数据剩余的m-x个一维权重向量值一一对应地并行分发给选择的m-x个Hopfield神经元进行计算。在步骤4中,令m=m-x并返回步骤1,这样再次循环执行步骤1-4,直到分发完毕。
为了更好地说明本实施例,进一步示例如下:对于任意的具有n个样本数据的计算任务,假设样本数据的维数为3m,计算节点的个数x=m,那么采用维数循环分发,在第一轮分发的时候,将m个维度的权重向量值一一对应地并行分发给m个Hopfield神经元进行计算,完成前m行(m个维度)的权重向量值矩阵计算,即第一轮分发0-m行的权重向量值计算任务到m个计算节点进行计算,计算过程如图5A所示。然后进行第二轮分发,将m个维度的权重向量值一一对应地并行分发给m个Hopfield神经元进行计算,完成前2m行(m个维度)的权重向量值矩阵计算,即第二轮分发2-2m行的权重向量值计算任务到m个计算节点进行计算,计算过程如图5B所示。以此类推,完成全部权重向量值矩阵计算。
节点循环分发主要是根据样本数据的维数和计算节点的个数x之间的差距,重复分配计算节点的计算能力,每个计算节点重复分配计算多个神经元,不同的神经元计算不同的权重向量值。
在本发明的优选实施例中,首先计算所述数据维数m与所述计算节点的个数x的商t和余数y。然后选择全部x个计算节点,向每个计算节点分别分发t个维度的权重向量值;最后选择y个计算节点,将所述样本数据的y个维度的权重向量值一一对应地并行分发给选择的y个Hopfield神经元进行计算。
假设对于任意的n个样本数据,每个样本数据的维数为3m,而计算节点的个数x=m,则可以分配每个计算节点运行3个神经元程序进行计算,则每个计算节点即可计算3倍维数的权重向量值,总体完成全部计算任务。
类似地,如果每个样本数据的维数为3m+2,而计算节点的个数为m,因此其商为3,余数为2。那么则可以分配每个计算节点运行3个神经元程序进行计算,则每个计算节点即可计算3倍维数的权重向量值,然后选择2个计算节点(例如按照序号,算力或者优先级)剩余2个维度的权重向量值。最后总体完成全部计算任务。
优选的,权重向量值迭代计算过程采用分布式并行计算的方法,来提高计算速度。即单个计算节点对应计算一个或几个神经元的权重向量值,对应不同的计算节点,分别完成不同的权重向量值计算任务,实现单节点权重向量值计算过程并行化。进一步的,所述权重向量值迭代计算过程采用随机梯度下降、批量梯度下降、模拟退火算法、最小二乘法等算法来提高收敛速度,从而提高各节点及整体计算速度。
图3是根据本发明的优选实施例的基于离散Hopfield神经网络的并行计算***的原理框图。如图3所示,该基于离散Hopfield神经网络的并行计算***的应用场景包括互联网,物联网、大数据、人工智能、5G等等。该基于离散Hopfield神经网络的并行计算***可以包括计算机节点集群30、管理节点20、登录节点10和存储节点40。所述计算机节点集群30包括多个计算节点1,2…n,每个所述计算节点1,2…n建模成一个Hopfield神经元。多个不同的计算节点通过全交换网络进行通信以构建分布式Hopfield神经网络,所述计算节点的个数为x。
所述登录节点10用于获取用户终端的计算任务请求并将所述计算任务发送给所述管理节点20。所述管理节点20用于根据所述计算节点分发计算任务.所述计算任务中包括多个样本数据,每个样本数据包括多个数据维数m。所述存储节点40用于接收来自所述计算节点的计算结果进行分布式存储,其可以包括多个存储区域1-n,分别存储来自计算节点1-n的计算结果。
当所述样本数据的数据维数m小于或等于所述计算节点的个数x时,针对每个样本数据,基于所述样本数据的顺序,按照所述数据维数m选择m个所述计算节点,将所述样本数据的m个维度的权重向量值一一对应地并行分发给选择的m个Hopfield神经元进行计算;
当所述样本数据的数据维数m大于所述计算节点的个数x时,针对每个样本数据,基于所述样本数据的顺序,根据所述数据维数m和所述个数x选择对应数量的所述计算节点,将所述样本数据的m个维度的权重向量值循环分发给x个Hopfield神经元进行计算。
当然,在本发明的优选实施例中,每个节点留驻完整的定制操作***,以及管理控制中间件,支持***映像和高可用性。优选地,所述登录节点10相当于用户访问***的网关,用户通常登录到这个节点上编译并提交作业,是外部访问的唯一入口,需要保证用户节点的高可用性和数据安全性,但是对计算性能要求不高。所述管理节点20是***各种管理措施的控制节点,负责监控各个节点和网络运行状况,运行相应的管理软件。同时,管理节点在大规模网络训练和计算中具有全局优化功能,避免所管理的计算节点的局部最优问题。管理节点需要有硬件冗余保护,但是对计算性能要求不高。
所述管理节点20 优选还具有以下功能特点。
1)节点管理,负责管理所有并行计算节点。具有计算节点及资源的自动识别、注册、计算准备和撤销等管理功能。
2)任务分发,根据用户发起的计算任务,对计算任务的任务数据进行格式化适配、规整,以及负载均衡,然后向所管辖的计算节点分发计算任务、推送相关计算数据、任务约束及结束条件等,驱动计算节点进行并行计算。
3)并行计算节点计算结果反馈,收集计算节点的计算结果,将所有结果进行汇聚处理,并推送给用户。
4)智能算法集成,管理节点可集成多种智能计算算法,提高***的智能计算能力。
优选地,所述循环分发包括维数循环分发和节点循环分发。所述计算节点包括物理节点和逻辑节点,所述全交换网络包括软件定义网络和功能虚拟化网络。
在本发明的优选实施例中,所述基于离散Hopfield神经网络的并行计算***主要采用支持SDN/NFV的全交换网络,用于各计算节点之间的互联,是并行任务执行时进程间通信的专用网络,并行计算节点的核心就是它和集群内的其他计算节点交换信息的能力。
在本发明的进一步的优选实施例中,所述基于离散Hopfield神经网络的并行计算***包括I/O 和存储功能模块,其采用Apache HBase存储样本数据集,HBase中的样本数据集以表的形式存储。每个表包含一组训练数据集,根据数据的大小它可占据不同的区域。对于一个训练数据集而言,每个样本都被存储为表中的一个记录,其中每个表中的记录都有相同的ID作为行健。样本的内容依据记录的内容领域。这种方法容易存储和管理拥有数十亿样本的大规模训练样本数据集。在初始化训练的过程中,计算节点可以同时访问网络中不同存储节点的区域。因此,潜在的可伸缩性和分布式的存储阶段不仅可以解决大规模数据存储的问题,也帮助降低并行数据集的数据加载时间成本。
在本发明的进一步的优选实施例中,所述基于离散Hopfield神经网络的并行计算***包括CPU+加速处理器异构方式的加速节点,通过现有的CPU与所述Hopfield计算节点异构的方式,进行计算功能的加速。本发明通过堆叠计算节点,改善存储记忆功能,能够使得大于所述计算节点时,扩大内存记忆。
本发明实施例所提供的基于离散Hopfield神经网络的并行计算***,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,相应的产品实施例部分未提及之处,可参考对应的方法实施例中相应内容,此处不再赘述。
实施本发明的基于离散Hopfield神经网络的并行计算方法及***,将仿生科学和计算相结合,单个计算节点采用与生物冲激响应原理相同的离散Hopfield神经网络单元,对计算任务进行分布式的Hopfield计算节点资源管理解决了现有超大量并行计算任务所需的计算方法及***构建难题,满足现有人工智能、5G通信、物联网等大数据应用的低时延、多并发、高可靠、大算力要求。进一步地,各个计算节点之间采用SDN/NFV网络进行任务间通信。可以基于计算任务需要任意分发和调度计算资源,实现计算资源的弹性伸缩及类脑神经网络的高度并行化,达到类脑计算的效果。
因此,本发明可以通过硬件、软件或者软、硬件结合来实现。本发明可以在至少一个计算机***中以集中方式实现,或者由分布在几个互连的计算机***中的不同部分以分散方式实现。任何可以实现本发明方法的计算机***或其它设备都是可适用的。常用软硬件的结合可以是安装有计算机程序的通用计算机***,通过安装和执行程序控制计算机***,使其按本发明方法运行。
本发明还可以通过计算机程序产品进行实施,程序包含能够实现本发明方法的全部特征,当其安装到计算机***中时,可以实现本发明的方法。本文件中的计算机程序所指的是:可以采用任何程序语言、代码或符号编写的一组指令的任何表达式,该指令组使***具有信息处理能力,以直接实现特定功能,或在进行下述一个或两个步骤之后实现特定功能:a)转换成其它语言、编码或符号;b)以不同的格式再现。
虽然本发明是通过具体实施例进行说明的,本领域技术人员应当明白,在不脱离本发明范围的情况下,还可以对本发明进行各种变换及等同替代。另外,针对特定情形或材料,可以对本发明做各种修改,而不脱离本发明的范围。因此,本发明不局限于所公开的具体实施例,而应当包括落入本发明权利要求范围内的全部实施方式。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于离散Hopfield神经网络的并行计算方法,其特征在于,包括以下步骤:
步骤S1、将每个计算节点建模成一个Hopfield神经元,将多个不同的计算节点通过全交换网络进行通信以构建分布式Hopfield神经网络,所述计算节点的个数为x;
步骤S2、根据计算节点分发计算任务,所述计算任务中包括多个样本数据,每个样本数据包括多个数据维数m;
步骤S3、针对每个样本数据,按照所述样本数据的顺序依次执行以下步骤:
步骤S31、当所述样本数据的所述数据维数m小于或等于所述计算节点的个数x时,按照所述数据维数m选择m个所述计算节点,将所述样本数据的m个维度的权重向量值一一对应地并行分发给选择的m个Hopfield神经元进行计算;
步骤S32、当所述样本数据的所述数据维数m大于所述计算节点的个数x时,根据所述数据维数m和所述个数x选择对应数量的所述计算节点,将所述样本数据的m个维度的权重向量值循环分发给x个Hopfield神经元进行计算;
在所述步骤S32中,所述循环分发包括维数循环分发和节点循环分发;
采用维数循环分发时,所述步骤S32进一步包括以下步骤:
步骤S321、当所述样本数据的数据维数m大于所述计算节点的个数x时,选择全部x个计算节点,将所述样本数据的x个维度的权重向量值一一对应地并行分发给x个Hopfield神经元进行计算;
步骤S322、判断m-x是否小于或等于所述计算节点的个数x,如果是,执行步骤S323,否则执行步骤S324;
步骤S323、选择m-x个所述计算节点,将所述样本数据剩余的m-x个维度的权重向量值一一对应地并行分发给选择的m-x个Hopfield神经元进行计算;
步骤S324、令m=m-x并返回所述步骤S321;
当采用节点循环分发时,所述步骤S32进一步包括以下步骤:
步骤S32a、当所述样本数据的数据维数m大于所述计算节点的个数x时,计算所述数据维数m与所述计算节点的个数x的商t和余数y;
步骤S32b、选择全部x个计算节点,向每个计算节点分别分发t个维度的权重向量值;
步骤S32c、选择y个计算节点,将所述样本数据的剩余y个维度的权重向量值一一对应地并行分发给选择的y个Hopfield神经元进行计算。
2.根据权利要求1所述的基于离散Hopfield神经网络的并行计算方法,其特征在于,所述计算节点包括物理节点和逻辑节点,所述全交换网络包括软件定义网络和功能虚拟化网络。
3.根据权利要求2所述的基于离散Hopfield神经网络的并行计算方法,其特征在于,进一步包括:根据所述计算任务,扩展所述物理节点或所述逻辑节点。
4.一种基于离散Hopfield神经网络的并行计算***,其特征在于,包括:
多个计算节点,每个所述计算节点建模成一个Hopfield神经元,多个不同的计算节点通过全交换网络进行通信以构建分布式Hopfield神经网络,所述计算节点的个数为x;
管理节点,用于根据所述计算节点分发计算任务,所述计算任务中包括多个样本数据,每个样本数据包括多个数据维数m;
当所述样本数据的所述数据维数m小于或等于所述计算节点的个数x时,针对每个样本数据,基于所述样本数据的顺序,按照所述数据维数m选择m个所述计算节点,将所述样本数据的m个维度的权重向量值一一对应地并行分发给选择的m个Hopfield神经元进行计算;
当所述样本数据的所述数据维数m大于所述计算节点的个数x时,针对每个样本数据,基于所述样本数据的顺序,根据所述数据维数m和所述个数x选择对应数量的所述计算节点,将所述样本数据的m个维度的权重向量值循环分发给x个Hopfield神经元进行计算;
所述循环分发包括维数循环分发和节点循环分发;
采用维数循环分发时,包括以下步骤:
步骤S321、当所述样本数据的数据维数m大于所述计算节点的个数x时,选择全部x个计算节点,将所述样本数据的x个维度的权重向量值一一对应地并行分发给x个Hopfield神经元进行计算;
步骤S322、判断m-x是否小于或等于所述计算节点的个数x,如果是,执行步骤S323,否则执行步骤S324;
步骤S323、选择m-x个所述计算节点,将所述样本数据剩余的m-x个维度的权重向量值一一对应地并行分发给选择的m-x个Hopfield神经元进行计算;
步骤S324、令m=m-x并返回所述步骤S321;
当采用节点循环分发时,包括以下步骤:
步骤S32a、当所述样本数据的数据维数m大于所述计算节点的个数x时,计算所述数据维数m与所述计算节点的个数x的商t和余数y;
步骤S32b、选择全部x个计算节点,向每个计算节点分别分发t个维度的权重向量值;
步骤S32c、选择y个计算节点,将所述样本数据的剩余y个维度的权重向量值一一对应地并行分发给选择的y个Hopfield神经元进行计算。
5.根据权利要求4所述的基于离散Hopfield神经网络的并行计算***,其特征在于,进一步包括:登录节点和存储节点;
所述登录节点用于获取用户终端的计算任务请求并将所述计算任务发送给所述管理节点;
所述存储节点,用于接收来自所述计算节点的计算结果进行分布式存储。
6.根据权利要求5所述的基于离散Hopfield神经网络的并行计算***,其特征在于,所述计算节点包括物理节点和逻辑节点,所述全交换网络包括软件定义网络和功能虚拟化网络。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110781973.3A CN113240100B (zh) | 2021-07-12 | 2021-07-12 | 基于离散Hopfield神经网络的并行计算方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110781973.3A CN113240100B (zh) | 2021-07-12 | 2021-07-12 | 基于离散Hopfield神经网络的并行计算方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113240100A CN113240100A (zh) | 2021-08-10 |
CN113240100B true CN113240100B (zh) | 2021-11-30 |
Family
ID=77135307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110781973.3A Active CN113240100B (zh) | 2021-07-12 | 2021-07-12 | 基于离散Hopfield神经网络的并行计算方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113240100B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115811397B (zh) * | 2022-11-21 | 2023-08-04 | 北京神州安付科技股份有限公司 | 一种高安全服务器密码机 |
CN117389748A (zh) * | 2023-12-11 | 2024-01-12 | 融鼎岳(北京)科技有限公司 | 一种基于并行计算的bp神经网络算法的提速方法和*** |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5335195A (en) * | 1990-06-08 | 1994-08-02 | France Telcom | Method and circuit for processing digital signals representative of vectors or tuples of the same dimension and application thereof to sets having any cardinality and to vectors or tuples of any dimensions |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105550161A (zh) * | 2015-12-16 | 2016-05-04 | 浪潮(北京)电子信息产业有限公司 | 一种异构***的并行逻辑回归方法与*** |
CN110728317A (zh) * | 2019-09-30 | 2020-01-24 | 腾讯科技(深圳)有限公司 | 决策树模型的训练方法、***、存储介质及预测方法 |
CN112436957B (zh) * | 2020-11-03 | 2023-03-14 | 深圳市永达电子信息股份有限公司 | 基于云计算的pdrr网络安全保障模型并行实现*** |
-
2021
- 2021-07-12 CN CN202110781973.3A patent/CN113240100B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5335195A (en) * | 1990-06-08 | 1994-08-02 | France Telcom | Method and circuit for processing digital signals representative of vectors or tuples of the same dimension and application thereof to sets having any cardinality and to vectors or tuples of any dimensions |
Non-Patent Citations (1)
Title |
---|
Mapping Parallel Programs onto Multicore Computer Systems by Hopfield Networks;M. S. Tarkov;《Optical Memory and Neural Networks (Information Optics)》;20131001;第22卷(第3期);第148-155页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113240100A (zh) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022077797A1 (zh) | 量子线路的确定方法、装置、设备及存储介质 | |
Peng et al. | DL2: A deep learning-driven scheduler for deep learning clusters | |
US11120368B2 (en) | Scalable and efficient distributed auto-tuning of machine learning and deep learning models | |
Goudarzi et al. | A distributed deep reinforcement learning technique for application placement in edge and fog computing environments | |
CN113240100B (zh) | 基于离散Hopfield神经网络的并行计算方法及*** | |
US11010313B2 (en) | Method, apparatus, and system for an architecture for machine learning acceleration | |
KR20220051132A (ko) | 양자 회로 결정 방법 및 장치, 디바이스, 및 저장 매체 | |
KR20210148586A (ko) | 스케줄러, 스케줄러의 동작 방법 및 이를 포함한 가속기 시스템 | |
Li et al. | Performance optimization of computing task scheduling based on the Hadoop big data platform | |
AlSuwaidan et al. | Swarm Intelligence Algorithms for Optimal Scheduling for Cloud‐Based Fuzzy Systems | |
Rossant et al. | Playdoh: a lightweight Python library for distributed computing and optimisation | |
CN116996941A (zh) | 基于配网云边端协同的算力卸载方法、装置及*** | |
KR20210096405A (ko) | 사물 학습모델 생성 장치 및 방법 | |
CN116582407A (zh) | 一种基于深度强化学习的容器化微服务编排***及方法 | |
CN115794405A (zh) | 一种基于SSA-XGboost算法的大数据处理框架的动态资源分配方法 | |
Liang et al. | Communication-Efficient Large-Scale Distributed Deep Learning: A Comprehensive Survey | |
CN115080244A (zh) | 一种基于负载智能预测的云平台资源调度方法及*** | |
CN110415162B (zh) | 大数据中面向异构融合处理器的自适应图划分方法 | |
Li et al. | Encoding for reinforcement learning driven scheduling | |
Fomperosa et al. | Task scheduler for heterogeneous data centres based on deep reinforcement learning | |
Ghis et al. | Mixed Software/Hardware based Neural Network Learning Acceleration. | |
KR20210091688A (ko) | 데이터 처리 모듈, 데이터 처리 시스템 및 데이터 처리 방법 | |
Baresi et al. | Training and Serving Machine Learning Models at Scale | |
CN117171261B (zh) | 面向多数据库单元的弹性扩展智能调用方法和*** | |
WO2024066791A1 (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 |