Искровая версия 2.3.1.Библиотека
Spark-Mlib
предоставляет класс BinaryClassificationEvaluator
( BinaryClassificationEvaluator.scala ) для оценки алгоритма, а также может использоваться для поиска в гирде.Но это предполагает только две метрики
val metric = $(metricName) match {
case "areaUnderROC" => metrics.areaUnderROC()
case "areaUnderPR" => metrics.areaUnderPR()
//what i want todo
case "areUnderXX"=> myCustomMetric()
}
Я пытаюсь добавить больше, но у BinaryClassificationEvaluator
есть некоторые члены, для которых установлено значение private
, поэтому я не могу просто расширить его.Вот код, который нельзя просмотреть вне пакета:
SchemaUtils.checkColumnTypes(schema, $(rawPredictionCol), Seq(DoubleType, new VectorUDT))
SchemaUtils.checkNumericType(schema, $(labelCol))
Этот код выполняет некоторую проверку типа, поэтому, если я удалю его, это будет обходной путь.Но, кажется небезопасным и безобразным.Так есть ли другой способ сделать это?любая помощь будет оценена!