二部グラフのコミュニティ検出のアルゴリズム?


11

igraph、networkX、R、Pythonなどに実装された2部グラフ(2モードネットワーク)のコミュニティ検出アルゴリズムはありますか?特に、2つのモードのいずれかでコミュニティの検出を制限できるような実装はありますか?


2
どのノードがモードを構成するかを事前に知ることなく、「2つのモードのいずれかでコミュニティの検出を制限する」方法 円形のようです。
ハードマス

では二部ネットワークあなたはすでに2つのモードが知っています。たとえば、モード「A」に属するノードの半分がモード「B」に属するノードとリンクしている場合、そこにコミュニティがあります。
アダモ

どのノードが各モードに属しているかを事前に知っていれば、検出を制限する方法についての私の質問に答えます。しかし、あなたの例と「コミュニティ」の暗黙の概念は不明です。二部グラフの頂点が反対モードの頂点にリンクしない場合、頂点にリンクしません(分離されます)。接続された2部グラフでは、すべてのモード「A」の頂点がいくつかのモード「B」の頂点にリンクし、その逆も同様です。「コミュニティ」は通常、接続されたサブグラフ以外のものを意味します。
ハードマス

考えてみると、あなたの「ノードとのリンク」は、単一の共通ノードとリンクすることを意図しており、投影されたグラフにクリークを与え(回答を参照)、したがって「そこのコミュニティ」を疑います。最初の読書であなたのポイントを把握していないことをおologiesびします。
ハードマス

謝罪は必要ありません。とにかく私の英語はそれほど明確ではありませんでした。
アダモ

回答:


4

「コミュニティ検出」という語句は、グラフの頂点を「コミュニティ」に分割することとして大まかに定義されており、それぞれが他の「コミュニティ」のメンバーよりも密にリンクされたメンバーを持っています。

最初のタスクは、2部グラフの場合にこれが何を意味するかを確認することです。2部グラフは、定義により2つの「モード」で構成され、1つのモードのメンバーは他のモードのメンバーのみにリンクされます。少なくとも単純なグラフでは、特別なブロック構造の隣接行列を持っていると表現できます:

A=(0BBT0)

A2BBTBTBA

同様に幸運にも、igraphコミュニティ検出アルゴリズム関連するものが「重み付けされたグラフを処理するために更新された」(マルチグラフなど)。


S. Fortunato(2010)は、コミュニティ検出基準(グラフでのコミュニティ検出)と、2者間および複数者間ネットワークでの使用を調査しています。上記で提案した解釈は、8ページに明記されています。

多分割グラフは通常、各頂点クラスの単分割投影に縮小されます。たとえば、科学者と論文の2部からなるネットワークから、共著で関係している科学者のネットワークのみを抽出できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.