深度学习常用训练命令解释

深度学习项目的训练命令通常是是根据训练文件(train.py)设定来接收参数

举例参考

CUDA_VISIBLE_DEVICES=0,1,2,3 python -m torch.distributed.launch --nproc_per_node 4 --master_port 12345 train.py --dataset rrsisd --model_id RMSIN --epochs 40 --img_size 480 2>&1 | tee ./output

命令解释

1.CUDA_VISIBLE_DEVICES=0,1,2,3:

  • 这个环境变量用于指定哪些 GPU 可用。在这里,设备 0 到 3 被设置为可用 GPU,这意味着你的程序将会使用这些 GPU 进行训练。

  • 单个GPU训练命令

python 复制代码
CUDA_VISIBLE_DEVICES=0 python train.py --dataset rrsisd --model_id RMSIN --epochs 40 --img_size 480 2>&1 | tee ./output
  1. python -m torch.distributed.launch:

    • 这是 PyTorch 的分布式训练模块。使用 -m 选项可以让 Python 作为模块运行,torch.distributed.launch 会负责启动多个进程。
  2. --nproc_per_node 4:

    • 指定每个节点(通常是每个机器)要启动的进程数。在这个例子中,指定为 4,这意味着会启动 4 个训练进程,分别使用前面指定的 4 个 GPU。
  3. --master_port 12345:

    • 这是用于进程间通信的主端口号。所有进程将通过这个端口进行通信。
  4. train.py:

    • 这是你的训练脚本文件,包含了模型训练的代码。
  5. --dataset rrsisd:

    • 指定要使用的数据集名称为 rrsisd。你需要确保在代码中相应地处理这个数据集。
  6. --model_id RMSIN:

    • 这是指定模型 ID 的参数。具体使用时需要在 train.py 中处理这个参数。
  7. --epochs 40:

    • 指定训练的轮数(epochs),在这个例子中为 40 轮。
  8. --img_size 480:

    • 指定输入图像的尺寸为 480(假设是正方形图像)。
  9. 2>&1 | tee ./output:

  • 2>&1 将标准错误输出(stderr)重定向到标准输出(stdout),确保所有输出都被捕获。
  • | tee ./output 将输出同时写入到 output 文件中,并在终端中显示。这样你可以在运行时查看日志,同时保留日志文件。
相关推荐
兵慌码乱1 小时前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·sqlite·信号与槽·pyqt5·数据库设计·桌面应用开发·事务处理
ZhengEnCi2 小时前
09c-斯坦福CS336作业二:系统与分布式训练
人工智能
阿里云大数据AI技术2 小时前
用 SQL 解锁多模态数据分析:Hologres 让图片、语音、视频变成结构化洞察
人工智能
阿里云大数据AI技术3 小时前
EMR Serverless StarRocks 湖仓多模态检索:One SQL on One Data,实现全文 + 标量 + 向量三路混合检索
人工智能
金銀銅鐵3 小时前
[Python] 体验用欧几里得算法计算最大公约数的过程
python·数学
冬奇Lab4 小时前
Skill 系列(02):Skill 安全风险——三类攻击面的实战测试
人工智能·安全·开源
冬奇Lab4 小时前
每日一个开源项目(第138篇):OpenMontage - 把 AI 编程助手变成完整的视频制作团队
人工智能·开源·claude
米小虾4 小时前
智谱港股盘中市值突破万亿港元!GLM-5.2 开源引爆国产 AI 价值重估
人工智能·chatglm (智谱)
阿里云大数据AI技术4 小时前
义乌小商品城基于MaxFrame AI Function的亿级AI 数据产线提速之路
人工智能