Shortcuts

TensorBoardLogger

class torchtune.training.metric_logging.TensorBoardLogger(log_dir: str, organize_logs: bool = True, **kwargs)[source]

用于与PyTorch的TensorBoard实现一起使用的Logger(https://pytorch.org/docs/stable/tensorboard.html)。

Parameters:
  • log_dir (str) – torch.TensorBoard 日志目录

  • organize_logs (bool) – 如果为 True,此类将在 log_dir 中为当前运行创建一个子目录。拥有子目录可以让你比较不同运行的日志。当 TensorBoard 在启动时传递一个 logdir 时,它会递归地遍历以 logdir 为根的目录树,寻找包含 tfevents 数据的子目录。每次遇到这样的子目录时,它会将其加载为一个新的运行,前端将相应地组织数据。推荐值为 True。运行 tensorboard –logdir my_log_dir 以查看日志。

  • **kwargs – 附加参数

示例

>>> from torchtune.training.metric_logging import TensorBoardLogger
>>> logger = TensorBoardLogger(log_dir="my_log_dir")
>>> logger.log("my_metric", 1.0, 1)
>>> logger.log_dict({"my_metric": 1.0}, 1)
>>> logger.close()

注意

此工具需要安装tensorboard包。 您可以使用pip install tensorboard进行安装。 为了查看TensorBoard日志,您需要在终端中运行tensorboard –logdir my_log_dir

close() None[source]

关闭日志资源,必要时进行刷新。 调用close后不应再写入日志。

log(name: str, data: Union[Tensor, ndarray, int, float], step: int) None[source]

记录标量数据。

Parameters:
  • name (str) – 用于分组标量的标签名称

  • data (Scalar) – 要记录的标量数据

  • step (int) – 记录步长值

log_dict(payload: Mapping[str, Union[Tensor, ndarray, int, float]], step: int) None[source]

记录多个标量值。

Parameters:
  • payload (Mapping[str, Scalar]) – 标签名称和标量值的字典

  • step (int) – 记录步长值