LoslegenKostenlos loslegen

Item- und User-basierte Modelle vergleichen

Du hast dir jetzt zwei verschiedene KNN-Ansätze angeschaut. Der erste war Item-Item-KNN: Dabei nimmst du den Durchschnitt der \(k\) ähnlichsten Filme, die ein Nutzer bewertet hat, um eine Bewertung für einen Film vorzuschlagen, den er noch nicht gesehen hat. Der andere Ansatz war User-User-KNN: Dabei nutzt du den Durchschnitt der Bewertungen, die die \(k\) ähnlichsten Nutzer dem Film gegeben haben, um vorherzusagen, welche Bewertung der Zielnutzer dem Film geben würde.

Jetzt vergleichst du beide Ansätze und berechnest, welche Bewertung user_002 Forrest Gump geben würde.

Der Code für das Modell user_rating_predictor (sagt basierend auf den Bewertungen ähnlicher Nutzer die Bewertung voraus) und movie_rating_predictor (sagt basierend auf den Bewertungen dieses Nutzers für ähnliche Filme die Bewertung voraus) wurde bereits für dich vorbereitet.

KNeighborsRegressor wurde für dich importiert.

Diese Übung ist Teil des Kurses

Recommendation Engines mit Python entwickeln

Kurs anzeigen

Anleitung zur Übung

  • Erstelle ein User-User-K-Nearest-Neighbors-Modell namens user_knn.
  • Fitte das Modell user_knn und sage anschließend für target_user_x voraus.
  • Fitte analog ein Item-Item-K-Nearest-Neighbors-Modell namens movie_knn und sage anschließend für target_movie_x voraus.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Instantiate the user KNN model
user_knn = ____()

# Fit the model and predict the target user
user_knn.____(other_users_x, other_users_y)
user_user_pred = user_knn.____(target_user_x)
print("The user-user model predicts {}".format(user_user_pred))

# Instantiate the user KNN model
movie_knn = KNeighborsRegressor()

# Fit the model on the movie data and predict
movie_knn.____(other_movies_x, other_movies_y)
item_item_pred = movie_knn.____(target_movie_x)
print("The item-item model predicts {}".format(item_item_pred))
Code bearbeiten und ausführen