【发布时间】:2018-10-26 00:06:18
【问题描述】:
spark 版本是 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))
这些代码做了一些类型检查,所以如果我删除它,它会变通。但是,它似乎不安全和丑陋。那么,还有其他方法吗?任何帮助将不胜感激!
【问题讨论】:
标签: scala apache-spark