【深度学习Day1】从MATLAB到PyTorch:手把手教你在双卡2080Ti上搭建深度学习环境

13 阅读7分钟

【深度学习Day1】从MATLAB到PyTorch:手把手教你在双卡2080Ti上搭建深度学习环境

作为一名深耕算法但只精通MATLAB的“半吊子”工程师,最近找工作时被狠狠上了一课——简历里写满MATLAB算法实现,却被面试官追问“是否熟悉PyTorch/CUDA部署”,几次下来才意识到:MATLAB虽好用,但在工业界的深度学习落地场景里,Python+PyTorch才是主流。为了拿下心仪的算法岗,我下定决心从零开始,把深度学习环境从0到1搭起来。本文全程记录我在双卡RTX 2080Ti机器上配置环境的踩坑与收获,希望能帮到和我一样从MATLAB转深度学习的小白。

💡 为什么转行?(找工作倒逼的选择)

一直用MATLAB做算法原型开发,不管是矩阵运算还是信号处理,拖拖控件、写写脚本就能搞定,一度觉得“够用就行”。但今年秋招/社招投递计算机视觉(CV)算法岗时,几乎所有岗位的任职要求都标注“熟练使用PyTorch/TensorFlow搭建深度学习模型”“熟悉CUDA加速”,甚至有面试官直言“MATLAB做科研可以,但落地项目没人用”。

眼看心仪的岗位因为工具栈不匹配屡屡错失,我咬咬牙决定:放弃“舒适区”,从环境配置开始,把深度学习的基础工具啃下来。而第一步,就是搞定PyTorch的GPU环境——毕竟CV模型训练离不开显卡,双卡2080Ti的硬件不能浪费。

1. 观念转变:Anaconda是什么?

用MATLAB时,我习惯了“一键安装、全家桶全包”:装完MATLAB,矩阵运算、绘图、甚至并行计算都内置好了,不用操心“环境”这个概念。但转到Python后,第一个困惑就是:为什么装个PyTorch还要先装Anaconda?

后来查了资料才懂:Anaconda本质是“Python环境管理器+包仓库”。可以把它理解成一个“大公寓”,里面能隔出很多独立的“小房间”(虚拟环境):比如这个房间装Python 3.12+PyTorch 2.5(做深度学习),那个房间装Python 3.9+OpenCV(做图像处理),房间之间互不干扰,不会出现“装了新包导致旧代码报错”的问题。

对新手来说,这一点太重要了——我一开始直接在系统Python里装包,结果装完PyTorch后,之前装的OpenCV就报错了,折腾了半天才知道是版本冲突。用Anaconda创建独立环境,能从根源避免这个问题。

2. 安装流程实录(双卡2080Ti亲测)

前置准备:下载Anaconda

先去Anaconda官网(www.anaconda.com/download)下载… 10),安装时注意:

  • 勾选“Add Anaconda3 to my PATH environment variable”(方便终端调用);
  • 安装路径选非C盘(避免占用系统盘空间)。

第一步:显卡驱动(Driver)—— 重中之重

我的电脑配置是2×NVIDIA RTX 2080Ti,显卡驱动是基础中的基础:如果驱动版本太低,新的PyTorch(基于CUDA 11.8/12.x)根本识别不到显卡,最后装成CPU版本,训练速度慢到崩溃。

操作步骤

  1. 打开GeForce Experience(没有就去NVIDIA官网下载);
  2. 点击“驱动程序”→“检查更新”;
  3. 安装适配2080Ti的最新驱动(我装的是537.58版本,亲测兼容CUDA 11.8)。

✅ 避坑指南:

  • 不用手动装CUDA Toolkit!PyTorch会自带适配的CUDA运行时,手动装的CUDA反而容易版本冲突;
  • 2080Ti属于老架构(Turing),最高兼容CUDA 12.1,实测CUDA 11.8最稳定,不建议追最新的CUDA 12.4。

第二步:创建虚拟环境

不要直接用系统Python装包!打开Anaconda Prompt(开始菜单搜就能找到),输入以下命令:

# 创建名为dl_env的虚拟环境,指定Python 3.12(亲测兼容)
conda create -n dl_env python=3.12
# 按提示输入y,等待环境创建完成
# 激活这个环境(每次使用PyTorch都要先激活)
conda activate dl_env

激活成功后,终端前面会显示(dl_env),说明已经进入独立环境了。

第三步:安装PyTorch(GPU版)—— 最容易出错的一步

新手最容易踩的坑:直接用pip install torch,结果装的是CPU版本,训练模型时显卡全程“摸鱼”。**一定要去PyTorch官网(pytorch.org/get-started…

针对我的双卡2080Ti+CUDA 11.8,我用的命令是:

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

✅ 避坑指南:

  • 不要用conda装PyTorch!conda源的GPU版本更新慢,容易装错;
  • 下载慢的话,优先挂代理;如果没有代理,可临时换清华源,但装完后一定要验证是否是GPU版本(后面会说)。

3. 验证环境(附完整测试代码)

安装完心里没底?写个脚本检查显卡是否被识别、双卡是否可用,复制以下代码保存为test_env.py

import torch
import sys

# 基础信息打印
print(f"Python 版本: {sys.version.split()[0]}")
print(f"PyTorch 版本: {torch.__version__}")
print("-" * 40)

# CUDA可用性检查
print(f"CUDA 是否可用: {torch.cuda.is_available()}")
if torch.cuda.is_available():
    # 双卡信息打印
    gpu_num = torch.cuda.device_count()
    print(f"检测到显卡数量: {gpu_num}")
    for i in range(gpu_num):
        gpu_name = torch.cuda.get_device_name(i)
        gpu_mem = torch.cuda.get_device_properties(i).total_memory / 1024**3
        print(f"  -> 显卡 {i}: {gpu_name}")
        print(f"     显存大小: {gpu_mem:.2f} GB")
    
    # 测试GPU矩阵运算(指定cuda:0)
    x = torch.rand(3, 3).cuda(0)
    print("\nGPU 矩阵测试 (cuda:0):\n", x)
    # 测试第二个显卡(cuda:1)
    y = torch.rand(3, 3).cuda(1)
    print("GPU 矩阵测试 (cuda:1):\n", y)
else:
    print("❌ 未识别到GPU,可能装了CPU版本的PyTorch!")

我的运行结果(双卡2080Ti):

Python 版本: 3.12.7
PyTorch 版本: 2.5.1+cu118
----------------------------------------
CUDA 是否可用: True
检测到显卡数量: 2
  -> 显卡 0: NVIDIA GeForce RTX 2080 Ti
     显存大小: 11.00 GB
  -> 显卡 1: NVIDIA GeForce RTX 2080 Ti
     显存大小: 11.00 GB

GPU 矩阵测试 (cuda:0):
 tensor([[0.5800, 0.6687, 0.6866],
        [0.2795, 0.9715, 0.6543],
        [0.7748, 0.8943, 0.8410]], device='cuda:0')
GPU 矩阵测试 (cuda:1):
 tensor([[0.1234, 0.5678, 0.9012],
        [0.3456, 0.7890, 0.2345],
        [0.6789, 0.0123, 0.4567]], device='cuda:1')

看到这个结果,就说明环境搭建成功了!

4. 遇到的问题与心得(找工作小白的踩坑记录)

① Python版本不用“求稳”,新一点也可以

一开始看很多教程推荐Python 3.8/3.9,说“兼容性最好”,但我装Anaconda时默认带了Python 3.12,抱着“试试水”的心态没改,结果发现PyTorch 2.5完美支持!后来查资料才知道,PyTorch从2.0版本开始就对Python 3.12做了适配,只要不是太老的显卡(比如1080Ti之前),新版本Python完全能用。

② 下载速度慢?优先官方源,别乱换国内源

一开始用pip装PyTorch时,速度只有几十KB/s,忍不住换了清华源,结果装出来是CPU版本!后来才知道:国内源的PyTorch GPU版本更新滞后,容易装错。最后挂了代理,从官方源下载,虽然等了10分钟,但一次装对了。

③ 双卡使用小提示(给找工作的同学)

如果后续训练模型想用到双卡,可以用torch.cuda.device('cuda:1')指定第二个显卡,或者用DataParallel做多卡并行——这部分我会在后续博客里详细讲,毕竟找工作时,多卡训练也是面试官可能问到的点。

④ 别依赖“一键脚本”,手动走一遍才懂

网上很多“一键配置环境”的脚本,我一开始也想偷懒,但运行后报错一堆。手动走一遍安装流程,才搞懂“驱动-CUDA-PyTorch”的对应关系,这些基础概念对后续找工作面试也有帮助。

下期预告

环境搭好了,下一篇我将从MATLAB用户的视角,对比讲解PyTorch核心的Tensor(张量)操作——比如MATLAB的矩阵乘法* vs PyTorch的torch.matmul,MATLAB的reshape vs PyTorch的view,帮和我一样的MATLAB小白快速切换思维,为后续搭建CV模型打基础。

最后想说:从MATLAB转深度学习一开始确实难,但为了心仪的算法岗,慢一点没关系,每一步踩实就好。如果这篇文章帮到你,欢迎点赞收藏,咱们一起从0到1学深度学习!


总结

  1. 从MATLAB转PyTorch的核心第一步是环境隔离,用Anaconda创建虚拟环境能避免版本冲突,新手必做;
  2. 安装PyTorch GPU版时,一定要从官网复制对应CUDA版本的命令,避免装成CPU版;
  3. 双卡2080Ti适配CUDA 11.8最稳定,Python 3.12可直接使用,无需刻意降级。