加油
努力

在ECS服务器上如何搭建机器学习环境?

在阿里云ECS服务器上搭建机器学习环境是一个常见的需求,下面为你提供一个详细的步骤指南,涵盖从系统初始化到安装深度学习框架的完整流程。


一、准备工作

  1. 选择合适的ECS实例

    • 推荐使用带有GPU的实例(如 ecs.gn6i-c4g1.xlarge),适用于深度学习训练。
    • 如果只是做模型推理或小规模实验,CPU实例也可用(如 ecs.c6.large)。
    • 操作系统建议选择 Ubuntu 20.04/22.04 LTS 或 CentOS 7/8。
  2. 远程连接ECS

    • 使用 SSH 登录:
      ssh root@<你的ECS公网IP>
    • 建议创建普通用户并配置sudo权限。

二、系统更新与基础依赖安装

# 更新系统包
sudo apt update && sudo apt upgrade -y

# 安装常用工具
sudo apt install -y build-essential curl wget git vim htop

三、安装Python环境(推荐使用Miniconda)

  1. 下载并安装Miniconda
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

按提示完成安装,然后重新登录或执行:

source ~/.bashrc
  1. 创建虚拟环境(推荐)
conda create -n ml-env python=3.9
conda activate ml-env

四、安装CUDA和cuDNN(仅GPU实例需要)

注意:必须确认你的ECS实例有NVIDIA GPU,并已开启GPU驱动支持。

  1. 检查GPU状态
lspci | grep -i nvidia
  1. 安装NVIDIA驱动(如果未预装)

阿里云部分GPU实例默认已安装驱动。若未安装:

sudo ubuntu-drivers autoinstall
# 或手动安装指定版本
  1. 安装CUDA Toolkit

参考 NVIDIA CUDA下载页面,例如:

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
sudo apt-get update
sudo apt-get -y install cuda-toolkit-11-8
  1. 安装cuDNN

需注册NVIDIA开发者账号后下载对应版本,或通过conda安装:

conda install cudnn -c conda-forge

五、安装深度学习框架

方式1:使用pip安装(推荐用于CPU或已有CUDA环境)

# 安装PyTorch(自动检测CUDA)
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

# 或使用pip
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

方式2:安装TensorFlow

pip install tensorflow[and-cuda]  # TensorFlow 2.10+
# 或旧版本
pip install tensorflow-gpu==2.12.0  # 支持CUDA 11.8

六、安装其他常用库

pip install numpy pandas matplotlib scikit-learn jupyter notebook seaborn opencv-python

七、配置Jupyter Notebook(可选)

  1. 生成配置文件:
jupyter notebook --generate-config
  1. 设置密码:
jupyter notebook password
  1. 修改配置文件 ~/.jupyter/jupyter_notebook_config.py
c.NotebookApp.ip = '0.0.0.0'
c.NotebookApp.port = 8888
c.NotebookApp.open_browser = False
c.NotebookApp.allow_remote_access = True
  1. 启动服务:
nohup jupyter notebook --allow-root &
  1. 安全组设置:在阿里云控制台开放 8888 端口。

访问地址:http://<ECS公网IP>:8888


八、优化与维护建议

  • 使用 tmuxscreen 防止SSH断开导致进程终止。
  • 定期备份重要数据到OSS。
  • 使用阿里云容器服务(如ACK)或PAI平台可简化部署。

九、验证环境是否正常

import torch
print(torch.__version__)
print(torch.cuda.is_available())  # 应输出 True(GPU实例)

import tensorflow as tf
print(tf.config.list_physical_devices('GPU'))

✅ 完成!你现在可以在ECS上进行机器学习模型训练与推理了。

如有特定框架(如Hugging Face、Stable Diffusion等)需求,也可以进一步扩展安装。

需要我帮你写一个自动化脚本一键部署吗?

云服务器