人类行为时空特性的统计力学(一)——认识幂律分布

郑梓豪 · 10 个月前

从第一次看到  人类行为时空特性的统计力学 时接触Power-Law Distribution,距这次工作上真正要利用起来的时候,已快一年。这一次,我决定花一些时间,向大家介绍一下与此相关的一些东西。包括背景、概念,以及可能的价值。

*建议大家抽时间看看周涛老师的论文-以便对问题有更清晰的认识。此文不过是对该文的转述。

在开始之前,我们先看一些数据:

这个数据是某个问题下,前2名回答收到赞同票随时间的变化情况。在这里有一些感觉:首先,对单个回答来说,它的上升是很“突然”的,其中的原因,可能是大家常常说的“被某个大V点赞了”;其次,从图上看,似乎在同一时间段内,第一名和第二名获得的票数是有一些关系的。

*关于第二个特征,可以通过绘图看出,具体可以把两组数据分别对应到两个轴上;观察是否有线性的特点就可以了。不过,需要注意,就这些数据不足以说明更多我们之前讨论过的事情。

那么,我们换一个视角看另一组数据。对某个固定时间段内得到的投票数做一下histogram:

大部分情况下,回答在该时间段里收到赞同的数目是很少的;而一次性拿到很多赞的概率是很低的。同时,图也显示该分布有长尾的特征。长尾的意思是说,它的尾部比指数分布要厚;简单说来,就是:在指数分布的情况下,随着单位时间内事件发生次数的增多,其概率是指数下降的。而我们这次要介绍的幂律分布,其下降速度是一个幂函数,速度要慢得多。

其直观解释,引Wiki的一句话:

我们可以做一个直观的解释:假如一个长尾分布的尾部数量超过某个很高的水平,它超过另一个更高水平的机率会接近于一。也就是说,如果你发现状况很糟,它可能会比你想像的还要糟。

“从泊松到幂律”

泊松常用于描述单位时间内某事件发生的次数的统计规律,并用来作为对人类行为的建模。比如旅客进机场的时间间隔、中文维基百科新条目出现的时间间隔等等。

我们看泊松分布的性质:

  1. 无记忆性。即在不重复的时间周期内,事件发生的次数是互相独立的。就像我们常说的,灯泡的寿命问题。
  2. 对于充分小的时间窗,事件发生的次数与初始点的选取无关,与时间窗的长度成正比。
  3. 对充分小的时间窗,在这个窗口里发生多于1个事件的概率极小。

在上面这些假设下,我们可以用泊松过程去描述事件到达的情况。并且可以知道,相邻两个事件到达的时间间隔,具有指数形式:

这个式子表明,事件的时间间隔是指数型的,大时间间隔的事件几乎不可能发生。并且,考虑其标准差,我们可以知道这些序列是比较均匀的。

再看一下幂律分布,它的事件间隔是一个幂函数形式:

我们来生成一些随机序列,对比一下这二者的特征。第一组数据time_diff是 大二的学生想从事科学研究工作,但是感觉理论知识不够,同龄人都是怎么做到的?中的真实数据,我们生成了对应的poisson序列:

library(ggplot2)#non-poisson
time = cumsum(time_diff)
position = rep(1, length(time))
type = rep("non-poisson", length(time))
df = data.frame(time, position, type)#poisson
size = length(time_diff)
lambda = max(time) / size
time = cumsum(rpois(size, lambda))
position = rep(1.5, length(time))
type = rep("poisson", length(time))
df = rbind(df, data.frame(time, position, type))ggplot(df, aes(time, position)) + geom_point(aes(color=type))

*这数据这样生成好像有点不太对..><

可以见到二者的区别。泊松型的事件序列更均匀,而后者更分散(集中、长尾)

那么,哪种情况是更能真实反映一些现象的呢?文章写到这里,或许读者已经感觉到了一些东西:

  • 阵发与记忆
  • 周期和波动

也就是说,人类行为的特征是怎么样的?从而在外部表现为上图这样的特征呢?用幂函数刻画人类行为,(这里是某回答收到赞同)隐含了一个假设,即我们假设人类行为的时间间隔符合幂律分布。而这个假设并没有完全得到学界的认同[1]。

不过,我们仍可以用一些手段来研究事件间隔。这种手段不需先验地假设其分布。

1.阵发与记忆

我们看到,用泊松观点描述事件间隔时,事件发生得较均匀。而用幂函数描述时,“有 时候很多事件会在较短时间内密集发生,然后又会出现一个很长的空档期,把后面这种情况叫做阵发性”

因此,我们引入:

来刻画阵发性。其中sigma和m分别表示样本的标准差和均值。

  1. 当为泊松分布时,均值和标准差相等,B=0
  2. 当为很强的长尾分布时,标准差远远大于均值,此时B接近1
  3. 当标准差接近0,则B接近-1

除此之外,我们还可以描述事件序列中的 记忆性。设序列长度为n,则我们可以比较该序列前n-1和后n-1项的Pearson相关性即可:

其中的m1, m2和sigma1,sigma2是两个序列的均值和标准差。

随后,文章给出了一些生成的实例:

  • 泊松过程生成的事件序列,阵发性和记忆性都接近0

  • 一个指数为−1的幂函数律和一个高斯间隔时间分布产生的序列,记忆性均接近于0,阵发性分别为0.44和-0.81
  • 有文献分析了电子邮件发送、图书馆借阅、大学里打印任务提交记录、银行里的电话记录和手机 通讯记录5组数据,认为人类行为在发生时间上具有 “强阵发弱记忆”的特性

最后,我们来看一下知乎的数据:

对约1000个回答进行了统计,我们对每10分钟、20分钟至120分钟的阵发性和记忆性进行了计算。相比于文章中“弱记忆”的情况,一部分事件的“记忆性”要强得多。这里是否显示了对下一个时间周期的赞同数进行估计的可能性呢?另外,有必要研究一下outliers

2. 周期与波动

文章指出,个体行为间的差异性有时候非常大,纯粹观察其平均值不太能说明问题。即某种行为的发生,是有周期性和波动性的;比如出游,工作了的人可能是每年的固定时间,学生可能是说走就走。

作者指出,周期和波动分析中最重要的一个问题是:波动和周期是否为幂律时间间隔分布产生的根源?2006年,文献[3]从数学上证明了把一 群具有不同一阶矩(服从一个均匀分布)的泊松个体聚集在一起,可以在群体层面上产生幂律分布(具有指数截断)

虽然说这篇文章给出了证明,但并未充分说明,波动和周期就是幂律时间间隔的根源。同时,文章[4]提出了一种方法,

用个体相继两个行为之间,同一时区其他个体发出的行为总数来 度量时间间隔长度。如果某用户在其天早上11点20发了一条短信,下午2点51分又发了一条短信,以前 的时间间隔是绝对时间,也就是211 min;该方法是考虑除了这个用户之外的其他所有同一时区用户在 11点20分~14点51分之间发出的所有短信数目,把这个数目作为新的时间间隔的定义。
在这个定义下,群体活跃性很低的时段中的一个小时长度要远远短 于群体活跃性很高的时段中的一个小时。如果幂律仅仅源于周期和波动,可以证明在这种相对时间钟表系统中,幂函数律会消失,取而代之的是指数尾部[4]。事实上,真实系统中,看起来像幂函数形式的时间间隔分布依然存在,因此幂函数律的涌现不 能完全用周期和波动来解释。

最后讨论一些关于活跃性的问题。对于同一行为,活跃度差别很大的两个个体,他们有此行为的动机和相应观察到的行为特征可能是完全不同的。

例如一个很活跃的吸烟者(譬如每天抽两包烟以上),正常情况下很难想象他连续一天不抽烟;反过来,一天抽烟三四支的人,可能很长一段时间都没有抽烟。

文章指出,活跃性在个体间分布地异质性对于群体层面涌现出来的标度律地影响,应该仔细谨慎地加以考虑。如果按照活跃性地大小把群体分成若干组,那么不同组所得到的(观看电影)时间间隔分布的幂指数不同,而且随着活跃性单调变化:


通过对数据的观察,我们发现了这种非泊松性的特性。那么,是什么机制导致了这种非泊松特性的产生呢?

我们下期再讲XD

拓展阅读 & 参考文献

[1] 人类行为时空特性的统计力学

[2] 泊松分布与美国枪击案

[3] HIDALGOR C A. Conditions for the emergence of scaling in the inter-event time of uncorrelated and seasonal systems[J]. Physica A, 2006, 369(2): 877-883.

[4] ZHOU Tao, ZHAO Zhi-dan, YANG Zi-mo, et al. Relative clock verifies endogenous bursts of human dynamics[J]. Europhys Lett, 2012, 97(1): 18006.

人类行为时空特性的统计力学(一)——认识幂律分布相关推荐

  1. 数理统计10.15 | 幂律分布

    数理统计10.15 | 幂律分布 定义 示例 幂律与"长尾" 克莱伯定律(Kleiber's Law) Zipf定律:书籍中单词频率的分布 Pareto定律(帕累托定律) 性质 标 ...

  2. 【转载】关于幂律分布的一个笔记

    关于幂律分布的一个笔记 原文转自:http://blog.sina.com.cn/s/blog_55954cfb0100ps89.html 0:题外话或补记 最早知道二八法则,还是一本介绍犹太民族杰出 ...

  3. 关于幂律分布的一个笔记_哈克_新浪博客

    关于幂律分布的一个笔记_哈克_新浪博客 关于幂律分布的一个笔记     (2011-03-02 18:12:27)     转载▼     标签:     幂律     二八法则     杂谈     ...

  4. 第10章* 网络 幂律分布

    幂律是说节点具有的连线数和这样的节点数目乘积是一个定值,也就是几何平均(对各变量值的连乘积开项数次方根)是定值. 例:有10000个连线的大节点有10个,有1000个连线的中节点有100个,100个连 ...

  5. 幂律分布、泊松分布、指数分布、长尾分布的概念

    幂律分布(Power Law distruibition): Zipf定律与Pareto定律都是简单的幂函数,我们称之为幂律分布;还有其他形式的幂律分布,像名次- 规模分布.规模- 概率分布,这四种形 ...

  6. Python数据可视化:幂律分布

    1.公式推导  对幂律分布公式:    对公式两边同时取以10为底的对数:    令,且为常数,所以公式变为:  所以对于幂律公式,对X,Y取对数后,在坐标轴上为线性方程. 2.可视化  从图形上来说 ...

  7. 对数正态分布_正态分布与幂律分布

    1.正态分布 英国生物统计学家法兰西斯·高尔顿做了一个实验.他在一块木板上画了一块等腰三角形,并在三角形区域内钉上n+1层钉子.第1层钉2个钉子,第2层钉3个钉子,下面每一层都比上一层增加一个钉子,上 ...

  8. 从幂律分布到特征数据概率分布——12个常用概率分布

    在机器学习领域,概率分布对于数据的认识有着非常重要的作用.不管是有效数据还是噪声数据,如果知道了数据的分布,那么在数据建模过程中会得到很大的启示. 首先,如下图所示8个特征数据概率分布情况(已经做归一 ...

  9. Power law and Power law distribution(幂律和幂律分布)

    原文:<Power-law distribution in empirical data> 1. Introduction 有些分布可以很好的描述,比如成年男性的身高,某物体的重量等,它们 ...

最新文章

  1. 多线程-010-后台线程
  2. 皮一皮:现在上门流行这样了?
  3. 【Android 逆向】使用 Python 解析 ELF 文件 ( Capstone 反汇编 ELF 文件中的机器码数据 | 创建反汇编解析器实例对象 | 设置汇编解析器显示细节 )
  4. Service和Thread的关系
  5. 小议Linux staging tree
  6. 万里目联合网易云信 引领奢侈品电商新风潮
  7. 如何处理扎堆而至的工作任务?
  8. java简单毕设_计算机毕业设计之自定义毕设课题需要如何确定工作量
  9. [NOI2010]超级钢琴 主席树
  10. Crontab定时任务访问url实例
  11. python提速qq邮箱邮件_python3通过qq邮箱发送邮件
  12. Eclipse字符集环境配置
  13. python dict批量选择_用python实现word内容批量替换
  14. php制作入库单,教你如何利用vba制作自动登记数据的仓库入库单
  15. 7-10 抢楼层 (20分) ---注意歧义啊!
  16. .net core添加word水印
  17. Day3 4月29日
  18. 第八章 射频滤波器
  19. 点阵字库放大算法(中文和英文)
  20. linux内核中的睡眠函数*delay、*sleep

热门文章

  1. 通过PostMan或Python发送Firebase通知
  2. 51单片机——按键,定时器消抖,短按,长按,三行代码,状态机
  3. 2016已读书单--已更新
  4. 红米AC2100刷openwrt以及刷回官方固件全记录
  5. macOS多显示屏时将程序坞和启动台移动到另一个屏幕下
  6. 计算机组成对应到人体的部分,计算机组成原理复习 (期末重点考点总结)
  7. ERP软件厂商排名?ERP管理软件厂商怎么选?
  8. 巴萨欧冠25人大名单
  9. 曹国伟的二次创业,为什么如今成了互联网红灯区?
  10. 玩游戏也能借钱?这家公司推出游戏贷,催用户还钱被要求“叫爸爸”