本页记录 SFP 实验的原始结果和统计口径。结果文件来自仓库中的 blog/tmp/result/,图表见评估结果摘要。
文件中的 checkpoint 字段保留了生成结果时使用的 checkpoint 名称;其中的机器本地绝对路径不作为复现实验所需路径。
- 环境为 PushT,设备为 CUDA。
- 三种方法均使用 seed
600 到 619,共 20 个 episode;每个 episode 最多运行 200 步。
max_reward 是单个 episode 运行期间的最大奖励;本实验将 max_reward = 1 记为成功,success 字段是该判定的布尔值。
inference_time_ms_per_step 是该 episode 的总推理耗时除以步数,单位为毫秒。表中的均值和标准差是在 20 个 episode 上计算的。
- SFP 使用
integration_steps_per_action = 1;DP 和 SFPJ 的该字段不适用。
| 方法 | checkpoint | 平均最大奖励 | 最大奖励标准差 | 成功率 | 成功数 | 单步推理耗时(ms) | 约等效推理频率(Hz) |
|---|
| DP | epoch_0200.pt | 0.9528 | 0.0572 | 35% | 7/20 | 91.87 ± 0.83 | 10.9 |
| SFP | epoch_0500.pt | 0.9086 | 0.2122 | 25% | 5/20 | 6.31 ± 0.25 | 158.5 |
| SFPJ | last.pt | 0.9008 | 0.1930 | 35% | 7/20 | 8.47 ± 0.44 | 118.0 |
相对于 DP 的单步推理耗时,SFP 约快 14.56 倍,SFPJ 约快 10.84 倍。SFPJ 比 SFP 慢约 1.34 倍,但两者的平均最大奖励接近;在这组 20 个 seed 的评测中,DP 的平均最大奖励最高,DP 与 SFPJ 的成功率均为 35%,高于 SFP 的 25%。推理频率是 1000 / inference_time_ms_per_step 的换算值,只表示模型推理吞吐,不等同于环境最终控制频率。
训练日志按 epoch 记录一次损失和学习率。下表的“最低损失”是在完整日志中逐条取最小值,而不是只取最后一条。
| 方法 | 记录数 | 首条损失 | 最后一条损失 | 最低损失(epoch) | 学习率首值 → 末值 |
|---|
| DP | 500 | 0.73450 | 0.00798 | 0.00781(485) | 1.90e-5 → 1.00e-4 |
| SFP | 1000 | 1.08143 | 0.02421 | 0.02301(968) | 9.60e-6 → 0 |
| SFPJ | 500 | 1.30794 | 0.00250 | 0.00248(492) | 1.86e-5 → 0 |
SFPJ 额外记录 history_noise_effective_scale,从第 1 条的 0.00465 逐步增加到第 500 条的 0.25,用于表示训练时动作历史噪声的实际尺度。
| 字段 | 说明 |
|---|
epoch | 日志记录对应的训练轮次。 |
loss | 当前轮次的训练损失。 |
learning_rate | 当前轮次使用的学习率。 |
history_noise_effective_scale | SFPJ 的动作历史噪声有效尺度;DP 和 SFP 不包含此字段。 |
| 字段 | 说明 |
|---|
schema_version | 结果文件格式版本,当前为 2。 |
method | dp、sfp 或 sfpj。 |
checkpoint | 生成评测结果时加载的 checkpoint。 |
device | 推理设备,当前为 cuda。 |
seeds | 本次评测使用的随机种子列表。 |
max_steps | 每个 episode 的最大步数。 |
integration_steps_per_action | SFP 的每个动作使用的积分步数;不适用时为 null。 |
episodes | 每个 seed 的逐步奖励、成功状态和推理耗时记录。 |
summary | 对 episodes 聚合得到的平均值、标准差和成功率。 |
| 字段 | 说明 |
|---|
seed | 当前 episode 使用的随机种子。 |
rewards | 每个环境步的奖励序列。 |
max_reward | rewards 中的最大值。 |
steps | 实际运行步数。 |
success | 是否达到成功判定。 |
inference_time_seconds | 当前 episode 的总推理耗时,单位为秒。 |
inference_time_ms_per_step | 总推理耗时除以 steps,单位为毫秒。 |
| 字段 | 说明 |
|---|
mean_max_reward / std_max_reward | 20 个 episode 的 max_reward 均值 / 标准差。 |
success_rate | success = true 的 episode 数除以 episode 总数。 |
mean_inference_time_ms_per_step / std_inference_time_ms_per_step | 单步推理耗时的均值 / 标准差。 |
评测 JSON 保留逐步数据,因此图表中的奖励曲线、最大奖励分布、成功率和延迟分布都可以从原始文件重新生成。训练 JSON 同样保留每条日志记录,图表中的损失和学习率曲线不依赖手工录入的汇总值。