Hub Python Library documentation
Registrador de TensorBoard
Registrador de TensorBoard
TensorBoard es un kit de herramientas de visualización para la experimentación en aprendizaje automático. TensorBoard permite hacer seguimiento y visualizar métricas como la pérdida y la precisión, visualizar el grafo del modelo, ver histogramas, mostrar imágenes y mucho más.
TensorBoard está bien integrado con Hugging Face Hub. El Hub detecta automáticamente las trazas de TensorBoard (como tfevents) cuando se suben al Hub, lo que inicia una instancia para visualizarlas. Para obtener más información sobre la integración de TensorBoard en el Hub, consulta esta guía.
Para aprovechar esta integración, huggingface_hub proporciona un registrador personalizado para enviar registros al Hub. Funciona como un reemplazo directo de SummaryWriter sin necesidad de código adicional. Las trazas se siguen guardando localmente y un trabajo en segundo plano las envía al Hub a intervalos regulares.
HFSummaryWriter
clase huggingface_hub.HFSummaryWriter
< source >( *args**kwargs )
Parámetros
- repo_id (
str) — El id del repositorio al que se enviarán los registros. - logdir (
str, opcional) — El directorio donde se escribirán los registros. Si no se especifica, el objetoSummaryWritersubyacente creará un directorio local. - commit_every (
intofloat, opcional) — La frecuencia (en minutos) con la que se enviarán los registros al Hub. El valor predeterminado es de 5 minutos. - squash_history (
bool, opcional) — Si se debe comprimir el historial del repositorio después de cada commit. El valor predeterminado esFalse. Comprimir los commits es útil para evitar un deterioro del rendimiento del repositorio cuando este crece demasiado. - repo_type (
str, opcional) — El tipo de repositorio al que se enviarán los registros. El valor predeterminado es “model”. - repo_revision (
str, opcional) — La revisión del repositorio al que se enviarán los registros. El valor predeterminado es “main”. - repo_private (
bool, opcional) — Si se debe hacer el repositorio privado. Si esNone(predeterminado), el repositorio será público a menos que el valor predeterminado de la organización sea privado. Este valor se ignora si el repositorio ya existe. - path_in_repo (
str, opcional) — La ruta de la carpeta en el repositorio donde se enviarán los registros. El valor predeterminado es “tensorboard/”. - repo_allow_patterns (
list[str]ostr, opcional) — Una lista de patrones para incluir en la carga. El valor predeterminado es"*.tfevents.*". Consulta la guía de carga para más detalles. - repo_ignore_patterns (
list[str]ostr, opcional) — Una lista de patrones para excluir en la carga. Consulta la guía de carga para más detalles. - token (
str, opcional) — Token de autenticación. Por defecto, se utilizará el token almacenado. Consulte https://huggingface.co/settings/token para más detalles - kwargs —
Argumentos de palabra clave adicionales que se pasan a
SummaryWriter.
Envoltorio alrededor del SummaryWriter de tensorboard para enviar los registros de entrenamiento al Hub.
Los datos se registran localmente y luego se envían al Hub de forma asíncrona. El envío de datos al Hub se realiza en un hilo separado para evitar bloquear el script de entrenamiento. En particular, si la carga falla por cualquier motivo (p. ej., un problema de conexión), el script principal no se interrumpirá. Los datos se envían automáticamente al Hub cada commit_every minutos (por defecto, cada 5 minutos).
HFSummaryWriteres experimental. Su API está sujeta a cambios en el futuro sin previo aviso.
Ejemplos:
# 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)