Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
データマイニング - グラフ構造の諸指標
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Y. Yamamoto
PRO
June 20, 2025
Science
0
250
データマイニング - グラフ構造の諸指標
1. グラフの大きさ
2. 密度
3. 連結性
4. 次数の分布
Y. Yamamoto
PRO
June 20, 2025
Tweet
Share
More Decks by Y. Yamamoto
See All by Y. Yamamoto
生成的情報検索時代におけるAI利用と認知バイアス
trycycle
PRO
0
230
データベース15: ビッグデータ時代のデータベース
trycycle
PRO
0
430
データベース14: B+木 & ハッシュ索引
trycycle
PRO
0
640
データマイニング - グラフ埋め込み入門
trycycle
PRO
1
150
データマイニング - ウェブとグラフ
trycycle
PRO
0
230
データベース12: 正規化(2/2) - データ従属性に基づく正規化
trycycle
PRO
0
1.1k
データマイニング - コミュニティ発見
trycycle
PRO
0
200
データベース11: 正規化(1/2) - 望ましくない関係スキーマ
trycycle
PRO
0
1k
データマイニング - ノードの中心性
trycycle
PRO
0
320
Other Decks in Science
See All in Science
俺たちは本当に分かり合えるのか? ~ PdMとスクラムチームの “ずれ” を科学する
bonotake
2
1.5k
AI(人工知能)の過去・現在・未来 —AIは人間を超えるのか—
tagtag
PRO
0
140
高校生就活へのDA導入の提案
shunyanoda
0
6.2k
学術講演会中央大学学員会府中支部
tagtag
PRO
0
340
NDCG is NOT All I Need
statditto
2
2.7k
Ignite の1年間の軌跡
ktombow
0
200
Vibecoding for Product Managers
ibknadedeji
0
120
2025-06-11-ai_belgium
sofievl
1
220
academist Prize 4期生 研究トーク延長戦!「美は世界を救う」っていうけど、どうやって?
jimpe_hitsuwari
0
470
中央大学AI・データサイエンスセンター 2025年第6回イブニングセミナー 『知能とはなにか ヒトとAIのあいだ』
tagtag
PRO
0
110
蔵本モデルが解き明かす同期と相転移の秘密 〜拍手のリズムはなぜ揃うのか?〜
syotasasaki593876
1
190
[Paper Introduction] From Bytes to Ideas:Language Modeling with Autoregressive U-Nets
haruumiomoto
0
190
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
170
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
90
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
50
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
900
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
The Cult of Friendly URLs
andyhume
79
6.8k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
370
Six Lessons from altMBA
skipperchong
29
4.1k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
130
Transcript
グラフ構造の諸指標 ⼭本 祐輔 名古屋市⽴⼤学 データサイエンス研究科
[email protected]
第10回 データマイニング (グラフ分析入門) ⼭本祐輔
クリエイティブコモンズライセンス (CC BY-NC-SA 4.0)
グラフを「把握したい」ケース グラフを把握したい ノード 単体 グラフの 部分構造 グラフ 全体
グラフを「把握したい」ケース グラフを把握したい ノード 単体 グラフの 部分構造 グラフ 全体 ノードの 重要度評価
コミュニティや 特徴的な経路の発⾒ 局所的特徴 ⼤局的特徴
グラフを「把握したい」ケース グラフを把握したい グラフ 全体 ノードの 重要度評価 コミュニティや 特徴的な経路の発⾒ 局所的特徴 ⼤局的特徴
はじめにグラフ全体の特徴を理解することは重要 ノード 単体 グラフの 部分構造
グラフの⼤きさを⽰す指標: ノード数 グラフに含まれるノードの数 1 0 2 3 4 5 |
V | = 6 # NetworkXを使う場合 V = G.nodes() len(V) # 以下でもOK G.number_of_nodes()
グラフの⼤きさを⽰す指標: 直径 (diameter) グラフに属するノード間の距離の最大値 1 0 2 3 4 5
(最も離れているノード同⼠の距離) 1 0 4 2 3 5 d = 3 d = 1
グラフの⼤きさを⽰す指標: 直径 (diameter) d = ? グラフに属するノード間の距離の最大値 (最も離れているノード同⼠の距離) 1 0
4 2 3 5
グラフの⼤きさを⽰す指標: 直径 (diameter) d = 3 グラフに属するノード間の距離の最大値 (最も離れているノード同⼠の距離) 1 0
4 2 3 5 # NetworkXを使う場合 nx.diameter(G)
余談: 離⼼数 (eccentricity) 注目ノードから他ノードへの距離の最大値 1 0 2 3 4 5
ノード0の離⼼数 = 3 1 0 2 3 4 5 ノード2の離⼼数 = 2 グラフの直径とは「グラフ中のノード離心数の最大値」
グラフの⼤きさを⽰す指標: 半径 (radius) グラフに属するノードの離心数の最小値 1 0 2 3 4 5
1 0 4 2 3 5 半径r = 2 r = 1 (直径d = 3) (直径d = 1)
グラフの⼤きさを⽰す指標: 半径 (radius) r = ? 1 0 4 2
3 5 グラフに属するノードの離心数の最小値
グラフの⼤きさを⽰す指標: 半径 (radius) r = 3 グラフに属するノードの離心数の最小値 1 0 4
2 3 5 # NetworkXを使う場合 nx.radius(G)
グラフの密度 (density) グラフ中のノード間に張ることのできる すべての辺に対する、実際の辺の数の割合 1 0 2 3 4 5
ノード集合をV、 エッジ集合をEとすると = | E | | V | C2 密度 密度 = ! "#$ nx.density(G) # NetworkXを使う場合
グラフの密度 (density) グラフ中のノード間に張ることのできる すべての辺に対する、実際の辺の数の割合 密度 = ! !"# = 0.4
1 0 4 2 3 5 1 0 4 2 3 5 密度 = 1
完全グラフ(complete graph) グラフ中の全ノード間にエッジが張られている グラフを完全グラフと呼ぶ 1 0 4 2 3 5
密度 = 1
連結性 グラフ中の任意のノード間に経路が存在する とき、そのグラフは「連結グラフ」という 1 0 4 2 3 5 連結グラフ
1 0 4 2 3 5 ⾮連結グラフ
連結性 グラフ中の任意のノード間に経路が存在する とき、そのグラフは「連結グラフ」という 1 0 4 2 3 5 連結グラフ
nx.is_connected(G) # NetworkXを使う場合 # 左のグラフにはTrueを返す
強連結 有向グラフ中の任意のノード間に有向経路が 存在するとき、そのグラフは「強連結」である 1 0 4 2 3 5 強連結である
1 0 4 2 3 5 強連結でない
強連結 有向グラフ中の任意のノード間に有向経路が 存在するとき、そのグラフは「強連結」である 1 0 4 2 3 5 強連結である
nx.is_strongly_connected(G) # NetworkXを使う場合 # 左のグラフにはTrueを返す
次数分布 次数 (degree) ノードに接続しているエッジの数 次数分布 § グラフに属するノードの次数の分布 § ⼤きさや密度が同じでも次数分布が異なることもある 1
0 2 3 4 ノード2の次数 = 3 ノード4の次数 = 1
次数分布 次数 (degree) ノードに接続しているエッジの数 次数分布 § グラフに属するノードの次数の分布 § ⼤きさや密度が同じでも次数分布が異なることもある 1
0 2 3 4 G.degree[2] # NetworkXを使う場合 # ノード2の次数(=3)を返す
同じノード数,密度を持つのに次数分布が異なるグラフの例
Hands-on タイム 以下のURLにアクセスして, 第10回のクイズを解いてみよう https://graphnote.hontolab.org/ 23
回 実施日 トピック 9 06/13 グラフデータ 10 06/20 グラフ構造の諸指標 11
06/27 ノードの中心性 12 07/04 コミュニティ発見 13 07/11 ウェブグラフ 14 07/18 グラフ埋め込み 15 07/25 総合演習 – 社会ネットワーク分析 授業計画 24