1
tini8 2014-12-10 21:13:41 +08:00
这是所有社交网络未解的难题
|
2
gkuchan 2014-12-10 21:16:09 +08:00 1
|
3
mringg 2014-12-10 21:19:35 +08:00 via Android
第二种相对来说是最合理的,别的方法确实都没它好。
|
4
tini8 2014-12-10 21:26:25 +08:00
v2ex是在第二种的基础上加上了每个用户的权重因素,权重高的往上提一下,权重低的往下沉一下,关键是权重的算法
|
5
yaoye0o 2014-12-10 21:32:54 +08:00 via Android
为什么说第二种和贴吧重合了?
|
6
jason52 2014-12-10 21:59:55 +08:00
阮一峰同学写过六篇文章讲解权重排名的,不同网站有不同实现方式的,hn, reddit, stackoverflow, quora....
|
7
staticor 2014-12-10 22:35:18 +08:00
x1: 原貼发布时间
x2: 回复数 x3: 回复参与人数 (x2去重) x4: 最新回复时间, x5: x4- x1 回复时间间隔 --> 本貼受关注时间 x6: 现在时间, x7 : x6- x1, x8: x4 - x1 --> 本貼生存时间与沉寂时间 用x1 - x8 对貼本身进行评分, 评分函数的类型和权重可自己先试着定, 关于质量加权, 对人本身: 再取w1: po主评分: 比如 = f(注册时间, 发帖数, 回复数, ...) 以及所有回复中的(或者最近的N个回复人, 或者回复人中评分最高的Top - k, )给出对所有回复者的评分 关于内容加权: 不考虑复杂NLP的情况下, 不如只考虑节点\标签的权重, 比如 Python > 程序员> 美女. 只是头脑风暴, 希望有所帮助. |
8
xuwenmang 2014-12-10 22:50:18 +08:00
看你网站到什么程度了。
很多人参与的,他们只想看到最新的。 论坛:最新>推荐>最热。。 很多人浏览的,他们想看到真正有价值的。 博客:推荐>最新>最热。 很多很多很多参与的,他们只想看到最新的最火的。 微博:最热>最新>推荐 很多很多很多内容,很多很多很多用户。他们只想看到自己关注的。 社交平台:关注>最新>最火。 |
9
JamesRuan 2014-12-11 00:11:03 +08:00 1
一个我正在设计中的论坛暂时这样算分:
posts_count:总回复数,最小为1 viewers_count:总点击数,最小为1 post_to_view_ratio:posts_count/viewers_count popularity_score:(posts_count + log(viewers_count))* post_to_view_ratio/log(age),更多的回复和更对的点击率可以得到更高的分数,而更长的时间得到的分数更低。 |
10
JamesRuan 2014-12-11 00:14:28 +08:00
算法的几个假设:
1时间越长的帖子获得的点击和回复率越高 2回复率高的帖子更加优秀,点击率次之 |
11
Mac 2014-12-11 00:35:57 +08:00
在2的基础上,加上超过一定数量的回复停止上升,回帖时多加个判断即可。
|
12
Mac 2014-12-11 00:37:04 +08:00
另外,千万别做什么回复可见的功能,这个功能我觉得是中文网络最无聊的设定。
|
14
userlogin 2014-12-11 08:49:44 +08:00
|
16
4everLoveU 2014-12-11 11:34:49 +08:00
一直以为按照时间就可以了,看了楼上的回复表示我好弱小。
|