Я установил следующую регрессионную модель логистики c, используя spark
MLlib
val df = spark.read.option("header","true").option("inferSchema","true").csv("car_milage-6f50d.csv")
val hasher = new FeatureHasher().setInputCols(Array("mpg","displacement","hp","torque")).setOutputCol("features")
val transformed = hasher.transform(df)
val Array(training, test) = transformed.randomSplit(Array(0.8, 0.2))
val lr = new LogisticRegression()
.setFeaturesCol("features")
.setLabelCol("automatic")
.setMaxIter(20)
val paramGrid = new ParamGridBuilder()
.addGrid(lr.regParam, Array(0.1,0.3))
.addGrid(lr.elasticNetParam, Array(0.9,1))
.build()
val cv = new CrossValidator()
.setEstimator(lr)
.setEvaluator(new BinaryClassificationEvaluator())
.setEstimatorParamMaps(paramGrid)
.setNumFolds(10)
.setParallelism(2)
val model = cv.fit(training)
val results = model.transform(test).select("features", "automatic", "prediction")
val predictionAndLabels = results.select("prediction","label").as[(Double, Double)].rdd
В конце я получил эти метрики оценки модели
val mMetrics = new MulticlassMetrics(predictionAndLabels)
mMetrics.confusionMatrix
mMetrics.labels
mMetrics.accuracy
В качестве шага файла Мне нужно записать эти метрики оценки (mMetrics
) в файл (может быть текстовый файл из CSV-файла). Может кто-нибудь помочь мне, как это сделать?
Я просто попытался, и я не смог найти метод записи, связанный с этими значениями.
Спасибо