• 沒有找到結果。

第二章 文獻探討

2.3 網路分群

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

有興趣的部份主要也是在找出網路中的群組,以下章節對群組相關研究做更深入的說 明。

2.3 網路分群

在現實世界的網路,每個節點的連結數不會和隨機網路(Random Network)一樣都相 同,現實世界網路的節點,節點的連結數分佈是呈現冪次法則,即少數的節點連線數較 高,大部份的節點連結數都很低,在網路中節點之間的關連的分佈是呈現分群的現象,

即某些節點之間的關連數較多,某些節點之間的關連數相對較少,這樣的網路特性稱為 群組結構性(community structure 或 clustering)。

群組(Community)又稱為 clusters 或 modules,在現實生活中,群組的組織隨處可見,

例如家庭、村莊或國家,而從網路的角度來看,一個網路有可能由一個或多個群組所組 成,在同一個群組中的節點其連結較緊密,而在不同的群組之間其連結較鬆散;同一個 群組中的成員,通常具有相同的特性,例如共同的嗜好、共同的社會地位或職業,從更 廣義的定義來看,在網際網路的世界中,共同的特性也包含了有關連的文章或類似的主 題,以下章節我們將針對群組的定義和分群演算法做介紹。

2.3.1 群組的定義

群組的定義隨著研究的目的而有不同,最簡單直覺的定義為同一個群組中的節點其 連結較緊密,而在不同的群組中的節點其連結較鬆散,Santo Fortunato 將群組的定義分 成三種:Local、Global 及 Vertex Based Similarity[25],分別以網路本身的屬性、網路的 結構性及節點的相似度做分群,其說明如下。

(1) Local Definitions

Local 定義主要是利用網路本身的屬性為條件,著重在 cohesive subgroup 的探討,

cohesive subgroup 即為網路中關連最密集的一群節點,cohesive subgroup 判斷的條件依 Stanley Wasserman 定義有四種:Complete Mutuality、Reachability and Diameter、Nodal

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

Degree、Comparison of internal versus external cohesion[33]。

群組條件中最嚴格的為 Clique,Clique 是指三個或三個以上的組成的最大完全子圖 (maximal complete subgraph),其限制為子圖(subgraph)中的節點至少為三個,同一個節 點可以屬於多個 Clique,然而,一個 Clique 不可能屬於另一個 Clique,因條件過於嚴格,

較少人使用,因此有學者將條件放寬,以增加實用性,以下即介紹條件較為寬鬆的群組 定義。

利用可到達性(reachability)的條件定義的群組有三種:n-cliques、n-clans 和 n-clubs;

n-cliques 條件為子圖內的任兩個節點距離小於或等於 n,若當 n=1 的子圖即為 Clique,

n-cliques 的問題是子圖的直徑(diameter)會大於 n,圖形中的直徑定義為任兩個節點間的 最長距離,n-clans 條件為子圖內任兩個節點的最長的最短路徑(geodesic distance)小於或 等於 n,n-clubs 為子圖內的直徑(diameter)小於或等於 n。

利用節點的連結數的條件定義的群組有二種 k-plex 和 k-cores;k-plex 是指子圖中的 任一節點的連結數大於或等於 gs-k,其中 gs表示群組的節點數,也就是說子圖中的任一 節點可以不和 k 個點相連;k-cores 由 Seidman(1983)提出[33],其條件為子圖中的任一節 點至少要和 k 個節點相連,k-cores 的定義和 k-plex 相反。

第四種條件定義是利用比較群組內外的結構性為條件,其定義的群組有二種 LS Sets 和 Lambda Sets,LS Sets 最早是由 Luccio and Sami (1969)提出,當時稱為”minimal group”,

Lawler (1973)改名為 LS Sets[33],群組節點關連數大於群組外的節點關連數,假設 graph 中有 N 個節點,Ns 為 N 的子集合,Q 為 Ns 的子集合,即 ,若 Ns 是一個 LS set,表示在 Ns 中的任一子集合 Q 到 Ns-Q(subset 中的其他節點)的連線數會大於 Q 到 N-Ns(不在 subset 中的節點)的連線數;Lambda Sets 概念是 Borgatti(1990)提出[33],

利用 edge connectivity 的概念為條件,任兩個節點的 edge connectivity 是指要讓這兩節點 變成不連接(disconnect)需移除的最小的關連數,Lambda Set 是指在群組內的任兩個節點 的 edge connectivity 大於群組內的任一節點到群組外的任一節點的 edge connectivity,在 lambda-set 的節點不一定相鄰,有可能距離很遠。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

(2) Global Definitions

Global 定義是考慮整體網路的結構,最常見的定義為將圖形和隨機圖形(random graph)比較,以判定圖形中是否有群組存在;隨機圖形是指任兩個節點之間有連結的機 率是相同的,也就是說在圖形中關連的分佈是平均的,並不會有哪些節點的連結數特別 高或特別低,因此隨機圖形是不會有群組存在,其方法如 Newman and Girvan 在 2004 年提出的 modularity[19];modularity 的基本概念是將圖形 G 轉換成另一個圖形 G’,且 G’保有 G 的結構屬性,但不具有群組結構,這個新的圖形 G’即為 null model;如果 G 有可能有群組存在,只要比較 G 和 G'的關連數即可,也就是說如果在 G 的 subgraph 內 的關連數大於在 G’中相同的 subgraph 的關連數,則表示此 subgraph 為群組,其公式如 下:

(公式 )

其中,Q 為 moduality,A 為 adjacency matrix,m 表圖形中的 edge 總數,Pij是 node i 和 j 在 null model 中預期的 edge 數,當 node i、j 在同相同的群組中時δ-function 等於 1,反之則為 0;Q 的值最大為 1,可以是負數。當整個網路是同一個群組時,Q 等於 0,

若整個 graph 中沒有一個 subgraph 的 Q 大於 0,則表示此圖形沒有群組存在。

(3) Vertex Based Similarity

另外一種群組的定義是利用相似度的概念,也就是假設群組內的節點都是相似度高 的節點,而不考慮節點之間的連線;相似度的計算常用在傳統的分群方式如 hierarchical、

partitional 及 spectral clustering;計算相似度的方法有很多,可以利用距離(Euclidean distance、Manhattan distance、cosine similarity)、structure equivalent(Pearon correlation、

max-flow/min-cut)等[25]。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

2.3.2 分群演算法

將網路上的節點分群之後,在同一個群組的節點中,與其他群組的節點有較多的關 連的節點,它們在整個網路的地位相對重要,有可能是扮演協調者或資訊傳遞者的角色,

在圖形理論中的 community detection 主要目標是利用圖形的結構屬性(topology)做為分 群的依據。

Community Detection 的演算法,過去較常使用的有 graph partitioning、partitional clustering、hierarchical clustering,其中 Hierarchical clustering 是將相似度高的 node 分在 同一群,方法多採用主要有 Agglomerative Algorithm,是由下往上(bottom up)的方法,

一開始將每個物件視為單獨的類別,然後在每個回合合併相似度最相近的兩個群組,直 到符合停止條件或全部 node 都是同一群為止,2002 年 Girvan and Newman[11, 21]提出 Divisive algorithm 的方式後,Divisive Algorithm 在 community detection 也開始變得熱門,

Divisive algorithm 也是 Hierarchical Clustering 其中一種方法,是由上往下(top-down)的方 式,一開始將整個網路視為一個群組,每個回合將最不像的兩個群組分開,直到符合停 止條件或每個 node 各自為一個群組為止,本研究中我們即採用 Girvan and Newman 提出 的方法做分群,以下是詳細說明。

Girvan and Newman[11, 21]提出從關連(edge)的角度出發,找出連結各群組間的重要 關連(intercommunity edge),把它們移除後,就可以找到相對應的群組,利用 betweenness centrality 來找出連結各群組間的關連,其出發點是假設圖形中有兩個群組,只有少數的 關連連結兩個不同的群組,計算每個關連有多少路徑經過,這些連結不同群組間的關連 的 betweenness centrality 結果應該會最高,移除這些關連後,即可找到群組。演算法的 如下:

S1:計算所有 edges 的 centrality S2:移除最大的 centrality 的 edge

S3:再重新計算剩餘 edges 的 centrality

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

S4:重覆 S2-S4

他們比較了三種不同定義的 edge betweenness:Geodesic edge betweenness(Edge Betweenness)、Random-walk edge betweenness(random-walk betweenness)、Current-flow edge betweenness(current-flowbetweenness);Edge Betweenness 是基於 shortest (geodesic) paths,找出兩兩節點間的最短路徑,並且計算每個關連有多少最短路徑經過;

Random-walk betweenness 是基於資訊在圖形上傳遞是並不是透過最短路徑,而是每個關 連的機率都相同;Current-flow betweenness 結果與 Random-walk betweenness 相同;這三 種 betweenness 的定義在 sparse graph 上時間複雜度分別為 O(n2)、O(n3)、O(n3)。

Girvan and Newman 提出的方法,每個節點只能屬於一個群組,但在真實世界的網 路中,同一個節點有可能屬於多個群組(overlapping communities),這些節點扮演著不同 群組間溝通者的角色,在資訊傳遞上有很重要的地位,因此近年來也有許多學者往 overlapping communities 方向研究,但 overlapping communities 的時間複雜度增加許多,

Gregory 提出改善 Girvan and Newman 的方法 CONGA (Cluster Overlap Newman-Girvan Algorithm),其時間複雜度為 O(n3)[25]。

Edge Betweenness 的分群方法,已被應用於多種網路如社會和生態網路[19],它是 考慮整體網路的結構,即以 Global 的群組定義方式做為分群的基礎;利用 Local 的群組 定義方式做為分群的基礎的方法,過去雖然常被使用,但它們最大的缺點是當一個節點 與其他節點關連很少時(peripheral vertices),此節點很容易被排除在所有群組之外,而利 用 Global 的群組定義方式,則不會有此缺點;例如圖 2.1 中,共有三個群組,群組內節 點之間的關連較多,各群組之間的關連較少,其中節點 A 只與一個節點有關連,若利用 Local 的屬性,如節點連接數(Node Degree)時,節點 A 會被排除在所有群組之外,而考 慮整體網路的結構時,則會被包含在合適的群組中。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

本研究之資料中約有一半以上的官員在 20 年間的異動紀錄不到 3 次,表示當我們 利用這些資料建立網路時,一定會存在如圖 2.1 之節點 A 之狀況,即與其他節點關連較 少之節點,因此我們採用考慮整體網路的結構的 Edge Betweenness 做為本研究的分群方 法,可避免將這些節點排除在所有群組之中,另外從時間複雜度的角度來看,Edge Betweenness 的速度較快,這也是我們選擇 Edge Betweenness 的另一原因。

2.4 動態社會網路分析