基于熵权法的主成分分析数据降维算法研究
一、引言
在机器学习领域,多元高维大数据集不仅为研究和应用提供了丰富的信息,也极大地增加了数据处理的工作量。因此,如何有效地对数据进行降维是当前情况下的研究热点。本文基于线性降维方法PCA开展探索性实验。近年来,许多学者在传统PCA的基础上进行了一系列相关改进[,]。孙平安等人详细介绍了PCA算法的具体处理过程和原理 [], ,并验证了PCA可能会丢失一些有用信息且易受噪声影响;周玉环等人开展了基于PCA和CCA的特征降维算法有效性研究[], ,提高了后续分类中的降维效率,但其适用性不强;夏尔曼等人将PCA与特征排序相结合[], ,证明了能有效降低数据集维度,但效率不高;刘文辉等人引入了互信息的思想[],,用互信息矩阵替代原始PCA协方差矩阵,降维效果相对有所提升,但特征的可解释性相对较低。针对上述问题,本文提出一种基于熵权法的改进 PCA降维方法,该方法不仅考虑了不同特征对样本影响程度的差异,而且提高了主成分模型的准确率。实验表明,该方法具有良好的降维效果,提取出的特征更有利于预测任务。
A. EW-PCA 流程设计
主成分分析(PCA)是一种应用范围最广的线性降维算法。本文结合熵值法的思想对原始PCA算法进行改进,提出一种基于熵权法权重的改进降维算法EW‐PCA。该算法首先对数据集进行量化,得到初始矩阵。
该算法首先对数据集进行量化以获得初始矩阵。然后计算特征与标签之间的互信息值,并利用互信息阈值来对矩阵进行滤波,然后使用特征加权平均来改进数据中心化过程。通过线性变换得到协方差矩阵,进而求出相应的特征值和特征向量。主成分个数记为K,K值根据累积贡献率准则确定。继续进行降维过程,计算每个特征的信息熵值,从而获得各特征的权重向量,并依据所分配的权重对主成分系数进行两次加权。具体过程如图1所示。
B. 算法设计
本文提出了EW‐PCA算法,该算法是在传统PCA算法的基础上进行改进和扩展的。EW‐PCA算法的主要步骤为:
第一步:基于互信息的特征筛选
基于互信息的主成分分析降维算法的主要目的是设定互信息阈值,过滤掉一些几乎无用的初始数据特征,如图 2所示:
计算已处理数据集中剩余特征与标签的互信息值。互信息值范围介于[0,1]之间。根据实际情况设置数据集的互信息阈值,筛选出互信息值低于给定阈值、对标签结果贡献率较低的特征,即通过给定阈值实现初步特征筛选过程。当数据中有用特征与无用特征在标签的互信息值上存在明显分界点时,基于特征对应用分析的重要性进行筛选更为合适。
步骤2:数据中心化处理
根据加权平均对数据进行中心化处理。对于样本的每个特征,用当前值减去该特征在数据集中的加权平均值,其中表示第m个样本的第n个特征,权重分布依据为各特征变量的方差。
对于原始矩阵变换处理,得到的协方差矩阵对角线数值计算:
(1)
该值能够在保留特征之间相关性的基础上,反映数据在离散程度上的变化。生成的协方差矩阵能够充分表达所有特征的信息。因此,对传统PCA进行加权平均值改进,以消除特征间量纲影响,是有效且可行的。
步骤3:结合熵值法,通过为主成分加权来改进PCA算法
对经过样本特征去权重平均(数据中心化)处理和互信息特征筛选后生成的矩阵继续进行改进的PCA降维。
(1) 计算n维特征数据集的协方差:
得到协方差矩阵,记为:
(2)
(2) 求特征值和特征向量:
求解特征方程,找出q个特征根,以及对应的正交化单位特征向量p,它们表示在新坐标系[]中各向量上的系数。主成分F1的系数是单位特征向量。
(3) 根据累计贡献率的累计贡献率准则确定PCA主成分个数K。
贡献率:
(3)
该公式表示每个特征值在特征值累积和中所占的比例,可以理解为每个主成分所占的信息量。
累计贡献率:
(4)
该公式表示前k个特征值之和在总体中的比例,可以理解为前k个主成分在总体中的信息量。
的值表示前k个主成分综合n个原始特征的能力,并反映主成分模型的准确率。本文中K的确定选择累计贡献率大于85%时的取值,认为此时已足以反映原始变量的信息,能够用较少的成分表达足够的原始信息。主成分的表达式为:p p。获取按降序排列的前k个对应特征向量组成的矩阵。
(4) 对主成分系数进行加权。
提出基于熵权法对主成分系数进行加权,并对生成的主成分系数与熵权法获得的相应特征权重进行矩阵哈达玛积计算。
可以表示为
(5)
是主成分系数,即对应前K个特征值的特征向量,且为所获得的权重向量。
III. 实验过程与结果分析
A. 原始数据集情况
本文选取了用于乳腺癌诊断的Breast Cancer数据集。该数据集包含570个数据样本,每个样本包含32个生理特征,如身份ID和诊断信息;此外,为了充分验证 EW‐PCA算法的有效性,本文还选取了经典UCI数据库中的Sonar和Arcene数据集作为算法验证的输入数据集。
Sonar共有208个观测值,每个样本包含60维特征,取值范围为0到1。有1维标签列,包括R和M两类。Arcene是一个基于观测数据识别癌症的数据集,该数据集是 NIPS2003特征选择挑战赛中的数据集之一,总共包含 700个样本,数据维度为10,000。
B. 实验方案
实验1. 降维结果
将PCA和EW‐PCA方法应用于数据集进行降维实验。其中,PCA和EW‐PCA方法根据CPV准则确定K值以计算贡献率。
Arcene数据集的降维结果如表I所示:
| 算法name | 0.80 | 0.85 | 0.90 | 0.95 | 0.99 |
|---|---|---|---|---|---|
| PCA | 8 | 14 | 34 | 157 | 485 |
| EW‐PCA | 2 | 3 | 6 | 63 | 297 |
从表I可以看出,当贡献率为95%时,PCA方法的K值为157,而EW‐PCA的K值为63。由此可见,在信息分布均匀的情况下,与传统PCA方法相比,通过EW‐PCA降维,可以用更少的主成分保留原始数据集中尽可能多的有用信息。在相同贡献率的情况下,从主成分数量可以看出,EW‐PCA的降维效果明显优于传统PCA方法。
为了便于可视化显示,绘制降维结果的折线图,如图4所示:
从图4可以看出,传统PCA方法和EW‐PCA方法的降维结果的主成分数量均随着贡献率的增加而增加。
为了比较传统PCA方法与EW‐PCA降维方法在主成分方向上的差异,将两种方法应用于Sonar数据集进行降维对比实验。表 II 截取了前七个主成分的主成分系数及累计贡献率。观察两种方法在主成分相同的情况下,EW‐PCA的主成分贡献率大于PCA所得结果。实验表明,通过计算信息熵并结合熵权法对主成分进行加权改进的方法是合理的,且EW‐PCA方法获得的累计贡献率更高。
| 算法 | 主成分 | 系数 | 累积 |
|---|---|---|---|
| PCA | 1 | [ ‐6.663e‐04, ...... ,4.202e‐04] | 31.97 |
| PCA | 2 | [ 1.463e‐02, ...... ,2.816e‐03] | 52.35 |
| PCA | 3 | [ 6.034e‐03, ...... ,5.194e‐04] | 60.91 |
| PCA | 4 | [ 1.656e‐02, ...... ,7.779e‐04] | 67.37 |
| EW‐PCA | 1 | [ 1.025e‐04, ...... ,‐7.14e‐06] | 35.58 |
| EW‐PCA | 2 | [‐1.299e‐03, ...... ,‐5.727e‐05] | 57.72 |
| EW‐PCA | 3 | [ 5.867e‐04, ......,1.211e‐05] | 67.45 |
| EW‐PCA | 4 | [ 3.254e‐04, ...... ,2.484e‐06] | 73.15 |
| 为了比较传统PCA方法与EW‐PCA方法在不同数据集上的性能,列出了在相同贡献率下的运行时间和K值。显然,在维度相对较低的乳腺癌和Sonar数据集上,两种方法对运行时间的影响较小;但在维度较高的Arcene数据集上,EW‐PCA的时间开销会略有增加。在不同的数据集上,与主成分分析相比,EW‐PCA方法可能会牺牲一小部分时间开销,但降维效果更优。 |
| 数据集 | 算法 Name | 贡献 Rate | 运行 时间˄秒˅ | K 值 |
|---|---|---|---|---|
| 乳腺 癌症 | PCA | 0.85 | 0.078 | 4 |
| 乳腺 癌症 | EW-PCA | 0.85 | 0.072 | 4 |
| 声呐 | PCA | 0.85 | 0.091 | 9 |
| 声呐 | EW-PCA | 0.85 | 0.099 | 7 |
| Arcene数 据集 | PCA | 0.85 | 118.53 | 14 |
| Arcene数 据集 | EW-PCA | 0.85 | 126.76 | 3 |
实验2. 比较预测准确率
为了验证EW‐PCA对预测准确率的影响,本文采用 KNN和SVM算法对两种降维算法处理后的数据集进行测试,并将二者应用于乳腺癌数据集进行预测,PCA和 EW‐PCA取相同的贡献率。为了验证数据降维对预测准确率的影响,同时比较直接使用原始数据进行预测的准确率,结果如表 IV 所示:
| 算法 Name | 贡献 Rate | 之前 降维 降维 | 之前 降维 降维 | After dimensionalit y reduction | After dimensionalit y reduction |
|---|---|---|---|---|---|
| KNN | SVM | KNN | SVM | ||
| PCA | 0.95 | 0.9665 | 0.9728 | 0.9603 | 0.9457 |
| EW‐PCA | 0.95 | 0.9665 | 0.9728 | 0.9682 | 0.9770 |
可以看出,当选择KNN进行预测时,由于信息丢失,通过PCA方法降维后的预测准确率低于直接对原始数据进行预测的准确率,而改进的EW‐PCA方法在降维后具有更高的准确率。比较PCA和EW‐PCA在降维前后的预测准确率,无论是KNN还是SVM,PCA降维后的乳腺癌数据集的预测与分类准确率均低于降维前;但通过EW‐PCA算法降维后,预测准确率略高于直接预测,效果更优。因此,本文提出的改进的加权主成分分析算法具有更高的预测准确率和更好的预测任务划分效果。
IV. 结论
在数据处理过程中,传统线性降维主成分分析仅依赖于客观数据的分析,降维效果不够理想,耗时过长,信息损失较高,且降维后的数据预测准确率不高。为解决这些问题,本文提出了一种基于熵值法权重的改进的PCA降维算法EW‐PCA。通过计算信息熵值对PCA主成分系数进行加权改进,并将EW‐PCA与PCA算法分别应用于乳腺癌数据集以及基准数据集Sonar和Arcene,使用KNN和SVM算法进行预测分析实验。实验表明,EW‐PCA方法在寻找主成分时更为审慎,特征描述更清晰,相比传统 PCA具有更好的性能和效果,降维后的数据集具有更高的预测准确率。

802

被折叠的 条评论
为什么被折叠?



