---
# System prepended metadata

title: DGMCの概要とチューニングに向けて

---

# DGMCの概要とチューニングに向けて

### DGMCの概要

　与えられたグラフ$G_{s} = (V_{s}, A_{s}, X_{s}, E_{s})$（Vはノード集合、Aは隣接行列、Xはノード特徴量、Eはエッジ特徴量）を入力として、ターゲットとなる$G_{t} = (V_{t}, A_{s}, X_{s}, E_{s})$の各ノードを見た時に、$V_{t}$の各ノードが$V_{s}$のどのノードと（種類が）一致するのかを判定し、一致行列と呼ばれる$S$を求める。
 
 DGMCのアルゴリズムは２つのステージで構成されていて、ステージ１ではグラフニューラルネットのメッセージ伝達によって、$G_{s}$および$G_{t}$のそれぞれのノードに関する特徴を、集約関数によって集約する。その後、Local Feature Matchingなるもので一致行列Sを獲得する。メッセージ伝達はSplineCNNを用いて行い、その後のマッチングは擬似的な接続行列の演算（擬似的なグラフラプラシアンの計算）によって、値の一致するノードをマッチングさせる。
 　ステージ２では、集約した特徴量に応じて、あらかじめ色付け（カテゴリ分け）された$G_{s}$のノードと一致する$G_{t}$のノードを判定する。
  
### チューニングの方針に関して

　SplineCNNの特徴抽出に関しては、脳領域の接続の距離（ホップ数）をどこまで考慮するか、という問題がある。SplineCNNを５層準備した場合は、グラフの５ホップ先の情報までが集約される、というイメージを簡単に持っておくと、脳領域を網羅するほどに層を積むか、近隣の情報（ホップ数1~2程度）に絞っておくか、ということが調整する一つの問題となる。
 
 次に、同じく脳領域特有のデータ特性を理解して、グラフ全体を入力するのではなく、部分グラフに分割してデータにするという案もある。グラフ全体ではノードのカテゴリ数が非常に多いので、マッチングアルゴリズムでの問題想定（せいぜい数十カテゴリの分類問題）とは趣旨が異なっている可能性がある。とはいえ、データの加工基準などを考えるのは難しく、部分グラフへの分割はそれなりに苦労する工程とも考えられる。
 
 　