メインコンテンツへスキップ
W&B とのシームレスなインテグレーションにより、Hugging Face モデルのパフォーマンスをすばやく可視化できます。 ハイパーパラメーター、出力メトリクス、GPU 使用率などのシステム統計を、モデル間で比較できます。

なぜ W&B を使うべきですか?

W&B を使用する利点
  • 統合ダッシュボード: すべてのモデルのメトリクスと予測を一元的に管理
  • 軽量: Hugging Face と統合するためにコードを変更する必要はありません
  • 利用しやすい: 個人および学術 Teams は無料で利用できます
  • 安全: すべてのプロジェクトはデフォルトで非公開です
  • 信頼性: OpenAI、Toyota、Lyft などの機械学習チームで利用されています
W&B は、機械学習モデル向けの GitHub のようなものです。機械学習の実験を非公開のホスト型ダッシュボードに保存できます。スクリプトをどこで実行していても、モデルのすべてのバージョンが保存されるため、安心してすばやく実験を進められます。 W&B の軽量なインテグレーションはあらゆる Python スクリプトで動作し、モデルのトラッキングと可視化を始めるには、無料の W&B アカウントにサインアップするだけです。 Hugging Face Transformers のリポジトリでは、各 logging step でトレーニングおよび評価メトリクスを自動的に W&B にログするよう、Trainer が組み込まれています。 このインテグレーションの仕組みについては、次の詳しい解説をご覧ください: Hugging Face + W&B Report.

インストール、インポート、ログイン

このチュートリアルで使用する Hugging Face と W&B のライブラリ、GLUE データセット、トレーニング スクリプトをインストールします。
!pip install datasets wandb evaluate accelerate -qU
!wget https://raw.githubusercontent.com/huggingface/transformers/refs/heads/main/examples/pytorch/text-classification/run_glue.py
# run_glue.py スクリプトには transformers の開発版が必要です
!pip install -q git+https://github.com/huggingface/transformers
続行する前に、無料アカウントにサインアップしてください

APIキーを入力

登録後、次のセルを実行し、リンクをクリックしてAPIキーを取得し、このノートブックを認証してください。
import wandb
wandb.login()
必要に応じて、環境変数を設定して W&B のログ記録をカスタマイズできます。詳しくは、Hugging Face インテグレーションガイドを参照してください。
# オプション: gradientとパラメーターの両方をログする
%env WANDB_WATCH=all

モデルをトレーニングする

次に、ダウンロードしたトレーニングスクリプト run_glue.py を実行し、トレーニングの内容が自動的に W&B ダッシュボードにトラッキングされることを確認します。このスクリプトは、意味的に同等かどうかを示す人によるアノテーションが付いた文のペアで構成される Microsoft Research Paraphrase Corpus で、BERT をファインチューニングします。
%env WANDB_PROJECT=huggingface-demo
%env TASK_NAME=MRPC

!python run_glue.py \
  --model_name_or_path bert-base-uncased \
  --task_name $TASK_NAME \
  --do_train \
  --do_eval \
  --max_seq_length 256 \
  --per_device_train_batch_size 32 \
  --learning_rate 2e-4 \
  --num_train_epochs 3 \
  --output_dir /tmp/$TASK_NAME/ \
  --overwrite_output_dir \
  --logging_steps 50

ダッシュボードで結果を可視化する

上に表示されたリンクをクリックするか、wandb.aiにアクセスすると、結果がリアルタイムで反映される様子を確認できます。ブラウザでrunを表示するためのリンクは、すべての依存関係が読み込まれたあとに表示されます。次の出力を探してください: “wandb: View run at [固有のrunへのURL]” モデル性能を可視化する 多数のExperimentsを横断して確認し、興味深い発見にズームインし、高次元データを可視化できます。
モデルのメトリクス ダッシュボード
アーキテクチャを比較する これは、BERT と DistilBERT の比較の例です。自動生成される折れ線グラフにより、トレーニング全体を通して異なるアーキテクチャが評価精度にどのような影響を与えるかを簡単に確認できます。
BERT と DistilBERT の比較

デフォルトで重要な情報を簡単にトラッキング

W&B では、実験ごとに新しい run が保存されます。デフォルトで保存される情報は次のとおりです。
  • ハイパーパラメーター: モデルの設定は Config に保存されます
  • モデルのメトリクス: ストリーミングされるメトリクスの時系列データは Log に保存されます
  • ターミナルログ: コマンドラインの出力は保存され、タブで確認できます
  • システムメトリクス: GPU と CPU の使用率、メモリ、温度など

詳細はこちら