lenskit.training.ModelTrainer ============================= .. py:class:: lenskit.training.ModelTrainer Bases: :py:obj:`abc.ABC` Protocol implemented by iterative trainers for models. Models that implement :class:`UsesTrainer` will return an object implementing this protocol from their :meth:`~UsesTrainer.create_trainer` method. .. This protocol only defines the core aspects of training a model. Trainers should also implement :class:`~lenskit.state.ParameterContainer` to allow training to be checkpointed and resumed. It is also a good idea for the trainer to be pickleable, but the parameter container interface is the primary mechanism for checkpointing. :Stability: Full .. py:method:: train_epoch() :abstractmethod: Perform one epoch of the training process, optionally returning metrics on the training behavior. After each training iteration, the mmodel must be usable. .. py:method:: finalize() Finish the training process, cleaning up any unneeded data structures and doing any finalization steps to the model. The default implementation does nothing.