  Learned Bloom Filters, i.e., models induced from data via machine learning
techniques and solving the approximate set membership problem, have recently
been introduced with the aim of enhancing the performance of standard Bloom
Filters, with special focus on space occupancy. Unlike in the classical case,
the "complexity" of the data used to build the filter might heavily impact on
its performance. Therefore, here we propose the first in-depth analysis, to the
best of our knowledge, for the performance assessment of a given Learned Bloom
Filter, in conjunction with a given classifier, on a dataset of a given
classification complexity. Indeed, we propose a novel methodology, supported by
software, for designing, analyzing and implementing Learned Bloom Filters in
function of specific constraints on their multi-criteria nature (that is,
constraints involving space efficiency, false positive rate, and reject time).
Our experiments show that the proposed methodology and the supporting software
are valid and useful: we find out that only two classifiers have desirable
properties in relation to problems with different data complexity, and,
interestingly, none of them has been considered so far in the literature. We
also experimentally show that the Sandwiched variant of Learned Bloom filters
is the most robust to data complexity and classifier performance variability,
as well as those usually having smaller reject times. The software can be
readily used to test new Learned Bloom Filter proposals, which can be compared
with the best ones identified here.
