从零开始学PyTorch 2.5Jupyter与SSH两种方式快速入门想学深度学习PyTorch是绕不开的框架。但很多新手卡在了第一步环境搭建。复杂的依赖、CUDA版本、驱动问题常常让人望而却步。好消息是现在有了PyTorch 2.5的预置镜像让你能跳过所有繁琐的配置直接进入核心学习。本文将带你用两种最主流的方式——Jupyter Notebook和SSH远程连接快速上手PyTorch 2.5。无论你是喜欢在浏览器里写代码的交互式玩家还是习惯在终端里敲命令的硬核开发者都能找到适合自己的路径。我们不仅会讲怎么把环境跑起来还会用实际的代码例子带你体验PyTorch 2.5的一些新特性比如更快的注意力计算和编译优化。1. 为什么选择PyTorch 2.5镜像在深入操作之前我们先简单了解一下这个镜像能帮你解决什么问题以及PyTorch 2.5带来了哪些值得关注的新东西。1.1 告别环境配置的烦恼自己从零搭建PyTorch环境尤其是需要GPU支持的时候是个技术活。你需要安装正确版本的NVIDIA驱动安装匹配的CUDA工具包安装cuDNN等深度学习库用pip或conda安装PyTorch并确保版本完全对应任何一步出错都可能导致import torch失败或者GPU无法调用。PyTorch 2.5镜像把这些步骤全部打包好了你拿到的是一个开箱即用、已经调通的环境。它预装了PyTorch 2.5、CUDA工具包并且适配了主流的NVIDIA显卡支持多卡并行计算。这意味着你可以把时间花在写模型、跑实验上而不是折腾环境。1.2 PyTorch 2.5值得关注的新特性2024年发布的PyTorch 2.5版本虽然是个小版本号更新但带来了不少实用的改进和性能提升对于新手和老手都有价值更快的注意力计算为scaled_dot_product_attention函数引入了新的CuDNN后端。如果你有NVIDIA H100或更新的GPU这个改动可以带来高达75%的加速。这意味着训练Transformer类模型比如现在火爆的大语言模型会更快。更智能的编译torch.compile是PyTorch 2.0引入的用来加速模型运行的重要功能。2.5版本加入了“区域编译”特性简单说就是当你模型里有大量重复结构时比如大模型里一堆相同的Transformer层编译器不用再一个个重新编译大大减少了编译等待时间。更好的CPU支持对TorchInductor的CPU后端进行了优化包括C代码生成和操作融合在Linux和Windows上都能获得更好的性能。更方便的调试新增了“飞行记录器”功能专门用来调试多卡训练时集体通信卡住的问题能帮你快速定位是哪里出了错。对于初学者来说前两点可能感受最深模型跑得更快了等待时间变短了。2. 方法一通过Jupyter Notebook快速交互对于学习和快速实验来说Jupyter Notebook是无与伦比的选择。它能将代码、运行结果、文字说明和图片完美地结合在一起非常适合一步步验证想法、记录实验过程。2.1 启动并访问Jupyter环境根据你获取的镜像文档通常只需要点击一个链接或按钮就能启动这个预置了Jupyter Lab的PyTorch环境。启动后你会看到一个类似下图的界面这就是Jupyter Lab的仪表盘。在这个界面里你可以在左侧文件浏览器中查看和操作文件。点击“”号或选择“Python 3”来创建一个新的Notebook。在Notebook的单元格中直接编写和运行Python代码。2.2 验证PyTorch环境创建新Notebook后第一件事就是验证环境是否正常特别是GPU能否使用。在第一个单元格中输入并运行以下代码import torch # 打印PyTorch版本 print(fPyTorch版本: {torch.__version__}) # 检查CUDA是否可用即GPU能否用 print(fCUDA是否可用: {torch.cuda.is_available()}) # 如果可用打印GPU信息 if torch.cuda.is_available(): print(fGPU设备名称: {torch.cuda.get_device_name(0)}) print(fGPU数量: {torch.cuda.device_count()})运行后你应该能看到类似这样的输出PyTorch版本: 2.5.0 CUDA是否可用: True GPU设备名称: NVIDIA GeForce RTX 4090 GPU数量: 1看到CUDA是否可用: True恭喜你你的GPU已经准备就绪可以全力加速计算了。2.3 体验PyTorch 2.5新特性快速注意力让我们写一个简单的例子感受一下PyTorch 2.5里提到的SDPAScaled Dot-Product Attention加速。我们在Notebook里新建一个单元格import torch import torch.nn.functional as F import time # 设置随机种子保证结果可复现 torch.manual_seed(42) # 模拟一个Transformer中常见的输入批次大小32序列长度128特征维度512 batch_size, seq_len, d_model 32, 128, 512 query torch.randn(batch_size, seq_len, d_model).cuda() # 放到GPU上 key torch.randn(batch_size, seq_len, d_model).cuda() value torch.randn(batch_size, seq_len, d_model).cuda() # 使用PyTorch内置的高效注意力函数 # 在PyTorch 2.5 H100 GPU上这里会自动调用更快的CuDNN后端 start_time time.time() with torch.no_grad(): # 不计算梯度只测前向传播速度 output F.scaled_dot_product_attention(query, key, value) gpu_time time.time() - start_time print(f使用GPU计算注意力耗时: {gpu_time:.4f} 秒) print(f输出形状: {output.shape})这个例子模拟了一个小批量数据的注意力计算。F.scaled_dot_product_attention是PyTorch官方优化的函数在2.5版本下如果你的GPU够新它会自动选择最快的计算方式。你可以尝试改变batch_size或seq_len的大小感受一下计算速度。3. 方法二通过SSH进行远程开发如果你更喜欢在本地使用熟悉的代码编辑器如VSCode、PyCharm或者需要运行长时间的训练任务SSH连接是更专业的选择。它能给你一个完整的Linux终端像操作本地机器一样操作远程的GPU服务器。3.1 获取SSH连接信息启动镜像的SSH服务后文档通常会提供连接所需的信息如下图所示关键信息通常包括SSH地址一个IP地址或域名。端口通常是22也可能是其他自定义端口。用户名登录用的账号如root或user。密码或密钥用于认证。3.2 从本地终端连接打开你本地电脑的终端Windows可用PowerShell或WSLMac/Linux直接用Terminal使用ssh命令进行连接。假设信息如下地址123.45.67.89端口22用户名root密码your_password连接命令如下ssh root123.45.67.89 -p 22输入密码后你就进入了远程服务器的命令行环境。你会看到类似下图的终端界面3.3 在SSH终端中运行你的第一个训练脚本连接成功后你可以像操作本地机器一样工作。我们先创建一个简单的Python脚本来训练一个超简单的神经网络。创建脚本文件使用nano或vim编辑器创建一个文件。nano first_training.py编写脚本内容将以下代码粘贴进去。这个脚本用PyTorch定义了一个非常简单的网络在虚拟数据上训练几步目的是验证环境并展示流程。# first_training.py import torch import torch.nn as nn import torch.optim as optim # 1. 检查设备 device torch.device(cuda if torch.cuda.is_available() else cpu) print(f使用设备: {device}) # 2. 制造一些虚拟数据 batch_size 64 input_size 10 output_size 2 x torch.randn(batch_size, input_size).to(device) y torch.randint(0, output_size, (batch_size,)).to(device) # 3. 定义一个简单的网络 class TinyNet(nn.Module): def __init__(self, input_dim, output_dim): super().__init__() self.linear nn.Linear(input_dim, output_dim) def forward(self, x): return self.linear(x) model TinyNet(input_size, output_size).to(device) # 4. 定义损失函数和优化器 criterion nn.CrossEntropyLoss() optimizer optim.SGD(model.parameters(), lr0.01) # 5. 训练几个步骤 print(开始训练...) for epoch in range(5): optimizer.zero_grad() # 清零梯度 outputs model(x) # 前向传播 loss criterion(outputs, y) # 计算损失 loss.backward() # 反向传播 optimizer.step() # 更新参数 print(fEpoch [{epoch1}/5], Loss: {loss.item():.4f}) print(训练完成)保存并运行在nano编辑器中按CtrlO保存按Enter确认再按CtrlX退出。然后运行脚本python first_training.py你会看到输出显示正在使用CUDA设备并且损失函数在下降。这说明你的PyTorch GPU环境完全正常可以运行训练任务了。3.4 结合VSCode进行远程开发高级用法如果你觉得纯终端编辑代码不方便可以配置VSCode的Remote-SSH扩展。安装该扩展后在VSCode中通过SSH连接到这台服务器你就可以在本地VSCode界面中直接编辑远程服务器上的文件使用远程的Python环境和GPU进行计算体验和本地开发几乎一样流畅。4. 两种方式如何选择与进阶学习现在你掌握了两种启动方式该如何选择呢选择Jupyter Notebook如果你正在学习新概念需要一步步执行代码并立即看到结果在做数据分析和可视化想快速原型验证一个想法。选择SSH连接如果你要进行长时间模型训练训练时关掉浏览器也没关系习惯使用完整的IDE如VSCode, PyCharm进行项目管理、调试需要运行复杂的脚本或使用终端工具。4.1 下一步可以学什么环境搭好了就像有了趁手的兵器接下来可以真正开始深度学习之旅了PyTorch核心概念张量Tensor、自动求导Autograd、神经网络模块nn.Module。这是所有模型的基础。构建你的第一个模型从最简单的全连接网络开始尝试在MNIST手写数字数据集上做分类。理解数据流水线学习如何使用Dataset和DataLoader来高效地加载和预处理数据。探索模型编译尝试使用torch.compile来包装你的模型感受一下2.5版本带来的编译优化看看训练速度是否有提升。动手实践项目在Kaggle或天池找一个感兴趣的比赛或者复现一篇论文的模型实战是进步最快的方式。5. 总结通过本文你已经成功解锁了两种使用PyTorch 2.5深度学习镜像的方法对于快速学习和交互式探索Jupyter Notebook提供了所见即所得的友好环境让你能轻松验证代码、可视化结果是入门和实验的绝佳伴侣。对于严肃开发和长期任务SSH连接提供了稳定、灵活的命令行环境适合完整的项目开发、模型训练和集成到自动化流程中。PyTorch 2.5镜像的价值在于它把复杂的环境配置问题一次性解决了让你能直接聚焦于深度学习的核心——模型、数据和算法。无论是体验新的SDPA加速还是尝试torch.compile的优化这个环境都为你准备好了。记住工具只是起点。现在环境已经就绪是时候开始构建你的第一个神经网络去解决那些有趣的问题了。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。
从零开始学PyTorch 2.5:Jupyter与SSH两种方式快速入门
从零开始学PyTorch 2.5Jupyter与SSH两种方式快速入门想学深度学习PyTorch是绕不开的框架。但很多新手卡在了第一步环境搭建。复杂的依赖、CUDA版本、驱动问题常常让人望而却步。好消息是现在有了PyTorch 2.5的预置镜像让你能跳过所有繁琐的配置直接进入核心学习。本文将带你用两种最主流的方式——Jupyter Notebook和SSH远程连接快速上手PyTorch 2.5。无论你是喜欢在浏览器里写代码的交互式玩家还是习惯在终端里敲命令的硬核开发者都能找到适合自己的路径。我们不仅会讲怎么把环境跑起来还会用实际的代码例子带你体验PyTorch 2.5的一些新特性比如更快的注意力计算和编译优化。1. 为什么选择PyTorch 2.5镜像在深入操作之前我们先简单了解一下这个镜像能帮你解决什么问题以及PyTorch 2.5带来了哪些值得关注的新东西。1.1 告别环境配置的烦恼自己从零搭建PyTorch环境尤其是需要GPU支持的时候是个技术活。你需要安装正确版本的NVIDIA驱动安装匹配的CUDA工具包安装cuDNN等深度学习库用pip或conda安装PyTorch并确保版本完全对应任何一步出错都可能导致import torch失败或者GPU无法调用。PyTorch 2.5镜像把这些步骤全部打包好了你拿到的是一个开箱即用、已经调通的环境。它预装了PyTorch 2.5、CUDA工具包并且适配了主流的NVIDIA显卡支持多卡并行计算。这意味着你可以把时间花在写模型、跑实验上而不是折腾环境。1.2 PyTorch 2.5值得关注的新特性2024年发布的PyTorch 2.5版本虽然是个小版本号更新但带来了不少实用的改进和性能提升对于新手和老手都有价值更快的注意力计算为scaled_dot_product_attention函数引入了新的CuDNN后端。如果你有NVIDIA H100或更新的GPU这个改动可以带来高达75%的加速。这意味着训练Transformer类模型比如现在火爆的大语言模型会更快。更智能的编译torch.compile是PyTorch 2.0引入的用来加速模型运行的重要功能。2.5版本加入了“区域编译”特性简单说就是当你模型里有大量重复结构时比如大模型里一堆相同的Transformer层编译器不用再一个个重新编译大大减少了编译等待时间。更好的CPU支持对TorchInductor的CPU后端进行了优化包括C代码生成和操作融合在Linux和Windows上都能获得更好的性能。更方便的调试新增了“飞行记录器”功能专门用来调试多卡训练时集体通信卡住的问题能帮你快速定位是哪里出了错。对于初学者来说前两点可能感受最深模型跑得更快了等待时间变短了。2. 方法一通过Jupyter Notebook快速交互对于学习和快速实验来说Jupyter Notebook是无与伦比的选择。它能将代码、运行结果、文字说明和图片完美地结合在一起非常适合一步步验证想法、记录实验过程。2.1 启动并访问Jupyter环境根据你获取的镜像文档通常只需要点击一个链接或按钮就能启动这个预置了Jupyter Lab的PyTorch环境。启动后你会看到一个类似下图的界面这就是Jupyter Lab的仪表盘。在这个界面里你可以在左侧文件浏览器中查看和操作文件。点击“”号或选择“Python 3”来创建一个新的Notebook。在Notebook的单元格中直接编写和运行Python代码。2.2 验证PyTorch环境创建新Notebook后第一件事就是验证环境是否正常特别是GPU能否使用。在第一个单元格中输入并运行以下代码import torch # 打印PyTorch版本 print(fPyTorch版本: {torch.__version__}) # 检查CUDA是否可用即GPU能否用 print(fCUDA是否可用: {torch.cuda.is_available()}) # 如果可用打印GPU信息 if torch.cuda.is_available(): print(fGPU设备名称: {torch.cuda.get_device_name(0)}) print(fGPU数量: {torch.cuda.device_count()})运行后你应该能看到类似这样的输出PyTorch版本: 2.5.0 CUDA是否可用: True GPU设备名称: NVIDIA GeForce RTX 4090 GPU数量: 1看到CUDA是否可用: True恭喜你你的GPU已经准备就绪可以全力加速计算了。2.3 体验PyTorch 2.5新特性快速注意力让我们写一个简单的例子感受一下PyTorch 2.5里提到的SDPAScaled Dot-Product Attention加速。我们在Notebook里新建一个单元格import torch import torch.nn.functional as F import time # 设置随机种子保证结果可复现 torch.manual_seed(42) # 模拟一个Transformer中常见的输入批次大小32序列长度128特征维度512 batch_size, seq_len, d_model 32, 128, 512 query torch.randn(batch_size, seq_len, d_model).cuda() # 放到GPU上 key torch.randn(batch_size, seq_len, d_model).cuda() value torch.randn(batch_size, seq_len, d_model).cuda() # 使用PyTorch内置的高效注意力函数 # 在PyTorch 2.5 H100 GPU上这里会自动调用更快的CuDNN后端 start_time time.time() with torch.no_grad(): # 不计算梯度只测前向传播速度 output F.scaled_dot_product_attention(query, key, value) gpu_time time.time() - start_time print(f使用GPU计算注意力耗时: {gpu_time:.4f} 秒) print(f输出形状: {output.shape})这个例子模拟了一个小批量数据的注意力计算。F.scaled_dot_product_attention是PyTorch官方优化的函数在2.5版本下如果你的GPU够新它会自动选择最快的计算方式。你可以尝试改变batch_size或seq_len的大小感受一下计算速度。3. 方法二通过SSH进行远程开发如果你更喜欢在本地使用熟悉的代码编辑器如VSCode、PyCharm或者需要运行长时间的训练任务SSH连接是更专业的选择。它能给你一个完整的Linux终端像操作本地机器一样操作远程的GPU服务器。3.1 获取SSH连接信息启动镜像的SSH服务后文档通常会提供连接所需的信息如下图所示关键信息通常包括SSH地址一个IP地址或域名。端口通常是22也可能是其他自定义端口。用户名登录用的账号如root或user。密码或密钥用于认证。3.2 从本地终端连接打开你本地电脑的终端Windows可用PowerShell或WSLMac/Linux直接用Terminal使用ssh命令进行连接。假设信息如下地址123.45.67.89端口22用户名root密码your_password连接命令如下ssh root123.45.67.89 -p 22输入密码后你就进入了远程服务器的命令行环境。你会看到类似下图的终端界面3.3 在SSH终端中运行你的第一个训练脚本连接成功后你可以像操作本地机器一样工作。我们先创建一个简单的Python脚本来训练一个超简单的神经网络。创建脚本文件使用nano或vim编辑器创建一个文件。nano first_training.py编写脚本内容将以下代码粘贴进去。这个脚本用PyTorch定义了一个非常简单的网络在虚拟数据上训练几步目的是验证环境并展示流程。# first_training.py import torch import torch.nn as nn import torch.optim as optim # 1. 检查设备 device torch.device(cuda if torch.cuda.is_available() else cpu) print(f使用设备: {device}) # 2. 制造一些虚拟数据 batch_size 64 input_size 10 output_size 2 x torch.randn(batch_size, input_size).to(device) y torch.randint(0, output_size, (batch_size,)).to(device) # 3. 定义一个简单的网络 class TinyNet(nn.Module): def __init__(self, input_dim, output_dim): super().__init__() self.linear nn.Linear(input_dim, output_dim) def forward(self, x): return self.linear(x) model TinyNet(input_size, output_size).to(device) # 4. 定义损失函数和优化器 criterion nn.CrossEntropyLoss() optimizer optim.SGD(model.parameters(), lr0.01) # 5. 训练几个步骤 print(开始训练...) for epoch in range(5): optimizer.zero_grad() # 清零梯度 outputs model(x) # 前向传播 loss criterion(outputs, y) # 计算损失 loss.backward() # 反向传播 optimizer.step() # 更新参数 print(fEpoch [{epoch1}/5], Loss: {loss.item():.4f}) print(训练完成)保存并运行在nano编辑器中按CtrlO保存按Enter确认再按CtrlX退出。然后运行脚本python first_training.py你会看到输出显示正在使用CUDA设备并且损失函数在下降。这说明你的PyTorch GPU环境完全正常可以运行训练任务了。3.4 结合VSCode进行远程开发高级用法如果你觉得纯终端编辑代码不方便可以配置VSCode的Remote-SSH扩展。安装该扩展后在VSCode中通过SSH连接到这台服务器你就可以在本地VSCode界面中直接编辑远程服务器上的文件使用远程的Python环境和GPU进行计算体验和本地开发几乎一样流畅。4. 两种方式如何选择与进阶学习现在你掌握了两种启动方式该如何选择呢选择Jupyter Notebook如果你正在学习新概念需要一步步执行代码并立即看到结果在做数据分析和可视化想快速原型验证一个想法。选择SSH连接如果你要进行长时间模型训练训练时关掉浏览器也没关系习惯使用完整的IDE如VSCode, PyCharm进行项目管理、调试需要运行复杂的脚本或使用终端工具。4.1 下一步可以学什么环境搭好了就像有了趁手的兵器接下来可以真正开始深度学习之旅了PyTorch核心概念张量Tensor、自动求导Autograd、神经网络模块nn.Module。这是所有模型的基础。构建你的第一个模型从最简单的全连接网络开始尝试在MNIST手写数字数据集上做分类。理解数据流水线学习如何使用Dataset和DataLoader来高效地加载和预处理数据。探索模型编译尝试使用torch.compile来包装你的模型感受一下2.5版本带来的编译优化看看训练速度是否有提升。动手实践项目在Kaggle或天池找一个感兴趣的比赛或者复现一篇论文的模型实战是进步最快的方式。5. 总结通过本文你已经成功解锁了两种使用PyTorch 2.5深度学习镜像的方法对于快速学习和交互式探索Jupyter Notebook提供了所见即所得的友好环境让你能轻松验证代码、可视化结果是入门和实验的绝佳伴侣。对于严肃开发和长期任务SSH连接提供了稳定、灵活的命令行环境适合完整的项目开发、模型训练和集成到自动化流程中。PyTorch 2.5镜像的价值在于它把复杂的环境配置问题一次性解决了让你能直接聚焦于深度学习的核心——模型、数据和算法。无论是体验新的SDPA加速还是尝试torch.compile的优化这个环境都为你准备好了。记住工具只是起点。现在环境已经就绪是时候开始构建你的第一个神经网络去解决那些有趣的问题了。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。