正在跑 1000W 数据,但是感觉意义不大,应该还是没有吧。。
是不是有什么地方经过了特殊处理?
代码如下,如果缩进不被吃掉就能拿来测测
#!/usr/bin/env python3
import redis
redis_cli = redis.from_url('redis://localhost:6379/0')
count = 0
for i in range(0, 1000000):
if not redis_cli.pfadd('test', 'aaa%dbbb' % i):
count += 1
print(count)
count = 0
for i in range(0, 1000000):
if redis_cli.pfadd('test', 'aaa%dbbb' % i):
count += 1
print(count)
第一个 print 结果 940536 ,大概 94%左右的 True Positive ,也就是 6%左右的 False Positive
第二个显示 0 ,也就是都是 True Negative ,没有 False Negative
按理说 HyperLogLog 的 False Positive 和 False Negative 差不多?
可能是我对算法理解有问题,请指点一下。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.