Shortcuts

Source code for ignite.contrib.handlers.stores

from typing import Callable, List, Tuple, Union

from ignite.engine import Engine, Events


[docs]class EpochOutputStore: """EpochOutputStore handler to save output prediction and target history after every epoch, could be useful for e.g., visualization purposes. Note: This can potentially lead to a memory error if the output data is larger than available RAM. Args: output_transform (callable, optional): a callable that is used to transform the :class:`~ignite.engine.engine.Engine`'s ``process_function``'s output , e.g., lambda x: x[0] Examples:: eos = EpochOutputStore() trainer = create_supervised_trainer(model, optimizer, loss) train_evaluator = create_supervised_evaluator(model, metrics) eos.attach(train_evaluator) @trainer.on(Events.EPOCH_COMPLETED) def log_training_results(engine): train_evaluator.run(train_loader) output = eos.data # do something with output, e.g., plotting .. versionadded:: 0.4.2 """ def __init__(self, output_transform: Callable = lambda x: x) -> None: self.data = [] # type: List[Union[int, Tuple[int, int]]] self.output_transform = output_transform def reset(self) -> None: self.data = [] def update(self, engine: Engine) -> None: output = self.output_transform(engine.state.output) self.data.append(output) def attach(self, engine: Engine) -> None: engine.add_event_handler(Events.EPOCH_STARTED, self.reset) engine.add_event_handler(Events.ITERATION_COMPLETED, self.update)

© Copyright 2024, PyTorch-Ignite Contributors. Last updated on 04/17/2024, 8:20:32 PM.

Built with Sphinx using a theme provided by Read the Docs.