特征提取——主成分分析(PCA)
引言:特征提取是机器学习中很常用数据处理方式,一般都出现在实际搭建模型之前,以达到特征空间维度的变化(常见是降维操作)。特征提取是通过适当变换把已有样本的D个特征转换成 d(<D) d ( < D ) 个新特征。这样做的主要目的有:
- 降低特征空间的维度,使后续的分类器设计在计算上更容易实现;
- 消除原有特征之间的相关度,减少数据信息的冗余,更有利于分类。
前面提到特征提取就是通过适当变换将特征从现有的特征空间转换到新的空间。所以特征提取的关键任务在于寻找适当变换,最常采用的变换方法是线性变换,即若 xϵRD x ϵ R D 是 D D 为原始特征,变换后的 维新特征 ξϵRd ξ ϵ R d 为:
其中, W W 是 维矩阵,称作变换阵。所谓特征提取,就是寻找一个合适的矩阵 W W ,使得原有样本经过式(1)的变换后,能够保留尽可能多的原有信息。如果用类别可分性判据来作为衡量新特征的准则,这一原则可以用一个表达式来表示:
l , 其中 J(WTx) J ( W T x ) 即为基于类内类间距离的可分性判据。
本次我们先介绍喜闻乐见的主成分分析法(PCA)。
主成分分析法(PCA)
PCA是非常常用的数据降维方法。它的基本思想是从一组特征中计算出一组按照重要性的大小从大到小依次排列的新特征,它们是原有特征的线性组合,并且新特征之间不相关, 我们计算出原有特征在新特征上的映射值即为新的降维后的样本。也就是说PCA的目标是用一组正交向量来对原特征进行变换得到新特征,新特征是原有特征的线性组合。
数据说明,样本集为已经经过中心化后的数据, X={ x1,x2,...,xn} X = { x 1 , x 2 , . . . , x n } ,其中 xi x i 为p维列向量,共有n个样本,满足 ∑ni=1xi=0 ∑ i = 1 n x i = 0 。
用矩阵 A A 来表示一组正交列向量,并且为了归一化,令 ,
同时有 aTiaj=0,i≠j a i T a j = 0 , i ≠ j 。
若原样本有 p p 维特征,即原向量 ,则经过变换后得到新的样本向量 ξi=ATxi ξ i = A T x i
展开即为 ξij=aTjxi=∑pt=1ajtxit ξ j i = a j T x i = ∑ t = 1 p a j t x t i 。 (2)
一. 推导矩阵 A A 的计算方法,即各向量 的计算方法。
1. 计算 a1 a 1
我们先考虑第一个新特征上的值 ξi1=∑pj=1a1jxij ξ 1 i = ∑ j = 1 p a 1 j x j i ,这个式子表示的是将原向量 xi x i 投影到向量 a1=[a11,a12,...,a1p] a 1 = [ a 11 , a 12 , . . . , a 1 p ] 上得到值