用于预测的阈值

问题描述 投票:0回答:1

根据H2O文档,在预测时使用的阈值是火车的最大F1阈值。性能功能,]

h2o.performance(model, newdata = test)

实际上是对测试集进行预测,以便计算混淆矩阵。

奇怪的是,我在使用相同的测试集预测相同的测试集时得到了不同的混淆矩阵

h2o.predict(object, newdata=test).

这意味着h2o.performance()使用的阈值与h2o.predict()不同。我想知道如何根据预测来决定阈值。

谢谢。

r h2o
1个回答
1
投票

H2O对h2o.performance()和h2o.predict()使用最大F1阈值。区别是什么数据集,它将用于估计最大F1阈值。


h2o.predict()将使用在训练期间选择的阈值。它使用不同的最大F1阈值,具体取决于模型的训练方式。基本上:

  • 如果您只有训练数据,则最大F1阈值来自训练数据模型。
  • 如果在训练期间有验证数据,则最大F1阈值来自验证数据模型。

[在documentationstackoverflow中都有解释。根据训练期间是否有验证数据,您将看到由[[训练或验证数据集确定的最大F1阈值。

h2o.performance()将采用模型和新数据,并计算什么阈值将为新数据

提供最高的F1。在您的情况下,test用于计算最大F1阈值。
© www.soinside.com 2019 - 2024. All rights reserved.