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

TensorFlow Keras多标签分类任务中accuracy指标含义咨询

关于Keras多标签任务中accuracy指标的定义问题

你的模型代码

model_lstm.add(Embedding(256, 250, input_length=640))
model_lstm.add(SpatialDropout1D(0.4))
model_lstm.add(LSTM(50, return_sequences=True))
model_lstm.add(LSTM(50))
model_lstm.add(Dense(12, activation='sigmoid'))

model_lstm.compile(optimizer='adam',
              loss='binary_crossentropy',
              metrics=['accuracy', 'AUC'])

问题解答

首先明确:你的模型属于多标签分类任务(输出层12个sigmoid神经元搭配binary_crossentropy损失),Keras在这种场景下默认的accuracy实际对应binary_accuracy指标,针对你的疑问解答如下:

  1. 此处的accuracy是否表示测试集中平均n%的样本被正确分类?
    不是。该指标不会以“样本的所有标签都被正确预测”作为判定样本分类正确的标准,因此不会统计“完全正确的样本占总样本的比例”。

  2. 此处的accuracy是否表示每个样本中平均n%的标签被正确预测?同时想问,此场景下Keras中的“label”指的是所有标签都被正确分类的样本,还是每个样本的单个标签?

    • 是的。计算逻辑为:对每个样本的每一个标签,将预测值(以0.5为阈值判定为0或1)与真实标签对比,统计所有匹配的标签数量占总标签数量的比例,最终取所有样本的平均值。
    • 此场景下的“label”指的是每个样本的单个标签,而非“所有标签都正确的样本”。例如一个样本有12个标签,其中9个预测正确,该样本对accuracy的贡献是9/12,而非视为“正确样本”计1分或“错误样本”计0分。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 17:52:46