Meilleur modèle et paramètres du meilleur modèle
Maintenant que notre validateur croisé, cv, est prêt, nous pouvons demander à Spark de prendre nos données, d'y ajuster l'algorithme ALS et d'essayer différentes combinaisons de valeurs d'hyperparamètres provenant de notre param_grid afin d'identifier celles qui donnent la plus petite RMSE. Malheureusement, cela prend trop de temps à exécuter ici, mais pour référence, voici comment procéder :
# Ajuster le validateur croisé au jeu de données « train »
model = cv.fit(train)
# Extraire le meilleur modèle du modèle cv ci-dessus
best_model = model.bestModel
Ce code a été exécuté séparément, et le best_model a été identifié et sauvegardé pour vous. Utilisez les commandes fournies pour extraire les paramètres du modèle.
Cette activité fait partie du cours
Créer des moteurs de recommandation avec PySpark
Instructions de l’exercice
- Affichez
type(best_model)pour confirmer que le modèle ALS construit à partir de nos options d'hyperparamètres est bien complété. Une instruction d'affichage est nécessaire ici pour enchaîner avec les impressions suivantes. - Extrayez le
rankà partir debest_modelen appelant la méthode.getRank()surbest_model. - Extrayez le
maxIterà partir debest_modelen appelant la méthode.getMaxIter()surbest_model. - Extrayez le
regParamà partir debest_modelen appelant la méthode.getRegParam()surbest_model.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Print best_model
print(____)
# Complete the code below to extract the ALS model parameters
print("**Best Model**")
# Print "Rank"
print(" Rank:", best_model.get____())
# Print "MaxIter"
print(" MaxIter:", best_model.get____())
# Print "RegParam"
print(" RegParam:", best_model.get____())