Hub Python Library documentation

Logger do TensorBoard

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Logger do TensorBoard

TensorBoard é um conjunto de ferramentas de visualização para experimentação em aprendizado de máquina. O TensorBoard permite rastrear e visualizar métricas, como perda e precisão, visualizar o grafo do modelo, exibir histogramas, exibir imagens e muito mais. O TensorBoard está bem integrado ao Hugging Face Hub. O Hub detecta automaticamente os rastros do TensorBoard (como tfevents) quando enviados ao Hub, o que inicia uma instância para visualizá-los. Para obter mais informações sobre a integração do TensorBoard no Hub, consulte este guia.

Para se beneficiar dessa integração, huggingface_hub fornece um logger personalizado para enviar logs ao Hub. Ele funciona como uma substituição direta para SummaryWriter sem a necessidade de código extra. Os rastros ainda são salvos localmente e um job em segundo plano os envia ao Hub em intervalos regulares.

HFSummaryWriter

classe huggingface_hub.HFSummaryWriter

< >

( *args**kwargs )

Parâmetros

  • repo_id (str) — O id do repositório para o qual os logs serão enviados.
  • logdir (str, opcional) — O diretório onde os logs serão gravados. Se não for especificado, um diretório local será criado pelo objeto SummaryWriter subjacente.
  • commit_every (int ou float, opcional) — A frequência (em minutos) com que os logs serão enviados para o Hub. O padrão é 5 minutos.
  • squash_history (bool, opcional) — Se deve comprimir o histórico do repositório após cada commit. O padrão é False. A compressão de commits é útil para evitar o declínio de desempenho no repositório quando ele cresce demais.
  • repo_type (str, opcional) — O tipo do repositório para o qual os logs serão enviados. O padrão é “model”.
  • repo_revision (str, opcional) — A revisão do repositório para a qual os logs serão enviados. O padrão é “main”.
  • repo_private (bool, opcional) — Se deve tornar o repositório privado. Se None (padrão), o repositório será público, a menos que o padrão da organização seja privado. Este valor é ignorado se o repositório já existir.
  • path_in_repo (str, opcional) — O caminho para a pasta no repositório onde os logs serão enviados. O padrão é “tensorboard/”.
  • repo_allow_patterns (list[str] ou str, opcional) — Uma lista de padrões a serem incluídos no upload. O padrão é "*.tfevents.*". Consulte o guia de upload para mais detalhes.
  • repo_ignore_patterns (list[str] ou str, opcional) — Uma lista de padrões para excluir no upload. Consulte o guia de upload para mais detalhes.
  • token (str, opcional) — Token de autenticação. O padrão será o token armazenado. Consulte https://huggingface.co/settings/token para mais detalhes
  • kwargs — Argumentos de palavra-chave adicionais passados para SummaryWriter.

Wrapper em torno do SummaryWriter do tensorboard para enviar logs de treinamento para o Hub.

Os dados são registrados localmente e, em seguida, enviados ao Hub de forma assíncrona. O envio de dados ao Hub é realizado em uma thread separada para evitar bloquear o script de treinamento. Em particular, se o upload falhar por qualquer motivo (por exemplo, um problema de conexão), o script principal não será interrompido. Os dados são enviados automaticamente ao Hub a cada commit_every minutos (padrão: a cada 5 minutos).

HFSummaryWriter é experimental. Sua API está sujeita a alterações no futuro sem aviso prévio.

Exemplos:

# Taken from https://pytorch.org/docs/stable/tensorboard.html
- from torch.utils.tensorboard import SummaryWriter
+ from huggingface_hub import HFSummaryWriter

import numpy as np

- writer = SummaryWriter()
+ writer = HFSummaryWriter(repo_id="username/my-trained-model")

for n_iter in range(100):
    writer.add_scalar('Loss/train', np.random.random(), n_iter)
    writer.add_scalar('Loss/test', np.random.random(), n_iter)
    writer.add_scalar('Accuracy/train', np.random.random(), n_iter)
    writer.add_scalar('Accuracy/test', np.random.random(), n_iter)
>>> from huggingface_hub import HFSummaryWriter

# Logs are automatically pushed every 15 minutes (5 by default) + when exiting the context manager
>>> with HFSummaryWriter(repo_id="test_hf_logger", commit_every=15) as logger:
...     logger.add_scalar("a", 1)
...     logger.add_scalar("b", 2)
Update on GitHub