On Design Choices in Similarity-Preserving Sparse Randomized Embeddings
Denis Kleyko, Dmitri A. Rachkovskij
TL;DR
The paper investigates practical design choices in FlyHash, an Expand & Sparsify-inspired similarity-preserving embedding built from sparse binary random projections and a $k$-WTA sparsification. It demonstrates that preprocessing, the distribution and density of the projection matrix, and the choice between binary and block-sparse nonlinearities dramatically affect MAP for similarity search on standard datasets. Key findings include that mean-centering with normalization often improves ranking (especially for Ang/Ang similarity), that hypergeometric projection can outperform binomial under dense data conditions, and that block sparse codes can reduce bit-count while offering competitive performance when bits are matched. The work highlights hardware- and algorithm-enabled trade-offs and suggests avenues for learned projections, data-adaptive expansion, and applications to classification tasks.
Abstract
Expand & Sparsify is a principle that is observed in anatomically similar neural circuits found in the mushroom body (insects) and the cerebellum (mammals). Sensory data are projected randomly to much higher-dimensionality (expand part) where only few the most strongly excited neurons are activated (sparsify part). This principle has been leveraged to design a FlyHash algorithm that forms similarity-preserving sparse embeddings, which have been found useful for such tasks as novelty detection, pattern recognition, and similarity search. Despite its simplicity, FlyHash has a number of design choices to be set such as preprocessing of the input data, choice of sparsifying activation function, and formation of the random projection matrix. In this paper, we explore the effect of these choices on the performance of similarity search with FlyHash embeddings. We find that the right combination of design choices can lead to drastic difference in the search performance.
