tbp.monty.frameworks.loggers#
tbp.monty.frameworks.loggers.exp_logger#
- class BaseMontyLogger(handlers)[source]#
Bases:
object
Basic logger that logs or saves information when logging is called.
- class LoggingCallbackHandler(loggers, model, output_dir)[source]#
Bases:
object
Calls a list of loggers on an event (eg post_train).
Each logger receives: logger_args: dict with time stamps (steps, epochs, etc.) and
dataloader.primary_target which contains object id and pose
output_dir: Full path of the directory to store log files
Note
This logger handler is intended primarily for logging
- property logger_list#
- class TestLogger(handlers)[source]#
Bases:
BaseMontyLogger
tbp.monty.frameworks.loggers.graph_matching_loggers#
- class BasicGraphMatchingLogger(handlers)[source]#
Bases:
BaseMontyLogger
Basic logger that logs or saves information when logging is called.
- maybe_log(logger_args, output_dir, model)[source]#
Left here in case we go back to size based logging.
Remove if not used after code has stabilized.
- class DetailedGraphMatchingLogger(handlers)[source]#
Bases:
BasicGraphMatchingLogger
Log detailed stats as .json file by saving data for each LM and SM.
- class SelectiveEvidenceLogger(handlers)[source]#
Bases:
BasicGraphMatchingLogger
Log evidences as .json file by saving data for each LM and SM.
This is slimmed down to only log data needed for object similarity analysis. Data logged:
evidences for each object and pose at the end of an episode
first frame of the view finder
tbp.monty.frameworks.loggers.monty_handlers#
- class BasicCSVStatsHandler[source]#
Bases:
MontyHandler
Grab any logs at the BASIC level and append to train or eval CSV files.
- __init__()[source]#
Initialize with empty dictionary to keep track of writes per file.
We only want to include the header the first time we write to a file. This keeps track of writes per file so we can format the file properly.
- class DetailedJSONHandler(detailed_episodes_to_save: Container[int] | Literal['all'] = 'all', detailed_save_per_episode: bool = False, episode_id_parallel: int | None = None) None [source]#
Bases:
MontyHandler
Grab any logs at the DETAILED level and append to a json file.
- __init__(detailed_episodes_to_save: Container[int] | Literal['all'] = 'all', detailed_save_per_episode: bool = False, episode_id_parallel: int | None = None) None [source]#
Initialize the DetailedJSONHandler.
- Parameters:
detailed_episodes_to_save (Container[int] | Literal[‘all’]) – Container of episodes to save or the string
"all"
(default) to include every episode.detailed_save_per_episode (bool) – Whether to save individual episode files or consolidate into a single detailed_run_stats.json file. Defaults to False.
episode_id_parallel (int | None) – Episode id associated with current run, used to identify the episode when using run_parallel.
- get_detailed_stats(data, global_episode_id: int, local_episode: int, mode: Literal['train', 'eval']) dict [source]#
Get detailed episode stats.
- Returns:
Episode stats.
- Return type:
stats
- get_episode_id(local_episode, mode: Literal['train', 'eval'], **kwargs) int [source]#
Get global episode id corresponding to a mode-local episode index.
This function is needed to determine correct episode id when using run_parallel.
- Returns:
Combined train+eval episode id.
- Return type:
global_episode_id