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

使用Keras Tuner调优时报Unknown metric val_accuracy错误如何解决

问题解决

问题原因

  • 核心为旧版本Keras Tuner对字符串格式的验证集指标名存在解析兼容缺陷,即使训练过程中可正常输出val_accuracy数值,调优器在后处理阶段依然无法识别该指标,抛出未知指标错误。

解决方法

你可以按优先级选择以下方案:

  1. 显式声明优化目标对象(优先推荐,无需修改其他逻辑)
    在导入部分新增Objective的导入:
from kerastuner import Objective

修改Tuner初始化时的objective参数,替换字符串为显式的目标对象:

tuner = CustomTuner(
    create_model,
    objective=Objective("val_accuracy", direction="max"),
    max_trials = 20,
    directory= 'logs',
    project_name='fashion_minist',
    overwrite=True,
)
  1. 适配新版Keras Tuner包命名
    当前新版Keras Tuner包名已从kerastuner改为keras_tuner,旧版包不再维护更新,修改导入语句即可解决大部分兼容问题:
# 把原来的import kerastuner替换为以下语句
import keras_tuner as kerastuner
  1. 临时兼容旧版本
    如果以上方案都无法生效,可将模型编译时的指标名和调优目标统一改为旧版写法:
  • 模型compile部分修改为metrics=['acc']
  • Tuner的objective参数修改为objective='val_acc'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 13:54:04