基于神经集群的数据处理方法及装置、存储介质、处理器与流程

文档序号:30597822发布日期:2022-07-01 21:01阅读:136来源:国知局
基于神经集群的数据处理方法及装置、存储介质、处理器与流程

1.本发明涉及机器学习领域,具体而言,涉及一种基于神经集群的数据处理方法及装置、存储介质、处理器。


背景技术:

2.机器学习已广泛的应用于数据挖掘、计算机视觉、自然语言处理、生物特征识别等多个领域。机器学习的关键是发现数据中的未知结构,从观测数据中学习一个好的特征表示,这种特征表示能有助于揭示数据的底层结构。目前,机器学习主要包括监督学习和无监督学习两类方法。其中监督学习是从标记的训练数据来推断一个功能的机器学习任务,训练数据包括一套训练示例。在监督学习中,每个示例都是由一个输入对象(通常为矢量)和一个期望的输出值(也称为监督信号)组成,监督学习算法是分析该训练数据,并产生一个推断的功能,其可以用于映射出新的实例。
3.目前有监督表征学习主要应用有适合浅层模型的支撑矢量机(svm)、适合深度学习模型的反向传播(bp)算法等。目前svm仅适用于浅层模型以及小样本的情况,难于扩展到深度模型;bp算法是目前深度学习的主要基础算法,但要想取得好的效果必须要有大量的训练样本,并且存在训练效率不高及鲁棒性差等缺点。
4.针对上述现有技术中监督学习模型训练效率低及鲁棒性差的问题,目前尚未提出有效的解决方案。


技术实现要素:

5.本发明实施例提供了一种基于神经集群的数据处理方法及装置、存储介质、处理器,以至少解决现有技术中监督学习模型训练效率低及鲁棒性差的技术问题。
6.根据本发明实施例的一个方面,提供了一种基于神经集群的数据处理方法,包括:获取原始数据,将原始数据进行共空间模式变换获得变换数据;基于变换数据得到包含第一矩阵的第一目标函数,其中,第一目标函数为神经集群网络模型的目标函数,第一矩阵为神经集群网络模型的目标函数的权重参数;基于预设的梯度下降更新规则对第一矩阵进行更新,获得第二矩阵;根据第二矩阵更新第一目标函数。
7.进一步地,获取原始数据,将原始数据进行共空间模式变换获得变换数据,包括:获取表示原始数据的输入向量以及神经元输出向量;根据原始数据的输入向量以及神经元输出向量确定交互信息公式;确定包含协方差矩阵和变换矩阵的第二目标函数;根据交互信息公式和第二目标函数获得变换矩阵;根据变换矩阵将原始数据变换为变换数据。
8.进一步地,在神经元输出向量的个数大于原始数据的向量维度的条件下,根据交互信息公式和第二目标函数获得变换矩阵,包括:获得交互信息公式的高度逼近公式;根据高度逼近公式和第二目标函数获得变换矩阵。
9.进一步地,基于预设的梯度下降更新规则对第一矩阵进行更新,获得第二矩阵,包括:基于预设的梯度下降更新规则对第一矩阵进行更新,得到第三矩阵;确定迭代次数,其
中,迭代次数用于表示基于预设的梯度下降更新规则对第一矩阵进行更新的次数;判断迭代次数是否达到预设次数,如果是,将第三矩阵作为第二矩阵且输出,如果否,则将第三矩阵赋值给第一矩阵,返回基于预设的梯度下降更新规则对第一矩阵进行更新,得到第三矩阵的步骤。
10.进一步地,在基于预设的梯度下降更新规则对第一矩阵进行更新,得到第三矩阵之前,方法还包括:计算得到第一目标函数关于第一矩阵的导数。
11.进一步地,根据第二矩阵更新第一目标函数,包括:对第二矩阵进行正交化变换,获得正交化结果;根据正交化结果更新第一目标函数的值。
12.进一步地,正交化变换为gram-schmidt正交化变换。
13.根据本发明实施例的另一方面,还提供了一种基于神经集群的数据处理装置,包括:装置包括:变换模块,用于获取原始数据,将原始数据进行共空间模式变换获得变换数据;函数获取模块,用于基于变换数据得到包含第一矩阵的第一目标函数,其中,第一目标函数为神经集群网络模型的目标函数,第一矩阵为神经集群网络模型的目标函数的权重参数;矩阵更新模块,用于基于预设的梯度下降更新规则对第一矩阵进行更新,获得第二矩阵;函数更新模块,用于根据第二矩阵更新第一目标函数。
14.根据本发明实施例的另一方面,还提供了存储介质,包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述基于神经集群的数据处理方法。
15.根据本发明实施例的另一方面,还提供了一种处理器,该处理器用于运行程序,其中,程序运行时执行上述基于神经集群的数据处理方法。
16.在本发明实施例中,根据上述步骤所提出的基于神经集群的监督表征学习算法,通过将获得的原始数据进行csp变换预处理后获得变换数据,根据变换数据构建神经集群网络模型的监督学习目标函数,对该模型中的权重参数矩阵按照预设的梯度下降更新规则进行更新,实现了神经集群网络模型的权重参数的快速优化。基于该监督表征学习算法,提高了神经集群网络模型的训练学习的效率和性能,解决了现有技术中监督学习模型训练效率低及鲁棒性差的问题。
附图说明
17.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
18.图1是根据本发明实施例的基于神经集群的数据处理方法的流程图;
19.图2是根据本发明实施例的一种可选的基于神经集群的数据处理方法的流程图;
20.图3是手写数字数据集mnist的示例图;
21.图4是根据本发明实施例的对图3数据集进行处理后学习得到的权重参数c的示意图;
22.图5是根据本发明实施例的基于神经集群的数据处理装置的示意图。
具体实施方式
23.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是
本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
24.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
25.实施例1
26.根据本发明实施例,提供了一种基于神经集群的数据处理方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
27.图1是根据本发明实施例的基于神经集群的数据处理方法,如图1所示,该方法包括如下步骤:
28.步骤s101,获取原始数据,将原始数据进行共空间模式变换获得变换数据。
29.上述原始数据为来源于图像识别、自然语言处理、语音识别、信号分析等应用中的图像数据、语音数据或者信号数据等。
30.共空间模式变换,即csp(common spatial pattern)变换,根据如下公式可以将原始数据x进行csp变换获得变换数据其中,为变换矩阵v的转置矩阵;csp变换可初步将原始数据不同类之间的差异扩大,便于后面进行进一步学习训练来分类以提高学习效率。
31.步骤s102,基于变换数据可得到包含第一矩阵的第一目标函数,其中,第一目标函数为神经集群网络模型的目标函数,第一矩阵为神经集群网络模型的目标函数的权重参数。
32.第一目标函数为神经集群网络模型的监督学习目标函数,在一种可选的实施例中,第一目标函数为q[c],第一矩阵为c,第一矩阵c为第一目标函数为q[c]的权重参数,第一目标函数的表达式可以为:
[0033][0034]
其中β和m为非负常数,m可看作边际(margin)参数步骤s103,基于预设的梯度下降更新规则对第一矩阵进行更新,获得第二矩阵。
[0035]
在一种可选的实施例中,为了区别第一矩阵和第二矩阵,将步骤s102中的第一矩阵c记为c
t
,将更新后得到的第二矩阵记为c
t+1
,预设的梯度下降更新规则可以为如下表达
式:
[0036][0037]
其中,学习率参数μ
t
=v
t

t
,0《v1《1,t=1,

,t
max
;||
▽ct
(:,k)||表示第一矩阵ct的梯度向量的模值。
[0038]
步骤s104,根据第二矩阵更新第一目标函数。
[0039]
第二矩阵根据对第一矩阵的迭代更新获得,因此第二矩阵也为上述第一目标函数中的权重参数,将获得的第二矩阵c
t+1
代入上述第一目标函数q[c](即用c
t+1
替代中的c),获得更新后的第一目标函数q[c],通过对第一目标函数中的权重参数的更新实现了第一目标函数的优化。
[0040]
根据上述步骤所提出的基于神经集群的监督表征学习算法,通过将获得的原始数据进行csp变换预处理后获得变换数据,根据变换数据构建神经集群网络模型的监督学习目标函数,对该模型中的权重参数矩阵按照预设的梯度下降更新规则进行更新,实现了神经集群网络模型的权重参数的快速优化。基于该监督表征学习算法,不仅可以用于大数据样本的训练学习,还可以用于小数据样本的训练学习,通过上述csp变换,可对原始数据的噪声进行滤除,并将原始数据不同类之间的差异扩大,在不增加计算复杂度的前提下提高了神经集群网络模型的训练学习的效率和性能以及鲁棒性,解决了现有技术中监督学习模型训练效率低及鲁棒性差的问题。
[0041]
作为一种可选的实施例,上述步骤s101中获取原始数据,将原始数据进行共空间模式变换获得变换数据,包括:获取表示原始数据的输入向量以及神经元输出向量;根据原始数据的输入向量以及神经元输出向量确定交互信息公式;确定包含协方差矩阵和变换矩阵的第二目标函数;根据交互信息公式和第二目标函数获得变换矩阵;根据变换矩阵将原始数据变换为变换数据。
[0042]
由于大脑神经系统的每个神经元都是与其他几千个以上的神经元相连,所以脑神经的编码涉及到大规模的神经元集群方式编码,基于脑神经系统的神经元启发建立神经集群网络模型。条件互信息(即交互信息)理解为在特定条件约束下一个随机变量中包含的关于另一个随机变量的信息量。
[0043]
以下对原始数据的csp变换过程进行说明:获取表示原始数据的输入向量和神经元输出向量,输入向量x为k维向量,输入向量x可记为x=(x1,

,xk)
t
,其对应的数据标签为t,神经元输出向量包含n个神经元,可记为r=(r1,

,rn)
t
,其对应的随机变量用大写字母表示为x、t和r,输入向量x和输出向量r之间的交互信息i记作:
[0044][0045]
其中,p(r,x|t)、p(r|t)和p(x|t)表示条件概率密度函数,《
·

r,x,t
表示针对概率密度函数p(x,r,t)的期望值。
[0046]
如果设定对应的标签数据t只有两类,即t∈{1,-1},则两类标签数据的协方差矩阵分别记为σ1和σ2,对协方差矩阵进行归一化处理,可以得到:
[0047][0048]
其中,tr表示矩阵的迹。通过最小化下面的目标函数l(v)可得到变换矩阵v:
[0049]
最小化满足:
[0050]
求解上面目标函数l(v)可以得到:其中,u为本征向量矩阵,d为本征值的对角矩阵。
[0051]
在获得变换矩阵v后,输入向量x经csp变换后的变换数据的表达式为:
[0052]
通过上述步骤,实现了对原始数据的共空间模式(csp)变换预处理,在完成csp变换后,对获得的变换数据构建的神经集群网络模型的监督学习目标函数再进行后续的参数训练学习,相比于现有技术中对原始数据进行简单的归一化处理后再进行学习的监督学习方法,提高了训练学习的效率和效果。
[0053]
作为一种可选的实施例,在神经元输出向量的个数大于原始数据的向量维度的条件下,根据交互信息公式和第二目标函数获得变换矩阵,包括:获得交互信息公式的高度逼近公式;根据高度逼近公式和第二目标函数获得变换矩阵。
[0054]
在神经元输出向量的个数n大于原始数据的向量维度k的条件下,例如n远远大于k,可用如下公式来高度逼近交互信息i(其随机变量包括x、t和r,将交互信息i记为i(r;x|t)),i(r;x|t)的高度逼近公式ig的表达式为:
[0055][0056]
其中,det(
·
)表示矩阵行列式,h(x|t)=-《lnp(x|t)》
x,t
表示x在条件t情况下的条件熵,其中g(x,t)的表达式如下:
[0057][0058]
将上式中ig作为交互信息i代入如下csp变换公式:
[0059]
最小化满足:
[0060]
求解上述目标函数函数l(v)得到变换矩阵v,在获得变换矩阵v后,输入向量x经csp变换后的变换数据的表达式为:
[0061]
根据上述步骤,构建了基于条件互信息最大化的目标函数,相比于现有技术中基于误差平方的目标函数和基于交叉熵的目标函数,本实施例能够显著提高神经集群网络模型的学习训练效率和性能。
[0062]
作为一种可选的实施例,基于预设的梯度下降更新规则对第一矩阵进行更新,获得第二矩阵,包括:基于预设的梯度下降更新规则对第一矩阵进行更新,得到第三矩阵;确
定迭代次数,其中,迭代次数用于表示基于预设的梯度下降更新规则对第一矩阵进行更新的次数;判断迭代次数是否达到预设次数,如果是,将第三矩阵作为第二矩阵且输出,如果否,则将第三矩阵赋值给第一矩阵,返回基于预设的梯度下降更新规则对第一矩阵进行更新,得到第三矩阵的步骤。
[0063]
上述预设的梯度下降更新规则可以为:
[0064][0065]
其中,数据标签t为迭代次数,学习率参数μ
t
=v
t

t
随着迭代次数t改变,0《v1《1,t=1,

,t
max
,||
▽ct
(:,k)||表示第一矩阵c的梯度向量的模值。
[0066]
上述预设次数即为t
max
,即对第一矩阵进行迭代的最大次数。根据上述梯度下降更新规则,将第一矩阵c
t
更新为第三矩阵c
t+1
,判断第三矩阵的迭代次数t+1是否等于t
max
,如果是,则第三矩阵c
t+1
为c
tmax
,也就是c
t
经过t
max
次迭代后得到了最终优化权重参数c
tmax
(即c
opt
),最终优化权重参数c
opt
作为上述第二矩阵输出。如果迭代次数t+1未达到t
max
,则继续按照上述梯度下降更新规则对第一矩阵进行迭代,直到达到迭代次数达到预设的最大次数以获得最终优化权重参数c
opt
,例如,上述预设次数为3次,根据上述梯度下降更新规则,由c1获得c2,继续迭代,由c2获得c3,c3的迭代次数达到了预设次数,则c3为作为最终优化权重参数的第二矩阵输出。
[0067]
本实施例提出了自适应梯度下降方法,相比现有技术中随机梯度下降方法,具有更高的训练效率。此外,经过上面方法得到优化参数c
opt
的系统还可直接用来进行分类识别,可通过计算其输入刺激经过神经集群变换后输出信息量的大小来确定输入所属的类别。
[0068]
作为一种可选的实施例,在基于预设的梯度下降更新规则对第一矩阵进行更新,得到第三矩阵之前,方法还包括:计算得到第一目标函数关于第一矩阵的导数。
[0069]
具体的,第一目标函数q[c]关于c的导数表达式如下:
[0070][0071]
其中,k=1,2,

e,e表示输出特征数量的大小。
[0072]
需要说明的是,第一目标函数q[c]关于c的导数表达式为上述梯度下降更新规则中的部分内容。
[0073]
作为一种可选的实施例,根据第二矩阵更新第一目标函数,包括:对第二矩阵进行正交化变换,获得正交化结果;根据正交化结果更新第一目标函数的值。
[0074]
作为一种可选的实施例,正交化变换为gram-schmidt正交化变换。
[0075]
通过对原始数据进行csp变换,可以滤除原始数据中的噪声,并且约束第二矩阵为
正交,大大增加神经集群网络模型的鲁棒性以及学习训练的效率。
[0076]
图2提供了根据本发明实施例的一种可选的基于神经集群的数据处理方法的流程图,采用的数据集为手写数字的mnist数据集(如图3所示为数据集mnist示例图),该数据集共有60000个灰度手写体样本图片,共10类(数字0到9),这些图像大小为28*28。本实施例采用60000个训练样本图片作为输入的原始训练数据集,如图2所示,该方法包括:
[0077]
步骤s201,对原始数据集x进行共空间模式变换预处理,以获得变换数据其中,v为根据共空间模式变换获得的变换矩阵。
[0078]
步骤s202,初始化矩阵c及其它参数,并计算目标函数q:
[0079][0080]
其中β和m为非负常数,m可看作边际(margin)参数。
[0081]
步骤s203,终止条件设定最大迭代次数为t
max
=50。
[0082]
步骤s204,判断是否到达最大迭代次数;如若是,则进入步骤s208输出最后优化参数矩阵c及其它参数;如若否,则进入步骤s205。
[0083]
步骤s205,计算q关于c的导数:
[0084][0085]
其中,k=1,2,

e,e表示输出特征数量的大小。
[0086]
步骤s206,利用自适应梯度下降法更新矩阵c,并对矩阵c进行gram-schmidt正交化处理:
[0087][0088]
其中,t为迭代次数学习率参数μ
t
=v
t

t
随着迭代次数t改变,0《v1《1,t=1,

,t
max
,||
▽ct
(:,k)||表示第一矩阵c的梯度向量的模值;
[0089]
对矩阵c
t+1
进行gram-schmidt正交化处理,经过t
max
次迭代后即可得到最终优化参数c
opt

[0090]
步骤s207,更新目标函数q的值,并返回步骤s204判断迭代次数是否达到最大迭代次数。
[0091]
对矩阵c经过t
max
次迭代,可得到本实施例中的优化权重参数c
opt
,权重参数c
opt
的可视化示意图参见图4,根据优化权重参数c
opt
对目标函数q进行更新。本实施例经过单层网
络学习的特征参数来直接进行对mnist数据集里面的10000个测试样本集进行分类,识别精度达到98.4%,而目前单层神经网络结构分类效果最好的svm方法的识别精度为94.5%。
[0092]
本实施例利用神经集群及条件互信息的渐近公式,提出基于条件互信息最大化原理的神经集群网络模型与学习算法,并提出一种基于条件互信息最大化的监督学习目标函数及快速优化模型参数的方法,可应用于图像识别、自然语言处理、语音识别、信号分析等产品和应用场景中。本实施例所提出的监督表征学习算法所获得的学习效果和效率都远远优于其他方法(例如svm方法)的效果和效率,不仅能很好地学习大数据样本,同时也能很好地学习小样本数据,在不明显增加计算复杂度的前提下能够显著提高监督表征学习的效率、性能及鲁棒性。
[0093]
实施例2
[0094]
根据本发明实施例,提供了一种基于神经集群的数据处理装置实施例。图5是根据本发明实施例的基于神经集群的数据处理装置的示意图,如图5所示,该装置包括:变换模块51,用于获取原始数据,将原始数据进行共空间模式变换获得变换数据;函数获取模块52,用于基于变换数据得到包含第一矩阵的第一目标函数,其中,第一目标函数为神经集群网络模型的目标函数,第一矩阵为神经集群网络模型的目标函数的权重参数;矩阵更新模块53,用于基于预设的梯度下降更新规则对第一矩阵进行更新,获得第二矩阵;函数更新模块54,用于根据第二矩阵更新第一目标函数。
[0095]
上述装置还包括执行实施1中基于神经集群的数据处理方法的其他方法步骤的模块。
[0096]
实施例3
[0097]
根据本发明实施例,提供了一种存储介质实施例,包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述基于神经集群的数据处理方法。
[0098]
根据本发明实施例,提供了一种处理器,该处理器用于运行程序,其中,程序运行时执行上述基于神经集群的数据处理方法。
[0099]
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0100]
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0101]
在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0102]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0103]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0104]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0105]
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1