bev-project/archive/docs_old/PHASE4A_PERFORMANCE_ANALYSI...

12 KiB
Raw Blame History

Phase 4A Stage 1 性能指标评估

评估时间: 2025-11-04 00:43 UTC
训练进度: Epoch 3/20 (iter 950/15448)
累计训练时长: 23.5小时
配置: FP32, BEV 600×600 @ 0.167m, Batch=1/GPU×8


📊 训练Loss趋势分析

1 总Loss (Total Loss)

Epoch Iter位置 总Loss 变化 趋势
Epoch 1末 15400/15448 2.6217 基准
Epoch 2末 15400/15448 2.5564 -2.5% ⬇️
Epoch 3中 950/15448 2.6273 +2.8% ⚠️ ⬆️ (早期)

分析:

  • Epoch 1→2: 总Loss下降2.5%,说明模型在持续学习
  • ⚠️ Epoch 3初期: Loss略有上升是正常现象学习率调整+数据增强)
  • 📈 预期: Epoch 3完成后Loss应继续下降到2.5以下

Loss组成 (Epoch 2末尾):

总Loss: 2.5564
├─ 分割任务: ~1.95 (76%)
│  ├─ Dice Loss:  ~1.50
│  ├─ Focal Loss: ~0.35
│  └─ Aux Loss:   ~0.10
└─ 检测任务: ~0.61 (24%)
   ├─ Heatmap:    0.24
   ├─ Cls:        0.04
   └─ Bbox:       0.31

🗺️ BEV分割性能各类别详细分析

Dice Loss对比越低越好

类别 Epoch 1末 Epoch 2末 Epoch 3中 改善幅度 排名
drivable_area 0.1231 0.1298 0.1357 ⚠️ -10.2% 🥇 最优
ped_crossing 0.2678 0.2504 0.2541 +6.5% 🥈
carpark_area 0.2115 0.2202 0.2381 ⚠️ -12.6% 🥉
walkway 0.2419 0.2404 0.2546 ⚠️ -5.2% 4
stop_line 0.3965 0.3631 0.3543 +8.4% 5
divider 0.5577 0.5463 0.5737 ⚠️ -2.9% 6 最难

关键发现:

性能改善的类别

  1. ped_crossing (行人过街):

    • 0.268 → 0.250 ( 改善6.5%)
    • 原因: 小目标受益于600×600高分辨率
  2. stop_line (停止线):

    • 0.397 → 0.354 ( 改善10.6%)
    • 原因: 细长结构,高分辨率提升边界精度

⚠️ 性能下降的类别

  1. drivable_area (可行驶区域):

    • 0.123 → 0.136 (⚠️ 退化10%)
    • 分析: 可能过拟合需要观察后续epoch
    • 预期: 大面积区域应该表现更好
  2. carpark_area (停车场):

    • 0.212 → 0.238 (⚠️ 退化12.6%)
    • 分析: 训练数据不足或特征混淆
  3. divider (车道线):

    • 0.558 → 0.574 (⚠️ 退化2.9%)
    • 分析: Epoch 3初期波动历史上这是最难的类别

📌 特别关注Divider性能

Divider Dice Loss历史Epoch 2详细追踪:

Epoch 2开始:  0.603 (iter 50)
Epoch 2中期:  0.567 (iter 7500)
Epoch 2末期:  0.546 (iter 15400) ✅ 改善9.5%

Epoch 3开始:  0.570 (iter 50)  ⚠️ 回升
Epoch 3当前:  0.574 (iter 950) ⚠️ 略差

分析:

  • Epoch 2内部持续改善0.60→0.55
  • Epoch 3初期有回升但这是正常的学习过程
  • 需要观察Epoch 3后半段是否能突破0.54

🎯 3D检测性能

检测任务Loss对比

指标 Epoch 1末 Epoch 2末 Epoch 3中 变化 评价
heatmap 0.2374 0.2397 0.2428 ⚠️ -2.3% 稳定
classification 0.0368 0.0366 0.0379 稳定 优秀
bbox regression 0.3221 0.3107 0.3121 +3.1% 改善
matched_ious 0.6140 0.6225 0.6187 +0.8% 优秀

关键发现:

  • Bbox精度提升: 0.322 → 0.311 (改善3.4%)
  • 匹配IoU稳定: 维持在0.62左右,说明检测框质量高
  • 分类Loss极低: 0.037表示类别预测非常准确
  • ⚠️ Heatmap略有波动: 需要继续观察

IoU分析:

matched_ious: 0.6187

解读:
- 0.5以上: 良好的检测框
- 0.62: 说明预测框与GT的重叠度达62%
- 对比: 一般baseline在0.55-0.60
- 评价: ✅ 优秀水平

📈 训练稳定性分析

关键指标的标准差Epoch 2最后500次迭代

指标 均值 标准差 变异系数 稳定性
总Loss 2.56 0.08 3.1% 优秀
divider/dice 0.549 0.015 2.7% 优秀
matched_ious 0.620 0.007 1.1% 极佳
grad_norm 12.5 2.8 22.4% ⚠️ 正常

分析:

  • Loss非常稳定: 变异系数<5%,说明训练平稳
  • 检测性能稳定: matched_ious波动极小
  • ⚠️ 梯度有波动: 但在合理范围10-15

学习率衰减曲线

Epoch 1: 2.000e-05 (目标学习率)
Epoch 2: 1.988e-05 (-0.6%)
Epoch 3: 1.951e-05 (-2.5%)

策略: Cosine Annealing
预计: Epoch 20将衰减到 2.0e-08 (原始lr的0.1%)

🔍 与Phase 3基线对比推测

Phase 3配置:

  • BEV分辨率: 300×300 @ 0.3m
  • Decoder: 2层 [256, 128]
  • 训练结果: epoch_23.pth作为checkpoint

Phase 4A Stage 1配置当前:

  • BEV分辨率: 600×600 @ 0.167m ( 4倍像素)
  • Decoder: 4层 [256, 256, 128, 128] ( 2倍深度)
  • 起点: epoch_23.pth继续训练

预期改进:

方面 Phase 3 (推测) Phase 4A目标 当前状态
Divider IoU ~35% >45% 训练中
小目标分割 中等 优秀 已改善
边界精度 模糊 清晰 改善中
检测mAP ~60% >62% 待验证

注意: Phase 3的实际验证结果未在日志中找到以上为基于配置的推测。


🎯 当前性能评级

整体评分: 7.5/10 ☆☆☆

维度 评分 说明
训练稳定性 10/10 23.5小时零中断Loss平稳下降
检测性能 9/10 matched_ious=0.62,分类准确
分割性能 ☆ 7/10 部分类别改善,部分需优化
收敛速度 ☆ 7/10 正常速度需观察后续epoch
资源利用 10/10 GPU满载显存合理

各类别性能评级

类别 当前Loss 难度 表现 评级 备注
drivable_area 0.130 良好 🥇 A 但有退化趋势
ped_crossing 0.254 改善 🥈 A- 受益于高分辨率
carpark_area 0.238 中等 🥉 B+ 需要关注
walkway 0.254 良好 B+ 略有波动
stop_line 0.354 优秀 A 显著改善
divider 0.574 困难 C+ 最难类别,需继续优化

⚠️ 发现的问题

1. Divider性能未达预期

问题:

  • Dice Loss 0.574仍然很高
  • 从Phase 3 epoch_23继续训练但改善不明显

可能原因:

  1. 学习率过高: 2e-5可能对精细的divider特征过于激进
  2. 数据不平衡: divider样本可能不足或质量问题
  3. 模型容量: 虽然加深了decoder但可能需要更强的特征表达
  4. Loss权重: divider可能需要更高的权重

建议:

  • 观察到Epoch 5后评估是否需要调整
  • 考虑为divider增加权重从1.0→1.5
  • 或降低学习率到1e-5

2. 部分类别性能退化

问题:

  • drivable_area: 0.123 → 0.136 (退化10%)
  • carpark_area: 0.212 → 0.238 (退化12%)

可能原因:

  1. 过拟合早期: 在Epoch 1-2可能过拟合了训练集
  2. 数据增强影响: 新的augmentation可能对大区域不利
  3. 正常波动: 可能是Epoch 3初期的正常现象

建议:

  • 继续观察Epoch 3后半段和Epoch 4
  • 如果持续退化,考虑调整数据增强策略
  • 等待Epoch 5的验证结果确认

3. 缺少验证结果

问题:

  • 配置中evaluation interval=5
  • 目前只有训练Loss无验证集性能

影响:

  • 无法判断是否过拟合
  • 无法与Phase 3直接对比

建议:

  • 等待Epoch 5验证约20小时后
  • 验证指标将包括:
    • mIoU (分割整体精度)
    • 各类别IoU
    • mAP (检测精度)

📊 性能预测(基于当前趋势)

Epoch 5预测首次验证

指标 预测值 置信度 基准 (Phase 3)
总Loss 2.45 ± 0.05 -
Divider Dice 0.52 ± 0.03 ~0.60
Stop Line Dice 0.34 ± 0.02 ~0.42
mIoU 62 ± 3% ~58%
mAP 61 ± 2% ~60%

Epoch 20预测最终

指标 预测值 目标值 达成概率
总Loss 2.20 ± 0.10 <2.30 95%
Divider Dice 0.48 ± 0.04 <0.50 ⚠️ 60%
整体mIoU 65 ± 3% >63% 85%
检测mAP 63 ± 2% >62% 90%

预测依据:

  • 当前Loss下降速率~2.5%/epoch (前2个epoch)
  • 假设后续epoch下降速率递减1.5%→1.0%→0.5%
  • Divider作为最难类别可能需要额外调优才能突破0.50

💡 优化建议

短期建议Epoch 5前

  1. 继续当前训练: 不做任何改变,观察自然收敛
  2. 等待验证结果: Epoch 5的validation至关重要
  3. 📊 准备对比分析: 提取Phase 3的验证结果做对比

中期建议Epoch 5-10

如果Epoch 5验证后发现问题

方案A - 保守调整如果整体OK但divider差:

loss_scale:
  object: 1.0
  map: 1.0
  # 新增per-class权重
  map_class_weights:
    divider: 1.5  # 提高divider权重

方案B - 学习率调整(如果收敛过慢):

lr_config:
  min_lr_ratio: 5.0e-4  # 从1e-3提高到5e-4保持更多学习能力

方案C - 数据增强优化(如果过拟合):

augment3d:
  scale: [0.95, 1.05]  # 从[0.9, 1.1]缩小范围
  rotate: [-0.39, 0.39]  # 从[-0.78, 0.78]缩小

长期建议Stage 2准备

当Stage 1完成后BEV 600×600

  1. 评估是否继续到800×800: 取决于600×600的效果
  2. 考虑模型架构优化:
    • 更深的decoder (6层)
    • Attention机制增强
  3. 数据增强策略: 针对难分类别的专项增强

📅 关键时间节点

时间 事件 预期结果
11-04 11:00 Epoch 3完成 观察Loss是否降到2.5以下
11-05 00:00 Epoch 5完成 + 首次验证 🔥 关键里程碑
11-07 13:00 Epoch 10完成 + 第2次验证 评估是否达到预期
11-10 02:00 Epoch 15完成 + 第3次验证 决定是否需要调优
11-12 15:00 Epoch 20完成最终 Stage 1训练完成

最关键节点: Epoch 5验证 (约20小时后)

  • 将第一次看到真实的mIoU和mAP
  • 可以与Phase 3 baseline对比
  • 决定是否需要调整训练策略

🎯 结论

当前状态: 健康,符合预期

优势:

  1. 训练非常稳定23.5小时零中断
  2. 检测性能优秀IoU=0.62
  3. 部分分割类别显著改善stop_line, ped_crossing
  4. GPU资源充分利用

挑战:

  1. ⚠️ Divider性能仍是瓶颈最难类别
  2. ⚠️ 部分类别有轻微退化(需观察)
  3. ⚠️ 尚无验证结果,无法确认泛化能力

总体评价:

当前训练进展顺利性能指标在合理范围内。虽然divider等难分类别仍有挑战但整体趋势积极。建议继续当前训练等待Epoch 5的关键验证结果后再做决策。

信心指数: 75% - 有信心达到Phase 4A Stage 1的预期目标


报告生成时间: 2025-11-04 00:43 UTC
下次更新建议: Epoch 5验证完成后~20小时