Surprise入门使用
官网:https://yiyibooks.cn/sorakunnn/surprisesurprise-v1.0.5/surprise-v1.0.5/index.html
1. 使用movielens数据集
from surprise import SVD, KNNWithMeans, Reader
import os
from surprise import Dataset
from surprise.model_selection import cross_validate
# 默认载入movielens数据集
# data = Dataset.load_builtin('ml-100k')
# 载入自己数据集的方法
# 把path中包含的"~"和"~user"转换成用户目录
filepah = os.path.expanduser('~/.surprise_data/ml-100k/ml-100k/u.data')
reader = Reader(line_format='user item rating timestamp', sep='\t')
data = Dataset.load_from_file(file_path=filepah, reader=reader)
# 试一把SVD矩阵分解
algo = SVD()
# 也可以试试别的算法
# algo = KNNWithMeans()
# 在数据集上测试一下效果并打印, 3折交叉验证
cross_validate(algo, data, measures=['RMSE', 'MAE'], cv=3, verbose=True)


本文介绍了Surprise库的入门使用,包括基于movielens数据集的实践和算法参数调优。通过协同过滤算法构建模型,并利用GridSearchCV进行超参数选择,以提升推荐系统的性能。此外,展示了如何在训练模型后,利用algo.get_neighbors()找到最相似的项目。
最低0.47元/天 解锁文章
735

被折叠的 条评论
为什么被折叠?



