Spark ML - MulticlassClassificationEvaluator - 我们可以通过每个类标签获得精确/召回吗?

时间:2016-12-27 20:20:02

标签: apache-spark machine-learning bigdata apache-spark-ml multiclass-classification

我在Spark ML中使用随机森林进行多类预测。

对于spark ML中的这个MulticlassClassificationEvaluator(),是否可以通过每个类标签获得精确度/召回率?

目前,我只看到所有班级的精确/召回相结合。

2 个答案:

答案 0 :(得分:1)

直接使用org.apache.spark.mllib.evaluation.MulticlassMetrics,然后获得可用的指标-

// copied from spark git
val predictionAndLabels =
      dataset.select(col($(predictionCol)), col($(labelCol)).cast(DoubleType)).rdd.map {
        case Row(prediction: Double, label: Double) => (prediction, label)
      }
    val metrics = new MulticlassMetrics(predictionAndLabels)

答案 1 :(得分:0)

使用内置方法似乎无法class documentation

尽管不完全是您要查找的内容,但可以在weightedPrecision方法中使用weightedRecallmetricName。这至少可以解决班级失衡的问题。