Mímisbrunnr知恵の泉

← ネットワーク科学 一覧

🎓 レベル:標準 | 重要度:A(必須)

📎 前提:近接中心性・媒介中心性クラスタ係数と推移性 | 関連:コミュニティ検出とは閾値モデル・情報カスケード

要点(BLUF)

概念:つながりの「強さ」と「役割」

中心性(近接中心性・媒介中心性)はノードの重要度でした。ここではエッジ(紐帯)に注目します。社会学者 Granovetter は「新しい仕事の情報は、親友よりも『知人』からもたらされる」ことを発見しました。一見逆説的なこの現象は、ネットワーク構造で説明できます。強い紐帯は密な集団の内側で閉じ、弱い紐帯こそが別の集団へ通じるになる。だから弱い紐帯は、集団内では得られない新しい情報を運ぶのです。

数式:橋と近傍重なり

橋(bridge):それを除くとグラフの連結成分が増えるエッジ。現実の密なネットワークに厳密な橋は稀なので、より実用的なローカルブリッジを使います。

ローカルブリッジ:両端 u,vu, v が共通の隣人を持たないエッジ。uuvv を結ぶ「迂回路」が長く、情報の近道になっている紐帯です。

エッジの「埋め込まれ具合」を測るのが近傍重なり(neighborhood overlap)

O(u,v)=N(u)N(v)(N(u)N(v)){u,v}O(u,v) = \frac{|N(u) \cap N(v)|}{|(N(u) \cup N(v)) \setminus \{u,v\}|}

両端の共通の友人が多いほど OO は大きい(強く埋め込まれた紐帯)。O=0O=0 ならローカルブリッジ。Granovetter の主張は「OO が小さい紐帯ほど集団間の橋渡しで、媒介中心性(近接中心性・媒介中心性)が高い」と言い換えられます。これは三角形閉合(クラスタ係数、クラスタ係数と推移性)の裏返しでもあります。

コードで確認

import networkx as nx
import numpy as np

G = nx.karate_club_graph()

def neighborhood_overlap(G, u, v):
    nu = set(G.neighbors(u)) - {v}
    nv = set(G.neighbors(v)) - {u}
    union = nu | nv
    return len(nu & nv) / len(union) if union else 0.0

eb = nx.edge_betweenness_centrality(G)          # エッジ媒介中心性
ov = np.array([neighborhood_overlap(G, u, v) for u, v in G.edges()])
bt = np.array([eb[(u, v)] for u, v in G.edges()])

bridges = [(u, v) for u, v in G.edges() if neighborhood_overlap(G, u, v) == 0.0]
print("エッジ総数:", G.number_of_edges())
print("ローカルブリッジ数(近傍重なり0):", len(bridges))
print("近傍重なり vs エッジ媒介の相関:", round(float(np.corrcoef(ov, bt)[0, 1]), 3))
print("重なり0のエッジの平均媒介  :", round(float(bt[ov == 0].mean()), 4))
print("重なり>0のエッジの平均媒介 :", round(float(bt[ov > 0].mean()), 4))

実行結果:

エッジ総数: 78
ローカルブリッジ数(近傍重なり0): 11
近傍重なり vs エッジ媒介の相関: -0.528
重なり0のエッジの平均媒介  : 0.0462
重なり>0のエッジの平均媒介 : 0.0284

近傍重なりとエッジ媒介中心性の相関は負(-0.53)。つまり「共通の友人が少ない(埋め込まれていない)紐帯ほど、多くの最短路が通る橋になっている」。実際、ローカルブリッジ(重なり0)の平均媒介(0.046)は、埋め込まれたエッジ(0.028)の1.6倍。Granovetter の洞察が数値で再現されました。

橋の図解

graph LR
    subgraph 集団A["密な集団A(強い紐帯)"]
        a1((・)) --- a2((・))
        a2 --- a3((・))
        a1 --- a3
    end
    subgraph 集団B["密な集団B(強い紐帯)"]
        b1((・)) --- b2((・))
        b2 --- b3((・))
        b1 --- b3
    end
    a3 -. "弱い紐帯(橋・近傍重なり0)" .- b1

数式の直観的意味

近傍重なり O(u,v)O(u,v) は「この紐帯は、どれだけ周囲の三角形に埋め込まれているか」です。OO が大きいエッジは、両端が同じ仲間内 — 切れても別ルートがあり、運ぶ情報も仲間内で既知の冗長なもの。OO が小さい(橋に近い)エッジは、別世界どうしを結ぶ唯一の通路 — そこを通る最短路が多い(媒介が高い)し、運ぶ情報も新規性が高い。これが「弱い紐帯の強さ」の構造的な正体です。**構造的空隙(structural holes, Burt)**の理論も同じで、橋を握るノードは異なる集団の情報を仲介できる優位(ブローカー)を持ちます。この視点は、コミュニティ検出が「橋を切って集団を割る」(コミュニティ検出とは)こと、カスケードが「橋を越えると別集団へ波及する」(閾値モデル・情報カスケード)ことと地続きです。

⚠️ よくある誤解・落とし穴

対応シミュレーション

本文のコードがそのまま検証用です。橋を切る発想は コミュニティ検出とは、橋を越える拡散は 閾値モデル・情報カスケード

関連