|
@@ -20,6 +20,14 @@ object MetricUtils {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ def clipLabel(label: Double, maxVal: Double = 30): Double = {
|
|
|
|
+ if (label < maxVal) {
|
|
|
|
+ label
|
|
|
|
+ } else {
|
|
|
|
+ maxVal + 2 * Math.log(label - maxVal + 1)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
def calMAPE(evalRdd: RDD[Row]): Double = {
|
|
def calMAPE(evalRdd: RDD[Row]): Double = {
|
|
val apeRdd = evalRdd.map(raw => {
|
|
val apeRdd = evalRdd.map(raw => {
|
|
val label = raw.get(0).toString.toDouble
|
|
val label = raw.get(0).toString.toDouble
|