pytorch_igniter package¶
Submodules¶
pytorch_igniter.args module¶
-
pytorch_igniter.args.add_eval_args(parser, args)¶
-
pytorch_igniter.args.add_mlflow_args(parser)¶
-
pytorch_igniter.args.add_model_args(parser, args)¶
-
pytorch_igniter.args.add_train_args(parser, args)¶
-
pytorch_igniter.args.add_tran_and_eval_args(parser)¶
-
pytorch_igniter.args.eval_args(parser: argparse.ArgumentParser)¶
-
pytorch_igniter.args.fix_device(args)¶
-
pytorch_igniter.args.mlflow_args(parser, mlflow_enable=True, mlflow_tracking_uri=None, mlflow_tracking_password=None, mlflow_tracking_username=None, mlflow_tracking_secret_name=None, mlflow_tracking_secret_region=None, mlflow_tracking_secret_profile=None, mlflow_experiment_name='default', mlflow_run_name=None)¶
-
pytorch_igniter.args.model_args(parser, device=None)¶
-
pytorch_igniter.args.parser_for_docs()¶
-
pytorch_igniter.args.train_and_eval_args(parser: argparse.ArgumentParser, eval_event='EPOCH_COMPLETED')¶
-
pytorch_igniter.args.train_args(parser, max_epochs=10, n_saved=10, save_event='EPOCH_COMPLETED')¶
-
pytorch_igniter.args.train_kwargs(args)¶
pytorch_igniter.commands module¶
-
class
pytorch_igniter.commands.EvalCommand(igniter_config: pytorch_igniter.config.IgniterConfig, script, cmd='eval', **kwargs)¶ Bases:
aws_sagemaker_remote.training.main.TrainingCommand-
argparse_callback(parser)¶
-
runner(args)¶
-
pytorch_igniter.config module¶
-
class
pytorch_igniter.config.IgniterConfig(model_args=None, train_args=None, eval_args=None, description=None, train_inputs=None, eval_inputs=None, make_model=None, make_evaluator=None, make_trainer=None, inference_spec=None, **igniter_args)¶ Bases:
object
pytorch_igniter.engine module¶
-
pytorch_igniter.engine.build_engine(spec: pytorch_igniter.spec.RunSpec, output_dir=None, trainer=None, metric_cls=<class 'ignite.metrics.running_average.RunningAverage'>, tag='', mlflow_logger=None, is_training=None, device=None)¶
pytorch_igniter.evaluator module¶
-
pytorch_igniter.evaluator.dummy_step(engine, batch)¶
-
pytorch_igniter.evaluator.evaluate(eval_spec: pytorch_igniter.spec.RunSpec, output_dir=None, model_dir=None, to_load=None, tag='eval', mlflow_enable=True, mlflow_tracking_uri=None, trainer=None)¶
pytorch_igniter.experiment_cli module¶
-
pytorch_igniter.experiment_cli.experiment_cli(script, config: pytorch_igniter.config.IgniterConfig, extra_commands=None, description=None, dry_run=False, **kwargs)¶
-
pytorch_igniter.experiment_cli.experiment_cli_commands(script, config: pytorch_igniter.config.IgniterConfig, extra_commands=None, **kwargs)¶
pytorch_igniter.hooks module¶
-
class
pytorch_igniter.hooks.ConcatenateOutputsHook(tracked_outputs, axis=-1)¶ Bases:
object-
attach(engine: ignite.engine.engine.Engine, start_event=<Events.ITERATION_COMPLETED: 'iteration_completed'>, iteration_event=<Events.ITERATION_COMPLETED: 'iteration_completed'>)¶
-
clear(engine)¶
-
collect(engine)¶
-
concatenate()¶
-
pytorch_igniter.main module¶
-
pytorch_igniter.main.igniter_main(main, training_args=None, **sagemaker_args)¶ Run a training script
Parameters: - main (function) – Main function. Must have one argument
parser:argparse.Namespace. - training_args (dict) – Keyword arguments to
pytorch_igniter.args.train_args(). - sagemaker_args (dict) – Keyword arguments to
aws-sagemaker-remote.training.main.sagemaker_training_main. See aws_sagemaker_remote.
- main (function) – Main function. Must have one argument
pytorch_igniter.metrics module¶
-
class
pytorch_igniter.metrics.SafeAverage(output_transform: Callable = <function Average.<lambda>>, device: Union[str, torch.device, None] = None)¶ Bases:
ignite.metrics.accumulation.Average-
compute() → Union[Any, torch.Tensor, numbers.Number]¶ Computes the metric based on it’s accumulated state.
By default, this is called at the end of each epoch.
Returns: the actual quantity of interest. However, if aMappingis returned, it will be (shallow) flattened into engine.state.metrics whencompleted()is called.Return type: Any Raises: NotComputableError– raised when the metric cannot be computed.
-
pytorch_igniter.mlflow_ctx module¶
-
class
pytorch_igniter.mlflow_ctx.NullContext¶ Bases:
object
-
pytorch_igniter.mlflow_ctx.get_mlflow_logger(output_dir=None, checkpoint_dir=None, mlflow_enable=True)¶
-
pytorch_igniter.mlflow_ctx.mlflow_ctx(checkpoint_dir=None, output_dir=None, run_id=None, mlflow_enable=True, allow_new=True, experiment_name=None, run_name=None, parameters=None, is_sagemaker=None, sagemaker_job_name=None)¶
pytorch_igniter.spec module¶
-
class
pytorch_igniter.spec.InferenceSpec(inferencer, requirements=None, dependencies=None, input_fn=None, output_fn=None)¶ Bases:
object
-
class
pytorch_igniter.spec.RunSpec(loader, step, metrics, max_epochs=1, epoch_length=None, callback=None, enable_pbar=True, pbar_metrics='all', print_event='default', print_metrics='all', print_fmt='default', print_metric_fmt=' | {name}: {value}', log_event='default', log_metrics='all', plot_event='default', plot_metrics='all', enable_timer=True)¶ Bases:
object-
classmethod
eval_spec(loader, model, criteria, preproc=None, **kwargs)¶
-
set_defaults(is_training=True)¶ Fill in the default events for training or evaluation specs
-
classmethod
train_spec(loader, model, criteria, optimizer, preproc=None, **kwargs)¶
-
classmethod
pytorch_igniter.ssm module¶
-
pytorch_igniter.ssm.get_secret(profile_name='default', secret_name='mlflow-secret', region_name=None)¶
pytorch_igniter.trainer module¶
-
pytorch_igniter.trainer.train(to_save, model, train_spec: pytorch_igniter.spec.RunSpec, eval_spec: pytorch_igniter.spec.RunSpec = None, eval_event=<Events.EPOCH_COMPLETED: 'epoch_completed'>, save_event=<Events.EPOCH_COMPLETED: 'epoch_completed'>, n_saved=10, mlflow_enable=True, mlflow_tracking_uri=None, mlflow_tracking_username=None, mlflow_tracking_password=None, mlflow_tracking_secret_name=None, mlflow_tracking_secret_profile=None, mlflow_tracking_secret_region=None, mlflow_experiment_name=None, mlflow_run_name=None, model_dir='output', checkpoint_dir='output', output_dir='output', parameters=None, device=None, max_epochs=None, is_sagemaker=False, sagemaker_job_name=None, inference_spec=None, inference_args=None, eval_pbar=None, train_pbar=None, train_print_event=None, eval_print_event=None, eval_log_event=None, train_log_event=None)¶ Train a model
pytorch_igniter.util module¶
-
class
pytorch_igniter.util.StateDictStorage¶ Bases:
torch.nn.modules.module.Module-
load_state_dict(state_dict, strict=True)¶ Copies parameters and buffers from
state_dictinto this module and its descendants. IfstrictisTrue, then the keys ofstate_dictmust exactly match the keys returned by this module’sstate_dict()function.Parameters: - state_dict (dict) – a dict containing parameters and persistent buffers.
- strict (bool, optional) – whether to strictly enforce that the keys
in
state_dictmatch the keys returned by this module’sstate_dict()function. Default:True
Returns: - missing_keys is a list of str containing the missing keys
- unexpected_keys is a list of str containing the unexpected keys
Return type: NamedTuplewithmissing_keysandunexpected_keysfields
-
state_dict()¶ Returns a dictionary containing a whole state of the module.
Both parameters and persistent buffers (e.g. running averages) are included. Keys are corresponding parameter and buffer names.
Returns: a dictionary containing a whole state of the module Return type: dict Example:
>>> module.state_dict().keys() ['bias', 'weight']
-
-
pytorch_igniter.util.apply_to_tensors(tensors, fn)¶
-
pytorch_igniter.util.auto_metric(value, cls=<class 'ignite.metrics.running_average.RunningAverage'>)¶
-
pytorch_igniter.util.capture_signals(signals=None, callback=None, die=False, **kwargs)¶
-
pytorch_igniter.util.chain_callbacks(callbacks=None, **kwargs)¶
-
pytorch_igniter.util.create_plots(engine, logs_fname, plots_fname, metric_names='all')¶
-
pytorch_igniter.util.find_last_checkpoint(output_dir)¶
-
pytorch_igniter.util.get_last_checkpoint(checkpoint_handler: ignite.handlers.checkpoint.ModelCheckpoint)¶
-
pytorch_igniter.util.get_mean_value(key)¶
-
pytorch_igniter.util.get_metrics(engine, metric_names='all')¶
-
pytorch_igniter.util.get_value(key)¶
-
pytorch_igniter.util.handle_exception(engine, e, callback=None, **kwargs)¶
-
pytorch_igniter.util.image_saver(engine, output_path, fn)¶
-
pytorch_igniter.util.image_saver_callback(output_path, images)¶ Add a callback to save images
-
pytorch_igniter.util.kill_signals()¶
-
pytorch_igniter.util.load_from(model_dir, to_load)¶
-
pytorch_igniter.util.print_logs(engine, trainer=None, fmt='[{epoch}/{max_epochs}][{i}/{max_i}]', metric_fmt=' | {name}: {value}', metric_names='all')¶
-
pytorch_igniter.util.save_logs(engine, fname, trainer=None, metric_names='all')¶
-
pytorch_igniter.util.tensors_to_device(device)¶
-
pytorch_igniter.util.tensors_to_items(tensors)¶
-
pytorch_igniter.util.tensors_to_numpy(tensors)¶
-
pytorch_igniter.util.timer_metric(engine, name='timer')¶