微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

500px.com排名算法

我最近想知道 http://500px.com如何计算他们的“脉冲”等级.
“脉冲”是根据照片的受欢迎程度从1 … 100得分.

我认为它可能会使用以下某些标准:

>喜欢的人数
>“收藏”数量
>评论数量
>总观看次数
>也许是照片上传后的时间
>也许一些其他非显而易见的标准,如用户关注者数量,用户排名,相机模型或类似

我如何实现这样的算法?

关于如何使用此标准(可能还有一些代码)实现算法的任何建议也将受到赞赏.

解决方法

我不太了解该网站,但像这样的系统通常以相同的方式工作.标准化一组加权值以产生单个可比较值.

定义规则列表,根据重要性对它们进行加权,然后将它们一起运行以获得最终值.

在这种情况下,它会是这样的.

>总访问量= 10%
>总喜欢次数= 10%
> vists数量/喜欢的数量= 40%(受欢迎程度=喜欢它的访问者的百分比)
>过去30天内的喜欢次数= 20%(当前受欢迎程度)
>作者评级= 20%

现在我们需要规范化这些规则的值.根据您的数据,数字的比例等,这对于每个规则都是不同的,因此我们需要一个可行的值,比如1到100之间.

上述示例规范化:

> = 50,000个vists中的游客百分比(良好的数量)

(vists / 50000)* 100
> = 10,000个喜欢的喜欢的百分比(好喜欢的数量)

(喜欢/ 10000)* 100
> =喜欢它的游客的百分比

(喜欢/ vists)* 100
> = 1,000个喜欢的最近30天内的喜欢百分比(30天期间的喜欢数量)

(likeIn30days / 1000)* 100
> =作者的任意评级

确保所有这些都具有最大值100(如果它超过了它).然后我们需要根据它们的权重组合所有这些:

人气=(1 * 0.1)(2 * 0.1)(3 * 0.4)(4 * 0.2)(5 * 0.2)

这一切都是我的头脑和粗糙.显然还有更有效的方法,因为你不需要在每个阶段标准化到一个百分比,但我希望它可以帮助你获得要点.

更新

我没有真正的参考或额外阅读.我从来没有真正使用它作为一个更大的概念,只在小型实现中.

我认为你所阅读的大部分内容都是一般的方法论排名系统和理论.因为根据您的规则和数据格式,您的实现将是非常不同的.这看起来是一个巨大的概念,实际上它可能会涉及到10行代码,而不是计算聚合数据.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。