code: def truncated_svd(matrix, n_eigenvecs=None, **kwargs):
      """Computes a truncated SVD on `matrix` using the backends's standard SVD
  
      Parameters
      ----------
      matrix : 2D-array
      n_eigenvecs : int, optional, default is None
          if specified, number of eigen[vectors-values] to return
  
      Returns
      -------
      U : 2D-array
          of shape (matrix.shape[0], n_eigenvecs)
          contains the right singular vectors
      S : 1D-array
          of shape (n_eigenvecs, )
          contains the singular values of `matrix`
      V : 2D-array
          of shape (n_eigenvecs, matrix.shape[1])
          contains the left singular vectors
      """
      n_eigenvecs, min_dim, _ = svd_checks(
          matrix, n_eigenvecs=n_eigenvecs
      )
      full_matrices = True if n_eigenvecs > min_dim else False
  
      U, S, V = tl.svd(matrix, full_matrices=full_matrices)
      return U[:, :n_eigenvecs], S[:n_eigenvecs], V[:n_eigenvecs, :]
  
file_path: tensorly/tensorly/tenalg/svd.py
imports: import warnings
  import tensorly
  from .proximal import soft_thresholding
label_desc: Use image node_id 5 for calling a global function with example usage: truncated_svd(matrix, n_eigenvecs) and returns: U,  S,  V