SlideShare a Scribd company logo
1 of 59
Download to read offline
Social Network Analysis 介紹
2015-06-06
Orozco Hsu
1
圖論 - 尤拉環 (七橋問題)
2
走完全部的橋,但每座橋只能走過一次 ,證明走法不存在(1735年尤拉提出)
一筆畫問題,該論文在聖彼得堡學院發表,成為圖論史上第一篇重要論文
圖論 – 商人路徑
3
圖論
• 在生活中很多問題可以利用圖來描述,例如工
作分配、網路基本結構等。這些問題都可以轉換
成圖來表示並解決及完成。圖論與拓樸學、代數
學、組合數學等學科關係極為密切。應用也相當
的廣泛, 已經滲透到電子學、生物學系統工程及
計算機科學等學科領域。基於上述原因, 引起了
越來越多的人對圖論的興趣與重視。電腦被引
進之後,演算法與圖論的結合促進了圖論的蓬勃
發展。我們也常利用演算法、資料結構等方法來
將問題做最佳化。
4
圖論與網路
• 圖論(graph)是有嚴謹基礎上討論的演算
法,強調的是算法,時間複雜度
– 地圖著色問題
– 船夫過河問題
– 任務分配問題
– 幻方
• 社群網路(network, SNA)是在圖論既有的
基礎上討論真實世界的社群結構
5
大綱
• 何謂 SNA ?
• 常用的 SNA 技術名詞介紹
• Gephi 上實習操作
• 觀察結論
6
社群網路
• 網路
– 互相連接一群的點
– 由通信線路連接的一系列點,點
•社群
–擁有相同興趣、或因共同目的而結合起來的
團體
•網路社群
–一個架構在網路環境中,虛擬的社會群體概
念
7
L.C Freeman
• 早在 1978 年, L. C. Freeman 就提出用
degree, closeness, betweenness 指標
衡量社群網路的 centrality,透過這三個
指標也可用於衡量網路關係狀況
• Freeman 大師
(http://moreno.ss.uci.edu/)
8
截至 2015-05-31,共有 8217 次
9
六度分隔理論
又稱小世界理論
• Six Degrees of Separation
• 哈佛大學心理學教授 Stanley Milgram 提出,
嘗試證明平均只需六個人就可以聯繫任何兩個
不認識的陌生人
• 實驗方法: 寄信給自己
• 鄧巴數來計算 (Robin Dunbar) -150定律
150*150*150*150*150*150 = 無限大的數
• 最新的研究 4.7,拜 FB 所賜
10
凱文貝肯的六層關係
11
• 1994年美國三位學生發起的 Six
Degrees of Kevin Bacon
• 選定某個演員後,開始一個個推展合作關
係,最後以連到凱文為終極目標
自己試試看
• 你→A→B→C→D→E→F→瑪丹娜
• 你→甲→乙→丙→丁→戊→己→張惠妹
• PS: A 只與 B 認識,A並不認識 C
12
網路 (network)
• 一個由一群點(node)與線(edge)所組成的個體
– 朋友關係網路
– 敵對關係網路
– 新陳代謝網路
– 生態網路
– 生物網路
13
Power-law 網路結構
• 大部分的點只有少數幾個鄰居,只有少
數點有很多鄰居
• 隨機拿掉幾個點,情況還是一樣,也就
是說還保留了網路的結構性
• 若拿掉鄰居數大的點,該網
路就很容易瓦解
14
Centrality
• Degree centrality
– 無向網路中,一個點的度數
• Closeness centrality
– 與其他所有點靠近程度,該值越大表示位居網路中央位置
– 扮演傳遞訊息角色
• Betweenness centrality
– 任意兩個點有很多路徑可以到達,若這些最短路徑都包含某
點,表示該點的值就高
15
• Degree Centrality
– 到該點距離為1的數量
– 擴展 => 到該點距離為 K 的數量
(k-path centrality)
• Closeness Centrality
– 原本是某點到所有點的最小距離,改為某點到
所有點的平均距離
– 或是,某點到關鍵點的最小距離,也就是說只
看某些關鍵點
• Betweenness Centrality
– 改成網路上所有點經過該點,且路徑長度為K
的數量 (k-betweenness centrality) 16
C(d) = 3
過去不好算,現在可以算
17
Ego network
• 看成是一個網路的子集,包含一個中心
點(ego)與鄰居點(alters)
– Degree centrality
– Closeness centrality
– Betweenness centrality
• 一般來說,不專注整體的網路研究,反
而著重在研究個體的性質的作法
18
Centrality & Prestige
19
Centrality & Prestige
• Centrality
– 每個點的值,非方向性
• Prestige
– 有方向性的關係
• 顯著地位(prominence)或稱為重要位置皆為描述社會網絡
中的位置顯著的點(actor)在網絡中通常都位居於很好的策
略性地位
• Prestige
– 有很多In-Degree的點
– 被很多人其他人選擇,且這些其他人本身也很有聲望
• Centralization and group prestige
– 群體內每個點的變異程度(可用 centrality計算)
20
PS: 平均值與變異值是不同的事情
21
Centrality & Prestige - Star
資料結構上如何描述 graph ? 優缺點 ?
• Adjacency matrix
• Adjacency list
集中度最高的狀況
22
Centrality & Prestige - Circle
集中度最低的狀況
23
Centrality & Prestige - Line
Centrality & Prestige - 顯著性
• 如果連結的關係使一個點在網絡中的位
置特別突顯(visible),我們稱此點位居顯
著地位
• 顯著性不僅是以直接(direct)及相鄰
(adjacent)的關係來衡量,間接的路徑
(indirect path)/權重也很重要
24
Yes/ No
0…1
25
A B C D E F G H I J
A 0 0 0 1 0 0 0 0 0
B 0 0 0 1 0 0 0 0 0
C 0 0 0 1 0 0 0 0 0
D 0 0 0 1 0 0 0 0 0
E 0 0 0 0 0 1 1 1 1
F 0 0 0 0 0 0 0 0 0
G 0 0 0 0 0 0 1 1 1
H 0 0 0 0 0 0 1 1 1
I 0 0 0 0 0 0 1 1 1
J 0 0 0 0 0 0 1 1 1
A
B
C
D
E
F
G H
I J
Row vector列向量
代表E 與其他人的關係
E詢問了哪些人?從E出
去的關係指向誰?
Column vector欄向量
代表其他人與E的關係
哪些人詢問了E?哪些箭
頭指向E?
矩陣中行與列的解讀方式
Centrality & Prestige
• Knoke & Burt區分兩種不同的顯著性
– 客觀的方式量測網路、量化並區別個體的顯著性與重要性
– Centrality: 無方向性,主要看度數
– Prestige: 有方向性,主要看 In-Degree 數
• In-Degree 較高者
– 熱門、受關注大
– 隱含商業上訊息傳播快 (越熱門網站,越多人看)
• Out-Degree
– 認識很多人
– 對很多事情都感興趣
26
Structural Hole
• Burt 提出的概念 (1992)
• 社會結構中弱連通的部分,也就是
在網路圖上的斷裂, SH 扮演資訊取
得、推薦的角色
• 換句話說: 中間商獲取利潤的機會
• SH 越大,表示越稀疏,In/Out-
Degree 都不高
27
Input Domain
• In-Degree 只能看出直接和自己相連點
的數量,也就是 Path Length = 1
• 而 Input Domain 是計算有向圖中 Path
Length > 1 以上點的數目
• 例如: 有點的 In-Degree不高,但他有被
其他 In-Degree高的人加入好友,也就
是透過第二、三層的關係把次數衝高
28
In-Degree Centralization
• 類似變異數的概念來觀察一群數值的變
異程度(某種程度可視為群)
• 集中度 (Centralization) 越大表示每個群
體之間的變異程度越大
• 從密度來觀察是否密集,而密度是群聚
性的一個指標,可透過 Sub-groups來
觀察
29
看看這個表,是否可以說故事
30
以頻道或以標籤的概念,找出那些寫這類型文章的人,而這群人與其他群體的關係
嘗試畫畫看? 怎麼用網路表示
寫這類文章的
作者朋友多
集中度越高,表示每個群體之
間的數值變異程度越大
提出假設,進行研究
• 社群網路中,degree centrality 越高,其傳播率越高
– 在社群D(c) 高者的個體在社群網路中,能透過較多的路徑
與該相鄰的點傳遞訊息
• 社群網路中,closeness centrality 越高,其傳播率越高
– 與其他點距離越近,更能快速接收訊息,訊息傳遞到其他
點也相對快
• 社群網路中, betweenness centrality 越高,其傳播率越高
– 扮演中間人角色,控制訊息的流動,影響不同group之間
的訊息傳遞
31
群聚性 (Cohesive)
• 找出,是否某部分的人是因為相同興趣而
緊密結合
• 方法
– Weak Components (弱連通)
– Strong Components (強連通)
– K-cores
• Components 是以 Path 的概念去尋找
Subgroups,SC 則強調 Path 是雙向可連
通,可設定 Path 的數量 32
SC (Path >=4)
33分為 三群
SCC (強連通) - Tarjan
34
WCC (弱連通)
35
K-cores
• 以 Degree 的概念去找,比較能看出群聚
的效果
• 與 Components 做法不同
• ALL(In-Degree + Out-Degree)
– 觀察到 5 cores ~ 9 cores 的點彼此間具有
緊密的結合
36
K-cores 分群
37
38
Degree Centralization Scores
Variance: .20
Variance: 3.9 Variance: .17
Variance: 0.0
39
=
= g
j
ji
ic
nnd
nC
1
),(
1
)( 042.0
24
1
==
=
−
= g
j
ji
ic
nnd
g
nC
1
'
),(
)1(
)( 50.0
24
12
==
=
= g
j
ji
ic
nnd
nC
1
),(
1
)(
Closeness Centrality:
40
Centralization: 1.0
Centralization: .31
Centralization: .59 Centralization: 0
Betweenness Centrality:
5/15 = 0.33
這個工作比較高竿 – 演算法工程師
41
42
視覺化
http://map.ipviking.com/
Visualization of WWW (2003)
Start From Scratch
• 1. 探索主題及目標決定
• 2. 相關資料集選定及來源評估
• 3. 來源資料格式分析
• 4. 資料取得
• 5. 檔案結構設計, 資料儲存及正規化
• 6. 資料前處理 (修整, 去雜訊, 聚合或合併, 重新量化)
• 7. 資料探索維度可行性評估及管理 (網路模型建立, 及指令
管理: Views, Stored-Procedures…)
• 8. 資料輸出以及社會網路分析工具界接
• 9. 網路指標計算
• 10. 網路數據指標輸出及指標詮釋
• 11. 網路圖形輸出及圖形詮釋
• 因為 Google 興起,後來大家注重 SEO,於是 PR 變成顯學
• 一個頁面的得票數由所有鏈向它的頁面的重要性來決定,到
一個頁面的超連結相當於對該頁投一票
• 一個頁面的PageRank是由所有鏈向它的頁面(「鏈入頁面」)
的重要性經過遞迴算法得到的。一個有較多鏈入的頁面會有
較高的等級,相反如果一個頁面沒有任何鏈入頁面,那麼它沒
有等級
Page Rank
45
EdgeRank
• Facebook 的朋友推薦其中之一演算法
– u : Affinity between the user and the friends
– w : Weight given to the specified behavior
– d : Decay factor
其他演算法
• Triangle count
• Katz
• Hits
• Strongly connected components
• Connected components
• Label propagation
• SVD++
• …
• http://seo.dns.com.tw/?p=96
• https://spark.apache.org/graphx/
47
看看 Neo4j (No-SQL)
• 專門用來儲存network資料,可用來處理
SNA 問題
• 為 No-SQL 的一種
– Key-Value Store
– Column based Store
– Document based Store
– Graph based
48
參考 : http://www.3pillarglobal.com/insights/exploring-the-different-types-of-nosql-databases
看看 Neo4j (No-SQL)
49
連到老師的平台: http:// 192.168.100.195:7474
試試看 Geiph
請使用測試資料madp_in_final.gephi
50
參考
Adjacency List
51
參考
• Pajek: network 計算工具
– http://vlado.fmf.uni-lj.si/pub/networks/pajek/
• UCInet: network 計算工具
– https://sites.google.com/site/ucinetsoftware/home
52
Information Centrality
• Betweenness centrality是最常用的居中
指標
• Freeman的 betweenness centrality有兩
個假設:
• (1) 假設每一條最短路徑被選取的機率皆
相等
• (2) 只考慮最短路徑而忽略其他可能溝通
的管道
53
Information Centrality
• 假設每一條最短路徑被選取的機率皆相等?
54
n5-n1-n2與n5-n3-n2被選取
的機率是否相同?
度數較高的居間者被選擇的
機率較大
Information Centrality
• 只考慮最短路徑而忽略其他可能溝通的管道
• 有時為了隱藏或保護資訊,會選擇迂迴的路徑來傳遞
訊息(Stephenson & Zelen, 1989)
55
Information Centrality
• Stephenson & Zelen發展出資訊居中的測量,
考慮介於兩個行動者之間的所有路徑,然後依
照路徑長短來給予加權。
• 在統計學中,我們經常用一估計式(estimator)
的變異數的倒數來衡量「訊息」,如果變異量
很小,我們說這個估計所隱含的資訊十分豐富,
如果變異數很大,則此估計的數值沒有代表性,
所含資訊很有限。 56
Information Centrality
• Stephenson & Zelen用同樣的原理來考量一個路徑所
含資訊品質應該與路徑的長短成反比。路徑越長,其
所傳遞的資訊的變異量愈大,因此一路徑所包含的資
訊為變異量的倒數
• 由於此種居中測量的計算十分複雜
57
58
原始 標準化
1 Acciaiuoli 0.554 0.049
2 Albizzi 0.830 0.074
3 Barbadori 0.763 0.068
4 Bischeri 0.832 0.074
5 Castellani 0.794 0.071
6 Ginori 0.483 0.043
7 Guadagni 0.917 0.082
8 Lmaberteschi 0.511 0.046
9 Medici 1.064 0.095
10 Pazzi 0.394 0.035
11 Peruzzi 0.779 0.070
12 Ridolfi 0.901 0.080
13 Salviati 0.598 0.053
14 Strozzi 0.878 0.078
15 Tornabuoni 0.902 0.081
TOTAL 11.2

=
i
iI
iI
iI
nC
nC
nC
)(
)(
)('
Stephenson & Zelen建
議用標準化分數使其介
於0-1之間:
幻方
59

More Related Content

Similar to Social network analysis

3 clustering 1
3 clustering 13 clustering 1
3 clustering 1FEG
 
Data Analysis In Service Research2009 11 12
Data Analysis In Service Research2009 11 12Data Analysis In Service Research2009 11 12
Data Analysis In Service Research2009 11 12Kai Wu
 
從統計到資料科學
從統計到資料科學從統計到資料科學
從統計到資料科學Terence Huang
 
數位學習 議題與方法進階工作坊 二_final
數位學習 議題與方法進階工作坊 二_final數位學習 議題與方法進階工作坊 二_final
數位學習 議題與方法進階工作坊 二_finalSonia Huang
 
網際網路與圖書資訊傳播
網際網路與圖書資訊傳播網際網路與圖書資訊傳播
網際網路與圖書資訊傳播Ted Lin (林泰宏)
 
人类思维与学科史论-计算机第一讲
人类思维与学科史论-计算机第一讲人类思维与学科史论-计算机第一讲
人类思维与学科史论-计算机第一讲WeiningQian
 

Similar to Social network analysis (6)

3 clustering 1
3 clustering 13 clustering 1
3 clustering 1
 
Data Analysis In Service Research2009 11 12
Data Analysis In Service Research2009 11 12Data Analysis In Service Research2009 11 12
Data Analysis In Service Research2009 11 12
 
從統計到資料科學
從統計到資料科學從統計到資料科學
從統計到資料科學
 
數位學習 議題與方法進階工作坊 二_final
數位學習 議題與方法進階工作坊 二_final數位學習 議題與方法進階工作坊 二_final
數位學習 議題與方法進階工作坊 二_final
 
網際網路與圖書資訊傳播
網際網路與圖書資訊傳播網際網路與圖書資訊傳播
網際網路與圖書資訊傳播
 
人类思维与学科史论-计算机第一讲
人类思维与学科史论-计算机第一讲人类思维与学科史论-计算机第一讲
人类思维与学科史论-计算机第一讲
 

More from FEG

Sequence Model pytorch at colab with gpu.pdf
Sequence Model pytorch at colab with gpu.pdfSequence Model pytorch at colab with gpu.pdf
Sequence Model pytorch at colab with gpu.pdfFEG
 
學院碩士班_非監督式學習_使用Orange3直接使用_分群_20240417.pdf
學院碩士班_非監督式學習_使用Orange3直接使用_分群_20240417.pdf學院碩士班_非監督式學習_使用Orange3直接使用_分群_20240417.pdf
學院碩士班_非監督式學習_使用Orange3直接使用_分群_20240417.pdfFEG
 
資料視覺化_透過Orange3進行_無須寫程式直接使用_碩士學程_202403.pdf
資料視覺化_透過Orange3進行_無須寫程式直接使用_碩士學程_202403.pdf資料視覺化_透過Orange3進行_無須寫程式直接使用_碩士學程_202403.pdf
資料視覺化_透過Orange3進行_無須寫程式直接使用_碩士學程_202403.pdfFEG
 
Pytorch cnn netowork introduction 20240318
Pytorch cnn netowork introduction 20240318Pytorch cnn netowork introduction 20240318
Pytorch cnn netowork introduction 20240318FEG
 
2023 Decision Tree analysis in business practices
2023 Decision Tree analysis in business practices2023 Decision Tree analysis in business practices
2023 Decision Tree analysis in business practicesFEG
 
2023 Clustering analysis using Python from scratch
2023 Clustering analysis using Python from scratch2023 Clustering analysis using Python from scratch
2023 Clustering analysis using Python from scratchFEG
 
2023 Data visualization using Python from scratch
2023 Data visualization using Python from scratch2023 Data visualization using Python from scratch
2023 Data visualization using Python from scratchFEG
 
2023 Supervised Learning for Orange3 from scratch
2023 Supervised Learning for Orange3 from scratch2023 Supervised Learning for Orange3 from scratch
2023 Supervised Learning for Orange3 from scratchFEG
 
2023 Supervised_Learning_Association_Rules
2023 Supervised_Learning_Association_Rules2023 Supervised_Learning_Association_Rules
2023 Supervised_Learning_Association_RulesFEG
 
202312 Exploration Data Analysis Visualization (English version)
202312 Exploration Data Analysis Visualization (English version)202312 Exploration Data Analysis Visualization (English version)
202312 Exploration Data Analysis Visualization (English version)FEG
 
202312 Exploration of Data Analysis Visualization
202312 Exploration of Data Analysis Visualization202312 Exploration of Data Analysis Visualization
202312 Exploration of Data Analysis VisualizationFEG
 
Transfer Learning (20230516)
Transfer Learning (20230516)Transfer Learning (20230516)
Transfer Learning (20230516)FEG
 
Image Classification (20230411)
Image Classification (20230411)Image Classification (20230411)
Image Classification (20230411)FEG
 
Google CoLab (20230321)
Google CoLab (20230321)Google CoLab (20230321)
Google CoLab (20230321)FEG
 
Supervised Learning
Supervised LearningSupervised Learning
Supervised LearningFEG
 
UnSupervised Learning Clustering
UnSupervised Learning ClusteringUnSupervised Learning Clustering
UnSupervised Learning ClusteringFEG
 
Data Visualization in Excel
Data Visualization in ExcelData Visualization in Excel
Data Visualization in ExcelFEG
 
6_Association_rule_碩士班第六次.pdf
6_Association_rule_碩士班第六次.pdf6_Association_rule_碩士班第六次.pdf
6_Association_rule_碩士班第六次.pdfFEG
 
5_Neural_network_碩士班第五次.pdf
5_Neural_network_碩士班第五次.pdf5_Neural_network_碩士班第五次.pdf
5_Neural_network_碩士班第五次.pdfFEG
 
4_Regression_analysis.pdf
4_Regression_analysis.pdf4_Regression_analysis.pdf
4_Regression_analysis.pdfFEG
 

More from FEG (20)

Sequence Model pytorch at colab with gpu.pdf
Sequence Model pytorch at colab with gpu.pdfSequence Model pytorch at colab with gpu.pdf
Sequence Model pytorch at colab with gpu.pdf
 
學院碩士班_非監督式學習_使用Orange3直接使用_分群_20240417.pdf
學院碩士班_非監督式學習_使用Orange3直接使用_分群_20240417.pdf學院碩士班_非監督式學習_使用Orange3直接使用_分群_20240417.pdf
學院碩士班_非監督式學習_使用Orange3直接使用_分群_20240417.pdf
 
資料視覺化_透過Orange3進行_無須寫程式直接使用_碩士學程_202403.pdf
資料視覺化_透過Orange3進行_無須寫程式直接使用_碩士學程_202403.pdf資料視覺化_透過Orange3進行_無須寫程式直接使用_碩士學程_202403.pdf
資料視覺化_透過Orange3進行_無須寫程式直接使用_碩士學程_202403.pdf
 
Pytorch cnn netowork introduction 20240318
Pytorch cnn netowork introduction 20240318Pytorch cnn netowork introduction 20240318
Pytorch cnn netowork introduction 20240318
 
2023 Decision Tree analysis in business practices
2023 Decision Tree analysis in business practices2023 Decision Tree analysis in business practices
2023 Decision Tree analysis in business practices
 
2023 Clustering analysis using Python from scratch
2023 Clustering analysis using Python from scratch2023 Clustering analysis using Python from scratch
2023 Clustering analysis using Python from scratch
 
2023 Data visualization using Python from scratch
2023 Data visualization using Python from scratch2023 Data visualization using Python from scratch
2023 Data visualization using Python from scratch
 
2023 Supervised Learning for Orange3 from scratch
2023 Supervised Learning for Orange3 from scratch2023 Supervised Learning for Orange3 from scratch
2023 Supervised Learning for Orange3 from scratch
 
2023 Supervised_Learning_Association_Rules
2023 Supervised_Learning_Association_Rules2023 Supervised_Learning_Association_Rules
2023 Supervised_Learning_Association_Rules
 
202312 Exploration Data Analysis Visualization (English version)
202312 Exploration Data Analysis Visualization (English version)202312 Exploration Data Analysis Visualization (English version)
202312 Exploration Data Analysis Visualization (English version)
 
202312 Exploration of Data Analysis Visualization
202312 Exploration of Data Analysis Visualization202312 Exploration of Data Analysis Visualization
202312 Exploration of Data Analysis Visualization
 
Transfer Learning (20230516)
Transfer Learning (20230516)Transfer Learning (20230516)
Transfer Learning (20230516)
 
Image Classification (20230411)
Image Classification (20230411)Image Classification (20230411)
Image Classification (20230411)
 
Google CoLab (20230321)
Google CoLab (20230321)Google CoLab (20230321)
Google CoLab (20230321)
 
Supervised Learning
Supervised LearningSupervised Learning
Supervised Learning
 
UnSupervised Learning Clustering
UnSupervised Learning ClusteringUnSupervised Learning Clustering
UnSupervised Learning Clustering
 
Data Visualization in Excel
Data Visualization in ExcelData Visualization in Excel
Data Visualization in Excel
 
6_Association_rule_碩士班第六次.pdf
6_Association_rule_碩士班第六次.pdf6_Association_rule_碩士班第六次.pdf
6_Association_rule_碩士班第六次.pdf
 
5_Neural_network_碩士班第五次.pdf
5_Neural_network_碩士班第五次.pdf5_Neural_network_碩士班第五次.pdf
5_Neural_network_碩士班第五次.pdf
 
4_Regression_analysis.pdf
4_Regression_analysis.pdf4_Regression_analysis.pdf
4_Regression_analysis.pdf
 

Social network analysis