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
rating
aus 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 zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# 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)