Matrix Rank Minimization with Application精简版

问题陈述

Rank Minimization Problem (RMP):
min ⁡ rank ( X ) s.t. X ∈ C \min\quad\textrm{rank}(X)\\ \textrm{s.t.}\quad X\in C minrank(X)s.t.XC
其中 X ∈ R m × n X\in\R^{m\times n} XRm×n是自变量, C C C 是一个凸集。

  • 该问题是一个NP-hard问题
  • 引起广泛应用
  • 需要找到参数少、低阶、低复杂度的简单模型

方法

Exact methods

特殊情况下的解析解(SVD,EV)

min ⁡ rank ( X ) s.t. ∥ X − A ∥ 2 , F ≤ b \min\quad\textrm{rank}(X)\\ \textrm{s.t.}\quad\lVert X-A\rVert_{2,F}\le b minrank(X)s.t.XA2,Fb

  • solution:A是缺失大量值的矩阵,X是将缺失值补全的矩阵
    • A的奇异值分解的 r 个最大项的和, σ r + 1 ≤ b \sigma_{r+1}\le b σr+1b下 r 个最小的数.
  • applications:因子分析、MDS、阵列信号处理、子空间方法、…
能简化为凸问题的特殊情况
一般情况:全局优化(分支和边界)
  • impractical for problem sizes of interest

Heuristic methods

分解法
  • idea: rank ( X ) ≤ r \textrm{rank}(X)\le r\quad rank(X)r iff ∃    F , G \exist\;F,G\quad F,G s.t. X = F G X=FG X=FG, where F ∈ R m × r , G ∈ R r × n F\in\R^{m\times r}, G\in\R^{r\times n} FRm×r,GRr×n
  • comments:
    • a. 要求用户提供的初始点——non-trivial
    • b. 根据经验,它的性能比其他方法差
交替投影:
  • idea: 交替投影到 秩不变和约束集的 一系列矩阵上。
  • comments:
    • a. 要求用户提供的初始点——non-trivial
    • b. 通常需要大量的迭代(100秒,甚至1000秒),因此,如果不能解析地完成迭代,计算成本非常高
      在这里插入图片描述
Analytic anti-centering/potential reduction

期望低秩解位于可行解的边界上。(内点法中的)牛顿法遵循从边界到解析中心的路径。

  • idea: 沿着牛顿路径从解析中心到边界
  • comments:
    • 要求用户提供的初始点(并且对它高度敏感)
    • 只适用于半正定(PSD, Positive Semidefinite)矩阵
    • 实现复杂

新方法

1 Trace heuristic for PSD matrices

observation: 对于 X = X T ≥ 0 X=X^T\ge0 X=XT0,最小化迹 在实践中 往往给出低秩解。
建议如下:
RMP: min ⁡ rank ( X ) s.t. X ∈ C \textrm{RMP:}\\ \min\quad\textrm{rank}(X)\\ \textrm{s.t.}\quad X\in C RMP:minrank(X)s.t.XC
Trace heuristic: min ⁡ Tr ( X ) s.t. X ∈ C \textrm{Trace heuristic:}\\ \min\quad\textrm{Tr}(X)\\ \textrm{s.t.}\quad X\in C Trace heuristic:minTr(X)s.t.XC

  • 简单而有效
  • 凸问题,因此可以有效地解决,不需要初始点
  • 如果可行解有界,则给出目标的下边界
  • 变体:加权迹最小化
    min ⁡ Tr ( W X )  s.t.  X ∈ C \begin{aligned}&\min\quad\textrm{Tr}(WX)\\ &\textrm{ s.t. }\quad X\in C\end{aligned} minTr(WX) s.t. XC
    其中 W = W T > 0 W=W^T>0 W=WT>0.

intuition: 用凸函数 Tr ( X ) \textrm{Tr}(X) Tr(X) 替换 rank ( X ) \textrm{rank}(X) rank(X)

  • 注: rank ( X ) = \textrm{rank}(X) = rank(X)= 非零的 λ i \lambda_i λi的数量, Tr ( X ) = ∑ i λ i \textrm{Tr}(X) = \sum_i\lambda_i Tr(X)=iλi
    其中, λ i \lambda_i λi X X X 的特征值.
  • 如果 λ i ≤ 1 \lambda_i\le1 λi1,则 Tr ( X ) ≤ rank ( X ) \textrm{Tr}(X)\le\textrm{rank}(X) Tr(X)rank(X)
  • 适用条件: 当且仅当 X = X T ≥ 0 X=X^T\ge0 X=XT0

2 Log-det heuristic for PSD matrices

对于 X = X T ≥ 0 X=X^T\ge0 X=XT0
RMP: min ⁡ rank    X  s.t.  X ∈ C \textrm{RMP:}\\ \begin{aligned}&\min\quad\textrm{rank}\;X\\ &\textrm{ s.t. }\quad X\in C\end{aligned} RMP:minrankX s.t. XC
Log-det heuristic: min ⁡ log ⁡ det ⁡ ( X + δ I )  s.t.  X ∈ C \textrm{Log-det heuristic:}\\ \begin{aligned}&\min\quad\log\det(X+\delta I)\\ &\textrm{ s.t. }\quad X\in C\end{aligned} Log-det heuristic:minlogdet(X+δI) s.t. XC

  • 目标是 非凸的(实际上是凹的)
  • 可以使用任何局部优化方法,找到局部最小值;特别是,可以迭代线性化,并在每一步解决线性化(凸)问题。

由此产生 迭代法:
X k + 1 = arg min ⁡ X ∈ C    Tr ( ( X k + δ I ) − 1 X ) X_{k+1}=\argmin_{X\in C}\;\textrm{Tr}((X_k+\delta I)^{-1}X) Xk+1=XCargminTr((Xk+δI)1X)
即,迭代加权迹最小化:
X k + 1 = arg min ⁡ X ∈ C    Tr ( W k X ) W k = ( X k + δ I ) − 1 X_{k+1}=\argmin_{X\in C}\;\textrm{Tr}(W_kX)\\ W_k=(X_k+\delta I)^{-1} Xk+1=XCargminTr(WkX)Wk=(Xk+δI)1

  • 每次迭代都是一个凸问题,因此得到了有效的解决
  • 可以显示迭代收敛到 log ⁡ det ⁡ ( X + δ I ) \log\det(X+\delta I) logdet(X+δI) 的局部最小值(利用 log ⁡ det ⁡ ( X + δ I ) \log\det(X+\delta I) logdet(X+δI) X X X 上的凹特性)
  • 如果 X 0 = I X_0=I X0=I,那么第一次迭代与 trace heuristic 相同(因此,迭代细化为 trace heuristic的结果)
  • 在实践中,需要很少的迭代(大概5-6次)

intuition:

  • 注: rank ( X ) = λ i \textrm{rank}(X)= \lambda_i rank(X)=λi 中非零元素的个数,
    log ⁡ det ⁡ ( X + δ I ) = log ⁡ ∏ i ( λ i + δ ) = ∑ i log ⁡ ( λ i + δ ) \log\det(X+\delta I)=\log\prod_i(\lambda_i+\delta)=\sum_i\log(\lambda_i+\delta) logdet(X+δI)=logi(λi+δ)=ilog(λi+δ)
  • 适用条件: 当且仅当 X = X T ≥ 0 X=X^T\ge0 X=XT0

3 Semidefinite embedding

question: 我们能否将后两种 heuristics 推广到一般矩阵?

引理: X ∈ R m × n X\in\R^{m\times n} XRm×n,则 rank ( X ) ≤ r iff    ∃    Y = Y T ∈ R m × m    and    Z = Z T ∈ R n × n s.t. \textrm{rank}(X)\le r\quad \textrm{iff}\;\exist\;Y=Y^T\in\R^{m\times m}\;\textrm{and}\; Z=Z^T\in\R^{n\times n}\quad\textrm{s.t.} rank(X)riffY=YTRm×mandZ=ZTRn×ns.t.
rank [ Y 0 0 Z ] ≤ 2 r , [ Y X X T Z ] ≥ 0 \textrm{rank}\begin{bmatrix}Y&0\\0&Z\end{bmatrix}\le2r,\quad\begin{bmatrix}Y&X\\X^T&Z\end{bmatrix}\ge0 rank[Y00Z]2r,[YXTXZ]0

结论: 可以将一般矩阵的秩 与 PSD(对称)矩阵的秩 联系起来,因此,可以将一般秩问题 嵌入到 一个只涉及PSD矩阵的更大的秩问题中。

证明:
假设 rank ( X ) = r 0 ≤ r \textrm{rank}(X)=r_0\le r rank(X)=r0r,then X = L R , L ∈ R m × r 0 , R ∈ R r 0 × n X=LR,L\in\R^{m\times r_0},R\in\R^{r_0\times n} X=LR,LRm×r0,RRr0×n,且 rank ( L ) = rank ( R ) = r 0 \textrm{rank}(L)=\textrm{rank}(R)=r_0 rank(L)=rank(R)=r0.
Y = L L T , Z = R T R Y=LL^T, Z=R^TR Y=LLT,Z=RTR满足引理的条件,
[ Y X X T Z ] = [ L R T ] [ L T R ] ≥ 0 \begin{bmatrix}Y&X\\X^T&Z\end{bmatrix}=\begin{bmatrix}L\\R^T\end{bmatrix}\begin{bmatrix}L^T&R\end{bmatrix}\ge0 [YXTXZ]=[LRT][LTR]0
⇐ \Leftarrow w.l.o.g[^5],假设 rank ( Y ) ≤ rank ( Z ) \textrm{rank}(Y)\le\textrm{rank}(Z) rank(Y)rank(Z),Schur补充
[ Y X X T Z ] ≥ 0 ⇔ { (i) Y > 0 (ii) X T ( I − Y Y † ) = 0 (iii) Z − X T Y † X ≥ 0 \begin{bmatrix}Y&X\\X^T&Z\end{bmatrix}\ge0\Leftrightarrow\begin{cases}\textrm{(i)}&Y>0\\\textrm{(ii)}&X^T(I-YY^{\dag})=0\\\textrm{(iii)}&Z-X^TY^{\dag}X\ge0\end{cases} [YXTXZ]0(i)(ii)(iii)Y>0XT(IYY)=0ZXTYX0
根据 (ii) ,利用 rank ( X ) = n − dim ⁡    N ( X ) = m − dim ⁡    N ( X T ) \textrm{rank}(X)=n-\dim\;N(X)=m-\dim\;N(X^T) rank(X)=ndimN(X)=mdimN(XT)得到
N ( X T ) ⊇ N ( Y ) ⇒ dim ⁡    N ( X T ) ≥ dim ⁡    N ( Y ) , ⇒ rank ( Y ) ≥ rank ( X T ) = rank ( X ) \begin{aligned}N(X^T)\supe N(Y)\qquad&\Rightarrow\qquad\dim\;N(X^T)\ge\dim\;N(Y),\\&\Rightarrow\qquad\textrm{rank}(Y)\ge\textrm{rank}(X^T)=\textrm{rank}(X)\end{aligned} N(XT)N(Y)dimN(XT)dimN(Y),rank(Y)rank(XT)=rank(X)
因此, 2 rank ( X ) ≤ rank ( Y ) + rank ( Z ) 2\textrm{rank}(X)\le\textrm{rank}(Y)+\textrm{rank}(Z) 2rank(X)rank(Y)+rank(Z) 或者 rank ( X ) ≤ r \textrm{rank}(X)\le r rank(X)r.

RMP的等效PSD形式

回归于 RMP
min ⁡ rank ( X )  s.t. X ∈ C \begin{aligned}&\min&&\textrm{rank}(X)\\ &\textrm{ s.t.}&&X\in C\end{aligned} min s.t.rank(X)XC
通过嵌入引理,它等价于
min ⁡ rank [ Y 0 0 Z ]  s.t.  [ Y X X T Z ] ≥ 0 \min\quad\textrm{rank}\begin{bmatrix}Y&0\\0&Z\end{bmatrix}\\ \textrm{ s.t. }\quad\begin{bmatrix}Y&X\\X^T&Z\end{bmatrix}\ge0 minrank[Y00Z] s.t. [YXTXZ]0
其中,变量 X ∈ R m × n , Y ∈ R m × m , z ∈ R n × n X\in\R^{m\times n}, Y\in\R^{m\times m}, z\in\R^{n\times n} XRm×n,YRm×m,zRn×n

  • X X X是一般的矩阵, Y Y Y Z Z Z 是对称的PSD矩阵
  • 任意最小化PSD矩阵秩的方法都适用
  • 可以利用 X X X 的结构(如:块对角、对称)来减少变量的数量

4 Trace heuristic for general matrices

将 trace heuristic 应用于 RMP 的 PSD形式,得出
min ⁡ Tr [ Y 0 0 Z ]  s.t. [ Y X X T Z ] ≥ 0 X ∈ C \begin{aligned}&\min&&\textrm{Tr}\begin{bmatrix}Y&0\\0&Z\end{bmatrix}\\ &\textrm{ s.t.}&&\begin{bmatrix}Y&X\\X^T&Z\end{bmatrix}\ge0\\&&&X\in C\end{aligned} min s.t.Tr[Y00Z][YXTXZ]0XC
这表明,它是等价于
min ⁡ ∥ X ∥ ∗  s.t.  X ∈ C \begin{aligned}&\min&&\lVert X\rVert_*\\ &\textrm{ s.t. }&&X\in C\end{aligned} min s.t. XXC
其中 X X X 的核范数 ∥ X ∥ ∗ = ∑ i σ i ( X ) \lVert X\rVert_*=\sum_i\sigma_i(X) X=iσi(X) 是 谱范数(或最大奇异值)的对偶。

question: 如何将 ∥ X ∥ ∗ \lVert X\rVert_* X rank ( X ) \textrm{rank}(X) rank(X)联系起来?

定理2: ∥ X ∥ ∗ \lVert X\rVert_* X rank ( X ) \textrm{rank}(X) rank(X) 在集合 { X ∈ R m × n    ∣    ∥ X ∥ ≤ 1 } \{X\in\R^{m\times n}\;|\;\lVert X\rVert\le1\} {XRm×nX1} 上的凸包

结论:

  • trace heuristic在有界集上 最小化秩的凸包(即:秩的最优凸近似)
  • 如果可行解有界,heuristic提供目标(可以合并到分支定界方法中)的下界

该定理为 trace heuristic的使用 提供了理论支撑。

特例:向量的 l 1 l_1 l1 heuristic

假设 X = diag ( x ) , x ∈ R n X=\textrm{diag}(x),x\in\R^n X=diag(x),xRn,应用 trace heuristic 得到
min ⁡ ∥ x ∥ 1  s.t. x ∈ C \begin{aligned}&\min&&\lVert x\rVert_1\\ &\textrm{ s.t.}&&x\in C\end{aligned} min s.t.x1xC

  • 寻找稀疏解的 著名的 l 1 l_1 l1 heuristic
  • ∥ x ∥ 1 \lVert x\rVert_1 x1 是 满足 { x ∣ ∥ x ∥ ∞ ≤ 1 } \{x | \lVert x\rVert_\infin\le1\} {xx1} x x x非零个数 的凸包
  • 因此,trace heuristic可以被看作 l 1 l_1 l1 heuristic对矩阵的扩展

5 Log-det heuristic for general matrices

将 log-det heuristic 应用于 RMP 的 PSD形式,得出
min ⁡ log ⁡ det ⁡ ( [ Y 0 0 Z ] + δ I ) s.t. [ Y X X T Z ] ≥ 0 X ∈ C \begin{aligned}&\min&&\log\det\biggl(\begin{bmatrix}Y&0\\0&Z\end{bmatrix}+\delta I\biggr)\\ &\textrm{s.t.}&&\begin{bmatrix}Y&X\\X^T&Z\end{bmatrix}\ge0\\ &&&X\in C\end{aligned} mins.t.logdet([Y00Z]+δI)[YXTXZ]0XC
它等价于
min ⁡ ∑ i log ⁡ ( σ i ( X ) + δ )  s.t. X ∈ C \begin{aligned}&\min&&\sum_i\log(\sigma_i(X)+\delta)\\ &\textrm{ s.t.}&&X\in C\end{aligned} min s.t.ilog(σi(X)+δ)XC
可以像之前一样迭代线性化,得到 X , Y , Z X, Y, Z X,Y,Z 的迭代值。

特例:向量的迭代 l 1 l_1 l1 heuristic

假设 X = diag ( x ) , x ∈ R n X=\textrm{diag}(x), x\in\R^n X=diag(x),xRn,结合 log-det heuristic 得到
min ⁡ ∑ i log ⁡ ( ∣ x i ∣ + δ )  s.t. x ∈ C \begin{aligned}&\min&&\sum_i\log(\lvert x_i\rvert+\delta)\\ &\textrm{ s.t.}&&x\in C\end{aligned} min s.t.ilog(xi+δ)xC
迭代线性化和最小化,得到
x ( k + 1 ) = arg min ⁡ x ∈ C ∑ i w i ( k ) ∣ x i ∣ w i ( k ) = 1 ∣ x i ( k ) ∣ + δ \begin{aligned}x^{(k+1)}\quad&=&&\argmin_{x\in C}\sum_iw_i^{(k)}\lvert x_i\rvert\\ w_i^{(k)}\quad&=&&\dfrac1{\lvert x_i^{(k)}\rvert+\delta} \end{aligned} x(k+1)wi(k)==xCargminiwi(k)xixi(k)+δ1

  • 每一步最小化 x x x 的加权 l 1 l_1 l1范数
  • interpretation: 如果 x i ( k ) x_i^{(k)} xi(k) 很小,那么它的权重在下一次最小化中的权重很大,因此 x x x中的小项 通常在约束允许的范围内 趋于0.
interpretation

标量情况下,两个 heuristics 的目标,即 X = x ∈ R X=x\in\R X=xR.
在这里插入图片描述

  • 在该案例中, σ ( X ) = ∣ x ∣ \sigma(X)=\lvert x\rvert σ(X)=x
  • 注: 1 M ∣ x ∣ \dfrac1M\lvert x\rvert M1x 是满足 { x ∣ ∣ x ∣ ≤ M } \{x|\lvert x\rvert\le M\} {xxM} x x x的秩的凸包。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值