プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

Sparsificationとは何ですか?


m個のデータポイントのm行m列の近接行列は、各ノードが他のノードにリンクされ、ノードのグループ間のエッジの重みがペアごとの近接度に従う密グラフとして定義できます。各オブジェクトには互いに類似する方法がありますが、ほとんどのデータセットでは、オブジェクトは少数のオブジェクトと非常に同じであり、他のほとんどのオブジェクトとはほとんど同じではありません。

この機能は、実際のクラスタリングプロセスを開始する前に、いくつかの低類似性(高非類似性)値を0に設定することにより、近接グラフ(行列)をスパース化するために使用できます。スパース化は、たとえば、定義されたしきい値より下(上)に同じ(非類似度)を持つすべてのリンクを分割するか、ポイントのk最近傍へのリンクのみを維持することによって実装できます。この方法は、最近傍グラフと呼ばれるものを作成します。

スパス化のメリットは次のとおりです-

データサイズが削減されます −データをクラスター化するために処理する必要のあるデータの量が大幅に削減されます。スパース化により、近接行列のエントリの99%以上が削除される可能性があります。したがって、管理できる問題のサイズが大きくなります。

クラスタリングの方がうまくいく可能性があります −スパース化メソッドは、オブジェクトの最も近い隣接オブジェクトへのリンクを維持しながら、より明確なオブジェクトへの接続を分割します。これは、オブジェクトの影響の最も近いネイバーがオブジェクト自体と同様のクラス(クラスター)に属するという最も近いネイバーの原則を維持するためです。これにより、ノイズと外れ値の影響が減少し、クラスター間の区別がファイルされます。

グラフ分割アルゴリズムを使用できます −特に並列コンピューティングと集積回路の設計の分野で、スパースグラフの最小カット分割を発見するためのヒューリスティックアルゴリズムに関する多くの作業がありました。近接グラフのスパース化により、オポッサムやカメレオンなどのクラスタリングフェーズでグラフ分割アルゴリズムを使用してグラフ分割を行うことができます。

近接グラフのスパース化は、実際のクラスタリングアルゴリズムが必要になる前の最初のステップと見なす必要があります。最良のスパース化では、近接行列を目的のクラスターに相関する接続された要素に分割したままにすることができますが、実際には、これが表示されます。

個々のエッジが2つのクラスターを接続するか、個々のクラスターが複数の切断されたサブクラスターに分割されるだけです。実際、Jarvis-PatrickとSNNが密度ベースのクラスタリングを使用すると、スパース近接グラフが変更されて新しい近接グラフが生成されることがわかります。この新しい近接グラフはスパース化できます。クラスタリングアルゴリズムは、これらすべての前処理手順の結果である近接グラフで動作します。


  1. グラフ内のブリッジ

    無向グラフのエッジは、それを削除するか、グラフを切断するか、グラフのさまざまなコンポーネントを作成する場合にのみ、ブリッジと呼ばれます。 実際のアプローチでは、ブリッジの接続が切断されたときにネットワーク内にいくつかのブリッジが存在すると、ネットワーク全体が切断される可能性があります。 入力と出力 Input: The adjacency matrix of the graph. 0 1 1 1 0 1 0 1 0 0 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 Output: Bridges in given graph: Bridge 3--4 Bridge

  2. 二重連結グラフ

    2つの頂点の間に2つの頂点が互いに素なパスが存在する場合、無向グラフは2重連結グラフと呼ばれます。つまり、任意の2つの頂点の間にサイクルがあると言えます。 グラフGは、接続されていて、グラフに関節点や切断点が存在しない場合、2重連結グラフであると言えます。 この問題を解決するために、DFSトラバーサルを使用します。 DFSを使用して、アーティキュレーションポイントが存在するかどうかを確認します。また、すべての頂点がDFSによってアクセスされているかどうかを確認します。アクセスされていない場合は、グラフが接続されていないと言えます。 入力と出力 Input: The adjacency