阅读Modeling and Predicting the Growth and Death of Membership-based Websites一文
2016-01-18 18:08:21  网站 增长曲线 反应扩散方程 

这两天又读到了一篇非常好的文章,Modeling and Predicting the Growth and Death of Membership-based Websites,作者是卡耐基梅隆大学计算机学院的:Bruno Ribeiro 

下载地址:http://arxiv.org/pdf/1307.1354.pdf

引用:Bruno Ribeiro:Modeling and Predicting the Growth and Death of Membership-based Websites,  WWW '14 Proceedings of the 23rd international conference on World wide web Pages 653-664 ,2014

看点:

1、作者提出了一个描述网站活跃用户增长的反应、扩散、衰减模型,这个模型只有4个参数,却能拟合很多网站的发展数据

2、用模型拟合了21个网站6年的月活跃用户数据,这些网站既有诸如facebook这样知名的、增长势头非常好的网站,同时也有一些衰败的小网站,而且这些网络战的类型异常丰富

3、对网站未来的发展情况作出了准确的预测

4、通过拟合得到的参数可以给所有的网站做分类,至少可以分成可以持续发展的和不可以持续发展的这两种,这为网站的估值提供了重要的依据。

内容:

模型:

这是一个简单的模型,用于模拟用户上某一个固定网站的过程。假设所有可能上一个网站(比如Facebook)的用户总数是一个固定的常数C。那么这些人中可以分为三类:1、活跃用户,他们天天在Facebook上发帖;2、不活跃用户,这些人虽然在网站上注册了,但是却并不活跃;3、未注册的人,它们从来没到Facebook注册过。

然后,模型假设这个网站的日活跃用户的多少主要取决于这些用户之间的互动。比如,活跃用户可能带动着不活跃用户一起玩,再次活跃起来;又可能活跃用户时间长了之后自己变成了不活跃用户,等等。总而言之,作者将这些用户之间的互动分成了一下几类化学反应:

1、将不活跃用户激活

A+I-->2A

这里,A表示一个不活跃用户,I表示一个活跃用户。那么上面的化学反应就是说一个活跃用户如果与另一个不活跃用户互动,就可能将不活跃用户激活,所以最后出现了两个活跃用户。当然,这并不是说只要一个活跃用户与一个不活跃用户相遇就一定能把它激活,所以我们要用一个参数alpha来描述这一化学反应发生的概率,alpha越大,则它越可能发生;

2、活跃变成不活跃

A-->I

发生概率是beta,即一个活跃用户有可能自己就变不活跃了

3、激活一个未注册用户

A+U-->2A

活跃用户不仅仅能自己玩,而且玩high之后就可以带动着一些未注册用户加入其中,反应概率是gamma

4、扩散:

U-->A

未注册用户良心发现,自己上这个网站玩了。反应概率是lambda

好了,有了这四个化学反应,模型就可以转起来了。可以考虑有一个大容器,这三种粒子(A,I,U)相互碰撞,转化来转化去的。研究化学的人早就知道这样的东西可以写出rate equation,即用微分方程来描述系统的动力学过程。

我们设A(t)是t时刻的活跃用户数,那么它的变化可以写为:

dA/dt=alpha A I /C - beta A + gamma A U /C + lambda U

右边这四项分别对应了四个方程。第一个方程可以增加一单位A,但是它的化学反应取决于A和I相对于C的浓度,所以是AI/C,以及反应快慢alpha。后面的三项依次类推。类似地,我们也可以写出制约I(t)的方程。于是经整理我们可以得到:

注意到A+U+I=C,所以式子中没有出现U。

求解

下面就是要解这个方程。作者考虑了两种近似的情况。一种情况是,假设模型运行了很长时间了,这样可以想象,容器中的所有U都没有了,都成了A或者I。所以这个时候就可以对它进行简化,得到如下方程和求解:

我们看到,最后就会出现两种情况,一种是A(t)为0,这说明这个网站死掉了;另一种是A(t)=C(1-beta/alpha),说明网站没死,维持到了一个持续水平。这两种情况的出现取决于参数 \beta 和alpha的大小。回忆一下,alpha刻画的是A+I->A的快慢,而beta刻画的是A->I的快慢。也就是说如果活跃成员增加的比减少的快,则网站就有可能保持不死,这就是为为什么很多大网站都要保持活跃成员的原因。这个解的图如下:

另外,作者也讨论了网站在一运行的初始情况,这又可以根据参数gamma和lambda分成两种情况。一种是gamma远远大于lambda,表示的是活跃用户带未注册用户的速度很快。也就是网站靠口耳相传,网络传播来增长。另一种情况则是lambda远远大于gamma,表示的是未注册用户自己变成活跃用户的速度很快,这可能要归功于网络公司投放广告的宣传工作。在这两种情况下,增长曲线为:

我们看到当以广告为主的增长是一种凹的曲线,而如果靠社交网络口碑,则出现凸的增长。
 
拟合和预测
 
接下来,作者就用这个方程去拟合各种各样的网站数据了,结果非常漂亮:
除了a、b两张图以外,其他都是模型拟合、预测实际的网站生长曲线情况。横坐标为时间,纵坐标为活跃用户数(归一化了)。其中蓝色的线为模形拟合的结果,蓝色的点为实际数据作为训练的部分,红色的线为模型预测的部分,灰色的点为实际的网站数据。之所以会有多条模型曲线,我们后面会解释。以上这些网站都是已经进入了衰退起的网站,所有都开始下滑。
另外,数据集里面还有一些处于上升期的曲线,模型也同样可以拟合得很好:
 
这两种类别的划分是根据拟合参数和聚类算法得出的。
这个研究的拟合方法采用的是Levenberg-Marquardt algorithm  算法。算法需要在早期指定一组参数值作为算法迭代的初始条件。结果对这个初始条件非常敏感,所以图中的多条曲线应该都是根据不同的迭代初始条件计算出来的结果。关于这些初始值的取法比较麻烦,请参看原文。
 
另外作者海根据拟合出来的参数进行了聚类,得到了有意思的相图:
这是根据模型的可持续情况(alpha,beta)来分类的。落在蓝色三角形区域的网站就被认为要死掉的,很危险,因此可以用这个模型来对网站未来的发展情况进行估值。
 
接下来的相图是根据生长情况来分类的
即根据lambda和gamma的数值来分的类。我们能看到哪些网站对于市场影响投入的多,哪些公司主要是靠口碑生长的。
 
登录后才可以评论,马上登录
2012-2022 www.swarma.org, all rights reserved