English

DartMinHash: Fast Sketching for Weighted Sets

Data Structures and Algorithms 2020-05-26 v1 Information Retrieval Machine Learning

Abstract

Weighted minwise hashing is a standard dimensionality reduction technique with applications to similarity search and large-scale kernel machines. We introduce a simple algorithm that takes a weighted set xR0dx \in \mathbb{R}_{\geq 0}^{d} and computes kk independent minhashes in expected time O(klogk+x0log(x1+1/x1))O(k \log k + \Vert x \Vert_{0}\log( \Vert x \Vert_1 + 1/\Vert x \Vert_1)), improving upon the state-of-the-art BagMinHash algorithm (KDD '18) and representing the fastest weighted minhash algorithm for sparse data. Our experiments show running times that scale better with kk and x0\Vert x \Vert_0 compared to ICWS (ICDM '10) and BagMinhash, obtaining 1010x speedups in common use cases. Our approach also gives rise to a technique for computing fully independent locality-sensitive hash values for (L,K)(L, K)-parameterized approximate near neighbor search under weighted Jaccard similarity in optimal expected time O(LK+x0)O(LK + \Vert x \Vert_0), improving on prior work even in the case of unweighted sets.

Keywords

Cite

@article{arxiv.2005.11547,
  title  = {DartMinHash: Fast Sketching for Weighted Sets},
  author = {Tobias Christiani},
  journal= {arXiv preprint arXiv:2005.11547},
  year   = {2020}
}

Comments

See https://github.com/tobc/dartminhash for the code accompanying the experiments

R2 v1 2026-06-23T15:45:29.899Z