Self Scaled Regularized Robust Regression

Self Scaled Regularized Robust Regression

一、论文思路介绍

1.1   \space  相关工作
  • 基于中位数的方法(Median-based)
         \space\space\space\space     由于中位数对于外点更加鲁棒,所以使用中位数来克服最小二乘法在数据拟合时的局限性。例如LMeds。但是不适用于高维回归问题。
  • M估计量方法(M-estimators)
         \space\space\space\space     用残差的非线性函数代替最大似然估计中的残余误差,几乎线性地惩罚来自内点的残差,但是由于异常值导致的残余误差饱和。但是由于最终优化的问题是非凸的,通过迭代梯度下降的办法不能保证收敛到最终的结果。
  • RANSAC
         \space\space\space\space     目标是最小化外点的数量,但是类似于LMeds都是基于拟合误差的,随机取样数据,分离内点和外点,存在组合性的问题,不适合解决高维回归。
  • 基于稀疏的凸方法(Sparsity-based convex)
         \space\space\space\space     基于自然假设:内点比外点多,基于稀疏性的凸方法通过最小化内部数据的最小平方误差来重新形成回归问题。但是这个方法是非凸性的。因此我们可以近似为凸优化问题。但是这个方法在外点数目很大时,效果非常差。
1.1   \space  本文创新点

本文主要针对在外点(outliers)噪声的情况下,建立一个鲁棒的线性映射。建立目标函数,最大化内点数量或者最小化外点数量。本文最终目标是通过最小化外点数量。与其他相关研究相比,本文主要有以下创新点:

  • 本文是直接对模型集合 { r − r i } \{r-r_i\} {rri}进行稀疏处理(sparsify)而不是对外点误差集合,这样的处理可以避免由于外点使得结果偏离。
  • 在本文提出的算法中,对数据进行了缩放,实验表明这一个特性改善了实际结果。
  • 由于针对模型进行了稀疏,可以发掘共现信息。本文使用了共现信息作为先验知识,而其他方法,由于不是针对model的,无法发现共现信息。
  • 对于外点的规模不敏感,也就是说在外点比例非常高的情况下,依旧可以得到不错的实验效果。

二、方法论述

  1. 问题定义
    首先定义内点集合:
                 \space\space\space\space\space\space\space\space\space\space\space\space              S i ( r ) = { x i : ∣ y i − x i T r ∣ ≤ ϵ } S_{i}(r)=\{x_i:|y_i-x_i^Tr|\leq\epsilon\} Si(r)={xi:yixiTrϵ}      \space\space\space\space      (1)
    其中为输入数据 x i x_i xi,i=1…N, x i x_i xi是一个d维的向量。 y i y_i yi是一个标量,i=1…N。r是一个d维的向量。我们的目标是求解一个回归函数,尽可能多的拟合内点,因此我们的目标函数是:
                 \space\space\space\space\space\space\space\space\space\space\space\space              r ∗ = a r g m a x r ∣ S i ( r ) ∣ r^*=argmax_{ r} |S_i(r)| r=argmaxrSi(r)      \space\space\space\space      (2)
    这里 ∣ S i ( r ) ∣ |S_i(r)| Si(r)表示的内点集合的大小,也就是内点的数量。也就是说在求解拟合最多内点时的回归参数 r ∗ r^* r。显然,最大化内点的数量也就是最小化外点的数量。一共有N个点, ∣ S i ( r ) ∣ |S_i(r)| Si(r)表示内点的数量,那么 N − ∣ S i ( r ) ∣ N-|S_i(r)| NSi(r)就是外点的数量。那么我们就可以将问题等价转化,我们从最大化内点数量的问题转化为最小化外点数量。于是,我们额外引入一个回归参数 r i r_i ri r i r_i ri是一个d维的向量。那么目标函数就可以变成如下形式:
              \space\space\space\space\space\space\space\space\space           r ∗ = a r g m i n r , r i ∣ ∣ r^* = argmin_{r,r_i}|| r=argminr,ri{ r − r i r-r_i rri} ∣ ∣ o ||_o o s u b j e c t   t o : subject \space to: subject to: ∣ y i − x i T r i ∣ ≤ ϵ |y_i-x_i^Tr_i|\leq\epsilon yixiTriϵ , i = 1... , N i=1...,N i=1...,N      \space\space\space\space      (3)
    其中 ∣ ∣ || { r − r i r-r_i rri} ∣ ∣ o ||_o o表示{ r − r i r-r_i rri}中非零元素的个数。当 ∣ ∣ || { r − r i r-r_i rri} ∣ ∣ o = 0 ||_o=0 o=0,即 r = r i r=r_i r=ri,也就是说 x i x_i xi属于 S i ( r ) S_i(r) Si(r)也就是内点。那么 ∣ ∣ || { r − r i r-r_i rri} ∣ ∣ o ||_o o表示的就是外点的数量,也就是说目标函数变成了求解最小化外点时的回归参数 r ∗ r^* r
  2. 加入自缩放(Self-Scaled)
    根据凸包(convex envelope),有如下定义:
                 \space\space\space\space\space\space\space\space\space\space\space\space              ∣ ∣ v ∣ ∣ 0 , e n v = ∑ i ∣ ∣ v i ∣ ∣ ∝ ||{v}||_0,env=\sum_{i} ||v_i||_\propto v0,env=ivi      \space\space\space\space      (4)
    如此一来,我们就可以将公式3中的 ∣ ∣ || { r − r i r-r_i rri} ∣ ∣ o ||_o o替换为 ∑ i = 1 N ∣ ∣ r − r i ∣ ∣ ∞ \sum_{i=1}^N||r-r_i||_\infty i=1Nrri,即:
         \space\space\space\space      m i n r , r i ∑ i = 1 N ∣ ∣ r − r i ∣ ∣ ∞ min_{r,r_i}\sum_{i=1}^N ||r-r_i||_\infty minr,rii=1Nrri s u b j e c t   t o : subject \space to: subject to: ∣ y i − x i T r i ∣ ≤ ϵ |y_i-x_i^Tr_i|\leq\epsilon yixiTriϵ , i = 1... , N i=1...,N i=1...,N      \space\space\space\space      (5)
    由上式可以看出,在没有约束的情况下,我们的目标函数其实就是一个加了缩放的传统 l 1 l_1 l1正则稳健回归。在公式5中,我们的约束条件:
    y i = x i T r i + η i y_i=x_i^Tr_i+\eta_i yi=xiTri+ηi ⟹ \Longrightarrow y i = x i T ( r i − r ) + x i T r + η i y_i=x_i^T(r_i-r)+x_i^Tr+\eta_i yi=xiT(rir)+xiTr+ηi ( ∣ η i ∣ ≤ ϵ ) (|\eta_i|\leq\epsilon) (ηiϵ) ⟹ \Longrightarrow x i T ( r − r i ) + x i T r + η i − y i x_i^T(r-r_i)+x_i^Tr+\eta_i-y_i xiT(rri)+xiTr+ηiyi ⟹ \Longrightarrow ∣ x i T ( r − r i ) ∣ = ∣ x i T r + η i − y i ∣ |x_i^T(r-r_i)|=|x_i^Tr+\eta_i-y_i| xiT(rri)=xiTr+ηiyi
    由于 l 1   l ∞ l_1\space l_\infty l1 l范数是对偶的,所以:
                 \space\space\space\space\space\space\space\space\space\space\space\space              ∣ ∣ r − r i ∣ ∣ ∞ ≥ ∣ x i T r + η i − y i ∣ ∣ ∣ x i ∣ ∣ 1 ||r-r_i||_\infty\geq\frac{|x_i^Tr+\eta_i-y_i|}{||x_i||_1} rrixi1xiTr+ηiyi      \space\space\space\space      (6)
    根据分量(component-wise),我们可以得到每个分量向量 r − r ~ i r-\tilde{r}_i rr~i,从而我们可以得到:
                 \space\space\space\space\space\space\space\space\space\space\space\space              ∣ ∣ r − r i ∣ ∣ ∞ = ∣ x i T r + η i − y i ∣ ∣ ∣ x i ∣ ∣ 1 ||r-r_i||_\infty=\frac{|x_i^Tr+\eta_i-y_i|}{||x_i||_1} rri=xi1xiTr+ηiyi      \space\space\space\space      (7)
    即原来的目标函数(公式5)变成了如下:
                 \space\space\space\space\space\space\space\space\space\space\space\space              m i n r , η ∑ i = 1 N ∣ y i − x i T + η i ∣ ∣ ∣ x i ∣ ∣ 1 min_{r,\eta}\sum_{i=1}^N\frac{ | y_i-x_i^T+\eta_i|}{||x_i||_1} minr,ηi=1Nxi1yixiT+ηi s u b j e c t   t o : subject \space to: subject to: ∣ η i ∣ ≤ ϵ |\eta_i|\leq \epsilon ηiϵ , i = 1... , N i=1...,N i=1...,N      \space\space\space\space      (8)
  3. 满足精确恢复条件,约束估计误差
    首先给定归一化数据矩阵 X n X_n Xn,每行的值 X n ( i ) X_n^{(i)} Xn(i)= x i T ∣ ∣ x i ∣ ∣ 1 \frac{x_i^T}{||x_i||_1} xi1xiT。然后对 X n X_n Xn进行正交三角分解得到 X n = Q R X_n=QR Xn=QR,其中Q为正交矩阵,R为上三角矩阵,我们定义 z = R r z=Rr z=Rr,这样一来我们就可以通过约束 △ z \bigtriangleup z z来约束 △ r \bigtriangleup r r。假定 y = X n r = Q R r = Q z y=X_nr=QRr=Qz y=Xnr=QRr=Qz,我们就可以利用压缩感知的方法来求解这个问题,当我们已知y和Q,当Q满足k限定等距性(k-RIP):满足 ( 1 − δ k ) ∣ ∣ v ∣ ∣ 2 ≤ ∣ ∣ [ Q I I ] v ∣ ∣ 2 2 ≤ ( 1 + δ k ) ∣ ∣ v ∣ ∣ 2 (1-\delta_k)||v||^2\leq||[Q I_I]v||_2^2\leq(1+\delta_k)||v||^2 (1δk)v2[QII]v22(1+δk)v2和其推论时,我们就可以通过y和Q得到z,并且精确得恢复得到r。由于 L 0 L_0 L0范数最小化是个NP难问题,庆幸的是 L 1 L_1 L1范数最小化在一定条件下与L_0范数最小化问题同解,所以我们只需要关注以下目标来求解压缩感知问题:
                 \space\space\space\space\space\space\space\space\space\space\space\space              m i n r , η ∣ ∣ s ^ ∣ ∣ 1 , s u b j e c t   t o : y ^ = X n r + η ^ + s ^ min_{r,\eta}||\hat{s}||_1 ,subject \space to:\hat{y}=X_nr+\hat{\eta}+\hat{s} minr,ηs^1,subject to:y^=Xnr+η^+s^      \space\space\space\space      (9)
    其中 y ^ = y i ∣ ∣ x i ∣ ∣ 1 \hat{y}=\frac{y_i}{||x_i||_1} y^=xi1yi, s i ^ = s i ∣ ∣ x i ∣ ∣ 1 \hat{s_i}=\frac{s_i}{||x_i||_1} si^=xi1si, η ^ = η i ∣ ∣ x i ∣ ∣ 1 \hat{\eta}=\frac{\eta_i}{||x_i||_1} η^=xi1ηi, s i = x i T ( r − r i ) s_i=x_i^T(r-r_i) si=xiT(rri)(外点向量)。这证明了我们对模型集合进行稀疏的可行性。
  4. 使用共现信息作为先验
    众所周知,确定集合的点具有相同的标签,也就是出现在同一个集合的点倾向于有相同的标签。比如,同一个集合里的点都是内点。因此,我们就可以将这个信息作为约束来优化公式(3)。我们将具有相同标签的点的下标集合设为 I I I。在没有噪声的情况下,当 y I ∈ s p a n − c o l ( X I ) y_I\in span-col(X_I) yIspancol(XI) 并且 r a n k ( X I ) ≤ d rank(X_I)\leq d rank(XI)d时,至少存在一个 r ∗ r^* r使得 y I = X I r ∗ y_I=X_Ir* yI=XIr,因此我们可以添加一个额外的约束:对于任意 i ∈ I i\in I iI,都有 r i = r I r_i=r_I ri=rI。我们可以将这一约束添加到我们的目标函数(公式3),并且不改变优化的域。因为如果 I I I里都是内点,那么不改变约束。如果 r ∗ r^* r是外点,也对目标没有影响。这个信息对于有噪声的情况同样适用。除此之外,我们实际上我们的矩阵X不总是满秩的,显然对于线性函数来说,当y=0时,解不唯一。所以我们给r添加额外的约束使得解唯一。其中一种约束方式是使 u T r = 1 u^Tr=1 uTr=1,我们令 u = I u=I u=I,则存在约束使得 ∑ r ( j ) = 1 \sum r^{(j)}=1 r(j)=1。由于添加了额外的约束,所以我们修改公式8,即:
                        \space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space                     r ~ i ( j ) = r ( j ) \tilde{r}_i^{(j)}=r^{(j)} r~i(j)=r(j) − ( x i T r + η i − y i ) -(x_i^Tr+\eta_i-y_i) (xiTr+ηiyi) s i g n ( x i ( j ) − x m e d i a n ) ∣ ∣ x i ( j ) − x m e d i a n ∣ ∣ 1 \frac{sign(x_i^{(j)}-x_{median})}{||x_i^{(j)}-x_{median}||_1} xi(j)xmedian1sign(xi(j)xmedian)      \space\space\space\space      (10)
    相应的损失函数为:
                        \space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space                     ∣ ∣ r ~ i ( j ) − r ( j ) ∣ ∣ ∞ ||\tilde{r}_i^{(j)}-r^{(j)}||_\infty r~i(j)r(j)= x i T r + η i − y i ∣ ∣ x i ( j ) − x m e d i a n ∣ ∣ 1 \frac{x_i^Tr+\eta_i-y_i}{||x_i^{(j)}-x_{median}||_1} xi(j)xmedian1xiTr+ηiyi      \space\space\space\space      (11)

三、算法描述

  1. 初始化: w 0 ← { 1 , . . . , 1 } , τ = 1 0 − 2 w_0 \leftarrow \{1,...,1\},\tau=10^{-2} w0{1,...,1},τ=102 。我们之前已经对 { r − r i } \{r-r_i\} {rri}进行稀疏处理,所以现在 { r − r i } \{r-r_i\} {rri}是稀疏的,所以我们现在想要使得内点数量尽可能大,所以我们进行再加权,参数为W。
  2. 计算r:
    { r k , r i k } \{r^k,r_i^k\} {rk,rik}= a r g m i n r , r i ∑ i = 1 N w i k ∣ ∣ r − r i ∣ ∣ ∞ argmin_{r,r_i}\sum_{i=1}^N w_i^k||r-r_i||_\infty argminr,rii=1Nwikrri s u b j e c t   t o : subject \space to: subject to: ∣ y i − x i T r i ∣ ≤ ϵ |y_i-x_i^Tr_i|\leq\epsilon yixiTriϵ , i = 1... , N i=1...,N i=1...,N
    其中, ∣ ∣ r ~ i ( j ) − r ( j ) ∣ ∣ ∞ ||\tilde{r}_i^{(j)}-r^{(j)}||_\infty r~i(j)r(j)= x i T r + η i − y i ∣ ∣ x i ( j ) − x m e d i a n ∣ ∣ 1 \frac{x_i^Tr+\eta_i-y_i}{||x_i^{(j)}-x_{median}||_1} xi(j)xmedian1xiTr+ηiyi。这个过程可以通过计算梯度来求解。
  3. 更新参数w:
                     \space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space                  w i k + 1 ( i ) = ( ∣ ∣ r k − r i k ∣ ∣ ∞ + τ ) − 1 w_i^{k+1}(i)=(||r^k-r_i^k||_\infty+\tau)^{-1} wik+1(i)=(rkrik+τ)1
    其中添加 τ \tau τ是为了防止 ∣ ∣ r k − r i k ∣ ∣ ∞ ||r^k-r_i^k||_\infty rkrik不满秩无法求逆,是一种常用的办法。
  4. 不断重复步骤2、3。直到 w i k + 1 w_i^{k+1} wik+1不变,即收敛。

四、实验分析

本文根据实验数据主要做了两个实验,第一组实验使用合成数据拟合超平面,第二组实验使用真实数据重建损坏的面部图像。

  1. 第一组实验。我们与8个回归方法进行对比。包括随机算法(RANSAC、MSAC、MLEASAC、LMEDS)、M-estimator、稳健RPCA、RR、BPRR。其中BPRR与本文的思想最为接近。我们的算法在外点比例较低和较高的情况下都表现最好。当外点的百分比为70%及以上时,随机算法显示出显着的性能下降,显示了我们的方法的优势。 此外,并不是所有凸规划外点噪声很大的情况下都具有相似的稳健性。比如,BPRR算法的早期失败说明了本文提出的方法的自缩放特性的重要性。为了评估使用先验知识的影响,我们进行如下实验。 在没有先验的过程完成后,不超过一半的假阳性点与一个真阴性点随机配对,并且不超过一半的假阴性点随机配对到真阳性点。 在大量异常噪声下,结合附加共现信息可以将所提出的算法的性能提高5%至10%。

  2. 第二组实验。本组试图重建已经被重度遮挡破坏的面部图像,其中遮挡像素构成外点。我们的实验目标是:给定数据库中对象的损坏的面部图像,获得真实面部图像的最佳重建。实验为每人重建一张图像。 通过随机放置10块尺寸为30×30的块来模拟遮罩。使用均方根度量标准评估算法的性能。实验表明,作者的方法在平均RMS和模型误差上表现是最好的,并且恢复的图像在视觉上更接近未被遮挡的原始图像。此外,本文进行了另外一组实验:给所有SAC算法(RANSAC,MSAC,MLESAC,LMeds)一些额外的时间。我们设置迭代次数,以便这些算法可以使用与提出的算法所用时间一样多或更长的时间。 虽然额外的时间提高了SAC算法的性能,但依然没有本文的方法效果好。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值