一种数据降维方法与流程

文档序号:16608777发布日期:2019-01-14 21:23阅读:350来源:国知局
一种数据降维方法与流程

本发明涉及数据处理技术领域,尤其涉及一种数据降维方法。



背景技术:

随着电力通信网的蓬勃发展,电力通信数据的体量越来越大。传统的数据处理方式已经无法对海量数据进行有效的分析。与此同时,随着电力通信网、大数据处理和云计算所产生的数据维度不断增加,为了去除高维度数据集中的噪声和冗余信息,减少数据挖掘中不必要的运算过程,提高算法的运行效率,对高维数据进行降维处理也更加必要。

数据降维通过某种映射关系,将数据集从高维空间映射到低维空间,提取高维数据的主要特征,从而实现维度简化。可以说,对高维数据进行降维处理是大数据分析与挖掘的基础与前提。

因此,如何研究出一种数据降维方法,以实现维度简化,去除高维度数据集中的噪声和冗余信息,减少数据挖掘中不必要的运算过程,提高算法的运行效率,成为本领域技术人员所要研究的课题。



技术实现要素:

本发明的目的在于提供一种数据降维方法,以去除高维度数据集中的噪声和冗余信息,减少数据挖掘中不必要的运算过程,提高算法的运行效率。

为达此目的,本发明采用以下技术方案:

一种数据降维方法,包括:

对高维数据进行预处理得到高维数据集,并选取核函数;

构建基于核主成分分析的全局目标函数,并求解核函数矩阵;

自适应调整邻域参数值,采用局部保持投影法构建局部目标函数;

确定平衡因子值以平衡所述全局目标函数和所述局部目标函数,并将所述全局目标函数和所述局部目标函数结合为总体目标函数;

确定主成分个数与投影矩阵,将所述投影矩阵与所述高维数据集相乘得到低维数据集。

可选的,所述对高维数据进行预处理得到高维数据集,并选取核函数的步骤包括:

对所述高维数据进行z-score标准化,得到高维数据集xt,xt=[x1,x2,…xn]∈rm*n,其中,m为数据集的维度,n为数据样本个数;

选取高斯径向基函数作为所述核函数,所述高斯径向基函数为

可选的,所述构建基于核主成分分析的全局目标函数,并求解核函数矩阵的步骤包括:

构建所述全局目标函数其中φ(x)t=[φ(x1),φ(x2),…,φ(xn)],vtv=1,v为投影向量;

其中,所述投影向量v在特征点φ(xi)的展开方向上存在一个向量u=(u1,u2,…,un)t,满足方程式

引入核函数k(xi,xj)=φ(xi)·φ(xj),得到全局目标函数jglobal(u)=maxutktku=maxutcu其中,k为所述核函数矩阵,所述核函数矩阵utku=1u。

可选的,所述自适应调整邻域参数值,使用局部保持投影法构建局部目标函数的步骤包括:

利用parzen窗计算数据点的密度分布来自适应调整邻域参数ε,其中,所述parzen窗的概率密度计算式n为数据样本个数,h为窗体宽度,v=hm为窗体体积,φ(x)为窗函数,且满足φ(x)≥0;

以余弦角距离计算式作为相似度函数、以正态窗函数作为所述窗函数φ(x),则数据点xi的邻域概率密度

根据所述邻域概率密度p(xi),并通过自适应调整所述邻域参数ε,其中,数据集分布的平均密度

通过自适应的所述邻域参数ε,可以确定数据的邻域关系为||φ(xi)-φ(xj)||2≤ε,则得到所述局部目标函数jlocal(v)=min(vtφ(x)t(d-s)φ(x)v),其中,sij为权重参数,s为邻域图权重矩阵,d为对角矩阵;

通过引入核函数k(xi,xj)=φ(xi)·φ(xj),存在一个向量u,u=(u1,u2,…,un)t,满足方程式则所述局部目标函数转换为jlocal(u)=min(utktlku)=min(utl'u),其中,矩阵l=d-s为拉普拉斯矩阵。

可选的,所述确定平衡因子值以平衡所述全局目标函数和所述局部目标函数,并将所述全局目标函数和所述局部目标函数结合为总体目标函数的步骤包括:

令平衡因子为η,则所述总体目标函数j(u)=η·jglobal(u)+(η-1)·jlocal(u)=max(ut(ηc+(η-1)l')u),其中η≤ρ(l')/(ρ(c)+ρ(l')),ρ(c)为矩阵c的最大特征值,ρ(l')为矩阵l'的最大特征值;采用搜索优化算法以确定平衡因子η的最佳取值。

可选的,所述确定主成分个数与投影矩阵,将所述投影矩阵与所述高维数据集相乘得到低维数据集的步骤包括:

在确定所述平衡因子η的值后,并在约束条件utku=1下,利用拉格朗日乘子法求解投影向量u,最大化l(u)=utmu-λ(utku-1),使得l(u)对u的偏导数为零,得到mu=λku;

求解mu=λku的广义特征值,得到特征值λ1,λ2,…,λn,使其降序排列,然后得到特征值对应的特征向量u1,u2,…,un,进而得到特征矩阵u=[u1,u2,…,un],其中,

选取最大的k个特征值λ1,λ2,…,λk对应的特征向量u1,u2,…,un构成投影矩阵u'=[u1,u2,…,uk],将高维数据集xt与投影矩阵u'相乘,即得到降维后的低维数据集。

与现有技术相比,本发明实施例具有以下有益效果:

本发明实施例提供的数据降维方法,基于核主成分分析和局部保持投影法,可以去除高维度数据集中的噪声和冗余信息,减少数据挖掘中不必要的运算过程,提高算法的运行效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本发明实施例提供的一种数据降维方法的方法流程图。

具体实施方式

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

请参阅图1所示,本实施例提供了一种一种数据降维方法,具体包括以下步骤:

步骤s1:对高维数据进行预处理得到高维数据集,选择核函数;

步骤s2:构建基于核主成分分析的全局目标函数,求解核函数矩阵;

步骤s3:自适应调整邻域参数值,采用局部保持投影法构建局部目标函数;

步骤s4:确定平衡因子值,将所述全局目标函数和所述局部目标函数结合为总体目标函数;

步骤s5:确定主成分个数与投影矩阵,并将所述高维数据集投影到低维数据集。

具体的,步骤s1包括对所述高维数据进行z-score标准化,得到高维数据集xt=[x1,x2,…xn]∈rm*n,m为数据集的维度,n为数据样本个数。

需要说明的是,z-score也叫z分数或标准分数,z分数的方程式为其中,μ为数据的均值,σ为数据的标准差。高维数据的标准化过程为,将所有数据标准化为均值为0,方差为1的概率分布。

进一步的,选取核函数。核函数有线性核函数、p介多项式核函数、高斯径向基函数以及多层感知器核函数。本实施例中,选取高斯径向基函数作为核函数,其表达式为

具体的,步骤s2包括:对于高维数据集xt,全局目标函数jglobal(v)的目的是在高维特征空间中寻找多个投影向量v,来使得投影后的yi=φ(xi)t·v的方差最大化。其中,i=1,2,…,n,则yi表示投影后第i个向量对应的一维数据。因此jglobal(v)可以用表示。其中,φ(x)t=[φ(x1),φ(x2),…,φ(xn)],vtv=1。

进一步的,由于特征空间是由过程数据的映射值φ(x1),φ(x2),…,φ(xn)组成的,所以投影向量v一定在特征点φ(xi)的展开方向上存在一个向量u满足其中u=(u1,u2,…,un)t

因此,可以将求解全局目标函数转换为求解向量u,然后引入核函数k(xi,xj)=φ(xi)·φ(xj),得到全局目标函数jglobal(u)=maxutktku=maxutcu,其中k为核函数矩阵,utku=1u。

具体的,在步骤s3中,使用局部保持投影法设计局部目标函数时,首先需要根据数据样本的空间分布密度来自适应地调整邻域参数值的大小,得到的低维数据能更好的提取数据点之间的局部结构特征。因此,在本实施例中,引入parzen窗概率密度估计的方法,利用parzen方法估计出数据点的密度分布,以此自适应调整邻域参数ε。进一步的,对于高维数据集xt中任意一个数据样本xi,其基于parzen窗的概率密度估计式为其中,n为数据样本个数,h为窗体宽度,v=hm为窗体体积。需要说明的是,窗体是一个以数据样本点xi为中心的超立方体,h为这个超立方体的边长,φ(x)为窗函数,且满足φ(x)≥0。

进一步的,假设方法中邻域参数ε的初始值为ε0,则数据样本点xi的初始邻域为令窗体宽度h=ε0,则可以估计出在这个以ε0为边长的超立方体中xi的概率密度,窗函数选择正态窗函数

需要说明的是,传统的数据点相似度函数是基于欧式距离和闵可夫斯基距离等公式计算的,但是这些方法对离群数据点比较敏感,如果数据集中的数据点分布不均匀,离群点较多,则会对降维效果造成很大的影响。因此,本实施例采用余弦角距离作为一种非欧式的相似度计算方法,对离群点数据具有很好的鲁棒性。因此,以余弦角距离计算式为相似度函数,其表达式为

进一步的,根据窗函数和相似度函数,计算出数据样本点xi的邻域概率密度根据估计的邻域概率密度通过自适应调整邻域参数ε。其中,数据集分布的平均密度当数据点邻域的密度比较小时,会自适应减小邻域参数ε的值,使稀疏点尽可能地不连接;当数据点邻域的密度比较大时,会自适应地增大邻域参数ε的值,使得密集点尽可能地连接起来。

进一步的,通过自适应的邻域参数ε,可以确定数据的邻域关系为||φ(xi)-φ(xj)||2≤ε,从而得到局部目标函数jlocal(v)=min(vtφ(x)t(d-s)φ(x)v),其中φ(x)t=[φ(x1),φ(x2),…,φ(xn)],vtv=1,sij为权重参数,s为邻域图权重矩阵,d为对角矩阵。

引入核函数k(xi,xj)=φ(xi)·φ(xj),那么||φ(xi)-φ(xj)||2=(φ(xi)-φ(xj))t(φ(xi)-φ(xj))=k(xi,xi)-2k(xi,xj)+k(xj,xj),此式表示为xi和xj在高维特征空间中的距离。同理,存在一个向量u=(u1,u2,…,un)t,满足则该局部目标函数为转化为jlocal(u)=min(utktlku)=min(utl'u),其中,矩阵l=d-s为拉普拉斯矩阵,局部目标函数通过保持原始数据点之间的邻近关系,来提取原始数据集的局部结构特征。

具体的,在步骤s4中,在计算得到核主成分分析的全局目标函数jglobal和局部保持投影法的局部目标函数jlocal之后,引入平衡因子η来平衡全局目标函数jglobal和局部目标函数jlocal。因此,总体目标函数j(u)=η·jglobal(u)+(η-1)·jlocal(u)=max(ut(ηc+(η-11)l')u)。

需要说明的是,不同的目标函数可能有不同的规模和收敛速度,所以应该选择平衡因子η的适当值来平衡目标函数的规模,并且使它们具有相同的收敛速度。为了统一全局和局部结构保持的不同规模,将平衡因子η的取值限定范围,令平衡因子η≤ρ(l')/(ρ(c)+ρ(l')),ρ(c)为矩阵c的最大特征值,ρ(l')为矩阵l'的最大特征值。在该限定范围内,采用搜索优化算法以确定平衡因子η的最佳取值。

具体的,在步骤s5中,在确定平衡因子η的值之后,在约束条件utku=1下,利用拉格朗日乘子法求解投影向量u,最大化l(u)=utmu-λ(utku-1),使得l(u)对u的偏导数为零,最终得到推导公式mu=λku。进一步的,改进的核主成分分析转化为求解上式,即为求解广义特征值,并且得到特征值对应的特征向量最优解u。求解得到特征值λ1,λ2,…,λn,使其降序排列,然后得到特征值对应的特征向量u1,u2,…,un,进而得到特征矩阵u=[u1,u2,…,un],最后特征提取后能量保持率需要满足

最后,选取最大的k个特征值λ1,λ2,…,λk对应的特征向量u1,u2,…,un构成投影矩阵u'=[u1,u2,…,uk],将高维数据集xt与投影矩阵u'相乘,即得到降维后的低维数据集。

综上所述,本发明实施例提供的数据降维方法,为一种基于核主成分分析和局部保持投影的数据降维方法,可以对非线性数据进行降维处理,去除高维度数据集中的噪声和冗余信息,减少数据挖掘中不必要的运算过程,提高算法的运行效率。

单独使用核主成分分析时,其全局目标函数通过非线性映射函数将原始数据集映射到高维空间,并且在高维特征空间中保留了原始数据集的大部分方差信息,实现了全局结构的特征提取,但是全局目标函数忽略了点与点之间的邻近关系,会打乱数据点之间的关系,进一步丢失部分信息,与之相比,本实施例提供的数据降维方法结合了局部保持投影的思想,可以同时保持局部结构特征和全局结构特征。

进一步的,本发明实施例提供的数据降维方法,采用自适应调整邻域参数,根据样本的空间分布密度来自适应地调整邻域参数值的大小,得到的低维数据能更好的提取数据点之间的局部结构特征。并且,采用余弦角距离作为一种非欧式的相似度计算方法,对离群点数据具有很好的鲁棒性。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1