CommencerCommencez gratuitement

Créer des jeux de test/entraînement et construire votre modèle ALS

Vous savez déjà construire un modèle ALS, après l’avoir fait dans le chapitre précédent. Nous allons recommencer, mais en ajoutant quelques étapes pour obtenir un modèle entièrement validé par validation croisée.

Commencez par importer les fonctions nécessaires et créez nos jeux de données d’entraînement et de test en prévision de l’étape de validation croisée.

Cet exercice fait partie du cours

<cours>Créer des moteurs de recommandation avec PySpark</cours>
Voir le cours

Instructions de l’exercice

  • Importez le RegressionEvaluator depuis ml.evaluation, l’algorithme ALS depuis ml.recommendation, ainsi que ParamGridBuilder et CrossValidator depuis ml.tuning.
  • Créez une partition entraînement/test de 0,80/0,20 sur les données ratings avec la méthode randomSplit. Nommez les jeux de données train et test, et définissez la graine aléatoire à 1234.
  • Construisez le modèle ALS en indiquant à Spark les noms des colonnes du dataframe ratings qui correspondent à userCol, itemCol et ratingCol. Réglez l’argument nonnegative à True, coldStartStrategy à "drop" et précisez qu’il ne s’agit pas de implicitPrefs en définissant l’argument implicitPrefs à False. Nommez ce modèle als.
  • Vérifiez que le modèle a bien été créé en appelant la fonction type() sur als. Le résultat doit indiquer de quel type de modèle il s’agit.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Import the required functions
from pyspark.ml.evaluation import ____
from pyspark.ml.recommendation import ____
from pyspark.ml.tuning import ____, ____

# Create test and train set
(train, test) = ratings.___([0.____, 0.____], seed = ____)

# Create ALS model
als = ALS(userCol="____", itemCol="____", ratingCol="____", nonnegative = ____, implicitPrefs = ____)

# Confirm that a model called "als" was created
type(____)
Modifier et exécuter le code