Modelltraining und Vorhersagen
Nachdem du die Daten in Trainings- und Testdaten aufgeteilt hast, trainierst du im zweiten Teil der Übung den ALS-Algorithmus anhand der Trainingsdaten. Der ALS-Algorithmus von PySpark MLlib hat folgende obligatorische Parameter: rank (Anzahl der latenten Faktoren im Modell) und iterations (Anzahl der auszuführenden Iterationen). Nachdem du das ALS-Modell trainiert hast, kannst du es verwenden, um die Bewertungen in den Testdaten vorherzusagen. Hierfür gibst du die Benutzer- und Produktspalten aus dem Testdatensatz an und gibst schließlich die Liste der zwei ersten Zeilen der predictAll()-Ausgabe zurück.
Zur Erinnerung: Der SparkContext sc sowie training_data und test_data sind bereits im Arbeitsbereich verfügbar.
Diese Übung ist Teil des Kurses
Grundlagen von Big Data mit PySpark
Anleitung zur Übung
- Trainiere den ALS-Algorithmus mit Trainingsdaten und konfigurierten Parametern (
rank=10 unditerations=10). - Entferne die Spalte
ratingaus den Testdaten. (Es ist die dritte Spalte.) - Teste das Modell, indem du die Bewertungen in den Testdaten vorhersagst.
- Gib eine Liste mit zwei Zeilen der vorhergesagten Bewertungen zurück.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Create the ALS model on the training data
model = ALS.____(____, rank=10, iterations=10)
# Drop the ratings column
testdata_no_rating = test_data.___(lambda p: (p[0], ____))
# Predict the model
predictions = model.____(testdata_no_rating)
# Return the first 2 rows of the RDD
predictions.____(2)