数据降维:主成分分析法

前言

什么叫做主成分分析法,我们先看一张图椭圆的图,如果让你找一条线,使得椭圆上所有点在该线上映射的点最分散,保留下来的信息最多,你会怎么选择这条线?若是下图,会选择水平线,这是用一维的方式去尽可能多的表示二维的数据,那么多维的数据呢,是否可以用较低维的数据尽可能表示。

数据降维:主成分分析法_第1张图片

如何用二维的平面去尽可能表示一个椭球面呢?

数据降维:主成分分析法_第2张图片

思想

主成分分析法是一种统计方式,简化数据的方式,是一种线性变换,把数据变换到新的坐标系中,使得任意投影的第一大方差映射到第一主成分上,第二大方差映射到第二主成分上。如果舍弃高维的主成分,一般可以达到保留对方差贡献最大的特征,在一些方面上,可以保留数据的主要特征,当然,为了数据更好看,我们会把坐标轴的中心移到数据的中心,这可以让数据处理起来更方便。

数据降维:主成分分析法_第3张图片

在数学上

在数学上,我们用 $L^2$ 范数的平方($L^2$范数的平方与其本身在相同位置取得最小值,单调递增,性质更好)来计算,x 为输入,$c^*$ 为最优编码:

$$ c^*=(L^2)^2=argmin_c||x-g(c)||_2^2 \\\\ =(x-g(c))^T(x-g(c)) \\\\ =x^Tx-2x^Tg(c)+g(c)^Tg(c) \\\\ =argmin_c-2x^TDc+c^TI_lc \\\\ (其中c=f(x),g(c)=Dc) \\\\ \therefore\nabla_c(-2x^TDc+c^Tc)=0 \\\\ c=f(x)=D^Tx $$

由上可知,若要得到c只需要一个矩阵乘法。定义重构操作:

$$ r(x)=g(f(x))=DD^Tx \\\\ D^*=argmin_D\sqrt{\sum_{i,j}(x_j^{(i)}-r(x^{(i)})_j)^2} \\\\ 其中D^TD=I_l $$

经过复杂的 推导,用数学归纳法可以证明,矩阵 D 可以由前 $X^TX$ 的前 $l$ 个最大的特征值对应的特征向量组成。

总结

主成分分析法主要用于数据降维,目标为尽量减少原数据的损失的情况下,尽可能减少数据量。

  • 本文首发自RAIS

你可能感兴趣的:(算法,人工智能,深度学习,神经网络,机器学习)