何百万ものエッジとノードを持つ巨大な無向グラフでグラフ クラスタリングを実行したいと考えています。グラフは、いくつかのノード (複数のクラスターに関連付けることができるあいまいなノードの一種) によってのみ結合された異なるクラスターでほぼクラスター化されています。2 つのクラスターの間にエッジはほとんどないか、ほとんどありません。この問題は、グラフの頂点カット セットを見つけることとほぼ同じですが、グラフを多くのコンポーネントに分割する必要があるという 1 つの例外があります (その数は不明です)。(この図https://docs.google.com/file/dを参照してください) /0B7_3zLD0XdtAd3ZwMFAwWDZuU00/edit?pli=1 )
それらの間でいくつかのノードを共有するさまざまな強く接続されたコンポーネントのようであり、それらのノードを削除してそれらの強く接続されたコンポーネントを分離することになっています。エッジは重み付けされますが、この問題はグラフ内の構造を見つけることに似ているため、エッジの重みは関係ありません。(問題を考える別の方法は、いくつかの点で互いに接触している固体球を視覚化することです。球はそれらの強く接続されたコンポーネントであり、接触点はそれらのあいまいなノードです)
私は何かのプロトタイプを作成しているので、自分でグラフ クラスタリング アルゴリズムを取り上げて、可能な限り最良のものを選択する時間はありません。さらに、私の場合、異なるクラスターがエッジではなくノードを共有するため、エッジではなくノードをカットするソリューションが必要です。
この問題または関連する問題に対処する研究論文、ブログはありますか? または、誰もがこの問題の解決策を考え出すことができますか?
何百万ものノードとエッジが関係しているため、ソリューションのMapReduce実装が必要になります。そのための入力、リンクもありますか?
直接使用できる MapReduce の現在のオープン ソース実装はありますか?
この問題は、オンライン ソーシャル ネットワークで頂点を削除してコミュニティを見つけることに似ていると思います。