加权SVD问题?


12

给定两个矩阵和B,我想找到向量x和y,使得 min ∑ i j(A i j − x i y j B i j)2。 以矩阵形式,我试图最小化的Frobenius范数甲- DIAG(X )⋅ 乙⋅ DIAG(Ý )= 甲- 乙∘ (X ÿ ⊤ABxy

min∑ij(Aij−xiyjBij)2.
。A−diag(x)⋅B⋅diag(y)=A−B∘(xy⊤)

通常,我想以min ∑ i j(A i j - n ∑ k = 1 s i x (k ) i y (k ) j B i j)的形式找到多个单位向量和y。 2。 其中s i为正实系数。xy

min∑ij(Aij−∑k=1nsixi(k)yj(k)Bij)2.
si

当时,这等效于奇异值分解(SVD)。(B)ij=1

有人知道这个问题叫什么吗?有没有像SVD这样的著名算法来解决此类问题?

(从math.SE迁移)


我相信这是广义SVD。Wikipedia条目不是很详细,因此您应该检查链接的源。特别是,此Google图书链接的第466页可能会有所帮助。
— 2012年

1
xy

在广义SVD中,B不必是对角线或对称的。我提供的两个链接都表明A和B可以分别是维度为M-by-N和P-by-N的一般复值矩阵。
— 2012年

感谢@EMS的建议。如果您能详细说明连接,将不胜感激。
— 2012年

Answers:


8

这与广义的SVD截然不同。

如果B是一个正矩阵,则可以使用我的软件包BIRSVD http://www.mat.univie.ac.at/~neum/software/birsvd/

http://www.mat.univie.ac.at/~neum/software/birsvd/svd_incomplete_data.pdf中 描述该方法的文章也提供了参考资料,您可以考虑对其进行文献检索。


啊,将问题转换为加权的低秩近似!非常感谢!
— 2012年

||C−∑sixiyi⊤||W2||C||W=||C∘W||F∘

是。这为您的问题起了一个好名字。如何解决是另一回事。这不是一个标准问题,并且找到一种既快速又可靠的算法是非常棘手的。
— 阿诺德·纽迈耶

@ArnoldNeumaier,太好了,谢谢。您的代码能否获得许可和版权声明?现在它是专有软件。如果在GPLv3或兼容版本下发布,则可能会找到GNU Octave的线性代数包。
— JuanPi '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.