ComeçarComece de graça

Comparando modelos baseados em itens e em usuários

Você viu duas abordagens diferentes de KNN. A primeira foi item-item KNN, em que você usa a média dos \(k\) filmes mais semelhantes que um usuário avaliou para sugerir uma nota para um filme que ele ainda não assistiu. A outra foi user-user KNN, em que você usa a média das notas que os \(k\) usuários mais semelhantes deram ao filme para sugerir qual nota o usuário-alvo daria ao filme.

Agora, você vai comparar as duas e calcular que nota user_002 daria para Forrest Gump.

O código para o modelo user_rating_predictor (que prevê com base no que usuários semelhantes deram ao filme) e para o movie_rating_predictor (que prevê com base nas notas que esse usuário deu a filmes semelhantes) já foi iniciado para você.

KNeighborsRegressor já foi importado para você.

Este exercício faz parte do curso

Construindo mecanismos de recomendação em Python

Ver curso

Instruções do exercício

  • Crie um modelo K-nearest neighbors user-user chamado user_knn.
  • Ajuste (fit) o modelo user_knn e depois faça previsões em target_user_x.
  • Da mesma forma, ajuste um modelo K-nearest neighbors item-item chamado movie_knn e depois faça previsões em target_movie_x.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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))
Editar e executar o código