快速搭建深度学习环境(Linux:miniconda+pytorch+jupyter notebook)

本文基于服务器端环境展开,使用的虚拟终端为Xshell

miniconda

miniconda是Anaconda的轻量版,仅包含Conda和Python,如果只做深度学习,可使用miniconda。

[注]:Anaconda、Conda与Miniconda

  • Conda:创建和管理包的工具,支持创建和切换虚拟环境
  • Anaconda:集成了Conda、Python和科学包的发行版本,包含数理统计常用的包
  • Miniconda:仅包含Conda和Python

下载

1、切换到安装目录:默认安装在当前目录下

2、下载shell脚本

wget --user-agent="User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12" -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh
  • --user-agent:设置代理,以浏览器的身份请求,否则会反爬机制过滤导致数据包丢失。user-agent的介绍见这篇博文
  • -c:断点续传。
  • Miniconda3-latest-Linux-x86_64.sh:待下载文件的名称
  • https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/:清华下载源
  • Miniconda3-latest-Linux-x86_64.sh:待下载文件的名称。可以访问清华下载源,根据系统环境选择合适的版本。系统的版本、架构等信息可通过uname -a命令查看。

命令执行完成后,通过ls进行确认。

安装

使用bash命令执行已下载的.sh文件进行安装。

bash Miniconda3-latest-Linux-x86_64.sh

命令执行过程中,根据提示操作即可(敲回车–>阅读协议–>输入yes同意协议–>输入安装路径–>输入yes进行初始化)。

激活

执行source ~/.bashrc命令或重新登录服务器。

行首出现(base)则表示激活成功。

可通过以下命令设置是否默认进入base环境:

#修改默认配置
conda config --set auto_activate_base false # 默认不进入base环境
conda config --set auto_activate_base true # 默认进入base环境

验证

执行命令conda --help,若打印指令说明则说明安装成功。

配置国内镜像源

1、查询配置文件所在路径:conda config --show-sources

2、更新配置文件,以下配置仅供参考(可能失效)

channels:
  - defaults
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
show_channel_urls: True

Conda的基本操作

1、创建虚拟环境:conda create --name [env_name]

2、激活虚拟环境:conda activate [env_name]

3、退出环境:ctrl+D

4、查看环境列表:conda env list

5、查看当前环境中的包:conda list

6、导出环境配置为.yaml文件:conda env export > environment.yaml

7、通过.yaml文件安装相关依赖:conda env create -f environment.yaml

Pytorch

安装

1、查看驱动所支持的最高CUDA API版本版本:执行命令nvidia-smi,表格首行-“CUDA Version”

※如 CUDA Version: 12.6

若环境中安装了CUDA ToolkitAnaconda,也可尝试这篇博文中的另外两种方法。

2、获取安装命令

  • 这个页面的“INSTALL PYTORCH”一栏配置可选项(推荐使用pip安装)。

    ※Q:如何选择Compute Platform?

    答:可直接点选与CUDA Version最接近的选项。以下为本人习惯的做法,也可参考:

    如:当前版本为12.6,ctrl+F检索关键词“cu126”,发现没有匹配结果,那么继续尝试“cu125”、“cu124”以此类推。通过这个方法,可以得到当前最接近的版本为12.4,那么我们的下载命令就是:pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124

  • 复制生成的命令(在最后一行)

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

3、安装:执行上述命令

若下载速度较慢,可尝试使用国内的PyPI下载源。以阿里云镜像为例:

  • 单次使用

    在上述命令末尾加上参数-i http://mirrors.aliyun.com/pypi/simple --trusted-host pypi.douban.com

    pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124 -i http://mirrors.aliyun.com/pypi/simple --trusted-host pypi.douban.com
    

验证

1、执行语句python,进入python命令行

2、依次执行以下语句:

import torch # 导入pytorch库
torch.cuda.is_available() # 如返回True,说明当前显卡可用

Jupyter Notebook

安装

若已安装Anaconda环境,可以跳过这一步。

注意⚠️

若希望将Jupyter的访问连接转移到XManager,请在启动Jupyter前确保XManager可以正常运行,且能被Xshell调起。

安装命令如下:

pip install jupyter

验证:jupyter notebook,若能启动,说明安装正常。

在本机浏览器访问使用

1、生成配置文件:jupyter notebook --generate-config

该命令会生成一个.py格式的配置文件,并返回文件的路径

2、设置jupyter的密码:jupyter notebook password

3、查看Hash密钥:vim ~/.jupyter/jupyter_server_config.json

4、修改步骤一生成的配置文件

c.ServerAPP.ip = '*' # 允许所有ip皆可访问
c.ServerAPP.password = 'argon2:$argon2id$v=xx$m=xxx,t=xxx,p=xxxxx' #步骤三的密钥
c.ServerAPP.open_browser = False # 禁止自动打开浏览器  
c.ServerAPP.port = 8888 # 设置运行端口  
c.ServerAPP.allow_remote_access  = True # 允许远程访问

在vim编辑器中查找配置项的方法:

  • 在查看模式输入/+查询内容+回车
  • 查找下一个结果:n
  • 查找上一个结果:N

5、在Xshell中配置SSH隧道

  • 在左侧会话列表右键当前会话,打开“属性”窗口
  • 在左侧“类别”一栏选择“连接-SSH-隧道”
  • 在“TCP/IP转移”栏添加一条规则,“侦听端口”和“目标端口”都填步骤四中配置的c.ServerAPP.port参数值,其它参数不用改
  • “X11转移”栏中,取消勾选“转发X11连接到”
  • 点击确定。此时设置不会生效,需要重新连接服务器

在这里插入图片描述

6、启动:jupyter notebook

该命令将启动notebook和Jupyterlab。

可以使用screen命令将Jupyter服务挂到后台执行,例如:

screen -S JupyterServer #创建并进入会话
jupyter notebook #启动。ctrl+D可以退出会话(进程将被挂起到后台运行)
screen -dr JupyterServer #恢复会话

7、访问:在本地浏览器中通过以下url访问

  • lab:http://127.0.0.1:port/lab
  • notebook:http://127.0.0.1:port/tree

port为步骤四的c.ServerAPP.port,password为步骤二中设置的密码

大功告成!

参考

<think>嗯,用户问在云服务器上训练深度学习模型是否需要自己搭建虚拟环境。首先,我需要确定用户对这个问题的理解程度。可能用户刚开始接触云服务器和深度学习,对环境和依赖管理不太熟悉。 用户之前的对话是关于如何租用服务器并使用Jupyter Notebook训练模型,所以这次的问题可能是他们在实际操作中遇到了环境配置的问题。需要确认用户是否了解虚拟环境的作用,比如隔离不同项目的依赖,避免版本冲突等。 接下来,我应该思考在云服务器上训练模型时的常见做法。通常,云服务器提供的系统镜像可能预装了一些基础软件,但深度学习框架如TensorFlow、PyTorch的版本和依赖需要用户自己管理。不同的项目可能需要不同版本的库,这时候虚拟环境就显得非常重要了。 然后,是否需要自己搭建虚拟环境可能取决于云服务提供商是否提供了预配置的环境。例如,一些平台如AWS的Deep Learning AMIs或者Google Cloud的AI Platform已经预装了常见的深度学习框架和工具,用户可以直接使用,可能不需要自己搭建。但大多数情况下,用户还是需要自己配置环境,特别是当有特定版本需求时。 另外,用户可能关心使用虚拟环境的步骤和必要性。比如,使用conda或venv创建独立环境,安装特定版本的Python和库。需要解释这样做的好处,比如避免系统级安装带来的冲突,便于项目迁移和协作。 还要考虑用户可能的后续问题,例如如何创建虚拟环境,是否有替代方案,或者如果跳过虚拟环境会有什么风险。所以回答中需要涵盖这些方面,给出明确的步骤和建议,同时指出不同情况下的选择。 最后,确保回答结构清晰,分点说明必要性和操作步骤,并给出注意事项,帮助用户全面理解。同时,结合用户之前的问题,可能需要补充如何在Jupyter Notebook中使用虚拟环境,或者如何在云服务器上管理多个项目环境,这可能会增强回答的实用性。</think>--- ### **在云服务器上训练深度学习模型是否需要自己搭建虚拟环境?** --- #### **核心结论** **需要搭建虚拟环境**,但具体取决于以下因素: 1. 云服务商是否提供预配置环境 2. 项目对依赖版本的敏感度 3. 是否需要多任务隔离 --- #### **为什么需要虚拟环境?** 1. **依赖隔离** - 避免不同项目的库版本冲突(例如 TensorFlow 1.x 与 2.x) - 防止系统级 Python 环境被污染 2. **环境可移植性** - 通过 `requirements.txt` 或 `environment.yml` 快速复现环境 3. **权限管理** - 云服务器通常限制用户直接操作全局环境(需 `sudo` 权限),虚拟环境无需管理员权限 --- #### **常见场景与解决方案** | **场景** | **是否需要虚拟环境** | **操作建议** | |------------------------------|----------------------|-----------------------------------------------------------------------------| | 使用预装框架的云镜像(如 AWS Deep Learning AMI) | 可选 | 直接使用预装环境,但建议仍用虚拟环境隔离项目依赖 | | 自定义框架版本(如 PyTorch 1.8 + CUDA 11.1) | 必须 | 通过 Conda/Venv 创建独立环境 | | 多用户协作或并行训练任务 | 必须 | 为每个用户/任务分配独立环境 | --- #### **如何搭建虚拟环境?** **推荐工具**:`Conda`(适合复杂依赖)或 `Python venv`(轻量级) **步骤示例(Conda)**: 1. 安装 Miniconda ```bash wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh source ~/.bashrc ``` 2. 创建并激活环境 ```bash conda create -n dl_env python=3.9 conda activate dl_env ``` 3. 安装依赖 ```bash conda install pytorch torchvision cudatoolkit=11.3 -c pytorch pip install -r requirements.txt ``` --- #### **替代方案(无需自建环境)** 1. **使用 Docker 容器** - 直接拉取预置镜像(如 `nvcr.io/nvidia/pytorch:22.04-py3`) - 启动容器并挂载代码和数据: ```bash docker run --gpus all -v /本地代码路径:/容器路径 -it 镜像名 ``` 2. **云平台托管服务** - 例如 **Google Colab**(直接提供 Python 环境)、**AWS SageMaker**(预配置 Notebook 实例) - 适合快速验证,但灵活性较低 --- #### **注意事项** 1. **GPU 驱动兼容性** - 确保虚拟环境中的 CUDA 版本与云服务器 GPU 驱动匹配(通过 `nvidia-smi` 查看驱动支持的 CUDA 版本) 2. **存储优化** - 虚拟环境建议安装在云服务器数据盘(非系统盘),避免实例释放后丢失 3. **环境备份** - 导出环境配置: ```bash conda env export > environment.yml ``` --- ### **总结** - **推荐搭建虚拟环境**:保障项目独立性、避免依赖冲突,是深度学习训练的通用最佳实践。 - **可选简化方案**:若任务简单或云平台提供托管服务(如 Colab),可直接使用默认环境
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值