tltorch.FactorizedTensor

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

Tensor Factorization

Important

All tensor factorization must have an order parameter

Attributes
decomposition

Returns the factors and parameters composing the tensor in factorized form

name

Factorization name (‘tucker’, ‘tt’, ‘cp’, …)

ndim

Order of the tensor

tensor_shape

Methods

dim()

Order of the tensor

forward([indices])

To use a tensor factorization within a network, use tensor.forward, or, equivalently, tensor()

from_tensor(tensor, rank[, factorization])

Create a factorized tensor by decomposing a full tensor

new(shape, rank[, factorization])

Main way to create a factorized tensor

normal_([mean, std])

Inialize the factors of the factorization such that the reconstruction follows a Gaussian distribution

size([index])

shape of the tensor

to_tensor()

Reconstruct the full tensor from its factorized form

numel

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

Main way to create a factorized tensor

Parameters
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_tensor(tensor, rank, factorization='CP', **kwargs)[source]

Create a factorized tensor by decomposing a full tensor

Parameters
tensortorch.tensor

tensor to factorize

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.

forward(indices=None, **kwargs)[source]

To use a tensor factorization within a network, use tensor.forward, or, equivalently, tensor()

Parameters
indicesint or tuple[int], optional

use to index the tensor during the forward pass, by default None

Returns
TensorFactorization

tensor[indices]

property decomposition

Returns the factors and parameters composing the tensor in factorized form

to_tensor()[source]

Reconstruct the full tensor from its factorized form

dim()[source]

Order of the tensor

See also

ndim

Notes

fact_tensor.dim() == fact_tensor.ndim

property ndim

Order of the tensor

See also

dim

Notes

fact_tensor.dim() == fact_tensor.ndim

size(index=None)[source]

shape of the tensor

Parameters
indexint, or tuple, default is None

if not None, returns tensor.shape[index]

See also

shape
normal_(mean=0, std=1)[source]

Inialize the factors of the factorization such that the reconstruction follows a Gaussian distribution

Parameters
meanfloat, currently only 0 is supported
stdfloat

standard deviation

Returns
self
property name

Factorization name (‘tucker’, ‘tt’, ‘cp’, …)