I recently need to compute higher order singular value decompositions (HOSVDs) on some tensors. I coded up a quick and dirty implementation as described in the original paper and thought it might be a useful contribution to the numpy.linalg library. The code is attached and released to you under public domain.
If you do choose to incorporate the code, please note that:
1) the code is a direct implementation of the algorithm described in the original paper, and could probably be done more quickly and cleverly,
2) it has only been tested on the few examples in the original paper
3) there are some discrepancies up to overall signs in some columns of the left singular matrices.
cite:
Lieven de Lathauwer, Bart de Moor, Joos Vandewalle,
'A multilinear singular value decomposition',
SIAM J. Matrix Anal. Appl. 21 (4), 2000, 1253-1278
Original ticket http://projects.scipy.org/numpy/ticket/1510 on 2010-06-11 by trac user jiahao, assigned to atmention:pv.
Hi there,
I recently need to compute higher order singular value decompositions (HOSVDs) on some tensors. I coded up a quick and dirty implementation as described in the original paper and thought it might be a useful contribution to the numpy.linalg library. The code is attached and released to you under public domain.
If you do choose to incorporate the code, please note that:
1) the code is a direct implementation of the algorithm described in the original paper, and could probably be done more quickly and cleverly, 2) it has only been tested on the few examples in the original paper 3) there are some discrepancies up to overall signs in some columns of the left singular matrices.
cite: Lieven de Lathauwer, Bart de Moor, Joos Vandewalle, 'A multilinear singular value decomposition', SIAM J. Matrix Anal. Appl. 21 (4), 2000, 1253-1278