Kom igångKom igång gratis

Är rekommendationerna rimliga

Nu när vi har en uppfattning om hur väl modellen presterar och är rimligt säkra på att den ger relevanta rekommendationer, är det dags att faktiskt titta på rekommendationerna för en enskild användare och bedöma om de verkar vettiga.

Den ursprungliga betygsdata finns tillgänglig som original_ratings. Titta på de ursprungliga betygen för användare 60 och användare 63, och jämför dem med vad ALS rekommenderade för dem. Tycker du att rekommendationerna stämmer överens med deras ursprungliga preferenser?

Den här övningen är en del av kursen

Bygg rekommendationsmotorer med PySpark

Visa kurs

Övningsinstruktioner

  • Använd .filter() på dataramen original_ratings för att filtrera fram de rader där col("userId") är lika med 60, och se användarens ursprungliga betyg. Anropa .sort() och sortera utdata efter rating med argumentet ascending satt till False, så att de högsta betygen visas först.
  • Använd metoderna .filter() och .show() på datamängden recommendations för att se rekommendationerna för användare 60. Observera att ALS genererar rekommendationerna i fallande ordning efter userId, så det behövs ingen ytterligare sortering av dataramen.
  • Gör samma sak för användare 63.
  • Har de rekommenderade genrerna något samband med varje användares ursprungliga betyg?

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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()
Redigera och kör kod