PCA的简单解释,以减少数据集的维数



我知道PCA不会告诉您数据集的哪些特征最显着,但哪些特征组合保持最大的方差。

如何利用 PCA 旋转数据集的事实,使其在第一维上具有最大的方差,沿第二维具有第二大方差,依此类推来降低数据集的维数?

我的意思是,更深入地说,如何使用第一个 N 特征向量将特征向量转换为保留大部分方差的低维表示?

X是一个N x d矩阵,其中每一行X_{n,:}都是数据集中的一个向量。

然后X'X是协方差矩阵,特征分解给出X'X=UDU'其中U是具有U'U=I的特征向量的d x d矩阵,D是特征值的d x d对角矩阵。

特征分解的形式意味着U'X'XU=U'UDU'U=D这意味着如果按U转换数据集,则新数据集 XU 将具有对角协方差矩阵。

如果特征值

从大到小排序,这也意味着第一个变换特征(由表达式 U_1'X'XU_1=sum_n (sum_d U_{1,d} X_{n,d})^2 给出(的平均平方值将大于第二个特征,第二个特征大于第三个特征,依此类推。

如果我们从

最大到最小平均值对数据集的特征进行排序,那么如果我们只是去掉平均值较小的特征(并且大平均值的相对大小比小平均值大得多(,那么我们就不会丢失太多信息。这就是概念。

最新更新