CommencerCommencer gratuitement

Évaluation du modèle à l'aide de la MSE

Après avoir généré les évaluations prédites à partir des données de test en utilisant le modèle ALS, dans cette dernière partie de l'exercice, vous préparerez les données pour calculer l'erreur quadratique moyenne (MSE) du modèle. La MSE est la valeur moyenne de (original rating – predicted rating)**2 pour tous les utilisateurs et indique l'adéquation absolue du modèle aux données.

Pour ce faire, vous devez d'abord organiser les RDD ratings_final et predictions de manière à obtenir un tuple au format ((user, product), rating)). Dans les deux RDD, la correspondance est la suivante :

0: user
1: product
2: rating

Vous joindrez ensuite les RDD transformés et appliquerez enfin une fonction de différence quadratique avec mean() pour obtenir la MSE.

Rappelez-vous qu’un SparkContext sc est déjà disponible dans votre espace de travail. De plus, ratings_final et le RDD predictions sont déjà disponibles dans votre espace de travail.

Cet exercice fait partie du cours

Principes fondamentaux des mégadonnées avec PySpark

Afficher le cours

Instructions

  • Organiser le RDD ratings pour obtenir ((user, product), rating).
  • Organiser le RDD predictions pour obtenir ((user, product), rating).
  • Joindre le RDD predictions et le RDD ratings.
  • Évaluez le modèle à l'aide de la MSE entre l’évaluation originale et l’évaluation prédite et affichez ce résultat.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Prepare ratings data
rates = ratings_final.____(lambda r: ((r[0], r[1]), ____))

# Prepare predictions data
preds = predictions.____(lambda r: ((____, ____), ____))

# Join the ratings data with predictions data
rates_and_preds = rates.____(preds)

# Calculate and print MSE
MSE = rates_and_preds.____(lambda r: (r[1][0] - r[1]____)**2).mean()
print("Mean Squared Error of the model for the test data = {:.2f}".format(____))
Modifier et exécuter le code