码迷,mamicode.com
首页 > 其他好文 > 详细

集体智慧编程——推荐系统(2)

时间:2015-12-01 22:40:30      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:

步骤三:为评论者打分

   既然我们已经有了对两个人进行比较的函数,下面就可以编写程序,根据指定人员对每个人进行打分,并找出最接近的匹配结果了。在本例中,我们对找寻对与自己相似评委的影评者感兴趣,这样我们就知道在选择影片时应该采纳谁的建议了。

def topMatches(prefs,person,n=5,similarity=sim_pearson):
    scores=[(similarity(prefs,person,other),other) for other in prefs if other!=person]

    scores.sort()
    scores.reverse()
    return scores[0:n]

该函数利用了列表推导式,将自身和字典中的其

>>>reload(recommendations)
>>> recommendations.topMatches(recommendations.critics,‘Toby‘,n=3)
[(0.9912407071619299, ‘Lisa Rose‘), (0.9244734516419049, ‘Mick LaSalle‘), (0.8934051474415647, ‘Claudia Puig‘)]

 

他每一个用户进行了比较。返回排序结果的前N项。

集体智慧编程——推荐系统(2)

标签:

原文地址:http://www.cnblogs.com/itdyb/p/5011445.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!