Visual Studio Code 中的 PyTorch 支持
除了支持 Jupyter Notebooks 外,Visual Studio Code 还为 PyTorch 开发人员提供了许多特别实用的功能。本文涵盖了其中一些功能,并说明了它们如何为您在项目开发中提供帮助。如果您不熟悉 PyTorch 开发,Microsoft Learn 提供了 PyTorch 入门学习路径,涵盖了使用 PyTorch 进行深度学习的基础知识。
针对 Tensor(张量)和数据切片的数据查看器支持
VS Code 提供了一个数据查看器 (Data Viewer),允许您探索代码和 Notebook 中的变量,包括 PyTorch 和 TensorFlow 的 Tensor 数据类型。此外,数据查看器还支持数据切片,使您可以查看高维数据的任何 2D 切片。
要访问数据查看器,您可以从 Notebook 变量资源管理器中点击任意 Tensor 变量旁边显示的数据查看器图标来打开它。您还会注意到,变量资源管理器也会显示 Tensor 的形状/维度。

或者,您也可以在 Python 调试会话期间,右键单击调试器中的任何 Tensor 变量,然后选择在数据查看器中查看值 (View Value in Data Viewer) 来打开它。

如果您有三维或更高维的数据(numpy ndarray、PyTorch Tensor 或 TensorFlow EagerTensor 类型),数据查看器中会默认打开一个数据切片面板。使用该面板,您既可以使用输入框通过 Python 切片语法以编程方式指定切片,也可以使用交互式的轴 (Axis) 和索引 (Index) 下拉菜单进行切片。

除了切片,您还可以通过在每一列名称下方的过滤器中搜索关键字(例如 "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 等子模块的改进补全效果。
