Я впервые работаю над Spark Mllib на Scala, и у меня возникли проблемы с созданием экземпляра класса BinaryClassificationMetrics. Он выдает ошибку Cannot resolve constructor, хотя я форматирую его ввод как RDD кортежей по мере необходимости. Есть идеи, что может пойти не так?
def modelEvaluation(model: PipelineModel, test: DataFrame): Unit = {
// Make a prediction on the test set
val predictionAndLabels = model.transform(test)
.select("prediction","label")
.rdd
.map(r => (r(0),r(1)))
/*.collect()
.foreach(r => println(r))*/
// Instantiate metrics object
val metrics = new BinaryClassificationMetrics(predictionAndLabels)
// Precision-Recall Curve
//val PRC = metrics.pr
}
@ sramalingam24 spark.apache.org/docs/2.2.1/api/java/org/apache/spark/ml/…





BinaryClassificationMetrics нужен RDD[(Double, Double)], деталь: https://spark.apache.org/docs/2.4.0/api/scala/index.html#org.apache.spark.mllib.evaluation.BinaryClassificationMetrics
так что вы можете изменить так:
def modelEvaluation(model: PipelineModel, test: DataFrame): Unit = {
// Make a prediction on the test set
val predictionAndLabels = model.transform(test)
.select("prediction","label")
.rdd
.map(r => (r(0).toString.toDouble,r(1).toString.toDouble))
// Instantiate metrics object
val metrics = new BinaryClassificationMetrics(predictionAndLabels)
// Precision-Recall Curve
//val PRC = metrics.pr
}
Какой тип PipelineModel?