计算内容热度的算法解释

栏目: 编程工具 · 发布时间: 6年前

内容简介:什么样的一个内容是热门的呢?这其实是一个相对的概念,面对不同的需求,它的表达是不同的。其中:可以看到热度 在这样的公式中有 4 个变量即 ,此公式与 Hacker News、Reddit 相同,只是定义内容质量 时用的逻辑不一样。

什么样的一个内容是热门的呢?这其实是一个相对的概念,面对不同的需求,它的表达是不同的。

其中:

  • :内容质量的数值表达,例如一篇文章质量可以定义成文章的点赞数,也可以根据产品需要定义为其他
  • :新内容的初始质量,具体含义后续解释中会理解
  • :重力 Gravity,或者说是一个内容变得不再热门的速度,重力越大,一个内容刷新的就越快
  • :时间

可以看到热度 在这样的公式中有 4 个变量即 ,此公式与 Hacker News、Reddit 相同,只是定义内容质量 时用的逻辑不一样。

1)热度 与时间 的关系

首先,我们看一个比较简单的关系,就是热度与时间的关系:

  • :100
  • :10
  • :1.5
  • :时间
计算内容热度的算法解释

很清楚,时间越大,热度越低。

2)热度 与初始质量 、时间 的关系

  • :0
  • :[2, 4, 6]
  • :1.5
  • :时间
计算内容热度的算法解释

我们能够看到,对于不同的初始质量 ,内容的初始热度是不同的,在后续的时间衰减中,如果其他数值不变,那么初始质量越高则内容热度越大。

3)热度 与初始质量 、重力 、时间 的关系

  • :0
  • :[2, 4, 6]
  • :[1.5, 1.2, 1.8]
  • :时间
计算内容热度的算法解释

面对不同的重力,即使初始质量高,重力大时其热度衰减很快。

4)热度 与质量 、初始质量 、重力 、时间 的关系

  • :[90, 190, 90]
  • :10
  • :[1.5, 1.5, 1.8]
  • :时间
计算内容热度的算法解释

我们看到三个交点:

  • : , 与 的交点

解释:一个内容质量 90 的内容,在 交点,即约 3.64 单位时间之后其热度低于一个全新的初始热度为 10 的内容。

  • : , 与 的交点
  • : , 与 的交点

解释:一个内容质量 190 的内容,在 6.36 单位时间之后,其热度低于任意新内容。而一个内容质量为 90 的内容,如果重力为 1.8,那么仅在 2.59 单位时间后其热度低于任意新内容。

我们可以看到如下结论:

  1. 初始质量 越高,老内容的热度更快的被最新生产的内容超越
  2. 一个内容的质量 越高,此内容热度高于新内容的时间越长
  3. 重力 越高,内容热度衰减越快,老内容的热度更快被新生产的内容超越

因此,在确定的初始质量 及重力 下,一个内容可以获得的 决定了其热度及被新内容超越的时间。

5)质量数值 与时间 线性正相关的假设

假设一个内容质量的数值表达与时间正相关,例如我们用一个文章的点赞量表达其质量,那么在一个限定的时间里,其时间越长,点赞量越高:

而 代表了一个新内容获得质量 的速度,也就是一个新内容获得点赞的速度,那么

  • :10
  • :1.5
  • :时间

其中我们测试了三个 分别是:20、25、30

计算内容热度的算法解释

我们看到三个交点:

  • : 与 的交点
  • : 与 的交点
  • : 与 的交点

解释: 越大,说明单位时间里一个内容可以获得的质量越高,也就是说明这个内容本身更受欢迎。对于交点 来讲,此内容在 1.62 个单位时间后,即使保持着 增长质量的速度,依然会被一个新内容的热度超越。而从 交点可以看到,如果其 增长速度为 ,那么在 6.46 个单位时间后才会被新内容的热度超越。

6)质量数值 与时间 对数正相关的假设

当然上面的假设有一个问题是,一个文章的质量表达很难和时间长期正相关,也就是说,文章存在时间越长,往往后续获得的点赞会降低。因此,我们可以假设 与 是对数相关的关系:

  • :获得点赞的速度
  • :随着时间迁移,获得点赞速度开始衰减的系数
计算内容热度的算法解释

我们看到三个交点:

  • : 与 的交点
  • : 与 的交点
  • : 与 的交点

解释:对比 与 我们可以看到,因为质量数值的增长随着时间变少,因而 内容更快地被新内容超越。

内容热度在掘金里的使用

  • :即一个内容的热度 rankIndexArticle
  • :即一个内容的 hotIndexArticle 是一个文章阅读数、评论数、点赞数加权求和的数值
  • :即一个内容初始的数值 rankIndexUser 是文章作者的影响因子
    • 影响因子与作者本身的历史掘力值相关
  • :一个衰减的重力参数
  • :文章自发布以来的时长

作为掘金社区,我们希望将更多好内容带给读者,从数值上,我们希望总和的 变高,同时平衡其与 之间的关系,即新内容获得的流量,与一个好内容获得流量之间交点的时间长度。

  • :一篇文章本身的质量表达,多快获得点赞、获得阅读,即点击率、点赞率
  • :点赞率、点击率随着文章存在时间是否会衰减,衰减得多块

说人话:一个获得了 1000 个点赞、10000 个阅读、100 个评论的内容,在计算规则下什么情况会被一篇新文章的热度超越。而整个社区的热度计算,是一个动态优化的问题。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Game Engine Architecture, Second Edition

Game Engine Architecture, Second Edition

Jason Gregory / A K Peters/CRC Press / 2014-8-15 / USD 69.95

A 2010 CHOICE outstanding academic title, this updated book covers the theory and practice of game engine software development. It explains practical concepts and techniques used by real game studios,......一起来看看 《Game Engine Architecture, Second Edition》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具