Hub Python 庫文件

TensorBoard 日誌記錄器

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

TensorBoard 日誌記錄器

TensorBoard 是一個用於機器學習實驗的視覺化工具包。TensorBoard 允許跟蹤和視覺化指標,如損失和準確率,視覺化模型圖,檢視直方圖,顯示影像等等。TensorBoard 與 Hugging Face Hub 很好地整合。當 tfevents 等 TensorBoard 跟蹤檔案被推送到 Hub 時,Hub 會自動檢測到它們並啟動一個例項來視覺化它們。有關 Hub 上的 TensorBoard 整合的更多資訊,請檢視 本指南

為了利用這種整合,huggingface_hub 提供了一個自定義的日誌記錄器,用於將日誌推送到 Hub。它作為 SummaryWriter 的即插即用替代品,無需額外程式碼。跟蹤檔案仍會儲存在本地,並且後臺作業會定期將它們推送到 Hub。

HFSummaryWriter

class huggingface_hub.HFSummaryWriter

< >

( *args **kwargs )

引數

  • repo_id (str) — 要推送日誌的倉庫 ID。
  • logdir (str, 可選) — 寫入日誌的目錄。如果未指定,底層 SummaryWriter 物件將建立一個本地目錄。
  • commit_every (intfloat, 可選) — 每隔多久(分鐘)將日誌推送到 Hub。預設為 5 分鐘。
  • squash_history (bool, 可選) — 是否在每次提交後壓縮倉庫歷史記錄。預設為 False。壓縮提交有助於避免倉庫在變得太大時效能下降。
  • repo_type (str, 可選) — 要向其推送日誌的倉庫型別。預設為“model”。
  • repo_revision (str, 可選) — 要推送日誌的倉庫的版本。預設為“main”。
  • repo_private (bool, 可選) — 是否使倉庫私有。如果為 None(預設值),除非組織預設設定為私有,否則倉庫將為公開。如果倉庫已存在,則忽略此值。
  • path_in_repo (str, 可選) — 日誌將被推送到倉庫中的資料夾路徑。預設為“tensorboard/”。
  • repo_allow_patterns (list[str]str, 可選) — 要包含在上傳中的模式列表。預設為 "*.tfevents.*"。有關更多詳細資訊,請參閱 上傳指南
  • repo_ignore_patterns (list[str]str, 可選) — 要從上傳中排除的模式列表。有關更多詳細資訊,請參閱 上傳指南
  • token (str, 可選) — 認證令牌。將預設為儲存的令牌。有關更多詳細資訊,請參閱 https://huggingface.co/settings/token
  • kwargs — 傳遞給 SummaryWriter 的其他關鍵字引數。

TensorBoard 的 SummaryWriter 的包裝器,用於將訓練日誌推送到 Hub。

資料在本地記錄,然後非同步推送到 Hub。資料在單獨的執行緒中推送到 Hub,以避免阻塞訓練指令碼。特別是,如果上傳因任何原因失敗(例如連線問題),主指令碼不會中斷。資料會根據 commit_every 分鐘(預設為每 5 分鐘)自動推送到 Hub。

HFSummaryWriter 處於實驗階段。其 API 將來可能會在沒有事先通知的情況下更改。

示例

# Taken from https://pytorch.com.tw/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)
在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.