Hub Python Library documentation

TensorBoard kayıtçısı

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v2.4.0).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

TensorBoard kayıtçısı

TensorBoard, makine öğrenimi deneyleri için bir görselleştirme araç kitidir. TensorBoard, kayıp ve doğruluk gibi metriklerin izlenmesine ve görselleştirilmesine, model grafiğinin görselleştirilmesine, histogramların görüntülenmesine, görüntülerin gösterilmesine ve daha fazlasına olanak tanır. TensorBoard, Hugging Face Hub ile iyi bir şekilde entegre edilmiştir. Hub, TensorBoard izleri (örneğin tfevents) Hub'a yüklendiğinde bunları otomatik olarak algılar ve bunları görselleştirmek için bir örnek başlatır. Hub'daki TensorBoard entegrasyonu hakkında daha fazla bilgi için bu kılavuza göz atın.

Bu entegrasyondan yararlanmak için huggingface_hub, günlükleri Hub'a göndermek üzere özel bir kayıtçı (logger) sağlar. SummaryWriter için ek kod gerektirmeyen, doğrudan kullanılabilir bir alternatif olarak çalışır. İzler (traces) yine de yerel olarak kaydedilir ve arka planda çalışan bir iş, bunları Hub'a düzenli aralıklarla gönderir.

HFSummaryWriter

sınıf huggingface_hub.HFSummaryWriter

< >

( *args**kwargs )

Parametreler

  • repo_id (str) — Günlüklerin itileceği depoyun kimliği.
  • logdir (str, isteğe bağlı) — Günlüklerin yazılacağı dizin. Belirtilmezse, alttaki SummaryWriter nesnesi tarafından yerel bir dizin oluşturulur.
  • commit_every (int veya float, isteğe bağlı) — Günlüklerin Hub'a gönderilme sıklığı (dakika cinsinden). Varsayılan değer 5 dakikadır.
  • squash_history (bool, isteğe bağlı) — Her commit sonrasında repo geçmişinin sıkıştırılıp sıkıştırılmayacağı. Varsayılan değer False'dir. Commit'lerin sıkıştırılması, repo çok büyüdüğünde performans düşüşlerini önlemek için faydalıdır.
  • repo_type (str, isteğe bağlı) — Günlüklerin itileceği repozituarın türü. Varsayılan olarak “model”dir.
  • repo_revision (str, isteğe bağlı) — Günlüklerin itileceği depoyun revizyonu. Varsayılan olarak “main”dir.
  • repo_private (bool, isteğe bağlı) — Deponun özel yapılıp yapılmayacağı. None (varsayılan) ise, organizasyonun varsayılanı özel değilse depo herkese açık olur. Depo zaten mevcutsa bu değer yok sayılır.
  • path_in_repo (str, isteğe bağlı) — Günlüklerin itileceği depodaki klasörün yolu. Varsayılan olarak “tensorboard/” değerini alır.
  • repo_allow_patterns (list[str] veya str, isteğe bağlı) — Yüklemeye dahil edilecek desenlerin listesi. Varsayılan değer "*.tfevents.*"'tir. Daha fazla ayrıntı için yükleme kılavuzuna göz atın.
  • repo_ignore_patterns (list[str] veya str, isteğe bağlı) — Yüklemeye dahil edilmeyecek desenlerin listesi. Daha fazla ayrıntı için yükleme kılavuzuna göz atın.
  • token (str, isteğe bağlı) — Kimlik doğrulama belirteci. Varsayılan olarak depolanan belirteç kullanılır. Daha fazla ayrıntı için https://huggingface.co/settings/token adresine bakın
  • kwargs — SummaryWriter'e iletilen ek anahtar kelime argümanları.

Eğitim günlüklerini Hub'a göndermek için tensorboard'ın SummaryWriter sınıfının etrafındaki sarmalayıcı.

Veriler yerel olarak kaydedilir ve ardından Hub'a asenkron olarak gönderilir. Eğitim betiğinin bloklanmasını önlemek için Hub'a veri gönderme işlemi ayrı bir iş parçacığında (thread) gerçekleştirilir. Özellikle, yükleme herhangi bir nedenle başarısız olursa (ör. bir bağlantı sorunu), ana betik yarıda kesilmez. Veriler her commit_every dakikada bir (varsayılan olarak her 5 dakikada bir) otomatik olarak Hub'a gönderilir.

HFSummaryWriter deneyseldir. API'si gelecekte önceden haber verilmeden değiştirilebilir.

Örnekler:

# 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