Train/Test-Splits erstellen und dein ALS‑Modell bauen
Du weißt bereits, wie man ein ALS‑Modell baut – das hast du im vorherigen Kapitel gemacht. Wir wiederholen das, gehen aber ein paar Schritte weiter, um ein vollständig kreuzvalidiertes Modell zu erstellen.
Zuerst importieren wir die benötigten Funktionen und erzeugen unsere Train- und Test-Datensätze als Vorbereitung für die Kreuzvalidierung.
Diese Übung ist Teil des Kurses
<Kurs>Recommendation Engines mit PySpark erstellen</Kurs>Übungsanweisungen
- Importiere den
RegressionEvaluatorausml.evaluation, denALS‑Algorithmus ausml.recommendationsowieParamGridBuilderundCrossValidatorausml.tuning. - Erstelle mit der Methode
randomSpliteinen .80/.20‑Train/Test‑Split derratings‑Daten. Nenne die Datensätzetrainundtestund setze den Zufallssamen auf1234. - Baue das ALS‑Modell und gib Spark die Namen der Spalten im DataFrame
ratingsan, dieuserCol,itemColundratingColentsprechen. Setze das ArgumentnonnegativeaufTrue,coldStartStrategyauf"drop"und gib an, dass es sich nicht umimplicitPrefshandelt, indem duimplicitPrefsaufFalsesetzt. Nenne dieses Modellals. - Prüfe, ob das Modell erstellt wurde, indem du
type()aufalsaufrufst. Die Ausgabe sollte angeben, um welchen Modelltyp es sich handelt.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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(____)