เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การค้นหาภาพยนตร์ที่มีรสนิยมคล้ายกัน

เช่นเดียวกับที่คำนวณความคล้ายคลึงระหว่างภาพยนตร์สองเรื่อง เราสามารถคำนวณข้ามผู้ใช้ทั้งหมดเพื่อค้นหาภาพยนตร์ที่คล้ายกันที่สุดกับเรื่องที่สนใจ โดยอ้างอิงจากคะแนนที่ผู้ใช้ให้ไว้

แนวทางนี้คล้ายกับที่ใช้ใน content-based filtering

จะคำนวณคะแนนความคล้ายคลึงระหว่างภาพยนตร์ทั้งหมด แล้วเจาะลึกไปที่ภาพยนตร์ที่ต้องการ โดยแยกและเรียงลำดับคอลัมน์ที่เก็บคะแนนความคล้ายคลึงของเรื่องนั้น

movie_ratings_centered ถูกโหลดไว้แล้ว โดยแต่ละแถวแทนภาพยนตร์หนึ่งเรื่อง และค่าคะแนน centered ถูกเก็บเป็น values

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การสร้าง Recommendation Engine ด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • คำนวณเมทริกซ์ความคล้ายคลึงระหว่างภาพยนตร์ทั้งหมดใน movie_ratings_centered และเก็บผลลัพธ์ไว้ใน similarities
  • นำเมทริกซ์ similarities มาสร้างเป็น DataFrame โดยใช้ index ของ movie_ratings_centered เป็นทั้ง columns และ rows

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

from sklearn.metrics.pairwise import cosine_similarity

# Generate the similarity matrix
similarities = ____(____)

# Wrap the similarities in a DataFrame
cosine_similarity_df = ____.____(____, index=____.____, columns=____.____)

# Find the similarity values for a specific movie
cosine_similarity_series = cosine_similarity_df.loc['Star Wars: Episode IV - A New Hope (1977)']

# Sort these values highest to lowest
ordered_similarities = cosine_similarity_series.sort_values(ascending=False)

print(ordered_similarities)
แก้ไขและรันโค้ด