PCA算法的原及其示例.docVIP

  • 30
  • 0
  • 约8.75千字
  • 约 7页
  • 2016-10-06 发布于贵州
  • 举报
PCA算法的原及其示例

PCA算法的原理主成分分析是一种掌握事物主要矛盾的统计分析方法,它可以从多元事物中解析出主要影响因素,揭示事物的本质,简化复杂的问题对于某些复杂数据就可应用主成分分析法对其进行简化。计算主成分的目的是将数据投影到较低维空间。主成分分析 PCA算法的基本概念 PCA是Principal component analysis的缩写,中文翻译为主成分分析。主成分又称主分量、主元素。它是研究如何通过原来变量的少数几个线性组合来解释随机向量的方差协方差结构是数据压缩和特征提取中一种多维向量的统计分析应当注意主成分分析本身往往并不是目的而是达到目的的一种手段因此它多用在大型研究项目的某个中间环节。如把它用在多重回归便产生了主成分回归这种回归具有优良性质另外它在压缩、特征提取及分类应用中非常有用。YYT是对角阵。则P的行向量(也就是一组正交基),就是数据X的主元向量。 对CY进行推导: CY=YYT =(PX)(PX)T =PXXTPT =P(XXT)PT CY=PAPT 定义AXXT,则A是一个对称阵。对A进行对角化求取特征向量得: A=EDET 则D是一个对角阵,而E则是对称阵A的特征向量排成的矩阵。 这里要提出的一点是,A是一个m×m的矩阵,而它将有r(rm)个特征向量。其中r是矩阵A的秩。如果rm,则A即为退化阵。此时分解出的特征向量不能覆盖整个m空间。此时只需要在保证基的正交性的前提下,在剩余的空间中任意取得m-r维正交向量填充R的空格即可。它们将不对结果造成影响。因为此时对应于这些特征向量的特征值,也就是方差值为零。 求出特征向量矩阵后我们取P-ET,则A=PTDP,由线形代数可知P矩阵有性质P-1=PT,从而进行如下计算: CY=PAPT =P(PTDP)PT =(PPT)D(PPT) =(PP-1)D(PP-1) CY=D 可知此时的P就是我们需要求得变换基。至此我们可以得到PCA的结果: (X的主元即是XXT的特征向量,也就是矩阵P的行向量。 (矩阵CY对角线上第i个元素是数据X在方向Pi的方差。 我们可以得到PCA求解的一般步骤: 1)采集数据形成m×n的矩阵。m为观测变量个数,n为采样点个数。 2)在每个观测变量(矩阵行向量)上减去该观测变量的平均值得到矩阵X。 3)对XXT进行特征分解,求取特征向量以及所对应的特征根。 四、举例说明——基于PCA算法的人脸识别 PCA方法由于其在降维和特征提取方面的有效性,在人脸识别领域得到了广泛的应用。 PCA方法的基本原理是:利用K-L变换[3]抽取人脸的主要成分,构成特征脸空间,识别时将测试图像投影到此空间,得到一组投影系数,通过与各个人脸图像比较进行识别。利用特征脸法进行人脸识别的过程由训练阶段和识别阶段两个阶段组成。其具体步骤如下: 训练阶段 第一步:假设训练集有200个样本,由灰度图组成,每个样本大小为M*N,写出训练样本矩阵: 其中向量xi为由第i个图像的每一列向量堆叠成一列的MN维列向量,即把矩阵向量化,如下图所示: 如:第i个图像矩阵为 则xi为 第二步:计算平均脸[4] 计算训练图片的平均脸: 第三步:计算差值脸 计算每一张人脸与平均脸的差值: 第四步:构建协方差矩阵 第五步:求协方差矩阵的特征值和特征向量,构造特征脸空间 协方差矩阵的维数为MN*MN,考虑其维数较大,计算量比较大,所以采用奇异值分解(SingularValue Decomposition ,SVD)定理[5],通过求解AT A的特征值和特征向量来获得AAT的特征值和特征向量。 求出AT A的特征值 及其正交归一化特征向量 根据特征值的贡献率选取前p个最大特征向量及其对应的特征向量 贡献率是指选取的特征值的和与占所有特征值的和比,即: 一般取 即使训练样本在前p个特征向量集上的投影有99%的能量 求出原协方差矩阵的特征向量 则“特征脸”空间为: 第六步 将每一幅人脸与平均脸的差值脸矢量投影到“特征脸”空间,即 第一步:将待识别的人脸图像 与平均脸的差值脸投影到特征空间,得到其特征向量表示: 第二步:定义阈值 第三步:采用欧式距离来计算 与每个人脸的距离 为了区分人脸和非人脸,还需要计算原始图像 与由特征脸空间重建的图像 之间的距离 其中: 根据以下规则对人脸进行分类: 1)若 ,则输入图像不是人脸图像; 2)若 ,且 , 则输入图像包含未知人脸; 3)若 ,且 , 则输入图像为库中第k个人的人脸。 五、结束语 PCA技术的一大好处是对数据进行降维的处理。我们可以对新

文档评论(0)

1亿VIP精品文档

相关文档