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

Чи мають рекомендації сенс

Тепер, коли ми розуміємо, наскільки добре спрацювала наша модель і маємо певну впевненість, що вона надає корисні для користувачів рекомендації, подивімося на рекомендації для конкретного користувача й оцінимо, чи вони мають сенс.

Початкові оцінки надано у датафреймі original_ratings. Перегляньте початкові оцінки користувачів 60 та 63 і порівняйте їх із тим, що для них запропонував ALS. На вашу думку, чи узгоджуються ці рекомендації з їхніми початковими вподобаннями?

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

Створення рушіїв рекомендацій у PySpark

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

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

  • Використайте .filter() для датафрейму original_ratings, щоб col("userId") дорівнював 60, і перегляньте початкові оцінки користувача 60. Викличте метод .sort() для сортування за rating та встановіть аргумент ascending у False, щоб спочатку побачити найвищі оцінки.
  • Використайте методи .filter() і .show() для набору даних recommendations, щоб переглянути рекомендації для користувача 60. Зауважте: коли ALS генерує рекомендації, їх подано у спадаючому порядку за userId, тож датафрейм додатково сортувати не потрібно.
  • Зробіть те саме для користувача 63.
  • Чи узгоджуються жанри в рекомендаціях із початковими оцінками кожного користувача?

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

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

# Look at user 60's ratings
print("User 60's Ratings:")
original_ratings.filter(col("____") == 60).____("rating", ____ = False).show()

# Look at the movies recommended to user 60
print("User 60s Recommendations:")
____.____(col("userId") == ____).show()

# Look at user 63's ratings
print("User 63's Ratings:")
original_ratings.filter(col("____") == ____).____("rating", ____ = False).show()

# Look at the movies recommended to user 63
print("User 63's Recommendations:")
____.____(col("userId") == ____).show()
Редагувати та запускати код