【发布时间】:2017-10-22 18:34:32
【问题描述】:
我正在使用 Spark 2 + Scala 来训练基于 LogisticRegression 的二进制分类模型,并且我正在使用 import org.apache.spark.ml.classification.LogisticRegression,这是 Spark 2 中的新 ml API。但是,当我通过 AUROC 评估模型时,我没有找到一种使用概率(0-1 中的两倍)而不是二元分类(0/1)的方法。这是之前removeThreshold()实现的,但是在ml.LogisticRegression我没有找到类似的方法。那么,有没有办法做到这一点?
我使用的评估器是
val evaluator = new BinaryClassificationEvaluator()
.setLabelCol("label")
.setRawPredictionCol("rawPrediction")
.setMetricName("areaUnderROC")
val auroc = evaluator.evaluate(predictions)`
【问题讨论】:
-
实际上看起来如果setRawPredictionCol为概率,它应该使用概率而不是预测。有人可以确认吗?
标签: scala apache-spark machine-learning distributed-computing