Guide pratique pour accélérer la validation croisée

Le paramétrage hyperparamètre des modèles Apache SparkML prend beaucoup de temps, en fonction de la taille de la grille de paramètres. Vous pouvez améliorer les performances de l’étape de validation croisée dans SparkML pour accélérer les choses :

  • Mettez en cache les données avant d’exécuter des transformations de fonctionnalités ou des étapes de modélisation, y compris la validation croisée. Les processus qui font référence aux données plusieurs fois bénéficient d’un cache. N’oubliez pas d’appeler une action sur DataFrame pour que le cache prenne effet.
  • Augmentez le paramètre parallelism dans le CrossValidator , qui définit le nombre de threads à utiliser lors de l’exécution d’algorithmes parallèles. La valeur par défaut est 1. Pour plus d’informations, consultez la documentation de CrossValidator .
  • N’utilisez pas le pipeline comme estimateur à l’intérieur de la CrossValidator spécification. Dans certains cas où les featurizers sont réglés avec le modèle, l’exécution de l’ensemble du pipeline dans le CrossValidator sens est justifiée. Toutefois, cela exécute le pipeline entier pour chaque combinaison de paramètres et chaque pliure. Par conséquent, si seul le modèle est paramétré, définissez la spécification du modèle comme estimateur à l’intérieur de CrossValidator .

Notes

CrossValidator peut être défini comme dernière étape dans le pipeline après featurizers. Le meilleur modèle identifié par CrossValidator est output.