Skip to main content
QUICK REVIEW

[論文レビュー] Succinct Data Structures for Retrieval and Approximate Membership

Martin Dietzfelbinger, Rasmus Pagh|ArXiv.org|Mar 26, 2008
Caching and Content Delivery参考文献 33被引用数 46
ひとこと要約

本稿では、$k$-クエリ時間における最適解に $1 + e^{-k}$ 因子以内の空間使用量を達成する、検索および近似的なメンバーシップのための要約データ構造を提示する。これにより、従来の方法で一般的に見られる $\Theta(n)$ ビットのオーバーヘッドが解消される。ランダム行列理論と完全ハッシュを活用することで、高速なクエリ時間とほぼ最適な空間使用量が実現され、完全ランダム性の仮定のもとで高確率に $n + O(\log \log n)$ ビットの空間使用量を達成する。

ABSTRACT

The retrieval problem is the problem of associating data with keys in a set. Formally, the data structure must store a function f: U ->{0,1}^r that has specified values on the elements of a given set S, a subset of U, |S|=n, but may have any value on elements outside S. Minimal perfect hashing makes it possible to avoid storing the set S, but this induces a space overhead of Theta(n) bits in addition to the nr bits needed for function values. In this paper we show how to eliminate this overhead. Moreover, we show that for any k query time O(k) can be achieved using space that is within a factor 1+e^{-k} of optimal, asymptotically for large n. If we allow logarithmic evaluation time, the additive overhead can be reduced to O(log log n) bits whp. The time to construct the data structure is O(n), expected. A main technical ingredient is to utilize existing tight bounds on the probability of almost square random matrices with rows of low weight to have full row rank. In addition to direct constructions, we point out a close connection between retrieval structures and hash tables where keys are stored in an array and some kind of probing scheme is used. Further, we propose a general reduction that transfers the results on retrieval into analogous results on approximate membership, a problem traditionally addressed using Bloom filters. Again, we show how to eliminate the space overhead present in previously known methods, and get arbitrarily close to the lower bound. The evaluation procedures of our data structures are extremely simple (similar to a Bloom filter). For the results stated above we assume free access to fully random hash functions. However, we show how to justify this assumption using extra space o(n) to simulate full randomness on a RAM.

研究の動機と目的

  • 最小完全ハッシュおよび検索データ構造における $\Theta(n)$-ビットの空間オーバーヘッドを解消すること。
  • $k$-クエリ時間において、最適解に $1 + e^{-k}$ 因子以内の空間使用量を達成すること。$n$ が十分に大きい場合の漸近的性質を満たすこと。
  • 対数的評価時間のもとで、空間オーバーヘッドを $O(\log \log n)$ ビットにまで削減し、高確率で達成すること。
  • 検索構造から近的メンバーシップへの一般還元を確立し、空間最適なブルームフィルタの代替を可能にすること。
  • RAM上での実装において、完全ランダムハッシュ関数の使用を正当化するため、$o(n)$ の追加空間を用いて完全ランダム性を模倣すること。

提案手法

  • 低重みの行をもつランダム行列のランクに関するタイトな境界を用い、高確率で全行が線形独立となるように保証する。
  • ガウスの消去法と二部グラフにおける完全マッチングを用いて、キーを一意な位置にマップする完全ハッシュ関数を構築する。
  • $m = (1 + \delta)n$ 個の単語からなるベクトル $a$ を用いてハッシュ関数を表現し、各単語が $r = \lceil \log k \rceil$ ビットであるようにすることで、空間オーバーヘッドを最小化する。
  • 正しく性質を保ちつつ構築時間を削減するためのスプリッティングテクニックを適用する。
  • 一般変換を用いて検索問題を近的メンバーシップに還元し、空間最適な近的メンバーシップデータ構造を実現する。
  • 完全ランダムハッシュ関数を、$o(n)$ の追加空間を用いて模倣することで、実装上での完全ランダム性の仮定を正当化する。

実験結果

リサーチクエスチョン

  • RQ1検索データ構造は、情報理論的下界に限りなく近い空間使用量で構築可能か?
  • RQ2$k$-クエリ時間における検索構造で達成可能な最小の空間オーバーヘッドは何か? そして、$1 + e^{-k}$ で上限を示せるか?
  • RQ3近的メンバーシップ構造における空間オーバーヘッドを、エントロピー下界に近い水準まで削減可能か?
  • RQ4小規模な $r$ に対して、ランダム行列のランク閾値と $k$-アリキュークーパハッシュの対応関係はどの程度成立するか?
  • RQ5完全ランダムハッシュ関数を、空間的または時間的効率を損なわずに、より単純なハッシュ関数で置き換え可能か?

主な発見

  • 本稿では、検索に対して $n + o(n)$ ビットの空間使用量を達成し、従来の方法の $\Theta(n)$-ビットのオーバーヘッドを完全に排除した。
  • $k$-クエリ時間において、空間使用量は最適解に $1 + e^{-k}$ 因子以内であり、相対的オーバーヘッドとして $\delta = \beta_k^{-1} - 1$ を得た。
  • 対数的評価時間のもとで、空間の加法的オーバーヘッドは高確率で $O\left(\log \log n\right)$ ビットにまで削減された。
  • $k=4$ の場合、空間使用量は $2.07n$ ビットにまで低下し、従来の最小完全ハッシュを用いた構成の $2.29n$ ビットを上回る改善を達成した。
  • 構築プロセスにおいて、$o(n)$ の追加空間を用いて完全ランダムハッシュ関数を模倣することで、RAM上での実装が正当化された。
  • 一般還元により、検索構造を空間最適な近的メンバーシップ構造に変換でき、エントロピー下界と一致する。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。