当前位置:   article > 正文

核范数为什么能够作为矩阵秩的凸替换 、 核范数如何应用到张量中从而进行张量秩的约束_张量的核范数

张量的核范数
  • 对于经典的低秩矩阵补全优化问题:
    min ⁡ X : r a n k ( X ) s . t . : X Ω = M Ω (1)
    minX:rank(X)s.t.:XΩ=MΩ
    \tag{1}
    Xmin:rank(X)s.t.:XΩ=MΩ(1)

    ( 1 ) (1) (1) 中的优化问题是非凸的,因为 r a n k ( X ) rank(X) rank(X) 是非凸函数
    • 一种常见的方法是采用核范数来近似矩阵的秩,核范数被证明是在一定意义下,rank的最佳凸估计/凸松弛[1]
    • 进而可以将 ( 1 ) (1) (1) 中的问题转变成以下的矩阵补全的凸优化问题:
      min ⁡ X : ∥ X ∥ ∗ s . t . : X Ω = M Ω (2)
      minX:Xs.t.:XΩ=MΩ
      \tag{2}
      Xmin:Xs.t.:XΩ=MΩ(2)
    • 张量是矩阵概念的推广。通过求解以下优化问题,可以将矩阵情况下的补全算法推广到高阶张量:
      min ⁡ X : ∥ X ∥ ∗ s . t . : X Ω = T Ω (3)
      minX:Xs.t.:XΩ=TΩ
      \tag{3}
      Xmin:Xs.t.:XΩ=TΩ(3)
    • 第一个问题是一般张量情况下的核范数的定义。[2]提出了以下关于张量迹范数的定义:
      min ⁡ X : ∑ i = 1 n α i ∥ X ( i ) ∥ ∗ s . t . : X Ω = T Ω (4)
      minX:i=1nαiX(i)s.t.:XΩ=TΩ
      \tag{4}
      Xmin:i=1nαiX(i)s.t.:XΩ=TΩ(4)
    • 这里有人可能会问,为什么不把张量核范数定义为张量秩的凸包络。与矩阵不同,计算一般张量(阶数> 2)的秩是一个NP困难问题[3]。此外,据所知[2],张量秩的凸包络并没有显式的表达式。

2、a simple low rank tensor completion algorithm(SiLRTC)

  • ( 4 ) (4) (4) 中的问题由于不同矩阵核范数项相互依赖而难以解决,即当优化多个矩阵核范数的和时,矩阵共享相同的元素,不能够独立优化。所以需要首先分离变量,然后再独立的进行求解。因此引入 M 1 , . . . , M n M_1,...,M_n M1,...,Mn,然后将 ( 4 ) (4) (4) 转换成如下方案:
    min ⁡ X : ∑ i = 1 n α i ∥ M ( i ) ∥ ∗ s . t . : X ( i ) = M i   f o r   i = 1 , . . . , n X Ω = T Ω . (5)
    minX:i=1nαiM(i)s.t.:X(i)=Mi for i=1,...,nXΩ=TΩ.
    \tag{5}
    Xmin:i=1nαiM(i)s.t.:X(i)=Mi for i=1,...,nXΩ=TΩ.(5)
  • 在上述方案中,核范数仍然不是独立的,因为 M i = X ( i ) M_i=\mathcal{X}_{(i)} Mi=X(i) ,导致矩阵 M i M_i Mi 共享相同的元素。可以放宽等式约束,即用 ∥ M i − X ( i ) ∥ F 2 < d i \|M_i-\mathcal{X}_{(i)}\|_F^2 < d_i MiX(i)F2<di 替换 X ( i ) = M i \mathcal{X}_{(i)}=M_i X(i)=Mi :
    min ⁡ X : ∑ i = 1 n α i ∥ M ( i ) ∥ ∗ s . t . : ∥ M i − X ( i ) ∥ F 2 < d i   f o r   i = 1 , . . . , n X Ω = T Ω . (6)
    minX:i=1nαiM(i)s.t.:MiX(i)F2<di for i=1,...,nXΩ=TΩ.
    \tag{6}
    Xmin:i=1nαiM(i)s.t.:MiX(i)F2<di for i=1,...,nXΩ=TΩ.(6)

    d i d_i di 是一个可以由用户定义的阈值,进一步可以将不等式约束转换成等式约束。
    min ⁡ X : ∑ i = 1 n α i ∥ M ( i ) ∥ ∗ + β i 2 ∥ M i − X ( i ) ∥ F 2 s . t . X Ω = T Ω . (7)
    minX:i=1nαiM(i)+βi2MiX(i)F2s.t.XΩ=TΩ.
    \tag{7}
    Xmin:i=1nαiM(i)+2βiMiX(i)F2s.t.XΩ=TΩ.(7)

    这是一个凸但不可微的优化问题。
  • 对于上述问题采用块坐标下降法进行优化(块坐标下降的基本思想是在固定其他组变量时,进而优化剩余变量组),将 ( 4 ) (4) (4) 中的变量分为 X , M 1 , M 2 , ⋯   , M n \mathcal{X},M_1,M_2,\cdots,M_n X,M1,M2,,Mn .
    • 计算 X \mathcal{X} X:当固定其他变量时,即需要解决以下问题:
      min ⁡ X : ∑ i = 1 n β i 2 ∥ M i − X ( i ) ∥ F 2 s . t . : X Ω = T Ω . (8)
      minX:i=1nβi2MiX(i)F2s.t.:XΩ=TΩ.
      \tag{8}
      Xmin:i=1n2βiMiX(i)F2s.t.:XΩ=TΩ.(8)

      ( 7 ) (7) (7) 问题求解结果为:
      X i 1 , … , i n = { ( ∑ i β i f o l d i ( M i ) ∑ i β i ) i 1 , ⋯   , i n ( i 1 , ⋯   , i n ) ∉ Ω T i 1 , ⋯   , i n ( i 1 , ⋯   , i n ) ∈ Ω \large \mathcal{X}_{i_1,\dots,i_n}=
      {(iβifoldi(Mi)iβi)i1,,in(i1,,in)ΩTi1,,in(i1,,in)Ω
      Xi1,,in= (iβiiβifoldi(Mi))i1,,inTi1,,in(i1,,in)/Ω(i1,,in)Ω
    • 计算 M i M_i Mi . M i M_i Mi 是以下形式的最优解:
      min ⁡ M i : β i 2 ∥ M i − X ( i ) ∥ F 2 + α i ∥ M i ∥ ∗ ≡ 1 2 ∥ M i − X ( i ) ∥ F 2 + α i β i ∥ M i ∥ ∗ (9)
      minMi:βi2MiX(i)F2+αiMi12MiX(i)F2+αiβiMi
      \tag{9}
      Mimin:2βiMiX(i)F2+αiMi21MiX(i)F2+βiαiMi(9)

      ( 8 ) (8) (8) 问题的最优解 M i M_i Mi 可以直接通过计算 D τ ( X ( i ) ) D_{\tau}(\mathcal{X}_{(i)}) Dτ(X(i)) ,其中 τ = α i β i ( S V T : 奇异值阈值算法 ) [ 4 ] \tau=\frac{\alpha_i}{\beta_i} (SVT:奇异值阈值算法)[4] τ=βiαi(SVT:奇异值阈值算法)[4]

3、a high accuracy low rank tensor completion algorithm(HaLRTC)

采用 ADMM \text{ADMM} ADMM 算法,基于 SiLRTC \text{SiLRTC} SiLRTC 算法,并在此基础上给出了一个使用 ADMM \text{ADMM} ADMM 框架的简单实现。在算法 SiLRTC \text{SiLRTC} SiLRTC 中引入了 M 1 , . . . , M n M_1,...,M_n M1,...,Mn ,是作为 X ( i ) \mathcal{X}_{(i)} X(i) 的替代。此处仍采用这种方式,但是采用的是 M i \mathcal{M}_i Mi 代替 X \mathcal{X} X.目标函数如下:
min ⁡ X , M 1 , ⋯   , M n : ∑ i = 1 n α i ∥ M i ( i ) ∥ ∗ s . t . : X Ω = T Ω X = M i ,   i = 1 , … , n . (10)

minX,M1,,Mn:i=1nαiMi(i)s.t.:XΩ=TΩX=Mi, i=1,,n.
\tag{10} X,M1,,Mnmins.t.:i=1nαiMi(i):XΩ=TΩX=Mi, i=1,,n.(10)

  • 将增广拉格朗日函数定义如下:
    L ρ ( X , M 1 , … , M n , Y 1 , … , Y n ) = ∑ i = 1 n α i ∥ M i ( i ) ∥ ∗ + < X − M i , Y i > + ρ 2 ∥ M i − X ∥ F 2 (11)
    Lρ(X,M1,,Mn,Y1,,Yn)=i=1nαiMi(i)+<XMi,Yi>+ρ2MiXF2
    \tag{11}
    Lρ(X,M1,,Mn,Y1,,Yn)=i=1nαiMi(i)+<XMi,Yi>+2ρMiXF2(11)
  • 计算 M i , X , Y i \mathcal{M_i,X,Y_i} Mi,X,Yi 分别求解下列三个函数即可:
    • { M 1 k + 1 , … , M 1 k + 1 } = arg min ⁡ M 1 , … , M n : L ρ ( X k , M 1 , … , M n , Y 1 k + 1 , … , Y n k + 1 ) \{\mathcal{M}_1^{k+1},\dots,\mathcal{M}_1^{k+1}\} =\argmin_{\mathcal{M_1},\dots,\mathcal{M_n}}: L_{\rho}(\mathcal{X^k,M_1,\dots,M_n,Y_1^{k+1},\dots,Y_n^{k+1}}) {M1k+1,,M1k+1}=argminM1,,Mn:Lρ(Xk,M1,,Mn,Y1k+1,,Ynk+1)
    • X k + 1 = arg min ⁡ X ∈ Q : L ρ ( X , M 1 k + 1 , … , M n k + 1 , Y 1 k + 1 , … , Y n k + 1 ) \mathcal{X}^{k+1} =\argmin_{\mathcal{X} \in Q}: L_{\rho}(\mathcal{X,M_1^{k+1},\dots,M_n^{k+1},Y_1^{k+1},\dots,Y_n^{k+1}}) Xk+1=argminXQ:Lρ(X,M1k+1,,Mnk+1,Y1k+1,,Ynk+1)
    • Y i k + 1 = Y i k − ρ ( M i k + 1 − X k + 1 ) \mathcal{Y}_i^{k+1} = \mathcal{Y}_i^{k} - \rho(\mathcal{M}_i^{k+1} - \mathcal{X}^{k+1}) Yik+1=Yikρ(Mik+1Xk+1)
    • 更新 M i \mathcal{M}_{i} Mi :
      可以写出 M i \mathcal{M}_i Mi 的目标函数 f ( M i ) = α i ∥ M i ( i ) ∥ ∗ + < X − M i , Y i > + ρ 2 ∥ M i − X ∥ F 2 f(\mathcal{M}_i) =\alpha_i \|\mathcal{M}_{i(i)} \|_* + <\mathcal{X-M_i},\mathcal{Y}_i> + \frac{\rho}{2} \|\mathcal{M_i - X}\|_F^2 f(Mi)=αiMi(i)+<XMi,Yi>+2ρMiXF2
      对上述目标函数进行求导 ( α i ∥ M i ( i ) ∥ ∗ ) ′ − Y i + ρ ( M i − X ) (\alpha_i \|\mathcal{M}_{i(i)} \|_*)^{'} - \mathcal{Y}_i + \rho (\mathcal{M}_i - \mathcal{X}) (αiMi(i))Yi+ρ(MiX)
      然后对上述导数求积分形式为: f ( M i ) = α i ∥ M i ( i ) ∥ ∗ + ρ 2 ∥ M i − X − 1 ρ Y i ∥ F 2 + C M i f(\mathcal{M}_i)=\alpha_i \|\mathcal{M}_{i(i)} \|_* + \frac{\rho}{2} \|\mathcal{M}_i - \mathcal{X} - \frac{1}{\rho} \mathcal{Y}_i \|_F^2 + C_{M_i} f(Mi)=αiMi(i)+2ρMiXρ1YiF2+CMi
      上述目标函数可以采用 SVT \text{SVT} SVT 进行求解,结果为:
      M i = f o l d i [ D α i ρ ( X ( i ) + 1 ρ Y i ( i ) ) ] \mathcal{M}_i = fold_i[D_{\frac{\alpha_i}{\rho}}(\mathcal{X_{(i)} + \frac{1}{\rho} \mathcal{Y}_{i(i)} })] Mi=foldi[Dραi(X(i)+ρ1Yi(i))]
    • 更新 X \mathcal{X} X:
      可以写出 X \mathcal{X} X 的目标函 f ( X ) = ∑ i = 1 n α i ∥ M i ( i ) ∥ ∗ + < X − M i , Y i > + ρ 2 ∥ M i − X ∥ F 2 f(\mathcal{X}) = \sum_{i=1}^{n} \alpha_i \|\mathcal{M}_{i(i)} \|_* + <\mathcal{X-M_i},\mathcal{Y}_i> + \frac{\rho}{2} \|\mathcal{M_i - X}\|_F^2 f(X)=i=1nαiMi(i)+<XMi,Yi>+2ρMiXF2
      对上述目标函数进行求导: ∑ i = 1 n Y i + ρ ( X − M i ) \sum_{i=1}^{n}\mathcal{Y}_i + \rho(\mathcal{X}-\mathcal{M}_i) i=1nYi+ρ(XMi)
      令其等于零即可: X Ω = 1 n ( ∑ i = 1 n M i − 1 ρ Y i ) \mathcal{X}_{\Omega} = \frac{1}{n} (\sum_{i=1}^n \mathcal{M}_i - \frac{1}{\rho}\mathcal{Y}_i) XΩ=n1(i=1nMiρ1Yi)
    • 更新 Y i \mathcal{Y}_i Yi: Y i = Y i − ρ ( M i − X ) \mathcal{Y}_i = \mathcal{Y}_i - \rho(\mathcal{M}_i-\mathcal{X}) Yi=Yiρ(MiX)

参考文献

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/176282
推荐阅读
相关标签
  

闽ICP备14008679号