如何实现Flajolet-Martin算法来预测数据流的唯一用户

时间:2019-02-26 15:13:14

标签: python machine-learning

我有一个用户数据流,我正在尝试实现Flajolet-Martin算法来估算唯一身份用户:

我想首先了解如何将这些用户吸引到一个列表中(例如将他们保存为数组),以及如何使用Flajolet-Martin算法来预测数据流的唯一用户。

到目前为止,代码已为我提供了用户ID:

import requests
import json

r = requests.get('http://stream.meetup.com/2/rsvps', stream=True)
for raw_rsvp in r.iter_lines():
    if raw_rsvp:
        rsvp = json.loads(raw_rsvp)
        print(rsvp[u'member'][u'member_id'])

我知道首先我需要将一个哈希函数应用于流元素-h(a)将结束于某些零。这个零数是尾部长度R。然后将看到的最大R用作2 ^ R来估计不同元素的数量。现在,假设该流将处于活动状态一小时。我将如何应用?

预先感谢

0 个答案:

没有答案