English
Related papers

Related papers: Fast hashing with Strong Concentration Bounds

200 papers

Simple tabulation hashing dates back to Zobrist in 1970 and is defined as follows: Each key is viewed as $c$ characters from some alphabet $\Sigma$, we have $c$ fully random hash functions $h_0, \ldots, h_{c - 1} \colon \Sigma \to \{0,…

Data Structures and Algorithms · Computer Science 2022-05-04 Jakob Bæk Tejs Houen , Mikkel Thorup

Randomized algorithms are often enjoyed for their simplicity, but the hash functions employed to yield the desired probabilistic guarantees are often too complicated to be practical. Here we survey recent results on how simple hashing…

Data Structures and Algorithms · Computer Science 2017-01-04 Mikkel Thorup

Randomized algorithms are often enjoyed for their simplicity, but the hash functions used to yield the desired theoretical guarantees are often neither simple nor practical. Here we show that the simplest possible tabulation hashing…

Data Structures and Algorithms · Computer Science 2011-05-10 Mihai Patrascu , Mikkel Thorup

Hash-based sampling and estimation are common themes in computing. Using hashing for sampling gives us the coordination needed to compare samples from different sets. Hashing is also used when we want to count distinct elements. The quality…

Data Structures and Algorithms · Computer Science 2024-12-02 Anders Aamand , Ioana O. Bercea , Jakob Bæk Tejs Houen , Jonas Klausen , Mikkel Thorup

In this paper we analyze a hash function for $k$-partitioning a set into bins, obtaining strong concentration bounds for standard algorithms combining statistics from each bin. This generic method was originally introduced by Flajolet and…

Data Structures and Algorithms · Computer Science 2016-02-16 Søren Dahlgaard , Mathias Bæk Tejs Knudsen , Eva Rotenberg , Mikkel Thorup

Consistent hashing is a technique that can minimize key remapping when the number of hash buckets changes. The paper proposes a fast consistent hash algorithm (called power consistent hash) that has $O(1)$ expected time for key lookup,…

Data Structures and Algorithms · Computer Science 2023-12-29 Eric Leu

A random hash function $h$ is $\varepsilon$-minwise if for any set $S$, $|S|=n$, and element $x\in S$, $\Pr[h(x)=\min h(S)]=(1\pm\varepsilon)/n$. Minwise hash functions with low bias $\varepsilon$ have widespread applications within…

Data Structures and Algorithms · Computer Science 2014-05-02 Søren Dahlgaard , Mikkel Thorup

Hashing is a common technique used in data processing, with a strong impact on the time and resources spent on computation. Hashing also affects the applicability of theoretical results that often assume access to (unrealistic)…

Data Structures and Algorithms · Computer Science 2023-09-29 Ioana O. Bercea , Lorenzo Beretta , Jonas Klausen , Jakob Bæk Tejs Houen , Mikkel Thorup

For nearly six decades, the central open question in the study of hash tables has been to determine the optimal achievable tradeoff curve between time and space. State-of-the-art hash tables offer the following guarantee: If keys/values are…

Data Structures and Algorithms · Computer Science 2021-11-05 Michael A. Bender , Martín Farach-Colton , John Kuszmaul , William Kuszmaul , Mingmou Liu

The study of hashing is closely related to the analysis of balls and bins. It is well-known that instead of using a single hash function if we randomly hash a ball into two bins and place it in the smaller of the two, then this dramatically…

Data Structures and Algorithms · Computer Science 2007-05-23 Rina Panigrahy

Simple tabulation dates back to Zobrist in 1970. Keys are viewed as c characters from some alphabet A. We initialize c tables h_0, ..., h_{c-1} mapping characters to random hash values. A key x=(x_0, ..., x_{c-1}) is hashed to h_0[x_0]…

Data Structures and Algorithms · Computer Science 2016-11-15 Mikkel Thorup

Despite being one of the oldest data structures in computer science, hash tables continue to be the focus of a great deal of both theoretical and empirical research. A central reason for this is that many of the fundamental properties that…

Data Structures and Algorithms · Computer Science 2023-10-24 Michael A. Bender , Alex Conway , Martín Farach-Colton , William Kuszmaul , Guido Tagliavini

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…

Machine Learning · Computer Science 2018-05-23 Casper Benjamin Freksen , Lior Kamma , Kasper Green Larsen

Designing algorithms for balanced allocation of clients to servers in dynamic settings is a challenging problem for a variety of reasons. Both servers and clients may be added and/or removed from the system periodically, and the main…

Data Structures and Algorithms · Computer Science 2017-07-28 Vahab Mirrokni , Mikkel Thorup , Morteza Zadimoghaddam

We consider the hashing of a set $X\subseteq U$ with $|X|=m$ using a simple tabulation hash function $h:U\to [n]=\{0,\dots,n-1\}$ and analyse the number of non-empty bins, that is, the size of $h(X)$. We show that the expected size of…

Data Structures and Algorithms · Computer Science 2018-11-01 Anders Aamand , Mikkel Thorup

The power of two choices is a classic paradigm for load balancing when assigning $m$ balls to $n$ bins. When placing a ball, we pick two bins according to two hash functions $h_0$ and $h_1$, and place the ball in the least loaded bin.…

Data Structures and Algorithms · Computer Science 2016-01-26 Søren Dahlgaard , Mathias Bæk Tejs Knudsen , Eva Rotenberg , Mikkel Thorup

Hashing is a basic tool for dimensionality reduction employed in several aspects of machine learning. However, the perfomance analysis is often carried out under the abstract assumption that a truly random unit cost hash function is used,…

Machine Learning · Statistics 2017-11-27 Søren Dahlgaard , Mathias Bæk Tejs Knudsen , Mikkel Thorup

To get estimators that work within a certain error bound with high probability, a common strategy is to design one that works with constant probability, and then boost the probability using independent repetitions. Important examples of…

Data Structures and Algorithms · Computer Science 2020-04-03 Anders Aamand , Debarati Das , Evangelos Kipouridis , Jakob B. T. Knudsen , Peter M. R. Rasmussen , Mikkel Thorup

The problem of fast items retrieval from a fixed collection is often encountered in most computer science areas, from operating system components to databases and user interfaces. We present an approach based on hash tables that focuses on…

Neural and Evolutionary Computing · Computer Science 2020-07-17 Dan Domnita , Ciprian Oprisa

While separate chaining is a common strategy for resolving collisions in a hash table taught in most textbooks, compact hashing is a less common technique for saving space when hashing integers whose domain is relatively small with respect…

Data Structures and Algorithms · Computer Science 2019-05-02 Dominik Köppl
‹ Prev 1 2 3 10 Next ›