R
加權圖中的集中度量
我正在使用
igraph
包R
來分析網絡數據。我目前正在嘗試為我的圖的頂點和相應的中心化分數計算一些中心性度量。我的網絡既是定向的又是加權的。require(igraph) set.seed(12152) m <- expand.grid(from = 1:4, to = 1:4) m <- m[m$from != m$to, ] m$weight <- sample(1:7, 12, replace = T) g <- graph.data.frame(m)
我可以毫不費力地使用該
closeness
函數來獲取每個頂點的接近中心性:closeness(g, mode = "in") closeness(g, mode = "out") closeness(g, mode = "total")
但是,
centralization.closeness
函數 fromigraph
似乎不適用於有向圖。igraph
確實包括一種從圖形(centralize.scores
函數)中的各個中心性分數計算自定義中心化的方法,但是該函數需要用戶指定中心性度量的理論最大值,而且對我來說這將是什麼並不明顯加權示例(我相信內置centralization.closeness.tmax
函數igraph
假設未加權圖)。有誰知道如何計算加權圖中的中心化分數?有沒有一種好方法可以在 R 中使用
igraph
或其他包來完成此任務?
所有中心性度量都取決於數據的形狀。拉普拉斯中心性是加權圖中心性的一個令人信服的度量。
定義一個矩陣來存儲我們的權重。
定義一個矩陣,其中對角線是與節點關聯的權重之和。
拉普拉斯算子定義為
我們可以定義圖的一個屬性,拉普拉斯能量。
在哪裡s 是與拉普拉斯算子相關的特徵值。
我們可以等效地求解,而不是對我們的矩陣進行特徵求解。
為了定義圖中特定節點的重要性,我們刪除該節點併計算能量。
考慮以下數據,這些數據由 1000 個多元正態觀測值的 RBF 內核生成,這些觀測值以原點為中心,標準差為單位。兩個數字的指數相同。根據每次觀察的距離對數據進行預排序從原點。
拉普拉斯算子的重要性超出了這個答案的範圍。拉普拉斯算子是譜圖論中許多尖銳定理的核心,也是流形學習和聚類文獻中許多實際結果的核心。如果您認為您將在不久的將來處理加權圖,我強烈建議您閱讀該主題。