class_docstr: MatrixFactorizationBase contains common functionality for recommendation models.
  
  Attributes
  ----------
  item_factors : ndarray
      Array of latent factors for each item in the training set
  user_factors : ndarray
      Array of latent factors for each user in the training set
  num_threads : int
      The number of threads to use for batch recommendation calls and fitting the
      model. Setting to 0 will use all CPU cores on the machine
class_docstr_tok: ["MatrixFactorizationBase","contains","common","functionality","for","recommendation","models",".","Attributes","--","--","--","--","--","item_factors",":","ndarray","Array","of","latent","factors","for","each","item","in","the","training","set","user_factors",":","ndarray","Array","of","latent","factors","for","each","user","in","the","training","set","num_threads",":","int","The","number","of","threads","to","use","for","batch","recommendation","calls","and","fitting","the","model",".","Setting","to","0","will","use","all","CPU","cores","on","the","machine"]
code: def similar_users(self, userid, N=10, filter_users=None, users=None):
      user_factors = self.user_factors
      norms = self.user_norms
      norm = norms[userid]
  
      # if we have an user list to restrict down to, we need to filter the user_factors
      if users is not None:
          if filter_users:
              raise ValueError(
                  "Can't set both users and filter_users in similar_users call"
              )
  
          users = np.array(users)
          user_factors = user_factors[users]
          norms = norms[users]
  
          # check selected items are in the model
          if (
              users.max() >= self.user_factors.shape[0]
              or users.min() < 0
          ):
              raise IndexError(
                  "Some userids in the users parameter are not in the model"
              )
  
      factor = self.user_factors[userid]
      ids, scores = self._get_similarity_score(
          factor,
          norm,
          user_factors,
          norms,
          N,
          filter_items=filter_users,
      )
      if users is not None:
          ids = users[ids]
  
      return ids, scores
  
imports: import warnings
  import numpy
  from scipy.sparse import csr_matrix, lil_matrix
  from ..recommender_base import ModelFitError, RecommenderBase
  from .topk import topk
label_desc: Use image node_id 8 for calling the MatrixFactorizationBase obj's underlying member method code with example usage: obj.similar_users(userid, N, filter_users, users) and returns: ids,  scores