主成分分析法
主成分分析法是一种非常适用,又相对简单的数据处理的方法。它是利用降维的方法,将数据表示的信息的主要成分提取出来,所以叫做主成分分析法。主成分分析法最直观的目的是要将冗余的数据特征进行降维处理,与此同时保留数据最重要的一部分特征,使其主要的特征成分最大的保持整个数据信息完整性。
它的运用非常的广泛:
1.由于它可以提取主要的信息成分,所以它可以用来过滤掉信号的噪声
2.它可以用于合并特征。当有一些信息相关性非常大的时候,我们可以用主成分分析法把它们合并成一个特征;它也可以用于去掉冗余的特征。当两个特征表示的信息一致的时候,我们可以利用主成分分析法帮我们剔除掉其中一个。
3.当我们出现特征很多,过度拟合情况的时候。我们可以用主成分分析法帮助我们把真正有用的部分给保留下来。
下面我们来介绍一下,主成分分析的原理:
在介绍之前,我们要先对原始数据
做一个说明。由于在表征信息时,原始数据
所含有的每个特征会有不同的量纲,代表着不同的含义,所以在用原始数据
直接进行主成分分析是不对的。我们应该在进行主成分分析之前,先对原始数据
中的每个特征进行归一化处理。以下所指的原始数据
,都是指经过了归一化处理之后的数据
。
假设我们现在有一组含有m维特征的数据,其中每一维代表一个数据特征:
现在我们考虑如下的线性变换:
也可以写作如下形式:
其中,
由上面的公式,我们可以知道,假设说我们知道
,那么
中就相当于保存了数据
中所有的信息。如果说,前面的几个
就在很大程度上保留了数据
的信息,那我们就可以把一些作用不大的信息去掉,只保留原始数据
中的主要信息,这就是主成分分析法的原理。
那么主成分分析法具体是怎么做的呢?
1.主成分分析法中限制了
之间必须要是相互独立的,
之间的独立性保证了
之间没有重复的信息。也就是说,原始数据
中的冗余的被剔除掉了。从数学上来说,可以表示为:
我们将从投影的角度来导出主成分分析法中各主成分的求法。3.此外,主成分分析法还限定了
,因为我们可以把上面的线性变换看做是数据
在
上的投影,
表示的是投影向量,所以
。
首先,由于原始数据
是进行归一化处理之后的数据,所以
中的每个特征的均值为0,所以
在投影到
上之后,它的均值还是为0。我们考虑其中一组变换
,它会使数据
的方差变为:
把这个等式的第一项的第三项提出来,令:
现在可以清晰的看出,为协方差矩阵
的特征值,
为该特征值所对应的特征向量。当
为协方差矩阵
的最大特征值时,此时对应的投影方差最大,这个时候的特征向量
所对应的线性变换
就是线性变换中占据数据
信息最多的成分。以此类推,协方差矩阵
的第二大特征值
所对应的线性变换
就是线性变换中占据数据
信息第二多的成分……
由此我们就推导出了主成分的求解方法。
在几何上,主成分分析法所表示的意思就是把原本的数据
,投影到相互正交的特征向量(因为协方差矩阵为对称矩阵)上去。
比如说,如下图所示(图片来自于网络),数据
的样本点在原本的两个特征方向上都十分的分散。
这个时候,我们可以将样本点根据线性变换投影到新的特征上去。
此时可以看到,样本点明显集中了很多。并且样本点在
方向上的方差比在
方向上的方差要大,所以
为其主成分。
特征值的含义
通过上面对于主成分分析法的介绍,其实我们可以大概看出来特征值和特征向量在一个矩阵中扮演了什么样的角色。
特征值的大小代表了矩阵正交化之后所对应特征向量对于整个矩阵的贡献程度。