stonelee's notes

Table Of Contents

Previous topic

算法

This Page

排行榜

http://www.cnblogs.com/kym/archive/2012/05/11/2495297.html

推荐系统这个领域可以分为个性化推荐和非个性化推荐,那么排行榜一定是非个性化推荐中最重要的一部分了。

考虑因素

上榜时间、分数、收藏人数

上榜时间

刚刚出版的书关注人少,因此需要动态调整时间权重,使其逐渐衰减。可以使用半衰期算法:

m = M * (1/2) ^ (t/T)

M 为初始值,m为反应后的值,t为反应的时间,T为半衰期。 如图书半衰期为7天,即7天后重要度减少一半,T=7

其他因素

对于分数可以过滤3分以下的,然后归一化后采用相乘或指数的形式

收藏人数直接归一化后相乘

业务问题

排行榜会面临马太效应,强者越强,所以要考虑时间衰减问题

还有Anti-spammer的问题,参见 http://www.paulgraham.com/antispam.html

总结

通过函数曲线研究函数规律 http://www.wolframalpha.com/

如果可能,应尽量避免trial-and-error