tensorly.tenalg
.kronecker
- kronecker(matrices, skip_matrix=None, reverse=False)[source]
Kronecker product of a list of matrices
For more details, see [1]
- Parameters:
- matricesndarray list
- skip_matrixNone or int, optional, default is None
if not None, index of a matrix to skip
- reversebool, optional
if True, the order of the matrices is reversed
- Returns:
- kronecker_product: matrix of shape
(prod(n_rows), prod(n_columns)
where
prod(n_rows) = prod([m.shape[0] for m in matrices])
andprod(n_columns) = prod([m.shape[1] for m in matrices])
- kronecker_product: matrix of shape
Notes
Mathematically:
\[\begin{split}\text{If every matrix } U_k \text{ is of size } (I_k \times J_k),\\ \text{Then } \left(U_1 \otimes \cdots \otimes U_n \right) \text{ is of size } (\prod_{k=1}^n I_k \times \prod_{k=1}^n J_k)\end{split}\]References
[1]T.G.Kolda and B.W.Bader, “Tensor Decompositions and Applications”, SIAM REVIEW, vol. 51, n. 3, pp. 455-500, 2009.