ПочатиПочніть безкоштовно

Порівняння моделей item-based і user-based

Ви розглянули два підходи KNN. Перший — item-item KNN, де ви берете середнє з \(k\) найбільш подібних фільмів, які користувач уже оцінив, щоб запропонувати оцінку для фільму, який він ще не бачив. Інший підхід — user-user KNN, де ви берете середнє оцінок, які \(k\) найбільш подібних користувачів поставили цьому фільму, щоб спрогнозувати, яку оцінку цільовий користувач поставив би фільму.

Тепер порівняйте ці підходи та обчисліть, яку оцінку user_002 поставив би фільму Forrest Gump.

Для вас уже підготовлено початковий код моделі user_rating_predictor (яка прогнозує на основі того, які оцінки подібні користувачі поставили фільму) та movie_rating_predictor (яка прогнозує на основі того, які оцінки цей користувач ставив подібним фільмам).

KNeighborsRegressor уже імпортовано.

Ця вправа є частиною курсу

Створення систем рекомендацій у Python

Переглянути курс

Інструкції до вправи

  • Створіть модель K-nearest neighbors типу user-user з назвою user_knn.
  • Навчіть модель user_knn, а потім спрогнозуйте для target_user_x.
  • Аналогічно, навчіть модель K-nearest neighbors типу item-item з назвою movie_knn, а потім спрогнозуйте для target_movie_x.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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))
Редагувати та запускати код