You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Optuna中objective与best value的差异及优化可视化图解读

Optuna优化历史可视化图问题解答

Optuna优化过程可视化结果


1. 图中两类值的含义,以及误以为只有两个objective的原因

你搞混了图里的元素属性,这不是两个objective输出,这是单目标优化场景下的两类统计标记:

  • 散点:每一次独立试验(trial)实际运行得到的目标函数原始返回值,你总共跑了多少次试验,图上就会有多少个散点,每个点对应当次采样参数的实际表现
  • 折线:从第一次试验到当前试验为止,累计找到的最优目标值,是统计值,不是单次试验跑出来的objective结果
    你觉得“只显示两个objective值”,本质是把这两类不同维度的标记当成了两个独立的目标函数输出,单目标优化任务本来就只会计算你定义的那一个objective,不存在第二个目标。

2. best value的定义,和objective值的核心区别

  • objective值:单次试验的即时结果,只和当次采样到的参数有关,结果高低波动都正常,和之前跑过的试验结果没有任何关联。
  • best value:全局累计最优值,是从第一次试验到当前试验节点,所有已完成试验的objective值里,匹配你优化方向(求最大值/求最小值)的最优结果。比如你做损失最小化,第5次试验对应的best value,就是前5次所有试验objective值里的最小值。
    简单说,objective是单次考试的分数,best value是你从开学到当前这次考试为止,考过的最高分/最低分,二者不是一个维度的数值。

3. 二者没有逐点重合的原因

你预期的重合只会在一种场景下发生:当前这次试验的结果,刚好刷新了从优化开始到现在的历史最优记录。
举个最直白的例子:你要最小化模型损失,前4次试验的objective值分别是0.9、0.7、0.8、0.75,那这4次对应的best value依次是0.9、0.7、0.7、0.7。后两次试验的结果都比第二次的0.7差,所以best value不会更新,一直停在0.7,自然不会和当次0.8、0.75的散点重合。只有当某一次试验跑出比0.7更小的值(比如0.6),这一次的best value才会更新到0.6,和当次的散点重合。
本质上best value的折线是一条只会往更优方向走、不会倒退的单调线,而散点是参数随机采样得到的波动结果,大部分试验的结果都不会超过之前找到的最优值,自然不会逐点重合。


内容的提问来源于stack exchange,提问作者Ben

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 22:18:04