Principal component analysis(PCA)-- 主成分分析2.0

前情回顾:

Principal component analysis(PCA)--主成分分析1.0

(本节主要内容请参考“总结”或目录)

在进入PCA算法的推导之前,我们需要先熟知几个核心数学概念

Mathematical Background

拉格朗日数乘法

对于某个具有约束条件的函数,我们常用拉格朗日数乘法求解该函数的极值

Suppose we want to optimise f(x) subject to some constraint, 'g(x)=0'

Then we define a new objective:

and optimise with respect to both x and λ

特征值与特征向量

对于某个方阵 A ,如果存在

则称向量 u 为方阵 A特征向量(eigenvector),λ 为方阵 A特征值(eigenvalue)

矩阵求导

Principal component analysis(PCA)-- 主成分分析2.0_第1张图片

其中 x 是具有D个维度的矩阵/向量

Identities

if A is symmetrical:

Principal component analysis(PCA)-- 主成分分析2.0_第2张图片
Principal component analysis(PCA)-- 主成分分析2.0_第3张图片

如果想详细了解,可以参考维基百科上的'Matrix calculus'

Setup

接下来我们将研究从数学上写出PCA是如何实现从高维降至低维的

假设有一组n个具有D维特征的数据集(),我们想将它降维至M维()(M

(PS:为了方便后续的数据处理,假定原数据集已被归一化为零均值)

为了实现降维效果,或者说实现高维投影至低维,我们需要先设计出M个投影向量()。其中,投影向量 ,……,单位正交向量组

The projection of the item onto the dimension is

(PS:个人理解,第n个数据点 在低维空间的第m个维度上的投影为,该维度上的基向量乘上该点数据)


Q1:为什么投影向量与原数据集维度一样?

数据降维的本质其实就是用低维空间中的点去近似替代高维空间的点。而在确定低维空间近似点的位置时,需要借助低维空间的基向量表示,但这些基向量原本就存在于高维空间中,因此基向量的维度与高维一致。上述提及的M个投影向量实际上就是构建出M维(低维)空间的一组基向量。

Principal component analysis(PCA)-- 主成分分析2.0_第4张图片

例如,在1.0中提及的三维降二维的过程中,将三维空间的每个点投影至某个平面上。在该平面上的近似点均可用基向量表示为二维,但是平面的基向量是存在于三维空间的。

(以上均为个人理解,如有出错,请在评论区纠正)

Q2:上述的投影公式如何得出?

参考向量的投影公式,

上的投影为:为单位向量)

这是向量相乘的形式,若写成矩阵相乘,则为上述的投影公式


Projection

因此, 将会被投影至低维空间的

Principal component analysis(PCA)-- 主成分分析2.0_第5张图片

其中, 大小为M×D, 大小为D×1, 大小为M×1

This will tell us if I give you a specific data point and the projection vectors, then you can map that to the lower dimension by just basically take times .

Reconstruction

在“projection”中,我们已经知道如何将高维数据点 投影至低维空间 。但有时,我们希望能 go from and back to 。这看似不太可能,因为 已经丢失了一部分 的信息。但是我们可以让投影点回到原维度中(表示为),并将 视作原数据点 的近似。

(PS: 均是投影点,但 是用低维空间的基向量表示,是低维向量; 是用原维度空间的基向量表示,是高维向量)

Principal component analysis(PCA)-- 主成分分析2.0_第6张图片

例如,假设有一组具有二维特征的数据集(如上图所示)。我们知道 方向上的投影为原点到投影点的长度,也就是。(PS:由于是一维,所以未写成向量形式)

因此,该投影点在原维度空间可表示为:

In general, you can extend this to arbitrary dimensions:

where

This will tell us if I give you a lower dimensional data point and the projection vectors, then you can resconstruct the original data point approximately by just basically take times .

总结

本节主要介绍了PCA的projection和reconstruction两个数学过程。只要知道投影向量,我们就能实现高维向低维的投影以及低维向高维的重建。但是,我们怎么得到投影向量呢?这将在下一节详谈。

你可能感兴趣的:(数据降维,PCA,算法,数据分析,深度学习)