【ぐらふにゅーらるねっとわーく】

グラフニューラルネットワーク(GNN) とは?

最終更新:
💡 点の特徴とつながりを、組み合わせて学ぶAI

ノードとエッジで表すつながりのあるデータを扱うニューラルネットワークの総称。代表的な方式では、近傍の情報を集約して表現を更新し、分類や予測に使う。

📌 このページのポイント
GNN:近くの情報を集めて更新つながりのあるデータABC点にも特徴がある近傍を集約Aの情報と合わせ表現を更新分類や予測へ特徴とつながりを、組み合わせて学ぶ
代表的なメッセージパッシング方式のイメージ。A自身と近傍の特徴を使い、数値の表現を更新します。
ひよこ ひよこ
ここでいうグラフは、棒グラフのこと?
ペンギン先生 ペンギン先生
点とつながりを表すグラフだよ。友人関係なら人がノード、関係がエッジ。分子なら原子と結合で表せる。GNNは、点の特徴とつながりを扱うためのニューラルネットワークなんだ。
ひよこ ひよこ
つながりから、どう学ぶの?
ペンギン先生 ペンギン先生
代表的なのはメッセージパッシングという方式。隣のノードなどの情報を集め、集約し、自分を表す数値の組を更新する。層を重ねると、より遠くの情報も取り込める。実際の集め方や更新の方法はモデルによって違うよ。
ひよこ ひよこ
何を予測するの?
ペンギン先生 ペンギン先生
たとえばノードの分類、つながりの有無、分子全体の性質などだよ。どの対象を予測するかでデータの作り方や学習方法が変わる。図のつながりを見ただけで何でも分かるわけではなく、課題に合う特徴や学習データが必要なんだ。
ひよこ ひよこ
GCNとGATは、同じ集め方?
ペンギン先生 ペンギン先生
違うよ。代表的なGCNは自分と近傍の特徴を、接続数を考慮した重みで集約するので、単純な均等平均とは違う。GATは注意機構で近傍の重みを学習する。どちらが常に優れているということではないんだ。
ひよこ ひよこ
巨大なグラフでは、どうするの?
ペンギン先生 ペンギン先生
近傍を一部だけ選ぶサンプリングや、必要な部分ごとのミニバッチ処理などを使う。GraphSAGEは近傍の特徴をサンプリングして集約する代表例で、学んだ関数から未学習のノードの表現も作る考え方だよ。計算量や精度はデータと設定でも変わるんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「GNN」って出てきたら「点の特徴とつながりを使って学ぶニューラルネットワーク」と思えばだいたいOK!
📖 おまけ:英語の意味
「Graph Neural Network」 = グラフニューラルネットワーク
💬 「Graph(グラフ)」+「Neural Network(ニューラルネットワーク)」を合わせた名前で、グラフ構造を処理するニューラルネットという意味がそのまま名前になっているんだよ

参考資料

← 用語集にもどる