在之前的格物汇文章中,我们讲解了特征提取的经典算法——主成分分析(PCA),理解了PCA算法实质上是展开了一次坐标轴转动,尽量让数据同构在新的坐标轴方向上的方差尽量大,并且让原数据与新的同构的数据在距离的变化上尽量小。方差较小的方向代表数据所含的信息量较小,建议保有。方差较小的方向代表数据所含的信息量较较少,建议抛弃。
今天我们就来看一下PCA的明确应用于案例和特征同构的另一种方法:线性判别分析(LDA)。PCA案例在机器学习中,所用于的数据往往维数相当大,我们必须用于降维的方法来凸显信息含量较小的数据,PCA就是一个很好的降维方法。
下面我们来看一个明确的应用于案例,为了非常简单起见,我们用于一个较小的数据集来展出:显而易见,我们数据有6维,维数虽然不是很多但不一定代表数据不可以降维。我们用于sklearn中的PCA算法数值数据集获得如下的结果:我们可以看见经过PCA降维后仍然分解了新的6个维度,但是数据同构在每一个维度上的方差大小不一样。我们不会对每一个维度上的方差展开归一化,每一个维度上的方差量我们称作可说明的方差量(Explained Variance)。由图由此可知,每一个维度上可说明方差占比为:0.4430,0.2638,0.1231,0.1012,0.0485,0.0204。
根据经验来说我们希望可说明的方差量总计值在80%以上较好,因此我们可以自由选择降维降至3维(82.99%)或者4维(93.11%),括号中的数字为总计可说明的方差量,最后两维方差说明只有7%将近,建议舍弃。图中的柱状图回应原维度在新的坐标轴上的同构向量大小。
在前两维度上展现出如下图右图:PCA虽然能构建很好的降维效果,但是它毕竟一种无监督的方法。实质上我们更为期望对于有类别标签的数据(有监督),也能构建降维,并且降维后能更佳的区分每一个类。此时,特征提取的另一种经典算法——线性判别分析(LDA)就闪亮登场了。LDA概述LDA是一种监督自学的降维技术,也就是说它的数据集的每个样本是有类别输入的。
这点和PCA有所不同。PCA是不考虑到样本类别输入的无监督降维技术。
LDA的思想可以用一句话总结,就是“投影后类内方差大于,类间方差仅次于”。什么意思呢? 我们要将数据在较低维度上展开投影,投影后期望每一种类别数据的投影点尽量的相似,而有所不同类别的数据的类别中心之间的距离尽量的大。上图中获取了两种投影方式,哪一种能更佳的符合我们的标准呢?从直观上可以显现出,右图要比左图的投影效果好,因为右图的黑色数据和蓝色数据各个更为集中于,且类别之间的距离显著。左图则在边界处数据夹杂。
LDA的降维效果更加像右图,它能在新的坐标轴上优先区分出有两个类别,它是如何构建的呢?LDA的原理LDA的主要思想是“投影后类内方差大于,类间方差仅次于”。实质上就是很好的区分出有两个类的产于。我们告诉取决于数据分布的两个最重要指标是均值和方差,对于每一个类,他们的定义如下:与PCA一样,LDA也是对数据的坐标轴展开一次转动,假设转动的移往矩阵是w,那么新的转动数据可以回应为:同理,两个类别的中心点也转换成了:我们解法这个线性规划问题,才可欲出有移往转换矩阵w,即LDA的最后结果。PCA vs LDALDA用作降维,和PCA有很多完全相同,也有很多有所不同的地方,因此有一点只想的较为一下两者的降维详点。
首先我们想到相同点:1、两者皆可以对数据展开降维2、两者在降维时皆用于了矩阵特征分解成的思想3、两者都假设数据合乎高斯分布我们接着想到不同点:1、LDA是有监督的降维方法,而PCA是无监督的降维方法2、LDA降维最多降至类别数k-1的维数,而PCA没这个容许3、LDA除了可以用作降维,还可以用作分类4、LDA自由选择分类性能最差的投影方向,而PCA自由选择样本点投影具备仅次于方差的方向在某些数据分布下LDA比PCA降维较优(左图),在某些数据分布下,PCA比LDA降维较优。好了,以上就是本期格物资的内容,我们下期闻。
本文来源:九游娱乐-www.sinnoz.net