Skip to main content
QUICK REVIEW

[論文レビュー] Dictionary matching in a stream

Raphaël Clifford, Allyx Fontaine|arXiv (Cornell University)|Apr 23, 2015
Algorithms and Data Compression参考文献 17被引用数 6
ひとこと要約

本稿では、k 個のパターンと最大パターン長 m を用いて、1文字あたり O(log log(k+m)) 時間、O(k log m) 空間で動作する、ランダム化されたストリーミングアルゴリズムを提示する。パターンを短いもの、周期的なもの、非周期的なものに分割し、プログレッシブマッチングと色付き祖先クエリを用いたフィンガープrintを組み合わせることで、低誤検出確率でパターンの出現を効率的に検出する。

ABSTRACT

We consider the problem of dictionary matching in a stream. Given a set of strings, known as a dictionary, and a stream of characters arriving one at a time, the task is to report each time some string in our dictionary occurs in the stream. We present a randomised algorithm which takes O(log log(k + m)) time per arriving character and uses O(k log m) words of space, where k is the number of strings in the dictionary and m is the length of the longest string in the dictionary.

研究の動機と目的

  • 最小限のメモリと低コストな1文字あたりの処理時間で動作するストリーミングアルゴリズムを設計すること。
  • 長さが異なるパターンを効率的に扱い、独立したパターンマッチングの O(k) 時間を回避すること。
  • 理論的下界に近い空間使用量を維持しながら、1到着あたりの時間計算量をサブ線形に保つこと。
  • 入力や辞書の完全な保存が不可能な厳密なストリーミングモデルにおいて、誤検出および誤検出を最小限に抑えること。

提案手法

  • 辞書のパターンを3つのクラスに分割する:短いパターン、短い周期を持つ長いパターン、長い周期を持つ長いパターン。
  • 各パターンクラスに対して、2の累乗長の接頭辞を用いたフィンガープrintとプログレッシブマッチングの組み合わせを用い、効率的な潜在的マッチングの検出を実現する。
  • ローリングフィンガープリントデータ構造を用いて、O(1) 時間で更新と比較が可能な候補マッチの進行状態を維持する。
  • 逆順のパターンサフィックスのコンパクト化されたト tries における色付き祖先クエリを用いて、完全なパターンマッチの検証と検出遅延の排除を実現する。
  • フィンガープリントの円形バッファにより、k log m 文字の限定的な遅延後に、候補パターン拡張の定常的検証を定数時間で行える。
  • ランダム化を活用することで、ストリーム長 n に対して O(1/n) の小さな誤検出確率を達成しつつ、最適な空間境界を維持する。

実験結果

リサーチクエスチョン

  • RQ1ストリーミングにおける辞書マッチングを、1文字あたりサブ線形時間で行い、近似的に最適な空間使用量を達成できるか?
  • RQ2入力の完全な保存が不可能なストリーミング環境において、長さが異なるパターンを効率的にマッチングするにはどうすればよいか?
  • RQ3誤検出確率が低いストリーミング辞書マッチングアルゴリズムにおいて、時間計算量と空間計算量の両方を最小限に抑える技術は何か?
  • RQ4マッチング接頭辞が以前に検出された場合でも、完全なパターンマッチを限定的な遅延で検出できるか?
  • RQ51文字あたり O(log log(k+m)) 時間を達成しつつ、空間使用量を O(k log m) 単位に抑えることは可能か?

主な発見

  • アルゴリズムは1文字あたり O(log log(k+m)) 時間を達成しており、独立したパターンマッチャーを単純に実行する O(k) 時間と比べて顕著な改善を示す。
  • 空間計算量は O(k log m) 単位であり、理論的下界 Ω(k log n) ビットに比べて対数的要因の範囲内に収まる。
  • アルゴリズムは、ストリーム長 n に対して O(1/n) の誤検出および誤検出確率でパターンマッチを報告する。
  • 検出遅延は k log m 文字に制限されており、コンパクト化されたト tries における色付き祖先クエリによりこの遅延が解消される。
  • 逆順のパターンサフィックスに基づく色付きト tries 構造とフィンガープリントを組み合わせることで、完全なパターンマッチの効率的検証が可能になる。
  • このアプローチにより、辞書や入力ストリームの完全な保存が不可能なストリーミング環境におけるスケーラブルな辞書マッチングが実現可能になる。

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

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

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

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