Il y a une partie du code ci-dessous; Je voudrais savoir comment puis-je évaluer mes prévisions? Si, je veux savoir l'importance de ma fonctionnalité est-il un truc pour utiliser le featureImportances de RandomForestRegressionModel? Dois-je passer directement à un RandomForestRegressionModel et ne pas utiliser un PipelineModel? J'ai lu que l'utilisation d'un Pipeline pouvait donner de meilleurs résultats, c'est pourquoi je l'utilise. J'ai essayé d'utiliser un RegressionEvaluator mais je ne comprends pas ce que je veux. Ou devrais-je simplement penser simple et convertir mon DataFrame en RDD et utiliser le RegressionMetrics pour obtenir l'erreur moyenne quadratique. Pour résumer, j'ai juste besoin de savoir quelle est la meilleure méthode pour évaluer ma prévision.Évaluez ma prévision à l'aide d'un modèle de pipeline
val assembler = new VectorAssembler()
.setInputCols(Array("customers", "year", "month", "dayOfMonth", "dayOfWeek", "weekOfYear", "dayOfYear"))
.setOutputCol("features")
val limitDate = "2017-04-01"
val trainingData = DF_2.filter(DF_2("time").lt(lit(limitDate)))
//trainingData.printSchema()
val rf = new RandomForestRegressor()
.setNumTrees(60)
.setMaxDepth(25)
.setMaxBins(100)
.setLabelCol("amount")
.setFeaturesCol("features")
val pipeline = new Pipeline().setStages(Array(assembler, rf))
//Train the model
val model = pipeline.fit(trainingData)
//Make predictions
val predictions = model.transform(DF_2)