Non-Uniform Bloom Filter Arrays for Private Audience Counting
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing audience measurement systems face challenges in accurately estimating the unique audience size across multiple database proprietors while preserving user privacy, as they rely on third-party cookies which may be limited or unavailable, and deduplication techniques involving personally identifiable information (PII) are undesirable.
Innovation Solution
The use of Bloom filter arrays with non-uniform hash functions to generate sketch data that allows for the estimation of cardinality of users across multiple databases, enabling accurate deduplication without revealing PII, by using agreed-upon hash functions to map users to bits in the array, ensuring privacy and reducing memory and computational demands.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If third-party cookies are used to track users across platforms, then media exposure tracking is enabled, but user privacy is compromised and the approach may be limited or unavailable
Solution Approach 1:
The patent introduces sketch data as an intermediary structure that enables cross-platform user tracking without directly storing or accessing PII. Database proprietors contribute anonymized sketch data to a central system, which aggregates and processes this data to estimate unique audience size across platforms while maintaining user privacy through the intermediary layer of hashed user identifiers and Bloom filters
2Measurement precision
If PII-based deduplication techniques are used to estimate unique audience size, then measurement accuracy is improved, but user privacy is compromised
Solution Approach 1:
The patent extracts only the essential information needed for deduplication - hashed user identifiers - while leaving PII behind. By using Bloom filters and sketch data structures that operate on these extracted identifiers rather than raw PII, the system achieves accurate deduplication and unique audience size estimation without handling or exposing sensitive personal information
Solution Approach 2:
The patent creates a simplified representation (copy) of user data in the form of sketch data and Bloom filters. These structures contain only the hashed identifiers and bit array representations needed for cardinality estimation, discarding all PII. This copying approach enables accurate measurement while maintaining privacy by working with anonymized representations rather than original data
3Quantity of substance
If traditional Bloom filters are used to represent users, then memory efficiency is improved, but accurately estimating cardinality across arbitrarily distributed hash functions becomes difficult
Solution Approach 1:
The patent changes the parameters of traditional Bloom filters by introducing non-uniform hash functions with specific distribution characteristics. Instead of assuming uniform distribution of hash values, the system uses hash functions that follow known probability distributions (such as geometric or exponential distributions), enabling accurate cardinality estimation even when hash functions are arbitrarily distributed across different platforms
Solution Approach 2:
The patent segments the user representation problem into multiple independent Bloom filters, each managed by different database proprietors. Each platform maintains its own Bloom filter using its specific hash function, and these segmented structures are aggregated at the central system. This segmentation allows each platform to maintain memory efficiency locally while enabling accurate global cardinality estimation through the aggregation of distributed sketches
Data Source
AI summary
Methods, apparatus, systems, and articles of manufacture to estimate cardinality of users represented in arbitrarily distributed bloom filter arrays are disclosed. A system includes a communication interface to: access a first Bloom filter array representative of first entries in a first database, the first entries allocated to ones of first elements in the first Bloom filter array based on a non-uniform distribution of outputs of a hash function applied to the first entries, and access a second Bloom filter array representative of second entries in a second database. The system also includes machine readable instructions to cause one or more processors to estimate a cardinality of a union of the first and second entries based on the non-uniform distribution of the outputs of the hash function.


