class_docstr: Base class for LensKit algorithms.  These algorithms follow the SciKit design pattern
  for estimators.
  
  :canonical: lenskit.Algorithm
class_docstr_tok: ["Base","class","for","LensKit","algorithms",".","These","algorithms","follow","the","SciKit","design","pattern","for","estimators",".",":","canonical",":","lenskit.Algorithm"]
docstr: Train a model using the specified ratings (or similar) data.
  
  Args:
      ratings(pandas.DataFrame): The ratings data.
      kwargs: Additional training data the algorithm may require.  Algorithms should
          avoid using the same keyword arguments for different purposes, so that
          they can be more easily hybridized.
  
  Returns:
      The algorithm object.
docstr_tok: ["Train","a","model","using","the","specified","ratings","(","or","similar",")","data",".","Args",":","ratings","(","pandas.DataFrame",")",":","The","ratings","data",".","kwargs",":","Additional","training","data","the","algorithm","may","require",".","Algorithms","should","avoid","using","the","same","keyword","arguments","for","different","purposes",",","so","that","they","can","be","more","easily","hybridized",".","Returns",":","The","algorithm","object","."]
code: def fit(self, ratings, **kwargs):
      """
      Train a model using the specified ratings (or similar) data.
  
      Args:
          ratings(pandas.DataFrame): The ratings data.
          kwargs: Additional training data the algorithm may require.  Algorithms should
              avoid using the same keyword arguments for different purposes, so that
              they can be more easily hybridized.
  
      Returns:
          The algorithm object.
      """
      raise NotImplementedError()
  
file_path: lkpy/lenskit/algorithms/__init__.py
imports: from abc import ABCMeta, abstractmethod
  import inspect
label_desc: Use image node_id 1 for calling the Algorithm obj's underlying member method code with example usage: obj.fit(ratings) without return types