UT3Weights.from_ut3svd#

classmethod t3toolbox.uniform_tucker_tensor_train.UT3Weights.from_ut3svd(x, **kwargs)#
def from_ut3svd(cls, x: 'UniformTuckerTensorTrain', **kwargs) -> 'UT3Weights':

The singular values of x as a weight object – the canonical (unmodified) sigmas, so from_ut3svd(x).reciprocal() is the inverse-sigma (Grasedyck-Kramer) weighting. Uniform twin of from_t3svd().

**kwargs pass to UniformTuckerTensorTrain.t3svd(). The weights carry the t3svd result’s masks, so they pair with that result – which is x itself only when x already has minimal ranks and tight padding. Otherwise weight the returned train, not the original:

xs, _, _ = x.t3svd(); W = UT3Weights.from_ut3svd(x); absorb_weights(xs, W)

Parameters:

x (UniformTuckerTensorTrain)

Return type:

UT3Weights