Belabbas M A, Wolfe P J. Fast Low-Rank Approximation for Covariance Matrices[C]. IEEE International Workshop on Computational Advances in Multi-Sensor Adaptive Processing, 2007: 293-296.

Nystorm method

和在WIKI看到的不是同一个东西?

假设GRn×nG \in \mathbb{R}^{n \times n}为对称正定矩阵。
G=[ABTBC] G = \left [ \begin{array}{ll} A & B^T \\ B & C \end{array} \right ]
其中ARk×k,k<nA \in \mathbb{R}^{k \times k}, k<n
假设G=UΛUTG = U \Lambda U^T,A=UAΛAUATA = U_A \Lambda_A U_A^T,令
U~=[UABUAΛA1] \widetilde{U} = \left [ \begin{array}{c} U_A \\ BU_A \Lambda_A^{-1} \end{array} \right ]
则:
G~:=U~ΛAU~T=[ABTBBA1BT] \widetilde{G} := \widetilde{U} \Lambda_A \widetilde{U}^T = \left [ \begin{array}{ll} A & B^T \\ B & BA^{-1}B^T \end{array} \right ]
易得:
GG~=CBA1BT \|G - \widetilde{G}\| = \|C-BA^{-1}B^T\|

再玩一下,令:
G=[A1A2TA3TA2MBTA3BC] G = \left [ \begin{array}{lll} A_1 & A_2^T & A_3^T \\ A_2 & M & B^T \\ A_3 & B & C \end{array} \right ]
M=UMΛMUMTM = U_M \Lambda_M U_M^T.
再令
U~:=[A2TUMΛM1UMBUMΛM1] \widetilde{U} := \left [ \begin{array}{c} A_2^TU_M \Lambda_M^{-1} \\ U_M \\ B U_M \Lambda_M^{-1} \end{array} \right ]
则:
G~:=U~ΛMU~T=[A2TM1A2A2TA2TM1BTA2MBTBM1A2BBM1BT] \widetilde{G} := \widetilde{U} \Lambda_M \widetilde{U}^T = \left [ \begin{array}{ccc} A_2^T M^{-1} A_2 & A_2^T & A_2^T M^{-1} B^T \\ A_2 & M & B^T \\ BM^{-1}A_2 & B & BM^{-1} B^T \end{array} \right ]
这个阵型还蛮酷的。

低秩逼近

先来介绍一个性质:F(FTF)1/2F(F^TF)^{-1/2}列正交(当然FTFF^TF得可逆)。
(F(FTF)1/2)TF(FTF)1/2=(FTF)1/2FTF(FTF)1/2=I (F(F^TF)^{-1/2})^TF(F^TF)^{-1/2} = (F^TF)^{-1/2}F^TF(F^TF)^{-1/2} = I
实际上,如果FTF=VΛVTF^TF = V\Lambda V^T,那么FVkΛk1/2FV_k \Lambda_k^{-1/2}列正交。
所以,我们可以让FF的列为GG中某些列的组合,再让Pk:=FVkΛk1/2P_k := FV_k \Lambda_k^{-1/2},最后:
G~k:=PkPkTGPkPkT \widetilde{G}_k := P_kP_k^TGP_kP_k^T
来作为GG的一个近似。
FAST LOW-RANK APPROXIMATION FOR COVARIANCE MATRICES

矩阵乘法的逼近

如果我们能够令GGTFFT\|GG^T-FF^T\|尽可能小,那么PkPkTGP_kP_k^TG就越有可能成为一个好的逼近,这需要利用矩阵乘法的逼近。
对于矩阵ARm×nA \in \mathbb{R}^{m \times n}BRn×pB \in \mathbb{R}^{n \times p},得:
AB=i=1nAiBi AB = \sum_{i=1}^n A_iB^i
其中AiA_iAA的第i列,BiB^iBB的第i行。
论文举了一个例子:
如果n=2n=2,且A2=αA1A_2 = \sqrt{\alpha} A_1,B=ATB=A^T
那么AB=(1+α)A1A1TAB = (1+\alpha)A_1A_1^T。这意味着,我们只需通过AA的第一列就能恢复ABAB
所以接下来的问题是:

  • 如何选择行或者列
  • 如何调整它们的大小(乘个系数)

作者说,有一个神谕说列和行应该为S{1,,n}S \subset \{1, \ldots, n\},不失一般性,假设其为S={1,,k}S = \{1, \ldots, k\}。下面的定理给出了权重的选择:
FAST LOW-RANK APPROXIMATION FOR COVARIANCE MATRICES
FAST LOW-RANK APPROXIMATION FOR COVARIANCE MATRICES

所以我们要挑选SS,使得ZZ的对角线元素尽可能小,这意味着,我们要挑选这样的SS,使得<Ai,Ai><Bi,Bi><A_i, A_i><B^i, B^i>最大。
于是有了下面的俩个算法,分别针对矩阵乘法和矩阵逼近的:
FAST LOW-RANK APPROXIMATION FOR COVARIANCE MATRICES
FAST LOW-RANK APPROXIMATION FOR COVARIANCE MATRICES

相关文章:

  • 2020-12-29
  • 2021-12-26
  • 2021-12-27
  • 2021-07-17
  • 2021-11-19
  • 2022-12-23
  • 2021-08-22
猜你喜欢
  • 2021-12-11
  • 2021-11-29
  • 2021-09-06
  • 2021-07-06
  • 2021-06-27
  • 2021-12-07
相关资源
相似解决方案