推荐音乐艺人(第 II 部分)
假设您非常喜欢 Bruce Springsteen——那您还可能喜欢哪些音乐艺人?请使用上一练习中的 NMF 特征,以及余弦相似度来寻找相似的音乐艺人。上一练习的解答已运行,因此 norm_features 是一个数组,按行存放了归一化后的 NMF 特征。音乐艺人的名称以列表 artist_names 提供。
本练习是课程的一部分
Python 中的无监督学习
练习说明
- 导入
pandas,并命名为pd。 - 由
norm_features创建一个 DataFramedf,并使用artist_names作为索引。 - 使用
df的.loc[]访问器选取'Bruce Springsteen'对应的那一行。将结果赋值给artist。 - 对
df调用.dot()方法,并传入artist,计算每一行与artist的点积。将结果保存为similarities。 - 打印
similarities的.nlargest()方法结果,显示与'Bruce Springsteen'最相似的艺人。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Import pandas
____
# Create a DataFrame: df
df = ____
# Select row of 'Bruce Springsteen': artist
artist = df.loc[____]
# Compute cosine similarities: similarities
similarities = ____
# Display those with highest cosine similarity
____