图书推荐系统的推荐算法测试

测试目的
1.我们想要确认现在使用的推荐算法到底效果如何,能否达到用户的期望
2.由于推荐系统中广泛使用的有三种主要的距离计算方法,分别是pearson相似度,欧氏距离和角距离,这三种算法在推荐系统中都具有良好的使用性,为了测试哪种距离计算方法是最适合这个图书推荐系统的,我们进行一次测试
测试方法
这次测试的基本思想如下:
我们的推荐系统以及可以通过协同过滤算法推测某个用户对一本未读过书的评分。现在我们将采用交叉测试的方法。具体的做法就是,我们将某些已知的评分值去掉,然后对他们进行预测,最后计算预测值和真实值之间的差异。

用于推荐引擎的指标是最小均方根误差(RMSE),我们先计算均方误差的平均值然后取其平方根,如果评级在1星到5星范围内,而我们的RMSE结果为1星的话,代表我们的预测值与用户给出的真实评价相差1颗星。

测试过程
首先获得图书评分矩阵:
def getDataFrameAndBookId():     #获得图书评分矩阵
    db=pymysql.connect("localhost","root","","douban")
    cursor=db.cursor()
    sql="select bookid,userid,score from comment limit 10000"
    cursor.execute(sql)
    record=cursor.fetchall()
    data=DataFrame()
    for item in record:
       data.loc[item[1],item[0]]=item[2]
    _&
  • 3
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值