巧用本福特定律,快速判断海量数据是否存在人为干预!


3楼猫 发布时间:2025-03-10 15:45:51 作者:请谨慎关注 Language

本福特定律(Benford's Law),它指出在自然产生的数据(如人口数量、财务报表、河流长度等)中,数字 1 作为首位数字出现的概率最高(约30%),而后续数字出现的概率依次递减,数字 9 作为首位数字的概率最低(约4.6%)。这一规律尤其适用于跨度多个数量级的数据集。

人为干预的潜台词就是数据造假

基本上在学术上也会经常使用!

巧用本福特定律,快速判断海量数据是否存在人为干预!-第0张

所以其适用范围为,随机数,不受人为干预的,可以验证的,但像邮政编码、身份证号等显然不适合。

巧用本福特定律,快速判断海量数据是否存在人为干预!-第1张

各首位数据的频率!


光说没用我们就用几个实例示范一下就清楚了

第一个示例:共享单车租借数据

https://archive.ics.uci.edu/dataset/275/bike+sharing+dataset

巧用本福特定律,快速判断海量数据是否存在人为干预!-第2张

使用的是cnt列的数据

巧用本福特定律,快速判断海量数据是否存在人为干预!-第3张

验证结果:

巧用本福特定律,快速判断海量数据是否存在人为干预!-第4张

数字为1的实际频率为28.7%,理论频率为30.1%,误差1.39%,还算可接受范围


第二个示例:人数数据

https://catalog.data.gov/dataset/border-crossing-entry-data-683ae

巧用本福特定律,快速判断海量数据是否存在人为干预!-第5张

使用的是value所在列,即值。

巧用本福特定律,快速判断海量数据是否存在人为干预!-第6张

运行结果:

巧用本福特定律,快速判断海量数据是否存在人为干预!-第7张

这个运行结果频率就很高了

关键还是数据量要大,表现出随机性,当某一数据出现明显偏离一般指首位数字为1的情况,那就说明这组数据不具有随机性,即存在人为干预!

除此之外,你也可以抽取某用户发布的视频播放量,点赞量,评论粉丝数,也可以用这个进行判断,亦可以针对游戏的评价数量每小时进行统计。

对于理工科,需要判断海量随机数据,是否为随机数据,即不存在认为干预!

也可以通过这个方法快速验证,通过编程实现不难。验证随机性


© 2022 3楼猫 下载APP 站点地图 广告合作:asmrly666@gmail.com