We describe an algorithm for similar-image search which
is designed to be efficient for extremely large collections of
images. For each query, a small response set is selected by
a fast prefilter, after which a more accurate ranker may be
applied to each image in the response set. We consider a
class of prefilters comprising disjunctions of conjunctions
(“ORs of ANDs”) of Boolean features. AND filters can be
implemented efficiently using skipped inverted files, a key
component of web-scale text search engines. These structures
permit search in time proportional to the response set
size. The prefilters are learned from training examples, and
refined at query time to produce an approximately bounded
response set.
We cast prefiltering as an optimization problem: for
each test query, select the OR-of-AND filter which maximizes
training-set recall for an adjustable bound on response set
size. This may be efficiently implemented by selecting from
a large pool of candidat...