LoslegenKostenlos starten

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>
Kurs ansehen

Übungsanweisungen

  • Importiere den RegressionEvaluator aus ml.evaluation, den ALS‑Algorithmus aus ml.recommendation sowie ParamGridBuilder und CrossValidator aus ml.tuning.
  • Erstelle mit der Methode randomSplit einen .80/.20‑Train/Test‑Split der ratings‑Daten. Nenne die Datensätze train und test und setze den Zufallssamen auf 1234.
  • Baue das ALS‑Modell und gib Spark die Namen der Spalten im DataFrame ratings an, die userCol, itemCol und ratingCol entsprechen. Setze das Argument nonnegative auf True, coldStartStrategy auf "drop" und gib an, dass es sich nicht um implicitPrefs handelt, indem du implicitPrefs auf False setzt. Nenne dieses Modell als.
  • Prüfe, ob das Modell erstellt wurde, indem du type() auf als aufrufst. 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(____)
Code bearbeiten und ausführen