V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
nikoo
V2EX  ›  问与答

产品问题请教:如何避免热门文章榜的文章被推荐而成为“固定热门”?

  •  
  •   nikoo · 2017-03-18 18:09:39 +08:00 · 1125 次点击
    这是一个创建于 2812 天前的主题,其中的信息可能已经有所发展或是发生改变。
    例如 V2EX 右侧的 “今日热议主题” 是按每日回复数量来决定的,那么假设按照点击量来决定,如果我在每天 0 点重置这个榜单,那么可以想见是 0 点后第一个的点击会成为排行榜第一名,因为由于很多用户习惯从热门榜点击产看文章,所以会导致该文章因为上了热门榜点击数增多导致其被固定在了热门榜上。。。

    如何解决这个问题呢?请教一个思路,谢谢!
    6 条回复    2017-03-19 01:19:47 +08:00
    Bardon
        1
    Bardon  
       2017-03-18 18:49:48 +08:00
    按时间区间来,不要按点
    alex321
        2
    alex321  
       2017-03-18 18:57:33 +08:00 via Android
    最简单的是时间区段的点击量。
    nikoo
        3
    nikoo  
    OP
       2017-03-18 19:00:43 +08:00
    @Bardon @alex321 谢谢,这的确是解决了问题之一,但重要的标题里的问题仍然是存在的:
    例如我将过去 12 个小时的点击量最多的文章做排行,仍然会出现热门榜的文章因为上榜而点击数增多啊。
    Bardon
        4
    Bardon  
       2017-03-18 19:14:05 +08:00
    或许,你应该加入权重设计
    先加文章发表时间先后的权重,其次用户点击权重也按照文章时间先后做一个线性递减,可以适当避免过去某一文章长时间霸占榜单
    vincentqi
        5
    vincentqi  
       2017-03-18 20:00:05 +08:00
    去搜一下 reddit 的排名算法,会随着时间衰减的
    lecher
        6
    lecher  
       2017-03-19 01:19:47 +08:00
    如果仅仅是按照点击率排序,不引入时间段的权重,这个不太容易解决。

    我觉得基于目前只计算点击率的方案,不做大改动的情况下, 0 点重置榜单之后,可以考虑默认榜单取过去 12 个小时内新建的文章作为初始种子数据,按点击量排。这样可以在一定程度上面减少老文章的马太效应。

    如果榜单不一定要填满,也可以考虑在 0 点重置榜单之后留空榜单,设置一个进入热门榜单的点击量门槛,比如重置后只有 1000 个点击以上才能进入热门榜单。这样可以解决初始化榜单的问题,只有在正常浏览中点击量达到真正热门标准的才会上榜。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3297 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 12:33 · PVG 20:33 · LAX 04:33 · JFK 07:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.