Creating a TensorBoard Logger¶
melissa.server.deep_learning.tensorboard.make_tb_logger(framework_t, rank=0, logdir='tensorboard', disable=False, debug=False)
¶
Factory function to create a TensorBoard logger based on the specified deep learning framework.
Parameters¶
- framework_t (
FrameworkType): The type of framework (TORCH,TENSORFLOW, orDEFAULT). - rank (
int, optional): Rank of the process (used for distributed training). Defaults to0. - logdir (
str, optional): Directory where TensorBoard logs are stored. Defaults to"tensorboard". - disable (
bool, optional): IfTrue, disables logging. Defaults toFalse. - debug (
bool, optional): IfTrue, enables debug mode for the logger. Defaults toFalse.
Returns¶
TensorboardLogger: An instance of the appropriate TensorBoard logger (TorchTensorboardLoggerorTfTensorboardLogger).
Raises¶
ModuleNotFoundError: IfDEFAULTis selected but neither PyTorch nor TensorFlow loggers are available.ValueError: If an unsupported framework type is provided.
TensorBoard Logger Classes¶
melissa.server.deep_learning.tensorboard.base_logger.TensorboardLogger¶
Bases: ABC
log_scalar(tag, scalar_value, step)
abstractmethod
¶
Logs scalar to tensorboard logger.
Parameters¶
- tag (
str): Metric tag. - scalar_value (
Any): Value to log. - step (
int): Step number.
log_scalars(main_tag, tag_scalar_dict, step)
¶
Logs several scalars with multi-tag to tensorboard logger.
Parameters¶
- main_tag (
str): The parent name for the tags. - tag_scalar_dict (
dict): Key-value pair storing the tag and corresponding values. - step (
int): Step number.
log_scalar_dbg(tag, scalar_value, step)
abstractmethod
¶
Logs debugging-related scalar to tensorboard logger.
Parameters¶
- tag (
str): Metric tag. - scalar_value (
Any): Value to log. - step (
int): Step number.
log_histogram(tag, values, step=None)
¶
Logs histograms to tensorboard logger.
Parameters¶
- tag (
str): Metric tag. - values (
Any): Values to log. - step (
Optional[int]): Step number.
log_figure(tag, figure, step=None, close=True)
¶
Render matplotlib figure into an image and add it to summary.
Parameters¶
- tag (
str): Figure identifier. - figure (
Union[Figure, List[Figure]]): Figure or a list of figures. - step (
Optional[int]): Step number. - close (
bool) : Flag to automatically close the figure.
close()
¶
Flushes and closes tensorboard logger.
melissa.server.deep_learning.tensorboard.torch_logger.TorchTensorboardLogger¶
Bases: TensorboardLogger
melissa.server.deep_learning.tensorboard.tf_logger.TfTensorboardLogger¶
Bases: TensorboardLogger
__figure_to_image(figures, close=True)
¶
Converts matplotlib figure(s) to a TensorFlow image tensor.
Inspired from torch.utils.tensorboard._utils.figure_to_image.
Converting Logs to Pandas DataFrame¶
melissa.server.deep_learning.tensorboard.base_logger.convert_tb_logs_to_df(rank)
¶
Converts local TensorBoard data into Pandas DataFrame. Saves the pandas dataframe as a pickle file inside out_dir/tensorboard.