Upgrade to Pro — share decks privately, control downloads, hide ads and more …

僕たちがグラフニューラルネットワークを学ぶ理由

joisino
April 26, 2024

 僕たちがグラフニューラルネットワークを学ぶ理由

グラフニューラルネットワーク - Forkwell Library #50 https://forkwell.connpass.com/event/315577/ での講演スライドです。

サポートサイト:https://github.com/joisino/gnnbook
グラフニューラルネットワーク(機械学習プロフェッショナルシリーズ)好評発売中!:https://www.amazon.co.jp/d/4065347823

連絡先: @joisino_ (Twitter) / https://joisino.net/

joisino

April 26, 2024
Tweet

More Decks by joisino

Other Decks in Research

Transcript

  1. 7 National Institute of Informatics グラフはさまざまな事実を柔軟に表すことができる ◼ 知識グラフ 頂点:ものごと、辺:関係や事実 H

    画家 is in フィレンツェ レオナルド・ ダ・ヴィンチ サンタ・マリア・ デル・フィオーレ大聖堂 is in is in 生誕 作者 Is a Is a 子弟 ヴェロッキオ
  2. 10 National Institute of Informatics グラフの組み合わせもグラフ ◼ テキストと知識グラフの組み合わせ Bob visited

    Florence and enjoyed works by Leonardo da Vicni H 画家 is in フィレンツェ レオナルド・ ダ・ヴィンチ サンタ・マリア・ デル・フィオーレ大聖堂 is in is in 生誕 作者 Is a Is a 子弟 ヴェロッキオ
  3. 11 National Institute of Informatics ◼ グラフは柔軟で汎用的 人間関係から化合物から画像からテキストまで表現できる ◼ グラフの処理方法を身につければ、これらの形式のデータを

    一挙に扱えるようになる 学習コスパがいい、とも言える。一個覚えるだけでいろんな場面 で使える。 グラフは何にでも使える汎用的なデータ構造である グラフは何にでも使える
  4. 13 National Institute of Informatics 頂点、グラフ、辺単位のタスクがある ◼ グラフデータのタスクは三種類に分けられる ◼ 頂点単位のタスク:

    頂点分類、頂点回帰、頂点クラスタリング、… ◼ グラフ単位のタスク: グラフ分類、グラフ回帰、グラフクラスタリング、… ◼ 辺単位のタスク: 接続予測、辺分類、…
  5. 15 National Institute of Informatics 化合物グラフを分類する ◼ グラフ分類: 化合物グラフを薬効の有り無しで分類する H

    C O H N O N 薬効あり H C O H O H H 薬効あり H C O H N O N H C H H N H H 薬効なし O C O H O H H ? H
  6. 18 National Institute of Informatics 多くの問題がグラフデータの問題として定式化できる ◼ ユーザー分類、化合物分類、推薦システム、画像セグメンテー ション、画像分類など、多くの問題がグラフ問題として定式化 できる

    ◼ グラフデータをグラフニューラルネットワークに入力するとこれらの タスクを全て解くことができる グラフニューラルネットワークは全てを解決する
  7. 20 National Institute of Informatics グラフニューラルネットワークはグラフデータを処理する ◼ グラフニューラルネットワーク (GNN) とはグラフデータを処理する

    ニューラルネットーワーク ◼ グラフを処理さえすれば GNN と呼ばれ、それ以上の具体的な 定義はない かなり自由 GNN
  8. 21 National Institute of Informatics GNN は周囲から情報を集めることを繰り返す ◼ GNN の基本動作は画像畳み込みと似ている

    ◼ 各頂点は埋め込みを持ち、周囲の埋め込みを集約することを 繰り返す(頂点が画素に対応)
  9. 22 National Institute of Informatics GNN は CNN とトランスフォーマーの一般化 ◼

    畳み込みニューラルネットワーク:8 近傍から情報を集める ◼ トランスフォーマー:全要素から情報を集める ◼ グラフニューラルネットワーク:グラフに沿って情報を集める ◼ 画像畳み込みとトランスフォーマーの一般化になっている 格子状の規則的なグラフを使うと GNN は CNN になり、 全結合グラフ(完全グラフ)を使うとトランスフォーマーになる それ以外にもグラフニューラルネットワークは色んな形状のグラフ を扱える
  10. 24 National Institute of Informatics GNN の動作:特徴を集約する h 5 =

    σ(W(x 4 + x 5 + x 6 + x 7 )) h 7 = σ(W(x 5 + x 6 + x 7 )) h 6 = σ(W(x 3 + x 5 + x 7 )) h 4 = σ(W(x 3 + x 4 + x 5 )) h 1 = σ(W(x 1 + x 3 )) h 2 = σ(W(x 2 + x 3 )) h 3 = σ(W(x 1 + x 2 + x 3 + x 4 + x 6 )) ◼ 特徴を集約して変換する 集約関数は全ての頂点で共有する 例:和集約
  11. 25 National Institute of Informatics GNN の動作:これを繰り返す ◼ 集約と変換を一層一単位としてこれを繰り返す z

    5 = σ(V(h 4 + h 5 + h 6 + h 7 )) z 7 = σ(V(h 5 + h 6 + h 7 )) z 6 = σ(V(h 3 + h 5 + h 7 )) z 4 = σ(V(h 3 + h 4 + h 5 )) z 1 = σ(V(h 1 + h 3 )) z 2 = σ(V(h 2 + h 3 )) z 3 = σ(V(h 1 + h 2 + h 3 + h 4 + h 6 ))
  12. 27 National Institute of Informatics PyTorch とシームレスに結合可能 ◼ PyTorch Geometric

    などのライブラリを使うと CNN などと 同様に簡単に GNN を定義できる https://github.com/joisino/gnnbook 他の例はサポートサイトを参照
  13. 28 National Institute of Informatics 引用グラフデータの例 ◼ 例:Cora データセット ◼

    頂点:論文(テキスト) ◼ 頂点特徴量:論文要旨の bag of words ◼ 辺:論文 A から B への辺は引用を表す ◼ 頂点ラベル:論文のカテゴリ ◼ タスク:論文のカテゴリを予測する = テキスト分類 ただし、引用関係を活用できる
  14. 29 National Institute of Informatics 通常のニューラルネットワークと GNN の比較 ◼ 1

    層のニューラルネットワークと GNN を考える ◼ 𝑥𝑣 ∈ ℝ𝑑 は生の頂点特徴量 (bag of words) ◼ 線形ニューラルネットワーク:ℎ𝑣 = 𝑊 𝑥𝑣 ◼ GNN: 𝑧𝑣 = σ 𝑢∈𝒩 𝑣 ∪{𝑣} 1 (|𝒩 𝑣 |+1)( 𝒩 𝑢 +1) ℎ𝑢 ◼ 頂点ラベルは Softmax(z v ) で予測する 周囲の h を平均して集約 ただし、少し特殊な正規化 グラフ畳み込みと呼ばれる
  15. 30 National Institute of Informatics GNN の表現は通常のニューラルネットワークよりよい 𝑇𝑆𝑁𝐸(𝑥𝑣 ) 𝑇𝑆𝑁𝐸(ℎ𝑣

    ) 𝑇𝑆𝑁𝐸(𝑧𝑣 ) グラフを考慮せず 集約により表現の質が向上 ニューラルネットワーク 対応する GNN 生特徴量 頂点色はラベル ◼ ニューラルネットワークと GNN のパラメータは同一(W のみ) ◼ 質は GNN の方がよい
  16. 32 National Institute of Informatics GNN と知識グラフで LLM の質問応答を改善 ◼

    Graph Neural Prompting with Large Language Models (AAAI 2024) ◼ 入力:テキストによる質問、選択肢、知識グラフ 出力:回答
  17. 35 National Institute of Informatics GNN による物理シミュレーション ◼ Learning Mesh-Based

    Simulation with Graph Networks (ICLR 2021) ◼ 入力:物質の状態(布など) 出力:物質がどのように変化するか
  18. 38 National Institute of Informatics 画像分類に GNN を使う ◼ Vision

    GNN: An Image is Worth Graph of Nodes (NeurIPS 2022) ◼ タスク:画像分類 (ImageNet) ◼ 提案法はビジョントランスフォーマーに似ている ただし、アテンションをグラフにより制御する 頂点:画像パッチ 辺:パッチ埋め込みの KNN グラフ
  19. 40 National Institute of Informatics 化合物グラフの生成モデル Tags-to-image モデルが近年流行っている もしこれが化合物でできれば革命的 ((best

    quality)), ((masterpiece)), ((ultra-detailed)), (illustration), (detailed light), (an extremely delicate and beautiful), ..., stars in the eyes, messy floating hair, ... 有機、水溶性、軽量、安価、 無毒、薬用...
  20. 41 National Institute of Informatics GNN を生成モデルの構成要素として使える ◼ 多くの生成モデルは、ニューラルネットワークの部品を GNN

    に 変えるだけでグラフデータに適用できる ◼ 例:拡散モデルの U-Net を GNN に変える ◼ VAE や GAN なども GNN と共に使える
  21. 42 National Institute of Informatics 拡散モデルはデータからノイズを取り除いていく ◼ 拡散モデルは最近人気の候補 ◼ 拡散モデルはデータを受け取り、ノイズ成分を推定する

    ◼ 拡散モデルは完全なノイズからノイズを推定して取り除くことを 繰り返してデータを生成する https://drive.google.com/file/ d/18zIMEAZzLWjyh8FhVX3cPS lJst1JNiQK/view?usp=sharing
  22. 43 National Institute of Informatics 拡散モデルのアイデアはグラフデータにも使える ◼ 全く同じアイデアがグラフデータにも使える ◼ GNN

    はノイジーなグラフを受け取り、どの辺や特徴がノイジーか を推定する → 頂点分類・辺分類問題 https://drive.google.com/file/d /1NyT3FAGMq2LpqbgRoKfPd9s UVmktC0-5/view?usp=sharing
  23. 44 National Institute of Informatics グラフデータのための拡散モデル ◼ Score-based Generative Modeling

    of Graphs via the System of Stochastic Differential Equations (ICML 2022) ◼ グラフ構造と頂点特徴量のノイズをモデリングして、頂点特徴量 付きのグラフ、特に化合物グラフを生成する
  24. 45 National Institute of Informatics グラフ生成モデルは発展途上 ◼ グラフの生成モデルは画像やテキストの生成モデルほどには 成功していない ◼

    一因はデータ量の不足 人々は分子をインターネットに投稿しない ◼ LLM と組み合わせたりシミュレーターと組み合わせたりすること で克服する試みが続いている ◼ 今後に期待 成功すると社会的インパクトは非常に大きい
  25. 47 National Institute of Informatics GNN は何にでも使える ◼ グラフニューラルネットワークはとても守備範囲が広い グラフデータをグラフニューラルネットワークに入力するだけで

    さまざまな種類のグラフタスクを解くことができる 推薦システム、画像分類、物理シミュレーション、創薬、ソーシャルネットワーク分析… ◼ 他のニューラルネットワークと柔軟に組み合わせることも可能 畳み込みニューラルネットワークやトランスフォーマーの一般化に もなっていてとても汎用性が高い グラフニューラルネットワークは何にでも使えて超便利
  26. 48 National Institute of Informatics サポートページでコードを公開中 ◼ MIT ライセンスで配布、商用・非商用問わず自由に利用 ◼

    本書を購入していない方も無料で利用可能(でも買ってくれるとうれしい) https://github.com/joisino/gnnbook