κ·Έλž˜ν”„ 신경망

[λ²ˆμ—­] A Gentle Introduction to Graph Neural Networks β‘’
GNN
GRAPH
TRANSLATION
Author

chichead

Published

April 1, 2023

GNN(Graph Neural Networks)

μ΄μ œλΆ€ν„°λŠ” κ·Έλž˜ν”„κ°€ μˆœμ—΄ λΆˆλ³€(Permutation invariant)의 ν–‰λ ¬ ν˜•μ‹μ΄ λ˜μ–΄ μžˆλ‹€κ³  ν•˜κ³ , κ·Έλž˜ν”„ 예츑 μž‘μ—…μ„ ν•΄κ²°ν•˜κΈ° μœ„ν•΄ GNN을 μ‚¬μš©ν•˜λŠ” 방법을 μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€. GNN은 κ·Έλž˜ν”„μ˜ λͺ¨λ“  속성(λ…Έλ“œ, 엣지, μ „μ—­)에 λŒ€ν•΄ κ·Έλž˜ν”„ λŒ€μΉ­μ„±(μˆœμ—΄ λΆˆλ³€μ„±)을 μœ μ§€ν•˜λŠ” μ΅œμ ν™”λœ λ³€ν™˜ κ³Όμ •μž…λ‹ˆλ‹€. 이번 글에선 Graph Nets architecture schematicsλ₯Ό ν™œμš©ν•œ β€œλ©”μ‹œμ§€ 전달 신경망(Message Passing Neural Network)” ν”„λ ˆμž„μ›Œν¬λ₯Ό μ΄μš©ν•΄μ„œ GNN을 κ΅¬μΆ•ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€. GNN은 β€œκ·Έλž˜ν”„-인, κ·Έλž˜ν”„-아웃” μ•„ν‚€ν…μ²˜λ₯Ό μ±„νƒν•©λ‹ˆλ‹€. 이 μ•„ν‚€ν…μ³λŠ” GNN λͺ¨λΈμ΄ λ…Έλ“œ, 엣지 및 전역에 정보가 λ‹΄κ²¨μžˆλŠ” κ·Έλž˜ν”„λ₯Ό μž…λ ₯κ°’μœΌλ‘œ 받아듀이고 μž…λ ₯된 κ·Έλž˜ν”„μ˜ 연결성을 λ³€ν™”μ‹œν‚€μ§€ μ•ŠμœΌλ©΄μ„œ μž„λ² λ”©μ„ μ μ§„μ μœΌλ‘œ λ³€ν™˜ν•©λ‹ˆλ‹€.


The Simplest GNN

μš°μ„  κ·Έλž˜ν”„μ˜ 연결성을 μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” κ°€μž₯ κ°„λ‹¨ν•œ GNN μ•„ν‚€ν…μ²˜λΆ€ν„° μ‹œμž‘ν•˜κ² μŠ΅λ‹ˆλ‹€. 이전 λ‹€μ΄μ–΄κ·Έλž¨μ—μ„œλŠ” λ‹¨μˆœν•˜κ²Œ ν‘œν˜„ν•˜κΈ° μœ„ν•΄ 슀칼라λ₯Ό μ‚¬μš©ν•΄μ„œ κ·Έλž˜ν”„ 속성을 ν‘œν˜„ν–ˆμ§€λ§Œ μ‹€μ œλ‘œλŠ” 피쳐 벑터λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

이 GNN은 κ·Έλž˜ν”„μ˜ 각 κ΅¬μ„±μš”μ†Œμ— λŒ€ν•΄ λ³„λ„μ˜ λ‹€μΈ΅ νΌμ…‰νŠΈλ‘ (MLP)을 μ‚¬μš©ν•©λ‹ˆλ‹€. μš°λ¦¬λŠ” 이걸 GNN λ ˆμ΄μ–΄λΌκ³  λΆ€λ¦…λ‹ˆλ‹€. 각 λ…Έλ“œ 벑터에 λŒ€ν•΄ MLPλ₯Ό μ μš©ν•˜κ³  ν•™μŠ΅λœ λ…Έλ“œ 벑터λ₯Ό λ‹€μ‹œ κ°€μ Έμ˜΅λ‹ˆλ‹€. 각 에지에 λŒ€ν•΄μ„œλ„ λ™μΌν•œ μž‘μ—…μ„ μˆ˜ν–‰ν•΄μ„œ 엣지별 μž„λ² λ”©μ„ ν•™μŠ΅ν•©λ‹ˆλ‹€. 또 전체 κ·Έλž˜ν”„μ— λŒ€ν•΄μ„œλ„ 단일 μž„λ² λ”©μ„ ν•™μŠ΅ν•˜λŠ” μ „μ—­ μ»¨ν…μŠ€νŠΈ 벑터에 λŒ€ν•΄μ„œλ„ λ™μΌν•œ μž‘μ—…μ„ μˆ˜ν–‰ν•©λ‹ˆλ‹€.



κ°„λ‹¨ν•œ GNN의 단일 λ ˆμ΄μ–΄ μ΄λ―Έμ§€μž…λ‹ˆλ‹€. κ·Έλž˜ν”„κ°€ μž…λ ₯값이고 각 κ΅¬μ„±μš”μ†Œ(V, E, U)λŠ” MLP에 μ˜ν•΄ μ—…λ°μ΄νŠΈλ˜μ–΄ μƒˆλ‘œμš΄ κ·Έλž˜ν”„λ₯Ό μƒμ„±ν•©λ‹ˆλ‹€.

GNN은 μž…λ ₯된 κ·Έλž˜ν”„μ˜ 연결성을 μ—…λ°μ΄νŠΈν•˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμ— μž…λ ₯ κ·Έλž˜ν”„μ™€ λ™μΌν•œ 인접성 λͺ©λ‘(adjacency list)κ³Ό λ™μΌν•œ 수의 피쳐 λ²‘ν„°λ‘œ GNN 좜λ ₯ κ·Έλž˜ν”„λ₯Ό μ„€λͺ…ν•©λ‹ˆλ‹€. ν•˜μ§€λ§Œ 좜λ ₯ κ·Έλž˜ν”„μ—λŠ” λ…Έλ“œ, 엣지 및 μ „μ—­ μ»¨ν…μŠ€νŠΈκ°€ μ—…λ°μ΄νŠΈλ˜λ―€λ‘œ μž„λ² λ”©μ΄ μ—…λ°μ΄νŠΈ 되죠. 정리해보면 GNN은 μž…λ ₯ν•œ κ·Έλž˜ν”„μ˜ 연결성을 λ³€κ²½ν•˜μ§€ μ•Šκ³  μž„λ² λ”©μ„ μ μ§„μ μœΌλ‘œ λ³€ν™˜ν•©λ‹ˆλ‹€.


GNN Predictions by Pooling Information

자, 이제 κ°„λ‹¨ν•œ GNN을 κ΅¬μΆ•ν–ˆμŠ΅λ‹ˆλ‹€. κ·Έλ ‡λ‹€λ©΄ μœ„μ—μ„œ μ„€λͺ…ν•œ μž‘μ—…μ—μ„œ μ–΄λ–»κ²Œ μ˜ˆμΈ‘μ„ ν•  수 μžˆλŠ” κ±ΈκΉŒμš”?

μ—¬κΈ°μ„œλŠ” 이진 λΆ„λ₯˜μ˜ 경우λ₯Ό μ„€λͺ…ν•˜κ² μ§€λ§Œ, 이 ν”„λ ˆμž„μ›Œν¬λŠ” μ‰½κ²Œ 닀쀑 ν΄λž˜μŠ€λ‚˜ νšŒκ·€λ‘œ ν™•μž₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€. κ·Έλž˜ν”„μ— 이미 λ…Έλ“œ 정보가 ν¬ν•¨λ˜μ–΄ μžˆλ‹€λ©΄, λ…Έλ“œμ— λŒ€ν•œ 이진 μ˜ˆμΈ‘μ„ μœ„ν•΄ 각 λ…Έλ“œ μž„λ² λ”©μ— μ„ ν˜• λΆ„λ₯˜κΈ°(linear classifier)λ₯Ό μ μš©ν•˜λ©΄ 될 κ²λ‹ˆλ‹€.

ν•˜μ§€λ§Œ λ¬Όλ‘  항상 κ°„λ‹¨ν•œ 일만 μžˆλŠ” 건 μ•„λ‹ˆκ² μ£ . 예λ₯Ό λ“€μ–΄ κ·Έλž˜ν”„ μ—£μ§€μ—λŠ” 정보가 μžˆμ§€λ§Œ λ…Έλ“œμ—λŠ” 정보가 μ—†λŠ” 경우라면 μ–΄λ–¨κΉŒμš”? λ…Έλ“œ μ˜ˆμΈ‘μ„ μœ„ν•΄μ„  μ—£μ§€μ—μ„œ 정보λ₯Ό μˆ˜μ§‘ν•΄μ„œ λ…Έλ“œμ— ν•΄λ‹Ή 정보λ₯Ό μ œκ³΅ν•  수 μžˆλŠ” 방법이 ν•„μš”ν•©λ‹ˆλ‹€. κ·Έ 방법은 λ°”λ‘œ 풀링(Pooling)μž…λ‹ˆλ‹€. 풀링은 2λ‹¨κ³„λ‘œ κ΅¬μ„±λ©λ‹ˆλ‹€.

1.풀링할 각 ν•­λͺ©μ— λŒ€ν•΄ 각 μž„λ² λ”©μ„ μˆ˜μ§‘ν•΄ ν–‰λ ¬λ‘œ μ—°κ²°

2.μˆ˜μ§‘λœ μž„λ² λ”©μ€ 합계 연산을 톡해 집계

풀링 연산은 \(\rho\)둜 ν‘œν˜„ν•˜κ³ , μ—£μ§€μ—μ„œ λ…Έλ“œλ‘œ 정보λ₯Ό μˆ˜μ§‘ν•˜λŠ” 것을 \(P_{E_{n} \rightarrow V_{n}}\)으둜 λ‚˜νƒ€λƒ…λ‹ˆλ‹€.

엣지 μˆ˜μ€€μ˜ μ •λ³΄λ§Œ μžˆλ‹€λ©΄ 풀링을 μ΄μš©ν•΄μ„œ 정보λ₯Ό ν•„μš”ν•œ 곳으둜 λΌμš°νŒ… ν•˜μ„Έμš”. λͺ¨λΈμ€ μ•„λž˜μ™€ κ°™μŠ΅λ‹ˆλ‹€.



λ§Œμ•½ λ…Έλ“œ μˆ˜μ€€μ˜ μ •λ³΄λ§Œ 있고, 이진 엣지 μˆ˜μ€€ 정보λ₯Ό μ˜ˆμΈ‘ν•˜λŠ” κ²½μš°μ—λ„ μ•„λž˜ λͺ¨λΈμ„ μ΄μš©ν•˜λ©΄ λ©λ‹ˆλ‹€.



λ…Έλ“œ μˆ˜μ€€μ˜ μ •λ³΄λ§Œ 있고, 이진 κΈ€λ‘œλ²Œ 속성을 μ˜ˆμΈ‘ν•΄μ•Ό ν•˜λŠ” κ²½μš°μ—λŠ” μ–΄λ–¨κΉŒμš”? 이 κ²½μš°μ—” μ‚¬μš© κ°€λŠ₯ν•œ λͺ¨λ“  λ…Έλ“œ 정보λ₯Ό ν•œλ° λͺ¨μ•„ μ§‘κ³„ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ 접근은 CNN의 Global Average Pooling λ ˆμ΄μ–΄μ™€ μœ μ‚¬ν•©λ‹ˆλ‹€. 엣지 μ •λ³΄λ§Œ μžˆμ„ λ•Œλ„ λ§ˆμ°¬κ°€μ§€κ³ μš”.



보톡 λΆ„μž 속성을 μ˜ˆμΈ‘ν•  λ•Œκ°€ 이런 κ²½μš°μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ μ›μž 정보와 연결성이 μžˆλŠ” κ²½μš°μ— λΆ„μžμ˜ 독성 여뢀와 νŠΉμ •ν•œ ν–₯κΈ°(μž₯λ―Έ) μ—¬λΆ€λ₯Ό ν™•μΈν•œλ‹€λ©΄ μœ„ λͺ¨λΈμ„ μ‚¬μš©ν•˜λ©΄ λ©λ‹ˆλ‹€. μ˜ˆμ œμ—μ„œ λ“±μž₯ν•˜λŠ” λΆ„λ₯˜ λͺ¨λΈ \(c\)λŠ” λ‹€λ₯Έ Differentiable Modelλ‘œλ„ λŒ€μ²΄ν•  수 있고, ν˜Ήμ€ μ„ ν˜• λͺ¨λΈμ„ μ΄μš©ν•΄ 닀쀑 클래슀 λΆ„λ₯˜μ—λ„ μ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.



μ§€κΈˆκΉŒμ§€ κ°„λ‹¨ν•œ GNN λͺ¨λΈμ„ κ΅¬μΆ•ν•˜κ³ , κ·Έλž˜ν”„μ˜ μ„œλ‘œ λ‹€λ₯Έ λΆ€λΆ„ κ°„μ˜ 정보λ₯Ό λΌμš°νŒ…ν•˜λ©΄μ„œ 이진 μ˜ˆμΈ‘μ„ ν•˜λŠ” ꡬ쑰λ₯Ό μ‚΄νŽ΄λ΄€μŠ΅λ‹ˆλ‹€. 이 풀링 기법은 보닀 μ •κ΅ν•œ GNN λͺ¨λΈμ„ κ΅¬μΆ•ν•˜κΈ° μœ„ν•œ λΉŒλ”© 블둝 역할을 ν•  κ²λ‹ˆλ‹€. λ§Œμ•½ μƒˆλ‘œμš΄ κ·Έλž˜ν”„ 속성이 μžˆλ‹€λ©΄, ν•œ μ†μ„±μ—μ„œ λ‹€λ₯Έ μ†μ„±μœΌλ‘œ 정보λ₯Ό μ „λ‹¬ν•˜λŠ” 방법을 μ •μ˜ν•˜κΈ°λ§Œ ν•˜λ©΄ λ©λ‹ˆλ‹€.

μ§€κΈˆκΉŒμ§€ μ‚΄νŽ΄λ³Έ GNN κ³΅μ‹μ—μ„œλŠ” GNN λ ˆμ΄μ–΄ λ‚΄λΆ€μ—μ„œ κ·Έλž˜ν”„μ˜ 연결성을 μ „ν˜€ μ‚¬μš©ν•˜μ§€ μ•Šλ‹€λŠ” λ‹€λŠ” 점 μœ μ˜ν•˜μ‹œκΈΈ λ°”λžλ‹ˆλ‹€. 각 λ…Έλ“œλŠ” λ…λ¦½μ μœΌλ‘œ μ²˜λ¦¬λ©λ‹ˆλ‹€. 엣지도 λ§ˆμ°¬κ°€μ§€κ³ , μ „μ—­ μ»¨ν…μŠ€νŠΈλ„ λ§ˆμ°¬κ°€μ§€ μž…λ‹ˆλ‹€. μ˜ˆμΈ‘μ„ μœ„ν•΄ 정보λ₯Ό 풀링할 λ•Œλ§Œ κ·Έλž˜ν”„μ˜ 연결성을 μ‚¬μš©ν•©λ‹ˆλ‹€.


Passing messages between parts of the graph

μ§€κΈˆλΆ€ν„°λŠ” GNN λ ˆμ΄μ–΄ λ‚΄λΆ€μ—μ„œ κ·Έλž˜ν”„μ˜ 연결성을 μ‚¬μš©ν•˜λŠ” 방법을 μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€. ν•™μŠ΅λœ μž„λ² λ”©μ΄ κ·Έλž˜ν”„ 연결성을 μΈμ‹ν•˜λ„λ‘ ν•˜κΈ° μœ„ν•΄μ„  GNN λ ˆμ΄μ–΄ λ‚΄μ—μ„œ 풀링을 μ‚¬μš©ν•˜λ©΄ λ©λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ 더 μ •κ΅ν•œ μ˜ˆμΈ‘μ„ ν•  수 있죠. μ΄μ›ƒν•œ λ…Έλ“œλ‚˜ 엣지가 μ„œλ‘œ 정보λ₯Ό κ΅ν™˜ν•΄μ„œ ν•΄λ‹Ή λ…Έλ“œμ˜ μƒνƒœλ₯Ό μ—…λ°μ΄νŠΈν•˜λŠ” 이λ₯Έλ°” Message Passing을 μ΄μš©ν•˜λ©΄ 이런 μ •κ΅ν•œ μ˜ˆμΈ‘μ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

Message Passing은 3λ‹¨κ³„λ‘œ μ§„ν–‰λ©λ‹ˆλ‹€.

  1. κ·Έλž˜ν”„μ˜ 각 λ…Έλ“œμ— λŒ€ν•΄ μΈμ ‘ν•œ λͺ¨λ“  λ…Έλ“œ μž„λ² λ”©μ„ μˆ˜μ§‘

  2. 합계 ν•©μˆ˜λ₯Ό 톡해 λͺ¨λ“  μž„λ² λ”©(λ©”μ‹œμ§€)을 집계합

  3. ν’€λ§λœ λͺ¨λ“  λ©”μ‹œμ§€λŠ” ν•™μŠ΅λœ 신경망(μ—…λ°μ΄νŠΈ ν•¨μˆ˜)을 톡해 전달

풀링이 λ…Έλ“œλ‚˜ 엣지에 μ μš©λ˜λŠ” κ²ƒμ²˜λŸΌ, Message Passing도 λ§ˆμ°¬κ°€μ§€ μž…λ‹ˆλ‹€. μ—¬νŠΌ 이 λ‹¨κ³„λŠ” κ·Έλž˜ν”„μ˜ 연결성을 κ΄„μš”ν•˜κΈ° μœ„ν•œ 핡심 κ³Όμ •μž…λ‹ˆλ‹€. μ΄μ œλΆ€ν„°λŠ” GNN λ ˆμ΄μ–΄μ—μ„œ Message Passingλ₯Ό λ”μš± μ •κ΅ν•˜κ²Œ λ³€ν˜•ν•˜μ—¬ ν‘œν˜„λ ₯κ³Ό μ„±λŠ₯이 ν–₯μƒλœ GNN λͺ¨λΈμ„ ν‘œν˜„ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€.



μ΄λ ‡κ²Œ 일련의 연산을 μ μš©ν•˜λ©΄ κ°€μž₯ κ°„λ‹¨ν•œ μœ ν˜•μ˜ MP GNN 계측이 λ©λ‹ˆλ‹€.

μ΄λŸ¬ν•œ μ ‘κ·Ό 방식은 ν•©μ„±κ³±(standard convolution)을 μ—°μƒμ‹œν‚΅λ‹ˆλ‹€. MP와 합성곱은 본질적으둜 μš”μ†Œμ˜ 값을 μ—…λ°μ΄νŠΈν•˜κΈ° μœ„ν•΄ μš”μ†Œμ˜ 이웃 정보λ₯Ό μ§‘κ³„ν•˜κ³  μ²˜λ¦¬ν•˜λŠ” μ—°μ‚°μž…λ‹ˆλ‹€. κ·Έλž˜ν”„μ—μ„œ μš”μ†ŒλŠ” λ…Έλ“œμ΄κ³  이미지에선 픽셀이죠. 차이점이라면 이미지에선 각 ν”½μ…€λ§ˆλ‹€ 정해진 수의 μΈμ ‘μš”μ†Œκ°€ μžˆμ§€λ§Œ κ·Έλž˜ν”„μ—μ„  인접 λ…Έλ“œμ˜ μˆ˜κ°€ κ°€λ³€μ μ΄λΌλŠ” κ±°κ² μ£ .

MP GNN λ ˆμ΄μ–΄λ₯Ό μŒ“μ•„μ˜¬λ¦¬λ©΄ κ²°κ΅­ 전체 κ·Έλž˜ν”„μ˜ 정보λ₯Ό 톡합할 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 그리고 μ„Έ λ ˆμ΄μ–΄λ₯Ό μ§€λ‚˜λ©΄ λ…Έλ“œ ν•˜λ‚˜λŠ” μžμ‹ μœΌλ‘œλΆ€ν„° μ„Έ 단계 떨어진 λ…Έλ“œμ— λŒ€ν•œ 정보λ₯Ό κ°–κ²Œ 될 κ²λ‹ˆλ‹€. μƒˆλ‘œμš΄ 정보 μ†ŒμŠ€λ₯Ό ν¬ν•¨ν•˜λ„λ‘ μ•„ν‚€ν…μ²˜ λ‹€μ΄μ–΄κ·Έλž¨μ„ μ—…λ°μ΄νŠΈ ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€.


μœ„ λ‹€μ΄μ–΄κ·Έλž¨μ€ 1도 거리의 인접 λ…Έλ“œλ₯Ό ν’€λ§ν•΄μ„œ κ·Έλž˜ν”„μ˜ λ…Έλ“œ ν‘œν˜„μ„ μ—…λ°μ΄νŠΈν•˜λŠ” GCN(Graph Convolutional Network) μ•„ν‚€ν…μ²˜μ˜ λͺ¨μ‹λ„μž…λ‹ˆλ‹€.


Learning edge representations

μš°λ¦¬κ°€ μ‚¬μš©ν•  데이터셋이 항상 λ…Έλ“œ, 엣지, μ „μ—­ μ»¨ν…μŠ€νŠΈμ— λͺ¨λ“  μœ ν˜•μ˜ 정보λ₯Ό ν¬ν•¨ν•˜λŠ” 건 μ•„λ‹κ²λ‹ˆλ‹€. λ…Έλ“œμ— λŒ€ν•œ μ˜ˆμΈ‘μ„ ν•˜κ³  μ‹Άμ§€λ§Œ 데이터셋에 엣지 μ •λ³΄λ§Œ μžˆλŠ” κ²½μš°μ—λŠ” 풀링을 μ‚¬μš©ν•΄μ„œ μ—£μ§€μ—μ„œ λ…Έλ“œλ‘œ 정보λ₯Ό λΌμš°νŒ…ν•˜λŠ” 방법을 μ†Œκ°œν•΄λ“œλ ΈμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ 이 방법은 λͺ¨λΈμ˜ μ΅œμ’… 예츑 λ‹¨κ³„μ—μ„œλ§Œ κ°€λŠ₯ν•©λ‹ˆλ‹€. 그럴 땐 MPλ₯Ό μ‚¬μš©ν•˜μ—¬ GNN λ ˆμ΄μ–΄ μ•ˆμ—μ„œ λ…Έλ“œμ™€ μ—£μ§€κ°„μ˜ 정보λ₯Ό κ³΅μœ ν•  수 μžˆμ„κ²λ‹ˆλ‹€.

μ•žμ„œ 이웃 λ…Έλ“œμ—μ„œ 정보λ₯Ό μˆ˜μ§‘ν•΄ μ‚¬μš©ν–ˆλ˜ κ²ƒμ²˜λŸΌ 엣지에도 μ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이웃 μ—£μ§€μ˜ 정보λ₯Ό ν’€λ§ν•˜κ³  μ—…λ°μ΄νŠΈ ν•¨μˆ˜λ‘œ λ³€ν™˜ν•œ λ’€ μ €μž₯ν•˜λŠ” μ‹μœΌλ‘œ 이웃 μ—£μ§€μ˜ 정보λ₯Ό 톡합할 수 μžˆμŠ΅λ‹ˆλ‹€.

ν•˜μ§€λ§Œ κ·Έλž˜ν”„μ— μ €μž₯된 λ…Έλ“œμ™€ 엣지 μ •λ³΄λŠ” ν¬κΈ°λ‚˜ λͺ¨μ–‘이 λ°˜λ“œμ‹œ 같은 건 μ•„λ‹ˆκΈ°μ— 이λ₯Ό κ²°ν•©ν•˜λŠ” 방식이 λͺ…ν™•ν•˜μ§€λŠ” μ•ŠμŠ΅λ‹ˆλ‹€. 이럴 λ•Œ μ“Έ 수 μžˆλŠ” 방법은 엣지 κ³΅κ°„μ—μ„œ λ…Έλ“œ κ³΅κ°„μœΌλ‘œ, ν˜Ήμ€ λ…Έλ“œ κ³΅κ°„μ—μ„œ 엣지 κ³΅κ°„μœΌλ‘œ μ„ ν˜• 맀핑을 ν•™μŠ΅ν•˜λŠ” κ²λ‹ˆλ‹€. ν˜Ήμ€ μ—…λ°μ΄νŠΈ ν•¨μˆ˜ 전에 이듀을 μ„œλ‘œ μ—°κ²°ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.



μ–΄λ–€ κ·Έλž˜ν”„ 속성을 λ¨Όμ € μ—…λ°μ΄νŠΈν• μ§€λŠ” GNN을 ꡬ성할 λ•Œ κ²°μ •ν•΄μ•Όν•  사항 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€. λ…Έλ“œ μž„λ² λ”©μ„ 엣지 μž„λ² λ”©λ³΄λ‹€ λ¨Όμ € μ—…λ°μ΄νŠΈν• μ§€, μ•„λ‹ˆλ©΄ κ·Έ λ°˜λŒ€λ‘œ 할지 μ„ νƒν•˜λ©΄ λ©λ‹ˆλ‹€. ν˜Ήμ€ β€˜μ§μ‘°β€™ 방식(λ…Έλ“œ-λ…Έλ“œ(μ„ ν˜•), 엣지-엣지(μ„ ν˜•), λ…Έλ“œ-엣지(엣지 λ ˆμ΄μ–΄), 엣지-λ…Έλ“œ(λ…Έλ“œ λ ˆμ΄μ–΄)의 4가지 방식을 κ²°ν•©ν•΄μ„œ μ—…λ°μ΄νŠΈ ν•˜λŠ” 방식)으둜 μ—…λ°μ΄νŠΈ ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.



Adding global representations

μ§€κΈˆκΉŒμ§€ μ„€λͺ…ν•œ λ„€νŠΈμ›Œν¬λŠ” ν•œ 가지 결합이 μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ, κ·Έλž˜ν”„μ—μ„œ μ„œλ‘œ 멀리 λ–¨μ–΄μ Έ μžˆλŠ” λ…Έλ“œλΌλ¦¬λŠ” λ©”μ‹œμ§€ 전달을 μ—¬λŸ¬ 번 μ μš©ν•˜λ”λΌλ„ 효율적으둜 μ „λ‹¬ν•˜μ§€ λͺ»ν•  수 μžˆλ‹€λŠ” κ²λ‹ˆλ‹€. ν•œ λ…Έλ“œμ˜ λ ˆμ΄μ–΄κ°€ k개일 경우, μ •λ³΄λŠ” μ΅œλŒ€ kλ‹¨κ³„κΉŒμ§€λ§Œ μ „νŒŒλ©λ‹ˆλ‹€. μ„œλ‘œ 멀리 μžˆλŠ” λ…Έλ“œλ‚˜ λ…Έλ“œ 그룹에 μ˜μ‘΄ν•΄μ„œ 예츑 μž‘μ—…μ„ ν•΄μ•Όν•  경우 λ¬Έμ œκ°€ 될 수 있죠. 해결책은 λͺ¨λ“  λ…Έλ“œκ°€ μ„œλ‘œμ—κ²Œ 정보λ₯Ό 전달할 수 있게 ν•˜λŠ” κ²λ‹ˆλ‹€. ν•˜μ§€λ§Œ 이 κ²½μš°μ—λ„ κ·Έλž˜ν”„μ˜ μ‚¬μ΄μ¦ˆκ°€ 큰 경우 계산 λΉ„μš©μ΄ λΉ λ₯΄κ²Œ μ¦κ°€ν•œλ‹€λŠ” λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€. λ¬Όλ‘  λΆ„μž 같은 μž‘μ€ κ·Έλž˜ν”„λ₯Ό 가지고 ν•  κ²½μš°μ—λŠ” 이 μ ‘κ·Ό 방식(Virtual Edges, 가상 엣지)을 μ‚¬μš©ν•΄μ„œ 문제λ₯Ό ν’€ 수 μžˆμŠ΅λ‹ˆλ‹€.

또 ν•˜λ‚˜μ˜ 해결책은 κ·Έλž˜ν”„μ˜ μ „μ—­ ν‘œν˜„, 이λ₯Έλ°” λ§ˆμŠ€ν„° λ…Έλ“œ(ν˜Ήμ€ Context Vector)λ₯Ό μ‚¬μš©ν•˜λŠ” κ²λ‹ˆλ‹€. κΈ€λ‘œλ²Œ μ»¨ν…μŠ€νŠΈ λ²‘ν„°λŠ” λ„€νŠΈμ›Œν¬μ˜ λ‹€λ₯Έ λͺ¨λ“  λ…Έλ“œμ™€ 엣지에 μ—°κ²°λ˜μ–΄ μžˆμ–΄ 정보λ₯Ό μ „λ‹¬ν•˜λŠ” 닀리 역할을 ν•©λ‹ˆλ‹€. 이λ₯Ό 톡해 κ·Έλž˜ν”„ 전체에 λŒ€ν•œ ν‘œν˜„μ„ ꡬ좕할 수 있죠. 이런 λ§ˆμŠ€ν„° λ…Έλ“œλ₯Ό μ΄μš©ν•˜λ©΄ λ‹€λ₯Έ λ°©λ²•μœΌλ‘œ ν•™μŠ΅ν•  수 μžˆμ—ˆλ˜ 것보닀 훨씬 더 ν’λΆ€ν•˜κ³  λ³΅μž‘ν•œ κ·Έλž˜ν”„ ν‘œν˜„μ„ λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.



이 λ°©μ‹μ—μ„œλŠ” λͺ¨λ“  κ·Έλž˜ν”„μ˜ 속성듀이 ν•™μŠ΅λœ ν‘œν˜„μ„ κ°–κ³  있기 λ•Œλ¬Έμ— 풀링 κ³Όμ • μ€‘μ—μ„œ μš°λ¦¬κ°€ κ΄€μ‹¬μžˆλŠ” μ†μ„±μ˜ 정보λ₯Ό λ‚˜λ¨Έμ§€ 속성 정보에 λŒ€ν•΄ conditioningν•˜μ—¬ ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄λ³΄κ² μŠ΅λ‹ˆλ‹€. ν•˜λ‚˜μ˜ λ…Έλ“œμ— λŒ€ν•΄μ„œ μš°λ¦¬λŠ” 인접 λ…Έλ“œ, μ—°κ²°λœ 엣지 정보, μ „μ—­ 정보λ₯Ό κ³ λ €ν•  수 μžˆμ„κ²λ‹ˆλ‹€. λͺ¨λ“  κ°€λŠ₯ν•œ 정보 μ†ŒμŠ€μ— λŒ€ν•΄ μƒˆλ‘œμš΄ λ…Έλ“œ μž„λ² λ”©μ„ conditioningν•˜λ €λ©΄ κ·Έλƒ₯ κ°„λ‹¨νžˆ μ—°κ²°λ§Œ ν•˜λ©΄ λ©λ‹ˆλ‹€. μΆ”κ°€λ‘œ μ„ ν˜• 맡을 톡해 λ™μΌν•œ 곡간에 맡핑을 ν•΄μ„œ μΆ”κ°€ν•˜κ±°λ‚˜ feature-wise modulation layer(featurize-wise attention λ©”μ»€λ‹ˆμ¦˜μ˜ 일쒅)λ₯Ό μ μš©ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.