Evaluate Model模块Threshold含义及模型阈值留存设置方法
Azure Machine Learning Evaluate Model模块Threshold参数相关问题解答
Threshold参数到底是什么
- 这是二分类任务专用的决策判定阈值,不属于模型训练阶段的参数,仅在预测、评估环节生效:二分类模型不会直接输出“是/否”的分类结果,只会给出每个样本属于正类的概率(取值范围0~1),Threshold就是人为设定的判定线——样本正类概率≥这个值就判为正类,低于就判为负类。
- 你在Boosted Decision Tree的训练参数列表里找不到这个配置项是正常现象:阈值不参与模型训练时的树结构生成、权重迭代等任何环节,和模型本身的训练逻辑完全无关,属于预测阶段的后处理规则。
阈值到0.62后收益递减的具体含义
- 阈值从0向0.62提升时准确率上升:这个阶段调高阈值,相当于过滤掉了大量模型判定置信度低、实际大概率为负类的假阳性预测结果,整体预测正确的样本占比自然持续升高。
- 阈值超过0.62后收益递减:此时继续抬高阈值,会开始将大量模型置信度稍低、实际属于正类的样本错判为负类,假阴性样本的增长速度开始超过假阳性样本的下降速度,准确率的提升幅度会快速收窄,再继续拉高阈值甚至会出现准确率不升反降的情况。
自定义阈值的永久配置方法
- 支持永久保留自定义阈值配置,但不需要修改模型本身的参数,调整预测工作流即可:
- 模型训练完成、跑完Score Model打分步骤后,不要直接把打分结果作为最终输出
- 在Score Model模块后新增
Apply Threshold模块,将你选定的最优阈值(比如0.62)填入该模块的参数项 - 后续执行批量预测、将模型部署为线上服务时,整个流程会自动沿用你配置的阈值,不需要每次手动调整。
内容的提问来源于stack exchange,提问作者user1477388
相关产品推荐
相关产品推荐

