A pure L1-norm principal component analysis

A pure L1-norm principal component analysis

虽然没有完全弄清楚其中的数学内涵,但是觉得有趣,记录一下.

问题

众所周知,一般的PCA(论文中以 L 2 − P C A L_2-PCA L2PCA表示)利用二范数构造损失函数并求解,但是有一个问题就是会对异常值非常敏感. 所以,已经有许多的PCA开始往 ℓ 1 \ell_1 1范数上靠了,不过我所知道的和这篇论文的有些不同.

像是Zou 06年的那篇SPCA中:
在这里插入图片描述
注意到, ℓ 1 \ell_1 1作用在 β \beta β上,以此来获得稀疏化.

这篇论文似乎有些不同,从回归的角度考虑, 一般的回归问题是最小化下列损失函数:
∑ i = 1 n ( y i − ( β 0 + β T x i ) ) 2 . \sum_{i=1}^n (y_i - (\beta_0 + \mathbf{\beta}^Tx_i))^2. i=1n(yi(β0+βTxi))2.
为了减小异常值的影响,改用:
∑ i = 1 n ∣ y i − ( β 0 + β T x i ) ∣ . \sum_{i=1}^n |y_i - (\beta_0 + \mathbf{\beta}^Tx_i)|. i=1nyi(β0+βTxi).
而作者指出,上面的问题可以利用线性规划求解:
在这里插入图片描述
回到PCA上,我们希望找到一个方向,样本点到此方向上的 ℓ 1 \ell_1 1距离之和最短(可能理解有误的).

细节

L 1 − P C A L_1-PCA L1PCA的损失函数

首先,假设输入的数据 x i ∈ R m x_i \in \mathbb{R}^m xiRm, 并构成数据矩阵 X ∈ R n × m X \in \mathbb{R}^{n \times m} XRn×m. 首先,作者希望找到一个 m − 1 m-1 m1维的子空间,而样本点到此子空间的 ℓ 1 \ell_1 1距离和最短. 在此之前,需要先讨论距离的计算.

在这里插入图片描述
从上图可以看到,一个点到一个超平面 S S S ℓ 1 \ell_1 1距离并不像普通的欧氏距离一样,实际上,可以这么定义点到子空间的距离:
d ( x , S ) = inf ⁡ { ∥ x − z ∥ ∣ ∀ z ∈ S } . d(x,S)=\inf \{\|x-z\|| \forall z \in S\}. d(x,S)=inf{xzzS}.
假设超平面S由 β T x = 0 \beta^T x=0 βTx=0刻画(假设其经过原点), 则:
首先,对于一个样本点 x i x_i xi, 选择一个 j j j, 令 y i = z i , i = ̸ j y_i=z_i, i = \not j yi=zi,i≠j, 而 y j y_j yj定义为(假设 β j = ̸ 0 \beta_j = \not 0 βj≠0):
− ∑ i = ̸ j β i x i β j -\frac{\sum_{i = \not j} \beta_i x_i}{\beta_j} βji≠jβixi
于是容易证明 β T y = 0 \beta^T y=0 βTy=0, 也就是 y ∈ S y \in S yS.

下面证明, 如果这个 j j j使得 ∣ β j ∣ ≥ ∣ β i ∣ , ∀ i = ̸ j |\beta_j| \ge |\beta_i|, \forall i = \not j βjβi,i≠j, 那么 ∣ x − y ∣ |x-y| xy就是 x x x ℓ 1 \ell_1 1距离. 首先证明,在只改变一个坐标的情况下是最小的, 此时:
∣ x − y ∣ = ∣ x j + ∑ i = ̸ j β i x i β j ∣ = ∣ ∑ i β i x i β j ∣ = ∣ β T x ∣ ∣ β j ∣ . |x-y| = |x_j+\frac{\sum_{i = \not j} \beta_i x_i}{\beta_j}|=|\frac{\sum_{i } \beta_i x_i}{\beta_j}|=\frac{|\beta^Tx|}{|\beta_j|}. xy=xj+βji≠jβixi=βjiβixi=βjβTx.
因为分子是固定的,所以分母越大的距离越短,所以在只改变一个坐标的情况下是如此,下面再利用数学归纳法证明,如果距离最短,那么必须至多只有一个坐标被改变.
m = 2 m=2 m=2的时候容易证明,假设 m = k − 1 m=k-1 m=k1的时候已经成立,证明 m = k m=k m=k也成立:
如果 x , y x, y x,y已经存在一个坐标相同,那么根据前面的假设可以推得 m = k m=k m=k成立,所以 x , y x, y x,y必须每个坐标都完全不同. 不失一般性,选取 β 1 , β 2 \beta_1, \beta_2 β1,β2,且假设均不为0, 且 ∣ β 1 ∣ ≤ ∣ β 2 ∣ |\beta_1| \le |\beta_2| β1β2.
y 1 ′ = x 1 , y 2 ′ = y 2 − β 1 ( x 1 − y 1 ) β 2 y'_1=x_1, y'_2=y_2-\frac{\beta_1(x_1-y_1)}{\beta_2} y1=x1,y2=y2β2β1(x1y1),其余部分于 y y y保持相同.则距离产生变化的部分为:
∣ x 1 − y 1 ′ ∣ + ∣ x 2 − y 2 ′ ∣ = ∣ y 2 − x 2 − β 1 ( x 1 − y 1 ) β 2 ∣ ≤ ∣ y 2 − x 2 ∣ + ∣ x 1 − y 1 ∣ |x_1-y_1'|+|x_2-y_2'|=|y_2-x_2 - \frac{\beta_1(x_1-y_1)}{\beta_2}|\le |y_2-x_2|+|x_1-y_1| x1y1+x2y2=y2x2β2β1(x1y1)y2x2+x1y1
所以,新的 y ′ y' y有一个坐标相同,而且距离更短了,所以 m = k m=k m=k也成立.

所以,我们的工作只需要找到最大 ∣ β j ∣ |\beta_j| βj所对应的 j j j即可.

所以,我们的损失函数为:
∑ i ∣ β T x i ∣ ∣ β j ∣ . \sum_i \frac{|\beta^T x_i|}{|\beta_j|}. iβjβTxi.
因为比例的关系,我们可以让 β j = − 1 \beta_j=-1 βj=1而结果不变:
∑ i ∣ x i j − ∑ k = ̸ j β k x i k ∣ . \sum_i |x_{ij}-\sum_{k = \not j}\beta_kx_{ik}|. ixijk≠jβkxik.
x i j x_{ij} xij看成是 y y y,那么上面就变成了一个 ℓ 1 \ell_1 1回归问题了. 当然我们并不知道 j j j,所以需要进行 m m m次运算,来找到 j ∗ j^* j使得损失函数最小. 这样,我们就找到了一个 m − 1 m-1 m1维的子空间.

算法如下:
在这里插入图片描述

L 1 − P C A L_1-PCA L1PCA算法

在这里插入图片描述

因为PCA的目的是寻找一个方向,而不是一个子空间,所以需要不断重复寻找子空间的操作,这个地方我没怎么弄懂,不知是否是这样:

  1. 找到了一个子空间
  2. 将数据点投影到子空间上
  3. 寻找新的坐标系,则数据会从 k k k–> k − 1 k-1 k1
  4. 在新的数据中重复上面的操作直至 k = 1 k=1 k=1.

有几个问题:

投影

对应算法的第4步,其中
在这里插入图片描述
需要一提的是,这里应该是作者的笔误,应当为:
( I j ∗ ℓ j ∗ ) m = β ℓ m , ℓ = ̸ j ∗ , (I_{j^* \ell}^{j^*})^m = \beta_{\ell}^m, \ell = \not j^*, (Ijj)m=βm,≠j,

理由有二:

首先,投影,那么至少要满足投影后的应当在子空间中才行,以3维样本为例: x = ( x 1 , x 2 , x 3 ) T , j = 2 x=(x_1, x_2, x_3)^T, j=2 x=(x1,x2,x3)T,j=2,
按照修改后的为:
z = ( x 1 , β 1 x 1 + β 3 x 3 , x 3 ) z = (x_1, \beta_1x_1+\beta_3 x_3, x_3) z=(x1,β1x1+β3x3,x3)
于是 β T z = 0 \beta^Tz=0 βTz=0, 而按照原先则不成立,
其次,再后续作者给出的例子中也可以发现,作者实际上也是按照修改后的公式进行计算的.

另外,提出一点对于这个投影方式的质疑. 因为找不到其理论部分,所以猜想作者是想按照 ℓ 1 \ell_1 1的方式进行投影,但是正如之前讲的, ℓ 1 \ell_1 1的最短距离的投影是要选择 ∣ β j ∣ |\beta_j| βj最大的 j j j,而之前选择的 j ∗ j^* j并不能保证这一点.

坐标系

论文中也有这么一段话.

在这里插入图片描述

既然 ℓ 1 \ell_1 1范数不具备旋转不变性,那么如何保证这种坐标系的选择是合适的呢,还有,这似乎也说明,我们最后选出来的方向应该不是全局最优的吧.

载荷向量

α k \alpha^k αk是第k个子空间的载荷向量,所以,所以和SPCA很大的一个区别是它并不是稀疏的.
另外,它还有一个性质,和由 V k V^k Vk张成的子空间正交,这点很好证明,因为 Z k β = 0 Z^k\beta=0 Zkβ=0.

总的来说,我觉得这个思想还是蛮有意思的,但是总觉得缺乏一点合理的解释,想当然的感觉…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值