0
0
ML Pythonml~10 mins

User-based vs item-based in ML Python - Interactive Practice

Choose your learning style9 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to calculate user similarity using cosine similarity.

ML Python
from sklearn.metrics.pairwise import [1]
user_similarity = [1](user_item_matrix)
Drag options to blanks, or click blank then click option'
Apairwise_distances
Bcosine_similarity
Cmanhattan_distances
Deuclidean_distances
Attempts:
3 left
💡 Hint
Common Mistakes
Using distance metrics instead of similarity metrics.
Confusing cosine similarity with Euclidean distance.
2fill in blank
medium

Complete the code to find the top 3 similar items for a given item index.

ML Python
import numpy as np
item_similarities = item_similarity_matrix[item_index]
top_items = np.argsort(item_similarities)[[1]][:3]
Drag options to blanks, or click blank then click option'
A-3:
B:3
C::-1
D3:
Attempts:
3 left
💡 Hint
Common Mistakes
Not reversing the sorted indices, resulting in least similar items.
Using incorrect slicing that excludes top items.
3fill in blank
hard

Fix the error in the code to compute predicted rating using user-based collaborative filtering.

ML Python
predicted_rating = sum(user_similarity[user_id, [1]] * ratings[[1], item_id]) / sum(abs(user_similarity[user_id, [1]]))
Drag options to blanks, or click blank then click option'
Aneighbor_id
Buser_id
Citem_id
Drating_id
Attempts:
3 left
💡 Hint
Common Mistakes
Using user_id instead of neighbor_id causing self-similarity errors.
Using item_id which is unrelated to user similarity indexing.
4fill in blank
hard

Fill both blanks to create an item-based collaborative filtering prediction formula.

ML Python
predicted_rating = sum(item_similarity[item_id, [1]] * ratings[user_id, [1]]) / sum(abs(item_similarity[item_id, [2]]))
Drag options to blanks, or click blank then click option'
Aneighbor_item
Buser_id
Ditem_id
Attempts:
3 left
💡 Hint
Common Mistakes
Mixing user_id and item_id in similarity indexing.
Using inconsistent variable names for neighbor items.
5fill in blank
hard

Fill all three blanks to complete the code that builds a user-item rating matrix from raw data.

ML Python
import pandas as pd
ratings_df = pd.DataFrame(data, columns=[[1], [2], [3]])
rating_matrix = ratings_df.pivot(index=[1], columns=[2], values='rating').fillna(0)
Drag options to blanks, or click blank then click option'
A'user_id'
B'item_id'
C'rating'
D'timestamp'
Attempts:
3 left
💡 Hint
Common Mistakes
Using timestamp instead of rating for values.
Swapping user_id and item_id in pivot parameters.