composer.loggers.in_memory_logger#

Logs metrics to dictionary objects that persist in memory throughout training.

Useful for collecting and plotting data inside notebooks.

Classes

InMemoryLogger

Logs metrics to dictionary objects that persist in memory throughout training.

class composer.loggers.in_memory_logger.InMemoryLogger(log_level=LogLevel.BATCH)[source]#

Bases: composer.core.logging.base_backend.LoggerCallback

Logs metrics to dictionary objects that persist in memory throughout training. Useful for collecting and plotting data inside notebooks.

Example usage:
from composer.loggers import InMemoryLogger
from composer.trainer import Trainer
from composer.core.logging import LogLevel
logger = InMemoryLogger(
    log_level=LogLevel.BATCH
)
trainer = Trainer(
    model=model,
    train_dataloader=train_dataloader,
    eval_dataloader=eval_dataloader,
    max_duration="1ep",
    optimizers=[optimizer],
    loggers=[logger]
)
# Get data from logger. If you are using multiple loggers, be sure to confirm
# which index in trainer.logger.backends contains your desired logger.
logged_data = trainer.logger.backends[0].data
Parameters

log_level (str or LogLevel, optional) โ€“ LogLevel (i.e. unit of resolution) at which to record. Defaults to BATCH, which records everything.

data#

Mapping of a logged key to a (Timestamp, LogLevel, TLogDataValue) tuple. This dictionary contains all logged data.

Type

dict

most_recent_values#

Mapping of a key to the most recent value for that key.

Type

Dict[str, TLogData]

most_recent_timestamps#

Mapping of a key to the Timestamp of the last logging call for that key.

Type

Dict[str, Timestamp]