Slide 1

Slide 1 text

良いnode embeddingとは? 2021.05.14 ML勉強会 Sansan株式会社 DSOC R&D研究員 ⼤垣

Slide 2

Slide 2 text

Data Strategy and Operation Center ࣗݾ঺հ • 2016/03 ⼤阪⼤学 ⼤学院理学研究科 数学専攻 博⼠後期課程 修了 • 2016/04~ ⾦融SI, スタートアップで クオンツ, データサイエンティスト • 2020/09 Sansan株式会社 ⼊社 ⼤垣 翔 Sho Ogaki Sansan 株式会社 DSOC(Data Strategy & Operation Center) R&D Data Analysis Group 研究員 オンライン名刺

Slide 3

Slide 3 text

Data Strategy and Operation Center Agenda 2 1. Node Embedding と 今⽇の話の背景 2. Link Prediction と Node Classification による評価 3. グラフ距離 4. Distortion と 絶対値誤差 による評価

Slide 4

Slide 4 text

Node Embedding と 背景

Slide 5

Slide 5 text

Data Strategy and Operation Center Node Embeddingとは 4 1. G=(N, E): グラフ(N: 頂点集合、E: 辺集合) 2. Node Embeddingとは l f: N -> X: 単射 l X: Embedding Space(連続的な空間。ユークリッド空間、超球⾯、双曲空間、 リーマン多様体など。) 3. ただし、単なる単射だと素朴すぎる l Nは、グラフ由来の情報(辺のこと)をもつので、その情報がembeddingに反 映されていて欲しい l “良い“ embedding = 辺の情報がうまく反映されているembeddingのこと

Slide 6

Slide 6 text

Data Strategy and Operation Center (良い)Node Embeddingがあるとうれしいこと 5 1. ⼀般的に、離散データ(グラフ⾃体)の取り扱いは難しいので、 embeddingにより頂点を連続の世界で取り扱える l とくに、微分が使える 2. Node embeddingは、以下のようなことをするために⽤いられる l グラフに対するタスクを解く(pre-trainモデル) l 頂点間の類似度を測る l 頂点を可視化する

Slide 7

Slide 7 text

Data Strategy and Operation Center 1. Sansanは名刺交換データから作られるグラフを活⽤できる 2. このグラフを取り扱う⽅法の1つとして、node embeddingを持っておきた い l 巨⼤なグラフなので、必要になった都度、学習するのは⼿間 l 頂点が組織だと、頂点数は数百万のオーダーになる l 頂点が個⼈だと、頂点数は数千万のオーダーになる 3. Embeddingの良さを正確に測れるようになることで、モデル/学習⽅法の ⽐較、採⽤する/しないの判断、をより⾃信を持ってできるようにしたい 4. そのため、embeddingの評価⽅法について調査した l なので、今⽇は俯瞰的な話 今⽇の話をする背景 6

Slide 8

Slide 8 text

Data Strategy and Operation Center Agenda 7 1. Node Embedding と 今⽇の話の背景 2. Link Prediction と Node Classification による評価 3. グラフ距離 4. Distortion と 絶対値誤差 による評価

Slide 9

Slide 9 text

Link Prediction と Node Classification

Slide 10

Slide 10 text

Data Strategy and Operation Center l Node embeddingの論⽂をみると、その評価は、Link Prediction や Node Classification でなされることが多い l Link Predictionは、頂点間に辺があるかの2値分類 l Node Classificationは、頂点に対する分類 l なので、まずはこの2つを取り上げる Link Prediction, Node Classification 9

Slide 11

Slide 11 text

Data Strategy and Operation Center Link Prediction l まさに、辺の情報が保持できているかを判定するタスク l 評価⽅法として良さそう l 2値分類なので、各々の辺の有無に対する連続的な評価はできない l 「辺が無い」と推論を間違えた場合に、どれぐらい間違えたかは分からない l 精度が⾼くても、⼤局的に⾒ると改善点がある可能性はある l あとで例⽰ Link Prediction, Node Classification 10

Slide 12

Slide 12 text

Data Strategy and Operation Center Node Classification l 分類対象のラベルはあくまで付加情報 l ⼀般的に使える評価⽅法ではない l 重要な分類タスクがある場合は使⽤する(例: CVの画像分類) l 名刺交換グラフについては、これいった分類対象は思いついていない l なので、今回は対象外 Link Prediction, Node Classification 11

Slide 13

Slide 13 text

Data Strategy and Operation Center Link Prediction: 例 12 1. 左:グラフ, 右:embeddedグラフ 2. B1は、Link Prediction的にはそれ なりに良いが、改善点のある embedding l 灰⾊⽮印が差す頂点は、グラフ上 では辺6つ分離れているが、 embeddingではそれ程離れてない https://arxiv.org/abs/2011.14211 より引⽤

Slide 14

Slide 14 text

Data Strategy and Operation Center Link Prediction: 例 13 1. 左:グラフ, 右:embeddedグラフ 2. B2はかなり理想的なembedding 3. B1とB2が区別できるような、よ り良い評価⽅法を⽬指すなら、辺 (の有無)だけでなく、パスも考 慮して評価した⽅が良さそう 4. →頂点集合に対して、パス由来の 距離(グラフ距離)を導⼊する https://arxiv.org/abs/2011.14211 より引⽤

Slide 15

Slide 15 text

Data Strategy and Operation Center Agenda 14 1. Node Embedding と 今⽇の話の背景 2. Link Prediction と Node Classification による評価 3. グラフ距離 4. Distortion と 絶対値誤差 による評価

Slide 16

Slide 16 text

グラフ距離

Slide 17

Slide 17 text

Data Strategy and Operation Center l 距離空間は「集合 と その上の距離 の組」と定義する 距離の定義 16 IUUQEPQBMDTVFDBDKQPLBNPUPZMFDUNFUFNCMFDUQEG ΑΓҾ༻

Slide 18

Slide 18 text

Data Strategy and Operation Center l 連結なグラフ 𝐺 = 𝑁, 𝐸 に対して、頂点集合 𝑁 上に距離を「最短パスの⻑ さ」で定義する l 𝑑! 𝑚, 𝑛 = min ":$%&' ( &) * length 𝑝 𝑚, 𝑛 ∈ 𝑁 l なお、1辺の⻑さは 1 とする(決めの問題なので、3.14や57などでもいい) l 注意点 l 連結でないと、パスがない頂点ペアがあるので、距離が定義できない l 最短パスを⾒つけるには時間がかかるので、グラフが⼤きいと距離を完全に決 定するのは難しい l この2つについては、最後にコメントする グラフ距離 17

Slide 19

Slide 19 text

Data Strategy and Operation Center 1. 下の四⾓形グラフだと l 距離は、対⾓頂点間(ad, bc)が2、それ以外は1 2. 名刺交換グラフ(頂点: 個⼈、辺: 名刺交換あり)だと l 距離は、名刺交換を辿った時にたどり着く最少⼈数 グラフ距離: 例 18

Slide 20

Slide 20 text

Data Strategy and Operation Center 1. Embedding Space 𝑋 を距離空間とする 2. すると、「node embedding 𝑓: 𝑁 → 𝑋 が良い」ということを「グラフ由来 の距離 𝑑! とembedded spaceでの距離 𝑑" の”乖離が⼩さい”」と定式化で きそう ʮ𝑑! 𝑚, 𝑛 ͱ 𝑑" (𝑓 𝑚 , 𝑓 𝑛 ) の乖離(𝑚, 𝑛௖఺ʣ」を定義すればよい 4. 数学では、NFUSJDFNCFEEJOHという分野 l -FDUVSF/PUFはいろいろあるʢNFUSJDFNCFEEJOHで検索) l ⽇本語だと: http://dopal.cs.uec.ac.jp/okamotoy/lect/2010/metemb/lect1.pdf Node Embedding with 距離 19

Slide 21

Slide 21 text

Data Strategy and Operation Center Metric Embedding: 例 20 l 左:グラフ, 右:embeddedグラフ 1. 辺(グラフだと⻑さ1)は、B1の ユークリッド距離だと 0.5~1 ぐら いに分布 2. B1の灰⾊⽮印の2頂点について l グラフ距離は 6 l ユークリッド距離は 1.3 ぐらい 3. なので、距離の視点から改善の余 地がまだまだあると⾔えそう https://arxiv.org/abs/2011.14211 より引⽤

Slide 22

Slide 22 text

Data Strategy and Operation Center 𝑑! 𝑚, 𝑛 と 𝑑"(𝑓 𝑚 , 𝑓 𝑛 ) の乖離ʢ𝑚, 𝑛頂点ʣを定式化する 2. 「乖離」の測り⽅として、⼤きく分けると「差分で測る⽅法」と「⽐率で 測る⽅法」が考えられる 3. 以下の2つが基本的 l 絶対値誤差(差分) l 𝑑! 𝑚, 𝑛 − 𝑑" 𝑓 𝑚 , 𝑓 𝑛 (≥ 0) l %JTUPSUJPO(⽐率、拡⼤率/縮⼩率) l max . /#! $ % , $ ' #" %, ' , #" %,' #! $ % ,$ ' (≥ 1) 距離の乖離: 定式化 21

Slide 23

Slide 23 text

Data Strategy and Operation Center l 下の四⾓形グラフのユークリッド空間へのembeddingを考える l 頂点ペアa, dに対して l 絶対値誤差は 2 − 2 l %JTUPSUJPOは # + + = 2 距離の乖離: 例 22

Slide 24

Slide 24 text

Data Strategy and Operation Center Agenda 23 1. Node Embedding と 今⽇の話の背景 2. Link Prediction と Node Classification による評価 3. グラフ距離 4. Distortion と 絶対値誤差 による評価

Slide 25

Slide 25 text

Distortion

Slide 26

Slide 26 text

Data Strategy and Operation Center l Node embedding 𝑓: 𝑁 → 𝑋 に対するdistortionを以下で定義 l Dist 𝑓 = max (,*∈. /! 0 ( , 0 * /" (, * max (,*∈. /" (,* /! 0 ( , 0 * l つまり、Distortion は 拡⼤率の最⼤値 × 縮⼩率の最⼤値 というもの l 理論観点だと、それぞれの最⼤値の積とした⽅が取り扱いやすい l 例 l 前節に挙げた例(四⾓形グラフのembedding)のdistortionは 2 Distortion 25

Slide 27

Slide 27 text

Data Strategy and Operation Center l Node embedding 𝑓: 𝑁 → 𝑋 に対するdistortionを以下で定義 l Dist 𝑓 = max (,*∈. /! 0 ( , 0 * /" (, * max (,*∈. /" (,* /! 0 ( , 0 * l つまり、Distortion は 拡⼤率の最⼤値 × 縮⼩率の最⼤値 というもの l 理論観点だと、それぞれの最⼤値の積とした⽅が取り扱いやすい l ML分野でも、distortionが使われている論⽂はちらほらある l Node embedding、次元削減など(Metric embeddingが使える問題) l https://arxiv.org/abs/2011.14211 l Node embeddingの⼿法、lossにdistortionを使⽤ Distortion 26

Slide 28

Slide 28 text

Data Strategy and Operation Center l Distortionは、Metric Embeddingでの重要な評価指標 l 以下は基礎的な結果 l 定理 (Bourgain ’85) l 任意の有限グラフに対して、ユークリッド空間へのnode embeddingͰ distortionが 𝑶(𝒍𝒐𝒈 𝒏) となるものがあるʢ𝑛は頂点数ʣ l ⽂献 l 原論⽂: https://doi.org/10.1007/BF02776078 l たいていのMetric EmbeddingのLecture Noteには説明してある l 精密化した論⽂: https://doi.org/10.1016/j.aim.2011.08.003 l さらに、次元を𝑂 log 𝑛 , average distortionを𝑂 1 にできる Distortion 27

Slide 29

Slide 29 text

絶対値誤差

Slide 30

Slide 30 text

Data Strategy and Operation Center /PEFFNCFEEJOH𝑓: 𝑁 → 𝑋 に対する絶対値誤差を以下で定義 l 𝐴𝐸 𝑓 = min 234 max (,*∈. 𝑘𝑑! 𝑚, 𝑛 − 𝑑5 𝑓 𝑚 , 𝑓 𝑛 できれば以下の式で定義したい l max (,*∈. 𝑑! 𝑚, 𝑛 − 𝑑5 𝑓 𝑚 , 𝑓 𝑛 l が、グラフ距離に対するスケーリングの考慮が必要 l 𝑘 がグラフの1辺の距離 l Distortionはスケーリング不変になるように定義してあるので、気にしなくて よい 絶対値誤差 29

Slide 31

Slide 31 text

Data Strategy and Operation Center /PEFFNCFEEJOH𝑓: 𝑁 → 𝑋 に対する絶対値誤差を以下で定義 ˔ 𝐴𝐸 𝑓 = min 234 max (,*∈. 𝑘𝑑! 𝑚, 𝑛 − 𝑑5 𝑓 𝑚 , 𝑓 𝑛 ˔ 数学だと、Coarse Geometry(粗幾何)で使われる ˔ ⽇本語だと「粗幾何学⼊⾨(SGCライブラリ。深⾕)」という本がある ˔ MLだと、Poincaré embeddingと関係している 絶対値誤差 30

Slide 32

Slide 32 text

Data Strategy and Operation Center 論⽂:https://arxiv.org/abs/1705.08039 サマリ l ツリーから双曲空間へのembeddingを作る⽅法 l Link PredictionやReconstructionのタスクに対して、ユークリッド空間への embedding(node2vec)と⽐較して、「⾼精度」かつ「Embedding Space が低次元」な結果を得た l ツリーの例→ Poincaré Embedding 31 https://ptwiddle.github.io/Graph-Theory-Notes/s_intro_trees.html より引⽤

Slide 33

Slide 33 text

Data Strategy and Operation Center 定理 (Bonk-Schramm ’11) l 任意の(頂点が無限個の)ツリーに対して、双曲空間へのnode embeddingで 絶対値誤差が有限となるものがある ⽂献 l 原論⽂: https://doi.org/10.1007/978-1-4419-9675-6_10 l 前述の「粗幾何学⼊⾨(SGCライブラリ。深⾕さん)」でも紹介されている 絶対値誤差とPoincaré Embedding 32

Slide 34

Slide 34 text

Data Strategy and Operation Center 定理 (Bonk-Schramm ’11) l 任意の(頂点が無限個の)ツリーに対して、双曲空間へのnode embeddingで 絶対値誤差が有限となるものがある 補⾜ 1. 「絶対値誤差が有限」は強い主張 l グラフでの距離の⼤きさによらず、Embedding Spaceでの距離との差は⼀定以内 であるため(頂点無限のツリーだと、距離がいくらでも⼤きい2頂点がある) 2. 「双曲空間」を「ユークリッド空間」に置き換えるとこの主張は不成⽴ 3. まとめると、ツリーのEmbedding Spaceとしては、ユークリッド空間より 双曲空間の⽅が(ずっと)良い 絶対値誤差とPoincaré Embedding 33

Slide 35

Slide 35 text

Data Strategy and Operation Center 定理 (Bonk-Schramm ’11) l 任意の(頂点が無限個の)ツリーに対して、双曲空間へのnode embeddingで 絶対値誤差が有限となるものがある コメント l ツリーでないグラフについても、(双曲空間を別の多様体に変えることで)こ の種の結果が欲しい、、 l が、いまのところまとまった結果はなさそう 絶対値誤差とPoincaré Embedding 34

Slide 36

Slide 36 text

まとめ

Slide 37

Slide 37 text

Data Strategy and Operation Center 1. Link Prediction l 実践寄り l 具体的に計算するなら、とりあえずこれ 2. Distortion l 実践と理論の両⽅ l 頂点間の離れ具合いを連続的に評価したいとき l 理論に基づく評価がある 3. 絶対値誤差 l 理論寄り l この指標で理論評価がなされると嬉しい l 実際のembeddingの評価では⾒たことがない(論⽂があれば読みたい) Node Embedding 評価⽅法のまとめ 36

Slide 38

Slide 38 text

Data Strategy and Operation Center 1. グラフが連結でない場合、連結成分ごとにしか距離を定義できない l パスのつながらない頂点ペアに対する評価も必要 l Link Predictionは、負例にそのような頂点ペアが含まれるので、その意味で評 価されている 2. グラフ距離を求めるには、最短パスを⾒つける必要があるが、⼀般には時 間がかなりかかる l サンプリングするなり、パスの⻑さに制限を加えるなり、考慮する頂点やパス を⼀部に制限した上で、評価する必要がありそう l Link Predictionは、⻑さ1のパスだけ考慮しているとみなせる Distortionや絶対値誤差を実際に使う場合の課題 37

Slide 39

Slide 39 text

さいごに

Slide 40

Slide 40 text

Data Strategy and Operation Center l ここで話したDistortionや絶対値誤差とは、異なる評価⼿法もある l 例えば: https://arxiv.org/abs/1906.04562 l パスより⼀般に、部分グラフに着⽬してnode embeddingを評価 l 今⽇は俯瞰な話 l 「実際、名刺交換グラフのnode embeddingをどのように評価することにした か」という実践の話は、将来どこかの機会に話したい(予定は未定) l 今年のインターンのテーマ候補のひとつ l 興味が湧かれた⽅はぜひ ➤ https://www.wantedly.com/projects/625615 さいごに 39

Slide 41

Slide 41 text

No content