gpt4 book ai didi

machine-learning - Sklearn RandomForestClassifier Predict_log_proba 除以零误差

转载 作者:行者123 更新时间:2023-11-30 08:53:57 24 4
gpt4 key购买 nike

我正在尝试使用 RandomForestClassifier 来解决 nlp 问题,但是当我使用 Predict_log_proba 方法时,我得到了除以零的错误。我查看了predict_proba方法的结果,发现原因是因为某些类(总共6类)的某些概率为0。因此,当predict_log_proba尝试将np.log应用到0时,它得到一个错误。有没有一个参数可以避免这个问题?

我知道 Predict_log_proba 可以在随机森林分类器上正确使用,因为我看到这个示例代码使用它并且它工作得很好:http://scikit-learn.org/stable/auto_examples/calibration/plot_calibration_multiclass.html

我使用 sklearn 版本 0.19 和 RandomForestClassifier 的默认参数值。

最佳答案

如果您的模型对给定类别输出零概率,则该类别的对数概率为负无穷大。因此,如果您要对日志空间中的概率求和(或者需要此值),那么显然您无法使用此值。

对于随机森林中发生的情况,这意味着所有树都同意该特定数据点的该特定类别的概率为零。您可以通过增加树的数量来缓解这种情况(这会增加至少其中一棵树说这个示例属于该类的机会)。或者您可以减少 max_depth 参数以达到类似的效果。

或者,您可以在应用对数之前软化模型的输出,例如将输出概率设置为 min(max(p, 0.001), 0.999)。

希望有帮助。

关于machine-learning - Sklearn RandomForestClassifier Predict_log_proba 除以零误差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46043117/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com