Visual Studio Code での PyTorch サポート

Jupyter Notebooks のサポートに加え、Visual Studio Code は PyTorch 開発者にとって特に重要な多くの機能を提供しています。本記事では、これらの機能の一部を紹介し、プロジェクトでどのように役立つかを解説します。PyTorch 開発に慣れていない場合は、Microsoft Learn の「PyTorch の基礎を学ぶ」学習パスで、PyTorch を使用したディープラーニングの基礎を学ぶことができます。

Tensor およびデータスライス用のデータビューアー(Data Viewer)サポート

VS Code には、PyTorch や TensorFlow の Tensor データ型を含む、コードやノートブック内の変数を調査できる データビューアー が用意されています。さらに、データビューアーにはスライス機能があり、高次元データの任意の 2D スライスを表示することが可能です。

データビューアーにアクセスするには、ノートブックの変数エクスプローラー(Variable Explorer)で、任意の Tensor 変数の横に表示されるデータビューアーアイコンをクリックします。変数エクスプローラーには、Tensor の形状(shape)や次元も表示される点に注目してください。

Accessing the Data Viewer from the variable explorer

または、Python のデバッグセッション中に、デバッガー内の任意の Tensor 変数を右クリックし、[データビューアーで値を表示 (View Value in Data Viewer)] を選択して開くこともできます。

Accessing the Data Viewer from the Python debugger

3 次元以上のデータ(numpy の ndarray、PyTorch の Tensor、または TensorFlow の EagerTensor 型)がある場合、データビューアーにはデフォルトでデータスライスパネルが開きます。このパネルを使用すると、入力ボックスに Python のスライス構文を使用してプログラムでスライスを指定するか、対話型の [軸 (Axis)] および [インデックス (Index)] ドロップダウンを使用してスライスすることもできます。

Data Viewer with data slices and tensors

スライス機能に加え、各列名の下にあるフィルターでキーワードを検索することで、"inf" や "NaN" といった注目すべき値を検索することも可能です。

TensorBoard 統合

TensorBoard は、PyTorchTensorFlow の開発者がデータセットやモデルのトレーニングを視覚化するのに役立つデータサイエンス用ダッシュボードです。VS Code に直接統合された TensorBoard を使用すると、モデルの予測を確認したり、モデルのアーキテクチャを表示したり、時間の経過に伴うモデルの損失や精度を分析したり、コードをプロファイリングして処理が最も遅い箇所を特定したりできます。

TensorBoard integration with 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 モデルをより一元的に分析できるようになりました。プロファイラーの詳細については、PyTorch Profiler のドキュメントを参照してください。

PyTorch Profiler integration with VS Code

Pylance 言語サーバーによる IntelliSense

Pylance のパワーによって強化された VS Code での Python 編集環境は、PyTorch 向けの補完機能やその他の高度な機能を提供します。最高のエクスペリエンスを得るために、PyTorch を 1.10.1 以降にアップデートしてください。これにより、nn、cuda、optim などのサブモジュールに対する補完機能が向上します。

Pylance support for PyTorch

© . This site is unofficial and not affiliated with Microsoft.