PyTorch 在 Visual Studio Code 中的支持
除了对 Jupyter Notebooks 的支持外,Visual Studio Code 还为 PyTorch 开发者提供了许多特别有用的功能。本文将介绍其中一些功能,并说明它们如何帮助您完成项目。如果您不熟悉 PyTorch 开发,Microsoft Learn 提供了一个 PyTorch 入门 学习路径,其中涵盖了使用 PyTorch 进行深度学习的基础知识。
对张量和数据切片的数据查看器支持
VS Code 提供了一个 数据查看器,您可以使用它浏览代码和笔记本中的变量,包括 PyTorch 和 TensorFlow 的 Tensor
数据类型。此外,数据查看器还支持数据切片,允许您查看高维数据的任何二维切片。
要访问数据查看器,您可以在笔记本变量资源管理器中,点击任何 Tensor 变量旁显示的数据查看器图标来打开它。您还会注意到变量资源管理器也会显示 Tensor 的形状/维度。
或者,您可以在 Python 调试会话中,右键点击调试器中的任何 Tensor 变量,然后选择在数据查看器中查看值来打开它。
如果您有三维或更高维度的数据(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 模型。有关性能分析器的更多信息,请参阅 PyTorch Profiler 文档。
通过 Pylance 语言服务器提供 IntelliSense
VS Code 中的 Python 编辑体验,在 Pylance 的强大功能增强下,为 PyTorch 提供了补全和其他丰富的功能。为了获得最佳体验,请将 PyTorch 更新到 1.10.1 版本,以获得 nn、cuda 和 optim 等子模块的改进补全。