对Tensor Ring Decomposition with Rank Minimization onLatent Space一文求解算法部分公式的推导

  • 本文所要优化的目标函数:
    m i n ∑ n = 1 N ∑ i = 1 3 ∥ G ( i ) ( n ) ∥ ∗ + α 2 ∥ X − ψ ( [ G ] ) ∥ F 2 min \quad \sum_{n=1}^N \sum_{i=1}^3 \|G^{(n)}_{(i)}\|_*+\frac{\alpha}{2}\|X-\psi([G])\|_F^{2} minn=1Ni=13G(i)(n)+2αXψ([G])F2
    s . t . P Ω ( X ) = P Ω ( T ) s.t. P_{\Omega}(\mathcal{X})=P_{\Omega}(\mathcal{T}) s.t.PΩ(X)=PΩ(T)

其中 X 是 只 有 部 分 真 实 点 T 中 包 括 所 有 的 真 实 点 \mathcal{X}是只有部分真实点 \quad \mathcal{T}中包括所有的真实点 XT

  • 接下来需要采用 A D M M ADMM ADMM算法进行该目标函数的求解
    • 首先由于 T R L R F TRLRF TRLRF模型的变量是相互依赖的,添加辅助变量来简化优化
      → m i n ∑ n = 1 N ∑ i = 1 3 ∥ G ( i ) ( n ) ∥ ∗ + α 2 ∥ X − ψ ( [ G ] ) ∥ F 2 \large \rightarrow min \quad \sum_{n=1}^N \sum_{i=1}^3 \|G^{(n)}_{(i)}\|_*+\frac{\alpha}{2}\|X-\psi([G])\|_F^{2} minn=1Ni=13G(i)(n)+2αXψ([G])F2
      添加辅助变量 M \mathcal{M} M,然后通过扩展拉格朗日乘子法改写目标函数形式
      → m i n ∑ n = 1 N ∑ i = 1 3 ( ∥ M ( i ) ( n , i ) ∥ ∗ + < Y ( n , i ) , M ( n , i ) − G ( n ) > + μ 2 ∥ M ( n , i ) − G ( n ) ∥ F 2 ) + α 2 ∥ X − ψ ( [ G ] ) ∥ F 2 \large \rightarrow min \quad \sum_{n=1}^N \sum_{i=1}^3 (\|M^{(n,i)}_{(i)}\|_* + <\mathcal{Y}^{(n,i)},M^{(n,i)}-G^{(n)}> + \frac{\mu}{2} \| M^{(n,i)}-G^{(n)} \|_F^{2}) +\frac{\alpha}{2} \|X-\psi([G])\|_F^{2} minn=1Ni=13(M(i)(n,i)+<Y(n,i),M(n,i)G(n)>+2μM(n,i)G(n)F2)+2αXψ([G])F2
      s . t . M ( i ) ( n , i ) = G ( i ) ( n ) \large s.t. \mathcal{M}_{(i)}^{(n,i)}=\mathcal{G}_{(i)}^{(n)} s.t.M(i)(n,i)=G(i)(n)
      s . t . P Ω ( X ) = P Ω ( T ) \large s.t. P_{\Omega}(\mathcal{X})=P_{\Omega}(\mathcal{T}) s.t.PΩ(X)=PΩ(T)
  • 第一步,对 G ( n ) G^{(n)} G(n)进行更新
    • G ( n ) G^{(n)} G(n)看作是一个变量,然后对目标函数关于 G ( n ) G^{(n)} G(n)进行求导,导数如下:
      → ∑ i = 1 3 ( − Y ( n , i ) − μ ( M ( n , i ) − G ( n ) ) + ( α 2 ∥ X − ψ ( [ G ] ) ∥ F 2 ) ′ \large \rightarrow \sum_{i=1}^3(-\mathcal{Y}^{(n,i)} -\mu(M^{(n,i)}-G^{(n)})+ (\frac{\alpha}{2} \|X-\psi([G])\|_F^{2})^{'} i=13(Y(n,i)μ(M(n,i)G(n))+(2αXψ([G])F2)
      → 求 该 导 数 的 原 函 数 \large \rightarrow 求该导数的原函数
      → ∫ ∑ i = 1 3 μ ( − 1 μ Y ( n , i ) − M ( n , i ) + G ( n ) ) d ( G ( n ) ) + α 2 ∥ X − ψ ( [ G ] ) ∥ F 2 + C G \large \rightarrow \int \sum_{i=1}^3 \mu(-\frac{1}{\mu} \mathcal{Y}^{(n,i)} - M^{(n,i)}+G^{(n)})d(G^{(n)}) + \frac{\alpha}{2} \|X-\psi([G])\|_F^{2}+C_{G} i=13μ(μ1Y(n,i)M(n,i)+G(n))d(G(n))+2αXψ([G])F2+CG
      → ∑ i = 1 3 μ 2 ∥ M ( n , i ) − G ( n ) + 1 μ Y ( n , i ) ∥ F 2 + α 2 ∥ X − ψ ( [ G ] ) ∥ F 2 + C G \large \rightarrow \sum_{i=1}^3 \frac{\mu}{2}\|M^{(n,i)}-G^{(n)}+\frac{1}{\mu} \mathcal{Y}^{(n,i)} \|_F^{2} + \frac{\alpha}{2} \|X-\psi([G])\|_F^{2}+C_{G} i=132μM(n,i)G(n)+μ1Y(n,i)F2+2αXψ([G])F2+CG
    • 这是一个最小二乘问题,对其更新就要求他的最小值,做法便是对该目标函数进行求导,令其为零即可:
      → ∑ i = 1 3 ( − Y ( n , i ) − μ ( M ( n , i ) − G ( n ) ) + ( α 2 ∥ X − ψ ( [ G ] ) ∥ F 2 ) ′ \large \rightarrow \sum_{i=1}^3(-\mathcal{Y}^{(n,i)} -\mu(M^{(n,i)}-G^{(n)})+ (\frac{\alpha}{2} \|X-\psi([G])\|_F^{2})^{'} i=13(Y(n,i)μ(M(n,i)G(n))+(2αXψ([G])F2)
      → ∑ i = 1 3 ( − Y ( n , i ) − μ M ( n , i ) + μ G ( n ) ) + α ( X − ψ ( [ G ] ) ) ( ψ ( [ G ] ) ) ′ \large \rightarrow \sum_{i=1}^3(-\mathcal{Y}^{(n,i)} -\mu M^{(n,i)}+\mu G^{(n)})+\alpha(X-\psi([G]))(\psi([G]))^{'} i=13(Y(n,i)μM(n,i)+μG(n))+α(Xψ([G]))(ψ([G]))
      令该导数为零,即得到如下等式:
      → ∑ i = 1 3 ( Y ( n , i ) + μ M ( n , i ) − μ G ( n ) ) = α ( ψ ( [ G ] − X ) ) ( ψ ( [ G ] ) ) ′ \large \rightarrow \sum_{i=1}^3(\mathcal{Y}^{(n,i)} +\mu M^{(n,i)}-\mu G^{(n)})=\alpha(\psi([G]-X))(\psi([G]))^{'} i=13(Y(n,i)+μM(n,i)μG(n))=α(ψ([G]X))(ψ([G]))
      其中在模-2展开的情形下 ( ψ ( [ G ] ) ) ′ = G ( 2 ) ( ≠ n ) (\psi([G]))^{'}=G^{(\neq n)}_{(2)} (ψ([G]))=G(2)(=n)
      → ∑ i = 1 3 ( Y ( 2 ) ( n , i ) + μ M ( 2 ) ( n , i ) − μ G ( 2 ) ( n ) ) = α ( G ( 2 ) ( n ) G ( 2 ) ( ≠ n , T ) − X ( n ) ) ) G ( 2 ) ( ≠ n ) \large \rightarrow \sum_{i=1}^3(\mathcal{Y}^{(n,i)}_{(2)} + \mu M^{(n,i)}_{(2)}-\mu G^{(n)}_{(2)}) =\alpha(G^{(n)}_{(2)}G^{(\neq n,T)}_{(2)}-X_{(n)}))G^{(\neq n)}_{(2)} i=13(Y(2)(n,i)+μM(2)(n,i)μG(2)(n))=α(G(2)(n)G(2)(=n,T)X(n)))G(2)(=n)
      → ∑ i = 1 3 ( Y ( 2 ) ( n , i ) + μ M ( 2 ) ( n , i ) − μ G ( 2 ) ( n ) ) = α G ( 2 ) ( n ) G ( 2 ) ( ≠ n , T ) G ( 2 ) ( ≠ n ) − α X ( n ) G ( 2 ) ( ≠ n ) \large \rightarrow \sum_{i=1}^3(\mathcal{Y}^{(n,i)}_{(2)} + \mu M^{(n,i)}_{(2)}-\mu G^{(n)}_{(2)}) =\alpha G^{(n)}_{(2)} G^{(\neq n,T)}_{(2)} G^{(\neq n)}_{(2)}-\alpha X_{(n)}G^{(\neq n)}_{(2)} i=13(Y(2)(n,i)+μM(2)(n,i)μG(2)(n))=αG(2)(n)G(2)(=n,T)G(2)(=n)αX(n)G(2)(=n)
      → α G ( 2 ) ( n ) G ( 2 ) ( ≠ n , T ) G ( 2 ) ( ≠ n ) + 3 μ G ( 2 ) ( n ) = ∑ i = 1 3 ( Y ( 2 ) ( n , i ) + μ M ( 2 ) ( n , i ) ) + α X ( n ) G ( 2 ) ( ≠ n ) \large \rightarrow \alpha G^{(n)}_{(2)} G^{(\neq n,T)}_{(2)} G^{(\neq n)}_{(2)}+3\mu G^{(n)}_{(2)} =\sum_{i=1}^3(\mathcal{Y}^{(n,i)}_{(2)}+\mu M^{(n,i)}_{(2)})+\alpha X_{(n)}G^{(\neq n)}_{(2)} αG(2)(n)G(2)(=n,T)G(2)(=n)+3μG(2)(n)=i=13(Y(2)(n,i)+μM(2)(n,i))+αX(n)G(2)(=n)
      → G ( 2 ) ( n ) ( α G ( 2 ) ( ≠ n , T ) G ( 2 ) ( ≠ n ) + 3 μ I ) = ∑ i = 1 3 ( Y ( 2 ) ( n , i ) + μ M ( 2 ) ( n , i ) ) + α X ( n ) G ( 2 ) ( ≠ n ) \large \rightarrow G^{(n)}_{(2)}(\alpha G^{(\neq n,T)}_{(2)} G^{(\neq n)}_{(2)}+3\mu I) =\sum_{i=1}^3(\mathcal{Y}^{(n,i)}_{(2)}+\mu M^{(n,i)}_{(2)})+\alpha X_{(n)}G^{(\neq n)}_{(2)} G(2)(n)(αG(2)(=n,T)G(2)(=n)+3μI)=i=13(Y(2)(n,i)+μM(2)(n,i))+αX(n)G(2)(=n)
      → G ( 2 ) ( n ) = ( ∑ i = 1 3 ( Y ( 2 ) ( n , i ) + μ M ( 2 ) ( n , i ) ) + α X ( n ) G ( 2 ) ( ≠ n ) ) ( α G ( 2 ) ( ≠ n , T ) G ( 2 ) ( ≠ n ) + 3 μ I ) − 1 \large \rightarrow G^{(n)}_{(2)}=(\sum_{i=1}^3(\mathcal{Y}^{(n,i)}_{(2)}+\mu M^{(n,i)}_{(2)})+\alpha X_{(n)}G^{(\neq n)}_{(2)}) (\alpha G^{(\neq n,T)}_{(2)} G^{(\neq n)}_{(2)}+3\mu I)^{-1} G(2)(n)=(i=13(Y(2)(n,i)+μM(2)(n,i))+αX(n)G(2)(=n))(αG(2)(=n,T)G(2)(=n)+3μI)1
      然后两边同时进行模-2收缩,便可以得到关于 G ( n ) G^{(n)} G(n)的更新公式
  • 第二步,对 M ( n , i ) M^{(n,i)} M(n,i)进行更新
    • 与上述更新方式相同,可以先写出 L ( ) L() L()关于 M ( n , i ) M^{(n,i)} M(n,i)的表达式,然后求导,令其结果为零即可。
      → L ( M ( n , i ) ) = ∥ M ( i ) ( n , i ) ∥ ∗ + μ 2 ∥ M ( n , i ) − G ( n ) + 1 μ Y ( n , i ) ∥ F 2 + C M \large \rightarrow L(M^{(n,i)})=\|M^{(n,i)}_{(i)}\|_{*}+\frac{\mu}{2} \|M^{(n,i)}-G^{(n)} + \frac{1}{\mu}\mathcal{Y}^{(n,i)} \|_F^{2}+C_M L(M(n,i))=M(i)(n,i)+2μM(n,i)G(n)+μ1Y(n,i)F2+CM
      对其进行求导操作,其中比较困难的是关于矩阵核范数求导,一般有两种方法,第一种方法是 S V T SVT SVT(论文中经常用的方法,第二种是利用定义进行证明(不一定对于所有的都适用))
      1 、 S V T 算 法 1、SVT算法 1SVT
      T h e o r e m 1 : 对 于 任 意 的 μ > 0 并 且 Y ∈ R n 1 × n 2 符 合 如 下 形 式 的 最 优 解 为 : Theorem \quad 1:对于任意的\mu >0 并且Y \in R^{n_1 \times n_2} 符合如下形式的最优解为: Theorem1:μ>0YRn1×n2
      D μ ( Y ) = a r g m i n x { 1 2 ∥ X − Y ∥ F 2 + μ ∥ X ∥ ∗ } D_{\mu}(Y)=argmin_x\{\frac{1}{2}\|X-Y\|_F^{2}+\mu\|X\|_*\} Dμ(Y)=argminx{21XYF2+μX}
      其中 D μ ( ) D_{\mu}() Dμ() 操作称之为 S V T SVT SVT ,算法思想如下
      (1)对 Y Y Y 进行奇异值分解为 Y = U ∑ V T Y= U \sum V^T Y=UVT ,其中 ∑ \sum 是包含奇异值的矩阵,接下来 U U U V V V 保持不变,然后对所有的奇异值减去 μ \mu μ 的操作,如果该奇异值小于 μ \mu μ 则令其为零。
      → D μ ( Y ) = U d i a g ( σ i − μ ) + V \large \rightarrow D_{\mu}(Y)=Udiag{(\sigma_i-\mu)}_+V Dμ(Y)=Udiag(σiμ)+V
      接下来可以对该目标函数通过SVT的方法求解最优解
      → \large \rightarrow 可以看出该目标函数中的 Y = G ( n ) − 1 μ Y ( n , i ) Y=G^{(n)}-\frac{1}{\mu}\mathcal{Y}^{(n,i)} Y=G(n)μ1Y(n,i)
      → M ( n , i ) = f o l d i ( D 1 μ ( G ( i ) ( n ) − 1 μ Y ( i ) ( n , i ) ) ) \large \rightarrow M^{{(n,i)}}=fold_i(D_{\frac{1}{\mu}} (G^{(n)}_{(i)}-\frac{1}{\mu}\mathcal{Y}^{(n,i)}_{(i)})) M(n,i)=foldi(Dμ1(G(i)(n)μ1Y(i)(n,i)))
  • 第三步,对 X X X进行更新,
    • 这一步比较容易,因为观测点的值是给定的,剩下的点由 G G G相乘得到
      → X = P Ω ( T ) + P Ω + ( ψ ( [ G ] ) ) \large \rightarrow X=P_{\Omega}(T)+P_{\Omega^{+}}(\psi([G])) X=PΩ(T)+PΩ+(ψ([G]))
  • 第四步,对 Y ( n , i ) \mathcal{Y}^{(n,i)} Y(n,i)进行更新
    • → Y + ( n , i ) = Y ( n , i ) + μ ( M ( n , i ) − G ( n ) ) \large \rightarrow \mathcal{Y}^{(n,i)}_+=\mathcal{Y}^{(n,i)}+\mu (M^{(n,i)}-G^{(n)}) Y+(n,i)=Y(n,i)+μ(M(n,i)G(n))
  • 第五步,对 μ \mu μ进行更新, μ \mu μ是惩罚项因子,也是随着每一次的迭代需要变化的
    • → μ + = m a x { ρ μ , μ m a x } , 1 < = ρ < = 1.5 \large \rightarrow \mu_+=max\{\rho \mu ,\mu_{max}\},1<=\rho<=1.5 μ+=max{ρμ,μmax},1<=ρ<=1.5 ρ \rho ρ是一个超参数
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cug第一深情

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值