我使用的是H2ORandomForestSimator。H2O模型在其predict()
方法中使用的默认目标度量是什么?https://docs.h2o.ai/h2o/latest-stable/h2o-py/docs/modeling.html#h2o.automl.H2OAutoML.predict
有办法设置这个吗?(例如,使用在查看get_params()
方法的结果时可以看到的最大化阈值的其他度量之一(
目前正在做一些类似。。。
df_preds = mymodel.predict(df)
activation_threshold = mymodel.find_threshold_by_max_metric('f1', valid=True)
# adjust the predicted label for the desired metric's maximizing threshold
df_preds['predict'] = df_preds['my_positive_class'].apply(lambda probability: 'my_positive_class' if probability >= activation_threshold else 'my_negative_class')
参见
- https://docs.h2o.ai/h2o/latest-stable/h2o-py/docs/model_categories.html?highlight=find_threshold#h2o.model.binomial.H2OBinomialModel.find_threshold_by_max_metric
- https://docs.h2o.ai/h2o/latest-stable/h2o-py/docs/frame.html?highlight=apply#h2o.H2OFrame.apply
没有"目标度量";生成预测时,因为您只是在预测一行数据的响应(此处没有评分(。
编辑:谢谢你澄清你的问题。如果你想改变阈值的生成方式,那么上面所做的就是一个很好的解决方案。如果你有一个实用函数的建议,可以让它更直接,请提交一份带有你的想法的JIRA(它肯定可以改进(。