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

如何解读员工离职预测场景下predict_proba的输出结果?

关于predict_proba输出含义的解答

你的理解不具备普适正确性,不能直接默认第二列就是离职概率,判断依据如下:

  • 主流机器学习框架(以scikit-learn为代表)的分类模型,predict_proba返回的二维数组中,每一列对应的概率类别,完全和模型内置的classes_属性存储的类别顺序绑定,不会自动按业务含义排序。
  • 只有当你做标签预处理时,明确将「离职」编码为排在第二位的类别(比如二分类标签编码后0=不离职,1=离职,且model.classes_输出为array([0, 1])),你对第一行[0.17, 0.83]的解读才成立,即对应该员工有83%概率离职。
  • 如果你当初的标签编码把「离职」放在了第一位,或是使用字符串类别标签时框架按字典序自动排列类别顺序,列的对应关系就会反转,此时0.83反而代表员工留任的概率。

验证方法

你只需要在训练完成的模型上执行一行代码,就能明确列和类别的对应关系:

print(model.classes_)

输出的数组中,第0位的元素对应每一行第0列概率的所属类别,第1位的元素对应每一行第1列概率的所属类别,直接对照就能得到准确的概率含义。

你贴出的模型输出片段如下:

Output exceeds the size limit. Open the full output data in a text editor
array([[0.17, 0.83],
       [0.43, 0.57],
       [0.29, 0.71],
       [0.94, 0.06],
       [0.98, 0.02],
       [0.84, 0.16],
       [0.64, 0.36],
       [1.  , 0.  ],
       [0.85, 0.15],
       [0.99, 0.01],
       [0.09, 0.91],
       [0.89, 0.11],
       [0.21, 0.79],
       [0.15, 0.85],
       [0.78, 0.22],
       [0.18, 0.82],
       [0.84, 0.16],
       [0.45, 0.55],
       [0.96, 0.04],
       [0.95, 0.05],
       [0.91, 0.09],
       [0.9 , 0.1 ],
       [1.  , 0.  ],
       [0.91, 0.09],
       [0.74, 0.26],
...
       [0.94, 0.06],
       [0.99, 0.01],
       [0.22, 0.78],
       [0.89, 0.11],
       [0.98, 0.02]])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 23:09:15