Hello all,


I need some theoretical pointers (formulas, articles, online links) on how to merge Singular Value Decompositions (SVD) of two matrices (two different sets of observations over the same set of features).


That is, I have two SVDs: $A=U\_A\*S\_A\*V^T\_A$ and $B=U\_B\*S\_B\*V^T\_B$ and want to know SVD $A|B=U\_{A|B}\*S\_{A|B}\*V\_{A|B}$. The original matrices $A$ and $B$ are unavailable, the solution must make use of the $U\_A, S\_A, V\_A, U\_B, S\_B, V\_B$ matrices only.


I need this because I want to implement a distributed version of incremental SVD: have several computation nodes work on different sets of observations independently, and then merge their results into one.


Cheers!



distributed incremental SVD
The people aspiring for the [Netflix prize](http://en.wikipedia.org/wiki/Netflix_Prize) like incremental SVDs. See 


1. <https://issues.apache.org/jira/browse/MAHOUT-371>
2. B.M. Sarwar, G.Karypis, J.A. Konstan, and J. Reidl. Incremental singular value deocmposition algorithms for highly scalable recommender systems. In Proceedings of the Fifth International Conference on Computer and Information Technology (ICCIT), 2002. ([ONLINE](http://www.grouplens.org/papers/pdf/sarwar_SVD.pdf))
3. M. Brand. Fast online svd revisions
for lightweight recommender systems.
In Proceedings of the 3rd SIAM
International Conference on Data
Mining, 2003. and [his tech report](http://www.merl.com/publications/TR2002-024/)


Have you tried searching the [ACM digital library](http://portal.acm.org/portal.cfm) for parallel SVD or singular value decomposition? 


**EDIT1 based on new input** : See the following two papers by Hall, Marshall and Martin 


1. [Merging and Splitting Eigenspace
Models](http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.51.804) (Section 3)
2. [On Adding and Subtracting
Eigenspaces with EVD and SVD](http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.9.1496)


