306

Fully Understanding the Hashing Trick

Abstract

Feature hashing, also known as {\em the hashing trick}, introduced by Weinberger et al. (2009), is one of the key techniques used in scaling-up machine learning algorithms. Loosely speaking, feature hashing uses a random sparse projection matrix A:RnRmA : \mathbb{R}^n \to \mathbb{R}^m (where mnm \ll n) in order to reduce the dimension of the data from nn to mm while approximately preserving the Euclidean norm. Every column of AA contains exactly one non-zero entry, equals to either 1-1 or 11. Weinberger et al. showed tail bounds on Ax22\|Ax\|_2^2. Specifically they showed that for every ε,δ\varepsilon, \delta, if x/x2\|x\|_{\infty} / \|x\|_2 is sufficiently small, and mm is sufficiently large, then Pr[    Ax22x22  <εx22  ]1δ  .\Pr[ \; | \;\|Ax\|_2^2 - \|x\|_2^2\; | < \varepsilon \|x\|_2^2 \;] \ge 1 - \delta \;. These bounds were later extended by Dasgupta \etal (2010) and most recently refined by Dahlgaard et al. (2017), however, the true nature of the performance of this key technique, and specifically the correct tradeoff between the pivotal parameters x/x2,m,ε,δ\|x\|_{\infty} / \|x\|_2, m, \varepsilon, \delta remained an open question. We settle this question by giving tight asymptotic bounds on the exact tradeoff between the central parameters, thus providing a complete understanding of the performance of feature hashing. We complement the asymptotic bound with empirical data, which shows that the constants "hiding" in the asymptotic notation are, in fact, very close to 11, thus further illustrating the tightness of the presented bounds in practice.

View on arXiv
Comments on this paper