tltorch.TensorizedTensor

class tltorch.TensorizedTensor(*args, **kwargs)[source]

Matrix in Tensorized Format

Important

order and tensorized_shape correspond to the underlying tensor

shape, dim and ndim correspond to the matrix

Attributes
tensor_shape

Methods

from_matrix(matrix, tensorized_row_shape, ...)

Create a Tensorized Matrix by tensorizing and decomposing an existing matrix

from_tensor(tensor, shape, rank[, factorization])

Create a factorized tensor by decomposing a full tensor

new(tensorized_shape, rank[, factorization])

Main way to create a Tensorized Matrix

to_matrix()

Reconstruct the full matrix from the factorized tensorization

init_from_matrix

classmethod new(tensorized_shape, rank, factorization='CP', **kwargs)[source]

Main way to create a Tensorized Matrix

Parameters
tensorized_shapetuple[int]
rankint, ‘same’ or float

rank of the decomposition

n_matricestuple or int, default is ()

if not (), indicates how many matrices have to be jointly factorized

factorization{‘CP’, ‘TT’, ‘Tucker’}, optional

Tensor factorization to use to decompose the tensor, by default ‘CP’

Returns
TensorizedTensor

Tensor in Tensorized and Factorized form.

Raises
ValueError

If the factorization given does not exist.

classmethod from_tensor(tensor, shape, rank, factorization='CP', **kwargs)[source]

Create a factorized tensor by decomposing a full tensor

Parameters
tensortorch.tensor

tensor to factorize

shapetuple[int]

shape of the factorized tensor to create

rankint, ‘same’ or float

rank of the decomposition

factorization{‘CP’, ‘TT’, ‘Tucker’}, optional

Tensor factorization to use to decompose the tensor, by default ‘CP’

Returns
TensorFactorization

Tensor in Factorized form.

Raises
ValueError

If the factorization given does not exist.

classmethod from_matrix(matrix, tensorized_row_shape, tensorized_column_shape, rank, factorization='CP', **kwargs)[source]

Create a Tensorized Matrix by tensorizing and decomposing an existing matrix

Parameters
matrixtorch.tensor of order 2

matrix to decompose

tensorized_row_shapetuple[int]

The first dimension (rows) of the matrix will be tensorized to that shape

tensorized_column_shapetuple[int]

The second dimension (columns) of the matrix will be tensorized to that shape

rankint, ‘same’ or float

rank of the decomposition

n_matricestuple or int, default is ()

if not (), indicates how many matrices have to be jointly factorized

factorization{‘CP’, ‘TT’, ‘Tucker’}, optional

Tensor factorization to use to decompose the tensor, by default ‘CP’

Returns
TensorizedMatrix

Matrix in Tensorized and Factorized form.

Raises
ValueError

If the factorization given does not exist.

to_matrix()[source]

Reconstruct the full matrix from the factorized tensorization

If several matrices are parametrized, a batch of matrices is returned