基于子空间学习的医疗数据集特征降维方法技术

技术编号:22365559 阅读:22 留言:0更新日期:2019-10-23 05:10
本发明专利技术公开了一种基于子空间学习的医疗数据集特征降维方法,该方法包括以下步骤:根据待分析的医疗数据集构建原始高维数据矩阵X和标签列;构造最优化目标函数,求解其拉格朗日函数;根据原始高维数据矩阵和标签列,计算全局判别信息和局部判别信息;迭代求解转化矩阵Q,直到目标函数收敛或者达到最大循环次数,获得降维后的数据矩阵;根据求得的转化矩阵训练模型,求出AUC值评价降维矩阵和分类准确率。相较于目前的医疗数据集的特征降维方法,本发明专利技术的方法同时利用数据的局部判别信息和全局判别信息进行降维,不仅适用于一般规模下的特征降维问题,在数据的特征规模远大于样本规模时仍然具有较高的分类准确率。

Dimension reduction of medical data set based on subspace learning

【技术实现步骤摘要】
基于子空间学习的医疗数据集特征降维方法
本专利技术属于大数据技术与机器学习领域,特别是一种基于子空间学习的医疗数据集特征降维方法。
技术介绍
特征降维(DimensionalityReduction)旨在将高维数据转化成低维数据。特征降维技术的出现是由于在实际应用场景产生的机器学习问题中,都会产生大量复杂的高维数据。大多数数据分析任务的运行时间至少随数据维度的增加呈线性增长,存储、分析高维数据需要消耗大量计算机存储资源,花费很多计算时间。并且很多数据挖掘和机器学习的任务,如分类、聚类和回归只在低维空间取得好效果,如果放置到高维空间会非常困难。所以如何对高维数据进行特征降维,并保持重要信息不丢失是个迫在眉睫的问题。广义上,根据数据的标签信息是否给出,特征降维方法可以大致分为有监督、半监督和无监督三大类。子空间学习(SubspaceLearning)属于一种线性的特征降维方法,即认为数据的“内在维度”(IntrinsicDimensionality)可以由特征向量的线性转换表示。此类典型的方法有主成分分析(PrincipalComponentAnalysis,PCA)、线性判别分析(LinearDiscriminantAnalysis,LDA)和局部保持投影(LocalityPreservingProjection,LPP)等。但是,现存的基于子空间学习的方法都存在一些弊端。如PCA的目标是通过最大化数据的协方差矩阵来将原始高维数据线性表示为低维数据;LDA则通常为迹比率的形式,它通过最大化类间散度矩阵同时最小化类内散度矩阵来求解特征向量的表示。PCA和LDA都是基于谱方法进行特征值分解,只从全局的角度考虑了判别信息,如PCA的方差和LDA的均值,忽略了由样本点的邻域提供的判别信息。在样本数量远小于特征维数时,LDA方法可能出现奇异矩阵导致计算出的特征向量不准确。而LPP恰恰相反,它通过构造样本点的邻接图,然后计算权重,保持了节点邻域的线性结构,但却没有考虑全局判别信息的重要性,因此分类效果不佳。此外,现存的一些特征降维方法,如PCA和LDA都是无参数的特征降维方法,且都假设样本点的分布服从高斯分布,因而对离群值十分敏感。目前,对高维数据进行特征降维的问题被建模为最优化问题,其求解方法往往涉及特征值分解,但是有文献指出,某些问题的最优解不能由特征值分解解出。交替方向乘子法(AlternatingDirectionMethodofMultipliers,ADMM)适用于求解凸优化问题,且计算高效,收敛速度快,是当前领域研究的重点。
技术实现思路
本专利技术的目的在于提供一种简单高效、收敛速度快以及分类准确率高的特征降维的方法。实现本专利技术目的的技术解决方案为:基于子空间学习的医疗数据集特征降维方法,包括以下步骤:步骤1、根据待分析的医疗数据集构建原始高维数据矩阵X和标签列;步骤2、构造最优化目标函数,求解其拉格朗日函数,并初始化拉格朗日函数的参数和变量;步骤3、根据原始高维数据矩阵和标签列,求取医疗数据集中样本的类间散度矩阵Sb和类内散度矩阵Sw,由此获得全局判别信息;步骤4、根据原始高维数据矩阵和标签列,构建医疗数据集中样本的类间邻接图Gb和类内邻接图Gw,并分别求取相应的Laplacian矩阵Lb和Lw,由此获得局部判别信息;步骤5、结合上述求解的Sb、Sw、Gw、Gb对拉格朗日函数进行迭代,求取用于降维重构原始高维数据矩阵的转化矩阵Q和P、误差矩阵E和拉格朗日乘子Y,直到目标函数收敛或者达到设定的最大循环次数,最终获得的矩阵QTX即为降维后的数据矩阵;步骤6、利用转化矩阵Q训练分类器,之后根据分类器的AUC值对矩阵QTX进行评价。本专利技术与现有技术相比,其显著优点为:1)联合利用全局判别信息和局部判别信息进行降维,在样本特征维数远大于样本数时依然可以达到高的分类准确率;2)利用范数正则化项,使得特征稀疏,便于特征选择,并且所训练出的模型鲁棒性好,不易受离群值干扰;3)与目前许多无参数的方法不同,本专利技术提出的特征降维方法可以调整参数,使得训练出的模型适应某个具体任务,且实验证明合适的参数的选择方法简单可实现;4)提出的针对本专利技术的最优化的求解方法十分高效,并且实验证明模型收敛速度快;5)分类准确率更高。下面结合附图对本专利技术作进一步详细描述。附图说明图1为本专利技术基于子空间学习的医疗数据集特征降维方法的流程图。图2为本专利技术实施例中的收敛性分析曲线图。图3为本专利技术实施例中的参数选择图。具体实施方式结合图1,本专利技术的基于子空间学习的医疗数据集特征降维方法,包括以下步骤:步骤1、根据待分析的医疗数据集构建原始高维数据矩阵X和标签列;步骤2、构造最优化目标函数,求解其拉格朗日函数,并初始化拉格朗日函数的参数和变量;步骤3、根据原始高维数据矩阵和标签列,求取医疗数据集中样本的类间散度矩阵Sb和类内散度矩阵Sw,由此获得全局判别信息;步骤4、根据原始高维数据矩阵和标签列,构建医疗数据集中样本的类间邻接图Gb和类内邻接图Gw,并分别求取相应的Laplacian矩阵Lb和Lw,由此获得局部判别信息;步骤5、结合上述求解的Sb、Sw、Gw、Gb对拉格朗日函数进行迭代,求取用于降维重构原始高维数据矩阵的转化矩阵Q和P、误差矩阵E和拉格朗日乘子Y,直到目标函数收敛或者达到设定的最大循环次数,最终获得的矩阵QTX即为降维后的数据矩阵;步骤6、利用转化矩阵Q训练分类器,之后根据分类器的AUC值对矩阵QTX进行评价。进一步地,步骤1中根据待分析的医疗数据集构建原始高维数据矩阵和标签列,具体为:假设构建原始高维数据矩阵n为医疗数据集样本总数,m为原始特征维数;矩阵M的第一列为标签列,用向量表示,矩阵M除第一列之后的部分为数据矩阵,用矩阵表示;所述数据矩阵的第i行表示第i个样本在所有特征下的观察值,第j列表示第j个特征的所有观察值。进一步地,步骤1中构造最优化目标函数,求解其拉格朗日函数,并初始化拉格朗日函数的参数和变量,具体为:一般地,线性特征降维被建模为以下最优化问题:对于原始高维数据集合特征降维的目标就是求取一个转化矩阵将原始高维数据映射为新的低维数据其中,yi=ATxi。直观上来说,若不同类别的数据越分散,相同类别的数据越聚合,那么分类器就能更好的区分数据的类别。这种类间分散和类内聚合的程度分别由类间散度矩阵和类内散度矩阵来度量。本专利技术从全局判别信息和局部判别信息两方面入手,一方面最小化类内散度矩阵的迹最大化类间散度矩阵的迹,另一方面利用Laplacian矩阵,保持转化后的低维数据的局部分布与原始高维数据的分布相一致。步骤2-1、(1)针对全局判别信息,目标是最小化类内距离,同时最大化类间距离,构造最优化目标函数具体为:(2)针对局部判别信息,目标是保持转化后的低维数据的局部流形结构与原始高维数据的一致,构造的原始目标函数为:由yi=QTxi,将目标函数约简为:综合上述(1)(2),并增加正则化项和限制条件,获得最优化目标函数为:s.t.X=PQTX+E,PPT=I式中,为原始高维数据矩阵,其中,n为样本总数,m为原始特征维数,高维数据矩阵的第i行表示第i个样本在所有特征下的观察值,第j列表示第j个特征的所有观察值;均为转换矩阵,用本文档来自技高网
...

【技术保护点】
1.一种基于子空间学习的医疗数据集特征降维方法,其特征在于,包括以下步骤:步骤1、根据待分析的医疗数据集构建原始高维数据矩阵X和标签列;步骤2、构造最优化目标函数,求解其拉格朗日函数,并初始化拉格朗日函数的参数和变量;步骤3、根据原始高维数据矩阵和标签列,求取医疗数据集中样本的类间散度矩阵Sb和类内散度矩阵Sw,由此获得全局判别信息;步骤4、根据原始高维数据矩阵和标签列,构建医疗数据集中样本的类间邻接图Gb和类内邻接图Gw,并分别求取相应的Laplacian矩阵Lb和Lw,由此获得局部判别信息;步骤5、结合上述求解的Sb、Sw、Gw、Gb对拉格朗日函数进行迭代,求取用于降维重构原始高维数据矩阵的转化矩阵Q和P、误差矩阵E和拉格朗日乘子Y,直到目标函数收敛或者达到设定的最大循环次数,最终获得的矩阵Q

【技术特征摘要】
1.一种基于子空间学习的医疗数据集特征降维方法,其特征在于,包括以下步骤:步骤1、根据待分析的医疗数据集构建原始高维数据矩阵X和标签列;步骤2、构造最优化目标函数,求解其拉格朗日函数,并初始化拉格朗日函数的参数和变量;步骤3、根据原始高维数据矩阵和标签列,求取医疗数据集中样本的类间散度矩阵Sb和类内散度矩阵Sw,由此获得全局判别信息;步骤4、根据原始高维数据矩阵和标签列,构建医疗数据集中样本的类间邻接图Gb和类内邻接图Gw,并分别求取相应的Laplacian矩阵Lb和Lw,由此获得局部判别信息;步骤5、结合上述求解的Sb、Sw、Gw、Gb对拉格朗日函数进行迭代,求取用于降维重构原始高维数据矩阵的转化矩阵Q和P、误差矩阵E和拉格朗日乘子Y,直到目标函数收敛或者达到设定的最大循环次数,最终获得的矩阵QTX即为降维后的数据矩阵;步骤6、利用转化矩阵Q训练分类器,之后根据分类器的AUC值对矩阵QTX进行评价。2.根据权利要求1所述的基于子空间学习的医疗数据集特征降维方法,其特征在于,步骤1所述根据待分析的医疗数据集构建原始高维数据矩阵和标签列,具体为:假设构建原始高维数据矩阵n为医疗数据集样本总数,m为原始特征维数;矩阵M的第一列为标签列,用向量表示,矩阵M除第一列之后的部分为数据矩阵,用矩阵表示;所述数据矩阵的第i行表示第i个样本在所有特征下的观察值,第j列表示第j个特征的所有观察值。3.根据权利要求1或2所述的基于子空间学习的医疗数据集特征降维方法,其特征在于,步骤1所述构造最优化目标函数,求解其拉格朗日函数,并初始化拉格朗日函数的参数和变量,具体为:步骤2-1、构造最优化目标函数如下:s.t.X=PQTX+E,PPT=I式中,为原始高维数据矩阵,其中,n为原始高维数据矩阵包含的样本总数,m为原始特征维数,高维数据矩阵的第i行表示第i个样本在所有特征下的观察值,第j列表示第j个特征的所有观察值;均为转换矩阵,用于重构原始高维数据矩阵,其中,d为缩减后的低维维数;Tr(*)为“*”的迹,‖*‖2,1为“*”的l2,1范数,‖Q‖2,1用于补偿转换误差,‖*‖1为“*”的l1范数,为随机误差矩阵,为单位矩阵;参数α,β,λ1和λ2均为正实数;Sb为样本类间散度矩阵,Sw为样本类内散度矩阵,Lb为样本的类间邻接图Gb对应的Laplacian矩阵,Lw为样本的类内邻接图Gw对应的Laplacian矩阵,“+”号分隔的第一部分用于求取全局判别信息,“+”号分隔的第二部分求取局部判别信息;步骤2-2、求取最优化目标函数的拉格朗日函数Lρ(P,Q,E,Y)为:式中,ρ为惩罚参数,且ρ>0,Y为拉格朗日乘子;步骤2-3、初始化拉格朗日函数的参数和变量:α=0.01,β=0.02,λ1=0.01,λ2∈{1,10-1,10-2,10-3,10-4,10-5},ρ=0.1,μ=0.1,ρmax=105;iter为迭代次数;Q=0,E=0,Y=0,P=PCA(X),其中,PCA(*)表示返回矩阵*的主分量系数,P=PCA(X)用于初始化一个正交矩阵P。4.根据权利要求3所述的基于子空间学习的医疗数据集特征降维方法,其特征在于,步骤3所述根据原始高维数据矩阵和标签列,求取医疗数据集中样本...

【专利技术属性】
技术研发人员:庾安妮徐雷
申请(专利权)人:南京理工大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1