Trainer¶
The main module for training process
-
class
piepline.train.
Trainer
(train_config: piepline.train_config.train_config.BaseTrainConfig, fsm: piepline.utils.fsm.FileStructManager, device: torch.device = None)[source]¶ Class, that run drive process.
Trainer get list of training stages and every epoch loop over it.
Training process looks like:
for epoch in epochs_num: for stage in training_stages: stage.run() monitor_hub.update_metrics(stage.metrics_processor().get_metrics()) save_state() on_epoch_end_callback()
Parameters: - train_config –
TrainConfig
object - fsm –
FileStructManager
object - device – device for training process
-
data_processor
() → piepline.data_processor.data_processor.TrainDataProcessor[source]¶ Get data processor object
Returns: data processor
-
enable_lr_decaying
(coeff: float, patience: int, target_val_clbk: callable) → piepline.train.Trainer[source]¶ Enable rearing rate decaying. Learning rate decay when target_val_clbk returns doesn’t update minimum for patience steps
Parameters: - coeff – lr decay coefficient
- patience – number of steps
- target_val_clbk – callback which returns the value that is used for lr decaying
Returns: self object
- train_config –