现已推出!了解 10 月份的新功能和修复。

Visual Studio Code 中的 PyTorch 支持

除了对 Jupyter 笔记本 的支持外,Visual Studio Code 还为 PyTorch 开发人员提供了许多特别有用的功能。本文介绍了其中一些功能,并说明了它们如何在您的项目中提供帮助。如果您不熟悉 PyTorch 开发,Microsoft Learn 提供了 PyTorch 入门 学习路径,涵盖了使用 PyTorch 进行深度学习的基础知识。

数据查看器对张量和数据切片的支持

VS Code 提供了一个 数据查看器,允许您浏览代码和笔记本中的变量,包括 PyTorch 和 TensorFlow Tensor 数据类型。此外,数据查看器还支持对数据进行切片,允许您查看任何高维数据的二维切片。

要访问数据查看器,您可以从笔记本变量资源管理器中打开它,方法是单击任何张量变量旁边显示的数据查看器图标。您还会注意到,变量资源管理器还显示了张量的形状/维度。

Accessing the Data Viewer from the variable explorer

或者,您可以在 Python 调试会话中打开它,方法是右键单击调试器中的任何张量变量,然后选择 **在数据查看器中查看值**。

Accessing the Data Viewer from the Python debugger

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

Data Viewer with data slices and tensors

除了切片之外,您还可以通过在每个列名下的过滤器中搜索这些关键字来搜索您感兴趣的值,例如“inf”或“NaN”。

TensorBoard 集成

TensorBoard 是一个数据科学伴侣仪表板,可帮助 PyTorchTensorFlow 开发人员可视化数据集和模型训练。通过将 TensorBoard 直接集成到 VS Code 中,您可以现场检查模型的预测、查看模型的架构、分析模型随时间的损失和准确率,以及分析您的代码以找出哪些部分速度最慢。

TensorBoard integration with VS Code

要启动 TensorBoard 会话,请打开 **命令面板** (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 并搜索命令 **Python: 启动 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

VS Code 中的 Python 编辑体验通过 Pylance 的强大功能得到了增强,为 PyTorch 提供了补全和其他丰富的功能。为了获得最佳体验,请将 PyTorch 更新到 1.10.1 以获得对子模块(例如 nn、cuda 和 optim)的改进补全。

Pylance support for PyTorch