Bắt đầu ngayBắt đầu miễn phí

Hàm gợi ý

Trong bài tập này, bạn sẽ xây dựng hàm gợi ý get_recommendations(), như đã thảo luận trong bài học và bài tập trước. Hàm này nhận vào một tiêu đề, một ma trận độ tương đồng cosine, và một ánh xạ giữa tiêu đề phim và chỉ mục làm tham số, rồi trả về danh sách 10 tiêu đề giống với tiêu đề ban đầu nhất (loại trừ chính tiêu đề đó).

Bạn được cung cấp bộ dữ liệu metadata gồm tiêu đề phim và phần tóm tắt. Phần đầu của bộ dữ liệu đã được in ra bảng điều khiển.

Bài tập này là một phần của khóa học

Khai thác đặc trưng cho NLP bằng Python

Xem khóa học

Hướng dẫn bài tập

  • Lấy chỉ mục của bộ phim khớp với tiêu đề thông qua khóa title của indices.
  • Trích xuất 10 phim tương tự nhất từ sim_scores và lưu lại vào sim_scores.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Generate mapping between titles and index
indices = pd.Series(metadata.index, index=metadata['title']).drop_duplicates()

def get_recommendations(title, cosine_sim, indices):
    # Get index of movie that matches title
    idx = ____[____]
    # Sort the movies based on the similarity scores
    sim_scores = list(enumerate(cosine_sim[idx]))
    sim_scores = sorted(sim_scores, key=lambda x: x[1], reverse=True)
    # Get the scores for 10 most similar movies
    sim_scores = sim_scores[____]
    # Get the movie indices
    movie_indices = [i[0] for i in sim_scores]
    # Return the top 10 most similar movies
    return metadata['title'].iloc[movie_indices]
Chỉnh sửa và Chạy Mã