PyTorch は、特に研究者の間で、Python におけるディープラーニングの最も人気のあるフレームワークの一つです。W&B は、PyTorch に対して一流のサポートを提供し、勾配のログから CPU と GPU 上でのコードのプロファイリングまで対応しています。
Colab ノートブックで私たちのインテグレーションを試してみてください。
また、example repo では、スクリプトや Fashion MNIST を使用した Hyperband によるハイパーパラメータ最適化などの例を含むものがあります。それが生成する W&B Dashboard もご覧いただけます。
wandb.watch を使った勾配のログ
勾配を自動的にログするには、wandb.watch を呼び出して、PyTorch モデルを渡します。
同じスクリプト内で複数のモデルを追跡する必要がある場合は、それぞれのモデルに対して wandb.watch を個別に呼び出すことができます。この関数の参照ドキュメントはこちら。
勾配、メトリクス、およびグラフは、フォワード および バックワードパスの後に wandb.log が呼び出されるまでログされません。
画像とメディアのログ
画像データを持つ PyTorch Tensors を wandb.Image に渡すことができ、torchvision のユーティリティが自動的に画像に変換します。
PyTorch や他のフレームワークにおけるリッチメディアのログについての詳細は、メディアログガイドをご覧ください。
メディアと一緒にモデルの予測や派生メトリクスなどの情報も含めたい場合は、wandb.Table を使用します。
データセットやモデルのログと視覚化についての詳細は、W&B Tables のガイドをご覧ください。
PyTorch コードのプロファイリング
W&B は PyTorch Kineto の Tensorboard プラグイン と直接統合されており、PyTorch コードのプロファイリング、CPU と GPU の通信の詳細の検査、ボトルネックや最適化を識別するためのツールを提供します。
こちらの Colabで作業中の例コードを見て実行できます。
インタラクティブなトレースビューツールは、Chrome Trace Viewer に基づいており、Chrome ブラウザで最も良好に動作します。