Visual Studio Code での PyTorch のサポート
Jupyter Notebook のサポートに加えて、Visual Studio Code は PyTorch 開発者にとって特に興味深い多くの機能を提供します。この記事では、それらの機能の一部を取り上げ、プロジェクトでどのように役立つかについて説明します。PyTorch 開発に慣れていない場合は、Microsoft Learn で、PyTorch を使用したディープラーニングの基本をカバーする「PyTorch の利用開始」ラーニングパスが提供されています。
テンソルとデータスライスに対するデータビューアーのサポート
VS Code は、PyTorch および TensorFlow の Tensor データ型を含む、コードおよびノートブック内の変数を探索できるデータビューアーを提供します。それに加えて、データビューアーはデータスライシングをサポートしており、より高次元のデータの任意の 2D スライスを表示できます。
データビューアーにアクセスするには、ノートブック変数エクスプローラーから、任意のテンソル変数の横に表示されるデータビューアーアイコンをクリックして開くことができます。変数エクスプローラーには、テンソルの形状/次元も表示されます。

または、Python デバッグセッションから、デバッガー内の任意のテンソル変数を右クリックし、「データビューアーで値を表示」を選択して開くこともできます。

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

スライシングに加えて、各列名の下のフィルターで「inf」または「NaN」などのキーワードを検索することで、関心のある値を検索できます。
TensorBoard 統合
TensorBoard は、PyTorch および TensorFlow 開発者がデータセットとモデルのトレーニングを視覚化するのに役立つデータサイエンスのコンパニオンダッシュボードです。VS Code に TensorBoard が直接統合されているため、モデルの予測をスポットチェックしたり、モデルのアーキテクチャを表示したり、時間の経過に伴うモデルの損失と精度を分析したり、コードをプロファイルして最も遅い場所を見つけたりすることができます。

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 ドキュメント」を参照してください。

Pylance 言語サーバーによる IntelliSense
VS Code の Python 編集エクスペリエンスは、Pylance の機能によって強化され、PyTorch の補完やその他の豊富な機能を提供します。最高の体験を得るには、PyTorch を 1.10.1 に更新して、nn、cuda、optim などのサブモジュールの補完を改善してください。
