Visual Studio CodeでのPyTorchのサポート
Jupyter Notebooksのサポートに加え、Visual Studio CodeはPyTorch開発者にとって特に役立つ多くの機能を提供します。この記事では、それらの機能の一部を取り上げ、プロジェクトでどのように役立つかを説明します。PyTorch開発に慣れていない場合は、Microsoft LearnがPyTorchでのディープラーニングの基礎を網羅したPyTorch入門学習パスを提供しています。
テンソルおよびデータスライス用のデータビューアーのサポート
VS Codeは、PyTorchおよびTensorFlowのTensor
データ型を含む、コードやノートブック内の変数を探索できるデータビューアーを提供します。また、データビューアーはデータスライスをサポートしており、高次元データの任意の2次元スライスを表示できます。
データビューアーにアクセスするには、ノートブック変数エクスプローラーから、任意のテンソル変数の横に表示されるデータビューアーアイコンをクリックして開くことができます。変数エクスプローラーにはテンソルの形状/次元も表示されます。
または、Pythonデバッグセッションから、デバッガーで任意のテンソル変数を右クリックし、データビューアーで値を表示を選択して開くこともできます。
3次元以上のデータ(numpy ndarray
、PyTorch Tensor
、またはTensorFlow EagerTensor
型)がある場合、データビューアーではデータスライスパネルがデフォルトで開きます。このパネルを使用すると、入力ボックスを使ってPythonのスライス構文でプログラム的にスライスを指定するか、インタラクティブな軸とインデックスのドロップダウンを使ってスライスすることもできます。
スライスに加えて、各列名の下にあるフィルターで「inf」や「NaN」といったキーワードを検索することで、関心のある値を検索できます。
TensorBoardとの統合
TensorBoardは、PyTorchおよびTensorFlow開発者がデータセットとモデルトレーニングを視覚化するのに役立つデータサイエンスコンパニオンダッシュボードです。TensorBoardがVS Codeに直接統合されているため、モデルの予測をスポットチェックしたり、モデルのアーキテクチャを表示したり、時間の経過とともにモデルの損失と精度を分析したり、コードをプロファイリングしてどこが最も遅いかを見つけたりすることができます。
TensorBoardセッションを開始するには、コマンドパレット (⇧⌘P (Windows、Linux Ctrl+Shift+P)) を開き、コマンド Python: Launch TensorBoard を検索します。その後、TensorBoardのログファイルが置かれているフォルダーを選択するように求められます。デフォルトでは、VS Codeは現在の作業ディレクトリを使用し、サブディレクトリ内のすべてのTensorBoardログファイルを自動的に検出します。ただし、独自のディレクトリを指定することもできます。VS Codeは、TensorBoardを含む新しいタブを開き、作業中にそのライフサイクルを管理します。
設定python.tensorboard.logDirectory
を使用して、フォルダー/ワークスペースのデフォルトのTensorBoardログディレクトリを設定することもできます。
PyTorch Profilerとの統合
TensorBoardに加え、VS CodeとPython拡張機能はPyTorch Profilerも統合しており、PyTorchモデルを1か所でより良く分析できます。プロファイラーの詳細については、PyTorch Profilerのドキュメントを参照してください。
Pylance言語サーバーを介したIntelliSense
Pylanceの機能で強化されたVS CodeのPython編集エクスペリエンスは、PyTorchの補完機能やその他の豊富な機能を提供します。最高の体験を得るには、PyTorchを1.10.1に更新して、nn、cuda、optimなどのサブモジュールに対する補完機能を改善してください。