個人財務 ストリーミングアルゴリズムとブルームフィルタ - 多くのストリーミングアルゴリズムの中心にあるダミー

ストリーミングアルゴリズムとブルームフィルタ - 多くのストリーミングアルゴリズムの中心にあるダミー

Anonim

多くのストリーミングアルゴリズムの中心はブルームフィルタです。ほぼ50年前にBurton H. Bloomによって作成されました。コンピュータサイエンスがまだまだ若い時期に、このアルゴリズムの作成者の元の意図は、スペース(メモリ)や時間(複雑さ)を 許容誤差。 彼の原著論文は、 許容誤差を伴うハッシュコード化における空間/時間トレードオフ と題されている。

<! - 1 - >

Bloomが自分のアルゴリズムで動機付けを考慮する空間と時間について疑問に思うかもしれません。すでに説明したデータ構造を使用して、要素がストリームにすでに出現しているかどうかを判断する必要があるとします。ストリーム内で何かを見つけることは、録音と検索が高速であることを意味します。したがって、ハッシュテーブルは理想的な選択肢です。 ハッシュテーブル は、記録したい要素を追加するだけです。ハッシュテーブルは、要素自体ではなく要素を表現するために簡単に操作された値を使用するため、ハッシュテーブルから要素を復元するのは高速です(非常に複雑かもしれません)。しかし、両方の要素とその要素へのインデックスを格納することには限界があります。ハッシュテーブルが、連続して潜在的に無限のストリーム内の要素など、処理できる以上の要素に面していると、ある時点でメモリの問題が発生することになります。

<! - 2 - >

ブルームフィルタの基本的な考慮事項は、誤検出が発生する可能性がありますが、偽陰性は不可能です。たとえば、データストリームに発電所のリアルタイム監視データが含まれている場合があります。ブルームフィルタを使用する場合、データストリームの分析では、予想される読み値が許可された読み取り値の一部である可能性があり、一部のエラーは許可されていることが示されます。しかし、システムにエラーが発生した場合、同じ分析では、読み取り値が許可された読み取り値の一部ではないことが示されます。偽陽性は問題を起こす可能性は低いですが、偽陰性がないことは誰もが安全であることを意味します。偽陽性の可能性があるため、Bloomフィルターなどのフィルターは確率的なデータ構造です。特定の答えを提供するのではなく、可能性のあるものを提供します。

<!ハッシュテーブルの個々のエントリは、書籍のインデックスのように動作するため、高速です。ハッシュ関数を使用してハッシュを生成します。入力は複合データを含む要素であり、出力はその要素のインデックスとして機能する単純な数値です。ハッシュ関数は、特定のデータ入力をフィードするたびに同じ数を生成するため、決定論的です。ハッシュを使用して、必要な複雑な情報を探します。 Bloomフィルタは、ハッシュテーブルのようにそれらを保存せずに多くの要素の痕跡を記録する倹約的な方法であるため、有用です。それらは簡単な方法で動作し、以下を主な要素として使用します:

ビットベクトル:

  • 要素の各ビットが0または1の値を持つことができるビット要素のリスト。リストは長いmと呼ばれるビット数。 mが大きければ大きいほど、そのサイズを最適に定義する方法はありますが、より良い方法です。 一連のハッシュ関数:
  • 各ハッシュ関数は異なる値を表します。ハッシュ関数は、データを迅速にクランクし、一様に分散した結果を生成することができ、結果はハッシュの最小出力値から最大出力値まで等しくなる。

ストリーミングアルゴリズムとブルームフィルタ - 多くのストリーミングアルゴリズムの中心にあるダミー

エディタの選択

Facebook上の人、アプリケーション、招待をブロックする方法 - ダミー

Facebook上の人、アプリケーション、招待をブロックする方法 - ダミー

設定は、Facebookで快適に過ごせるようにするための予防措置です。ブロックリストは通常​​、より反応的です。誰かがあなたのことを気にするFacebook上の何かをした場合、彼をブロックしたり、あなたが影響を及ぼす特定の行動をブロックすることを選ぶかもしれません。制限付きリスト、ユーザーブロック、ブロック...

Facebookのタイムラインカバーを変更する方法写真ダミー

Facebookのタイムラインカバーを変更する方法写真ダミー

Facebook、あなたのタイムラインはあなたの友人のものと比べて少し空白に見えるかもしれません。カバー写真が必要です。まもなくタイムラインがいっぱいになります。しかし、まず、人々があなたを見つけてあなたについて知ることができるように、基礎を記入したいと思っています。人々が最初にすることは...

正しいFacebookページタイプを選択する方法 - ダミー

正しいFacebookページタイプを選択する方法 - ダミー

サービス、またはビジネスを利用するには、Facebookのページオプションの賛否両論に気づく必要があります。あなたの6つの主要なオプションを見てみましょう:ローカルビジネスまたはプレースカンパニー組織または機関ブランドまたはプロダクトアーティストバンドまたは公共図エンターテインメント原因またはコミュニティ次の...

エディタの選択

他のKloutインフルエンサーを推薦する方法 - ダミー

他のKloutインフルエンサーを推薦する方法 - ダミー

インフルエンサーリストを使用してKloutが+ Kを与えると説明するアクションです。あなたのKloutスコアの一部は、他人から受け取った裏書の数に由来します。

あなたのソーシャルメディアメトリクスの目標を微調整する方法 - ダミー

あなたのソーシャルメディアメトリクスの目標を微調整する方法 - ダミー

ソーシャルメディア指標の目標を微調整するための販売漏れデータあなたの目標を微調整することの一部は、希望から​​マイルストーンに移行するまで、それらを磨くことです。人々がゴールを間違えていることのいくつかの例を以下に示します。これは希望、夢、偉大なものです。

Klout特典の電子メール通知を取得する方法 - ダミー

Klout特典の電子メール通知を取得する方法 - ダミー

Ifあなたは定期的にKloutを訪れる習慣ではないので、あなたはPerksの電子メールアラートを作成することができます。あなたがソーシャルメディアの世界でやっていることすべてを把握するのは難しいかもしれません。これはあなたのソーシャルメディア管理を簡素化するのに役立ちます。あなたがパルクの資格を得て、そして...

エディタの選択

Outlook 2002でパブリックフォルダで公開する - Microsoft ExchangeネットワークでOutlook 2002を使用する場合はダミー

Outlook 2002でパブリックフォルダで公開する - Microsoft ExchangeネットワークでOutlook 2002を使用する場合はダミー

パブリックフォルダを使用できます。パブリックフォルダは、グループ全体が見てアイテムを追加できる場所です。タスクや連絡先用のパブリックフォルダを持つことができます。

Outlookの迷惑メールフィルタを設定する方法 - ダミー

Outlookの迷惑メールフィルタを設定する方法 - ダミー

Outlookのオプション。非常に積極的に設定すると、迷惑メールが少なくなりますが、正当なメッセージを迷惑メールとマークすることがあります。それほど攻撃的ではないように設定すると、受信トレイにもっと迷惑をかけることになります。 Outlookに付属しています...

Outlook 2013で連絡先グループを作成する方法 - ダミー

Outlook 2013で連絡先グループを作成する方法 - ダミー

Outlook 2013で連絡先グループを作成する方法あなたのリストの名前を作り、あなたのシステムに保存した名前のコレクションから選ぶという単純な問題です。連絡先グループは電話番号とメールアドレス、電子メールアドレスだけを追跡しません。 ...