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

sklearn classification_report用于多标签分类的使用方式是否正确?

问题1:多标签场景下预测结果是否必须转为0/1二值标签后传入classification_report?

是必须的,你当前的用法完全正确。

  • classification_report计算的precision、recall、F1均属于硬分类指标,依赖「样本是否被判定为属于对应类别」的二元判定结果,不能直接基于概率值计算
  • 你使用np.around(pred)等价于采用0.5作为分类阈值,和你编译模型时tfa.metrics.F1Score指定的threshold=0.5逻辑完全对齐,所以两者输出的macro F1结果一致,验证了用法的正确性

问题2:直接传入sigmoid输出的预测概率值抛出错误是否符合预期?

完全符合预期。
classification_report要求传入的预测结果是离散的分类标签值,不接收连续的浮点概率作为输入,函数无法自动从概率值推导你判定类别的阈值边界,因此直接传概率报错属于正常表现。

如果需要基于概率计算指标,可以选择roc_auc_score等专门接收概率输入的指标函数,但precision、recall、F1这类指标本身的定义就要求基于二值判定结果计算,必须先做阈值二值化处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.12 06:27:00