swh:1:snp:4e3e7077647a709f15b8c1b32ce7100175d0580b
Tip revision: fa272515cfb398d4b1ca644ba50f4f82dff63d20 authored by Jean Kossaifi on 03 September 2021, 17:55:21 UTC
Merge pull request #293 from IsabellLehmann/cmtf_als
Merge pull request #293 from IsabellLehmann/cmtf_als
Tip revision: fa27251
_factorized_tensor.py
from . import backend as T
from . import tenalg
from collections.abc import Mapping
from abc import ABCMeta
class FactorizedTensor(Mapping, metaclass=ABCMeta):
"""Base Class for Tensors in Factorized form
"""
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
def to_tensor(self):
return NotImplementedError
def to_unfolded(self, mode):
return NotImplementedError
def to_vec(self):
return NotImplementedError
def norm(self):
"""Norm l2 of the tensor"""
return T.norm(self.to_tensor())
def mode_dot(self, matrix_or_tensor, mode):
return tenalg.mode_dot(self.to_tensor(), matrix_or_tensor, mode)