|
发表于 2020-6-2 19:54:57
|
显示全部楼层
本福特定律,说明一堆从实际生活得出的数据中,以1为首位数字的数的出现机率约为总数的三成,接近期望值1/9的3倍。推广来说,越大的数,以它为首几位的数出现的几率就越低。它可用于检查各种数据是否有造假。具体说来,1到9打头的几率分别为
本回答主要分成了两部分,第一部分是解释说明本福特定律背后的数学原理,看懂这个之后你就会明白这个定律并非多么的神秘,其适用范围也是很有限的。
第二部分是撕逼部分,某营销号在这个问题下科普本福特定律,但是内容错的离谱,因此我就写了一个回答来反驳他。然后发现很多人对此定律不了解,导致没法判断他说的话的真伪,因此补上了第一部分的内容。后来有匿名用户发现了该号的回答可能是对果壳网上文章的洗稿(神秘的本福特定律 | 科学人 | 果壳网 科技有意思),有趣的是,我看了后发现,果壳网上的文章基本是对的,而他错的地方都是他自己强行补充的部分,233333
以下是正经说明本福特定理的部分:
看来我前面写的太抽了不少人没看懂,应@alcatrat之邀(昵称是猫鼠的意思吗?),把这玩意儿详细说说吧,以下内容需要对对数的计算比较熟悉。
首先注意到,因为实际生活中我们对单位的选取和进制的选取都是任意的,所以本福特法则要有用的话,必须对任意进制和单位都成立。否则的话,如果一组数据只在a单位x进制下符合该法则,在b单位y进制下不符合该法则,那么就没什么用了,例如在审计时,如果账目数字只在用卢布在8进制下才符合该法则,而用美元在10进制下就不符合的话,我们就不能因为其数字不符合该法则而怀疑其合理性了(因为我们只尝试了一种货币和进制)。
那么下面我们来讨论什么情况下,一个针对首位数字出现频率的规律会对所有进制和单位都成立。
大家知道概率分布图中,横轴表示值,纵轴表示该值出现的频率(或者对于连续的情况是概率密度),如下图:
注意到横轴是对数式增长的,其中黄色部分的面积是1开头的数字个数,因为对数尺度下[1, 2)是大于[2, 3)大于[3, 4)......大于[9, 10)的,所以黄色部分的宽度最宽。
此时我们对该数据进行单位转换,也就是说,乘以一个数字,那么对应到对数坐标系里,就是图像平移一段距离,平移后的图像如下图:
大家可以看到,随着图像的平移,黄色部分的面积发生了明显的变化,这就说明这个分布在转换单位的时候不能保持其特性。
下面看一组更明显的, 假设样本在(0, 100000]的区间上均匀分布,那么其频率分布如下图:
此时我们给每个样本乘上一个数得到:
这应该更明显了,显然黄色的面积也是改变了。
回顾一下本福特法则,该法则表现的现象为首位数字出现次数满足如下分布:
但是由上面的分析可以知道,对于一个普通的曲线,随便平移一下,都会严重影响其黄色代表的1的出现频率(当然其他数字也是,只是这里没有画出来)。那么我们就会想,有没有一个曲线能在上述平移的同时保持形状不变呢?答案就是均匀分布,不过这里说的是在对数尺度下的均匀分布,如下图:
因为这是一条水平线,所以无论其怎么平移,黄色部分的面积都不变。
当然,聪明的同学此时已经想到了,不只是水平线啊,任何一个周期性的曲线都满足平移形状不变的要求。对。但是不要忘了我们还有一个要求,就是在任意进制下都要成立。
上面说的是单位的变换对应的是图上曲线的平移,那么进制转换呢?通过观察横坐标的值可知,进制转换时曲线不变,但是蓝色竖线之间的间隔会变化,见下图
(这个图懒得画,容我先跳过)。
而对于周期值取任意值都还存在周期的,就只剩下这条水平线了。
那么既然已经确定是水平线了,说明高度是恒定的,那么各个数字开头的频率就只正比与其在横轴上所占的宽度,假设是B进制,B^n到B^(n+1)的宽度为1,则第i位数字开头的频率为logB(i+1) - logB(i),然后令B等于10就得到了本福特法则在十进制下的分布。
那么我们来看看这条水平线的数学含义是什么:
数学含义就是,在离散情况下对应于等比数列,在连续情况下对应于指数函数
场景1:某个变量随着时间不断变化,然后我们随机在的n个不同时刻(n足够大)对其进行测量,取得n个样本值。
例如一个国家的GDP保持每年x%的匀速增长或匀速下跌,那么就可以得到该曲线。或者假设利滚利的情况下一个人欠债数额的也符合该规律。
场景2:与上述场景等效的情况是,有n个变量随着时间不断变化,对每个变量,我们分别随机选个时间对其进行测量,取得n个样本值。
例如一个国家每个人的收入都以每年x%的匀速增长或下的,那么在随机时刻对每个人的抽样也可以得到该曲线。或者假设每个人欠债的开始时间是随机的,那么同一时刻对n个人欠债数目的统计也符合该曲线。
实际上,符合或者近似符合这个规律的现象非常多,也就是说,不论是增长还是下跌,其变化的绝对值都和原本的绝对值成正比,我觉得这是一个很正常和显然的事情。
细心的同学会发现,虽然说了这么多,但是讲到这里我们只解决了为什么要求数据在对数尺度上分布均匀。那剩下的问题就是,为什么数据的数量级跨度必须足够大?
要注意到上述的分析时,我们假设的曲线是无限长的,然而实际生活中我们遇到的曲线都是有限长的,如下图:
对该曲线适当右移后得到下图:
可以看到,由于曲线有限长,所以右移后第一个黄色竖条消失了,1开头的总频率发生了变化了!假设这条横线横跨了X条浅蓝色竖线,第i个数字开头的概率是a,那么其相对于理想情况下的本福特法则的概率的差不超过a/X,所以X不能太小,否则可能不准。
综上可知,本福特法则并非神奇的超自然现象,而是对事物指数性变化规律的一个概括。
@白云龙 在这个回答下写了代码对本福特法则进行了验证,大家可以参考一下白云龙:有哪些像斐波那契数列一样神奇的宇宙法则?
pps:
再补充一个,就是看了上面的分析大家可能会觉得要达成本福特法则的条件很苛刻,需要一直保持指数增长或减少,但是实际上没有这么严格。
首先,上面的分析中,图的横轴是值而不是时间,所以增长和减少是一回事,所以一个变量先从x增长到y,再从y由同样的速率跌到x,则其对应的曲线就等于从x增长到y的两倍高度。更一般的,如果该变量是在一个固定区间内用同样的速率(等比例增加或减少)反复震荡,则其对应的曲线也是一条横线。
同时,有些数据从整体看不是直线,但是可以近似看成直线,最后得出的结果也很接近本福特分布的,例如下图:
如果我们再放宽一些,只要求数字i开头的比数字i+1开头多,而不要其比例严格等于本福特法则的那个公式,那么普适性就更强了。
不过即便如此,依然有很多分布是不适用于该法则的,例如前面提到过的均匀分布,以及著名的二项分布,正太分布等
以下是撕逼部分:
看到有人在这儿瞎科普,表示有点忍不了, @每天3道奥数题 在此问题下科普了本福特的法则,可惜从头到尾都是错的,为了防止更多人被误导,我还是写点东西来澄清一下吧:
关于什么是本福特法则,他写的是:通俗的来说,“本福特法则”告诉我们:自然生成的数据中,首位数字从1到9出现概率依次递减。其中1出现最多为30.1%,2为17.6%,3为12.5%,依次递减,9的概率是4.6%。 那么接下来我们的分析就基于这个定义进行了:
首先他解释直观的解释是这样的:对于自然出现的数字来说,数字的增加会越来越困难。从个位数开始增加,刚出现的多位数是以1起首,直到9起首的数出现之前,必然会经过一堆以2,3,4,…,8起首的数,由于增加是越来越困难的,因此,数字越小,在首位出现的概率越大。 抱歉,恰恰相反,本福特定律的前提是数字增加越来越容易。举个例子,考虑初始是1,每次增加10%,则得到如下序列:
1.000,
1.100, 1.210, 1.331, 1.464, 1.611,
1.772, 1.949, 2.144, 2.358, 2.594,
2.853, 3.138, 3.452, 3.797, 4.177,
4.595, 5.054, 5.560, 6.116, 6.727,
7.400, 8.140, 8.954, 9.850, 10.835,
其次,在讲到该法则适用条件时,他是这么说的:尺有所长,寸有所短,再牛的法则都有其适用范围。 “本福特法则”在应用前需满足以下两条:
一是数据的数量级跨度必须足够大。比如人口的年龄分布如果按年计算就不服从该法则,因为数量级跨度太小,但如果按分钟计算,“本福特法则”就绝对适用。 首先,人口的年龄分布是不服从该法则的,即使按照分钟或者秒钟来计算也不行。该作者把数量级跨度足够大理解成了绝对值足够大,这不是在搞笑么,按照这种说法,任何不满足该分布的数据,我在后面多加几个0就满足了,荒唐不荒唐?关键是他自己还提到了尺度不变性,这不是在打自己脸么。值得注意的是,即便更改数字的计量单位,比如把人民币换为美元,或者把亩换算为平方米,“本福特法则”也依然适用,这一点在数学上被称为尺度不变性。 下图是中国的年龄分布图,显然我可以构造一个单位,使得换算成我的单位后,“数量级跨度足够大”,且不满足本福特法则:
其次是,他说数据是自然生成的就行:二是数据应当是自然生成的,没有人为规则限定。比如手机号码、身份证号等就不适用该法则。 但其实这一点是远远不够的,实际上,只是小部分概率分布服从该法则。当然,这里姑且理解为他不想讲的过于深入,然后他又说:因此,在现实生活中,只要面对大量数据,我们就可以应用“本福特法则”判断数据是否存在造假嫌疑。 无语,显然不是。只有符合或近似符合相应分布的数据才可以。
然后他的举例:在涉及经费收支、货物进出库、选举票数统计等方面,“本福特法则”已经成为辨别真伪的照妖镜,比如有学者就根据这一法则发现了2004年美国总统选举中佛罗里达州的投票欺诈行为。 本福特法则发现佛罗里达投票欺诈这个真不知道是哪里来的谣言,而且该法则能运用到选举票数统计这点本来就是很有争议的。。。
然后这人对双色球不符合本福特法则的解释是这样的:
容我笑三分钟,哈哈哈~~~
然后这人说他教随机过程,测度与积分。。。。。
对了,他还专门负责给小学生讲奥数哦,想提升小孩成绩的家长请速速联系他哦:
—————————————————————————————————————
补充:
没想到这个答案有人愿意看,我来接着补充一个,该作者提到的“数据的数量级跨度必须足够大”这句话到底是什么意思。首先,这句话是不完整的,准确的说是,数据的必须在足够大的数量级跨度上分布足够均匀。也就是说,需要在对数尺度上均匀分布。
举个例子,以10进制为例,如果数据的分布范围是(0, 10000],那么我们需要(0, 10], (10, 100], (100, 1000], (1000, 10000]这几个区间的样本数相同或接近(这么说不严谨,但是方便理解)。
这是一个必要不充分条件。那么我们假设一下不满足这个条件会出现什么情况,假设数据是在(0, 10000]上均匀分布的,那么90%的样本都落在(1000, 10000]上,假设在十进制下符合本福特法则要求的分布,也就是说[1000, 2000)这个区间的样本最多,那么我们可以稍微改变一下进制,就得到完全不符合本福特法则要求的分布了。
因此可见上面那个条件则是一个数据分布在任意度量单位下都符合本福特法则的前提。
那为什么我们要求在任意进制下(也就是说任意单位下)都符合本福特法则的分布呢?因为现实生活中的单位都是随便取的,比如长度单位有米,英尺,英寸,尺,寸等单位,自然界中有无数可能的单位,如果只在一个单位上符合,那么恰好该单位是我们规定的那个单位的概率是非常低,因此是没有任何意义的。
而该作者把数据的数量级跨度足够大理解成绝对值足够大,也是666了
—————————————————————————————————————
补充2:
至于作者补充提到的:自然界中的数是增长越来越慢的,比如植物生长,比如风速增加等; 我不否认存在这样的现象,但是这只是一部分情况,也有增长越来越快的。但是,增长的越来越慢的情况下是不可能出现本福特法则的分布的。前面也说了,本福特法则的必要条件之一是:数据需要在对数尺度上均匀分布。显然这一条件只有在增长越来越快的情况下才会出现 |
|