class_docstr: Tucker tensor regression
  
      Learns a low rank Tucker weight for the regression
  
  Parameters
  ----------
  weight_ranks : int list
      dimension of each mode of the core Tucker weight
  tol : float
      convergence value
  reg_W : int, optional, default is 1
      regularisation on the weights
  n_iter_max : int, optional, default is 100
      maximum number of iteration
  random_state : None, int or RandomState, optional, default is None
  verbose : int, default is 1
      level of verbosity
docstr: Returns the predicted labels for a new data tensor
  
  Parameters
  ----------
  X : ndarray
      tensor data of shape (n_samples, N1, ..., NS)
code: def predict(self, X):
      """Returns the predicted labels for a new data tensor
  
      Parameters
      ----------
      X : ndarray
          tensor data of shape (n_samples, N1, ..., NS)
      """
      return T.dot(partial_tensor_to_vec(X), self.vec_W_)
  
file_path: tensorly/tensorly/regression/tucker_regression.py
imports: import numpy
  from ..base import unfold, vec_to_tensor
  from ..base import partial_tensor_to_vec, partial_unfold
  from ..tenalg import kronecker
  from ..tucker_tensor import tucker_to_tensor, tucker_to_vec
  from ..None import backend
label_desc: Use image node_id 5 for calling the TuckerRegressor obj's underlying member method code with example usage: obj.predict(X) and returns: T