6.2 KiB
6.2 KiB
✅ GCA优化版训练 - 准备就绪
📅 日期: 2025-11-06
🎯 状态: 所有准备工作已完成,可以启动训练
✅ 已完成的优化
1. 磁盘清理
- ✅ 删除.eval_hook缓存 (75GB)
- ✅ 当前可用空间: 61GB
2. Evaluation优化
- ✅ Validation样本: 6,019 → 3,010 (减少50%)
- ✅ Evaluation频率: 每5 epochs → 每10 epochs
- ✅ 总评估开销减少: 75%
3. GCA模块集成
- ✅ GCA模块已添加到分割头
- ✅ 位置: ASPP之后,Channel Attention之前
- ✅ 代码已修改并保存
4. 配置文件更新
- ✅ 文件: multitask_BEV2X_phase4a_stage1.yaml
- ✅ data.val.load_interval: 2
- ✅ evaluation.interval: 10
🚀 启动训练命令
方法1: 在Docker容器内启动 (推荐)
# 进入Docker容器
docker exec -it bevfusion bash
# 在容器内执行
cd /workspace/bevfusion
torchpack dist-run \
-np 8 \
python tools/train.py \
configs/nuscenes/det/transfusion/secfpn/camera+lidar/swint_v0p075/multitask_BEV2X_phase4a_stage1.yaml \
--model.encoders.camera.backbone.init_cfg.checkpoint pretrained/swint-nuimages-pretrained.pth \
--load_from /workspace/bevfusion/runs/run-326653dc-2334d461/epoch_5.pth \
--resume-from /workspace/bevfusion/runs/run-326653dc-2334d461/epoch_5.pth
方法2: 使用启动脚本
# 在Docker容器内
cd /workspace/bevfusion
bash START_PHASE4A_WITH_GCA.sh
# 当提示时输入 'y' 确认启动
方法3: 后台启动(推荐用于长时间训练)
# 在Docker容器内
cd /workspace/bevfusion
nohup torchpack dist-run \
-np 8 \
python tools/train.py \
configs/nuscenes/det/transfusion/secfpn/camera+lidar/swint_v0p075/multitask_BEV2X_phase4a_stage1.yaml \
--model.encoders.camera.backbone.init_cfg.checkpoint pretrained/swint-nuimages-pretrained.pth \
--load_from /workspace/bevfusion/runs/run-326653dc-2334d461/epoch_5.pth \
--resume-from /workspace/bevfusion/runs/run-326653dc-2334d461/epoch_5.pth \
> /tmp/phase4a_gca_$(date +%Y%m%d_%H%M%S).log 2>&1 &
# 查看日志
tail -f /tmp/phase4a_gca_*.log
📊 训练参数总结
起始Epoch: 5
目标Epoch: 20
剩余Epochs: 15
学习率: 2.0e-5
BEV分辨率: 600×600
输出分辨率: 600×600
Validation样本: 3,010 (原6,019)
Evaluation频率: 每10 epochs (epoch 10, 20)
新特性:
✨ GCA全局上下文模块
📉 Evaluation开销减少75%
💾 .eval_hook大小减少50% (75GB → 37.5GB)
🔍 监控命令
实时查看训练日志
# 方法1: 查看最新日志文件
tail -f /workspace/bevfusion/runs/run-326653dc-2334d461/*.log
# 方法2: 查看特定指标
tail -f /workspace/bevfusion/runs/run-326653dc-2334d461/*.log | grep -E "loss/map/divider|Epoch"
检查GPU使用
watch -n 5 nvidia-smi
检查训练进程
ps aux | grep -E "torchpack|python.*train"
检查磁盘空间
df -h /workspace
📈 预期性能
Divider类别(最难)
Epoch 5 (无GCA): Dice Loss: 0.52
Epoch 10 (GCA): Dice Loss: 0.48-0.50 (预期)
Epoch 20 (GCA): Dice Loss: 0.42-0.45 (目标) ✅
整体目标
所有类别 mIoU: > 60%
3D Detection mAP: > 0.68
训练稳定性: ✅ 改善
磁盘占用: ✅ 减少75%评估开销
⏰ 时间预估
总剩余时间: ~7天 (FP32, 15 epochs)
里程碑:
- Epoch 10评估: ~3天后 (2025-11-09)
- Epoch 20完成: ~7天后 (2025-11-13)
📝 修改文件清单
✅ 配置文件:
/workspace/bevfusion/configs/nuscenes/det/.../multitask_BEV2X_phase4a_stage1.yaml
- data.val.load_interval: 2
- evaluation.interval: 10
✅ 分割头:
/workspace/bevfusion/mmdet3d/models/heads/segm/enhanced.py
- 导入 GCA
- 添加 self.gca = GCA(...)
- forward中调用 x = self.gca(x)
✅ 模块初始化:
/workspace/bevfusion/mmdet3d/models/modules/__init__.py
- 创建空__init__.py
✅ 文档:
/workspace/bevfusion/GCA_OPTIMIZATION_SUMMARY.md
/workspace/bevfusion/EVALUATION_OPTIMIZATION_STRATEGIES.md
/workspace/bevfusion/PHASE4A_PROJECT_STATUS_20251106.md
/workspace/bevfusion/EVAL_HOOK_AND_DATASET_EXPLANATION.md
/workspace/bevfusion/READY_TO_START_GCA_TRAINING.md (本文件)
✅ 启动前检查清单
- .eval_hook已清理 (释放75GB)
- 磁盘空间充足 (61GB可用)
- Checkpoint存在 (epoch_5.pth)
- 配置文件已更新 (load_interval=2, interval=10)
- GCA模块已集成到分割头
- 启动脚本已创建 (START_PHASE4A_WITH_GCA.sh)
🎯 启动步骤(简化版)
# 1. 进入Docker容器
docker exec -it bevfusion bash
# 2. 切换目录
cd /workspace/bevfusion
# 3. 启动训练
bash START_PHASE4A_WITH_GCA.sh
# 或直接运行torchpack命令(见上方"方法3")
# 4. 监控训练
tail -f /workspace/bevfusion/runs/run-326653dc-2334d461/*.log
🔧 故障排查
问题1: 训练无法启动
# 检查checkpoint是否存在
ls -lh /workspace/bevfusion/runs/run-326653dc-2334d461/epoch_5.pth
# 检查配置文件
cat /workspace/bevfusion/configs/nuscenes/det/.../multitask_BEV2X_phase4a_stage1.yaml | grep -A 3 "data:\|evaluation:"
问题2: 磁盘空间不足
# 清理旧的.eval_hook(如果再次出现)
rm -rf /workspace/bevfusion/runs/run-326653dc-2334d461/.eval_hook/
# 检查磁盘
df -h /workspace
问题3: GPU未使用
# 检查进程
ps aux | grep python
# 检查日志
tail -n 100 /workspace/bevfusion/runs/run-326653dc-2334d461/*.log
📞 关键监控指标
训练启动后,重点关注:
每50次迭代
loss/map/divider/dice: 应该从0.52逐渐下降
loss/map/divider/focal: 应该稳定在0.035-0.040
grad_norm: 健康范围8-15
memory: 不超过23GB
Epoch 10评估
Divider mIoU: 目标 > 0.50
Overall mIoU: 目标 > 0.58
3D Detection mAP: 目标 > 0.67
🎉 总结
所有准备工作已完成!
- ✅ 磁盘清理完成 (61GB可用)
- ✅ Evaluation优化 (开销减少75%)
- ✅ GCA模块集成
- ✅ 配置更新完成
- ✅ 文档齐全
请在Docker容器内执行启动命令即可开始训练!
预祝训练顺利,Divider性能突破!🚀