Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DeepGCNs: Can GCNs Go as Deep as CNNs?
Search
shimacos
November 21, 2019
Research
2
1.2k
DeepGCNs: Can GCNs Go as Deep as CNNs?
ICCV'19 で提案された 'DeepGCNs: Can GCNs Go as Deep as CNNs?' についてエルピクセルのLT会で発表しました。
shimacos
November 21, 2019
Tweet
Share
More Decks by shimacos
See All by shimacos
LayerXにおけるAI・機械学習技術の活用と展望 / layerx-ai-jsai2024
shimacos
2
3.1k
BigQueryで参加するレコメンドコンペ / bq-recommend-competition-kaggle-meetup-tokyo-2023
shimacos
1
1.9k
[関東Kaggler会 スポンサーセッション] LayerXの事業と機械学習でできること / kanto-kaggler-layerx
shimacos
0
1.3k
[CVPR 2023 論文紹介] Unifying Vision, Text, and Layout for Universal Document Processing / kanto-cv-59-udop
shimacos
3
1.1k
LayerXにおける機械学習を活用したOCR機能の改善に関する取り組み / layerx-jsai-2023
shimacos
3
24k
Kaggle Days Championship予選全12回まとめ + TIPS
shimacos
0
6.4k
Kaggle Feedback Prizeコンペ 反省会
shimacos
5
3.4k
BQMLことはじめ
shimacos
2
1.8k
結局Kaggleって何を得られるの?
shimacos
8
7.4k
Other Decks in Research
See All in Research
EBPMにおける生成AI活用について
daimoriwaki
0
220
多様かつ継続的に変化する環境に適応する情報システム/thesis-defense-presentation
monochromegane
1
570
尺度開発における質的研究アプローチ(自主企画シンポジウム7:認知行動療法における尺度開発のこれから)
litalicolab
0
360
チュートリアル:Mamba, Vision Mamba (Vim)
hf149
5
1.5k
2024/10/30 産総研AIセミナー発表資料
keisuke198619
1
360
20240918 交通くまもとーく 未来の鉄道網編(太田恒平)
trafficbrain
0
310
ミニ四駆AI用制御装置の事例紹介
aks3g
0
170
SNLP2024:Planning Like Human: A Dual-process Framework for Dialogue Planning
yukizenimoto
1
350
Isotropy, Clusters, and Classifiers
hpprc
3
640
非ガウス性と非線形性に基づく統計的因果探索
sshimizu2006
0
410
第 2 部 11 章「大規模言語モデルの研究開発から実運用に向けて」に向けて / MLOps Book Chapter 11
upura
0
410
20240918 交通くまもとーく 未来の鉄道網編(こねくま)
trafficbrain
0
320
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
160
Speed Design
sergeychernyshev
25
650
Building Your Own Lightsaber
phodgson
103
6.1k
Bash Introduction
62gerente
608
210k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Transcript
DeepGCNs: Can GCNs Go as Deep as CNNs? [ICCV 2019,
Gunhao Li +] #8【画像処理 & 機械学習】論⽂LT会! @エルピクセル株式会社 2019/11/21 Naoto Shimakoshi
自己紹介 2 • 名前 • 島越 直⼈ (シマコシ ナオト) •
よくトリゴエと間違えられますがシマコシです。 • Twitter • @nt_4o54 • 経歴 • ⼤学時代は⽣体信号から睡眠段階を判別するシステムをDeepで作ってました。 • 社会⼈になってからは、タクシーの位置情報データを⽤いた機械学習プロジェクト に関わってます。 • Kaggle • @shimacos • 最近、Kaggle Masterになりました。
Graph Convolutional Network (GCN) • Convolutional Neural Networkはnon-Euclidean dataを上⼿く扱えない •
要するに隣り合うもの同⼠の距離や結合の違いを考慮できない • グラフデータに対する需要の⾼まり • CV領域でも関⼼が⾼まっている • Semantic relations between objects • Human joints for action recognition • 3D point cloud processing 3 Graph に対して畳み込みを⾏うGraph Convolutional Network の登場
DeepGCNs: Can GCNs Go as Deep as CNNs? • Challenges
• ⼤規模グラフに対してGCNを適⽤した先⾏研究は、3-6層のものが多い • 層を深くしすぎると受容野が広がりすぎて勾配消失が起きやすい • Contributions • CNNで⽤いられている⼿法をGCNに適⽤することで56層 ( ! ) のGCNを提案 • 3次元点群のSegmentation TaskにおいてSoTAを3.7%更新 • 著者によるgithub実装 • Tensorflow : http://github.com/lightaime/deep_gcns • Pytorch : https://github.com/lightaime/deep_gcns_torch 4
• 点群データのSegmentationには以下のような課題が存在 • 単純にVoxelで処理をしようとすると物体の凹凸表現が⽋損する • 点群データは頂点のindexに意味がない • 回転しても等価 • Augmentationで対応することも考えられるが組み合わせが無数で現実的でない
• 点群をGraphとして考えると上記のようなことを意識しなくてもよい 何故点群データにGCN? 5 1 2 3 4 5 2 3 4 5 1
GCNの層を深くするにはどうしたらいいか? • CNNの場合は? • ResNet / DenseNet (勾配消失問題を解決) • Dilated
Convolutional Network • Poolingで失われる空間的情報を削減 6 [1] https://arxiv.org/pdf/1512.03385.pdf [2] https://arxiv.org/pdf/1608.06993.pdf [3] https://arxiv.org/pdf/1511.07122.pdf [1] [2] [3]
CNNの概念をGCNに単純に応用 | Dilated Conv 7 • ⼀般的なGCNの定式化 ( : グラフ,
: 重み, : レイヤーインデックス) 周辺ノードをどのようにAggregateするか
CNNの概念をGCNに単純に応用 | Dilated Conv 8 • ⼀般的なGCNの定式化 ( : グラフ,
: 重み, : レイヤーインデックス) Aggregateされた特徴を使って中⼼ノードをどのように更新するか
CNNの概念をGCNに単純に応用 | Dilated Conv 9 • ⼀般的なGCNの定式化 ( : グラフ,
: 重み, : レイヤーインデックス) • Aggregate Function ( ) = Dilated k-NN function ( : 中⼼ノード, : 近傍ノード) • 近傍ノードを特徴空間上で距離が近い順にd個間隔を空けてk個選択
• ⼀般的なGCNの定式化 ( : グラフ, : 重み, : レイヤーインデックス) •
Aggregate Function ( ) = Dilated k-NN function ( : 中⼼ノード, : 近傍ノード) • 近傍ノードを特徴空間上で距離が近い順にd個間隔を空けてk個選択 • Update function = MLP • Aggregateされた特徴と中⼼ノードの特徴をconcatさせてMLPに⼊⼒ CNNの概念をGCNに単純に応用 | Dilated Conv 10
• ⼀般的なGCNの定式化 ( : グラフ, : 重み, : レイヤーインデックス) •
Aggregate Function ( ) = Dilated k-NN function ( : 中⼼ノード, : 近傍ノード) • 近傍ノードを特徴空間上で距離が近い順にd個間隔を空けてk個選択 • Update function = MLP • Aggregateされた特徴と中⼼ノードの特徴をconcatさせてMLPに⼊⼒ CNNの概念をGCNに単純に応用 | Dilated Conv 11 論⽂の誤植!! 正しくは、concatさせてMLPに ⼊⼒した結果のmaxを取る (github実装参照)
Blockの中⾝でしていることは同じ • ResGCN / DenseGCN • ResGCN-56とDenseGCN-28まで構築 12 CNNの概念をGCNに単純に応用 |
ResNet / DenseNet
Result 13 • S3DISデータセットで実験 • 室内データのセグメンテーションを⾏うデータセット • Ablation studyでは、 ResGCN-28
> ResDense-28, ResGCN-56 > ResGCN-28 • mIOUでSoTAより3.7%改善 (何故かResGCN-56では⽐較していない) • GPUリソースの問題で詳細には試せなかったが、ResGCN-151まで構築してResGCN-28 と似たような結果が得られたらしい。(Over Smoothingしてる?)
個人的感想 • 層を深くできたのは、Residual Connectionの寄与も⼤きいかもしれないが、Aggregateに Max poolingを⽤いてるのが⼤きい? • 結局周辺ノードと⾔いつつ1ペアの情報しかAggregateされてなくない? • 周辺ノードの重み付け和などにすると、層を深くするにつれて受容野が広がってしまい、
勾配消失してしまいそう • 層を深くしても同じパラメータで実験しているっぽいので伸びしろありそう • 3次元点群だけでなく、他の⼤規模グラフに対しても利⽤できそう • エッジが明⽰的に与えられているグラフだとAggregateに⼯夫の余地あり 14
参考 • Dynamic Graph CNN for Learning on Point Clouds
• 点群DNN、3D DNN⼊⾨ -3DYOLO, VoxelNet, PointNet, FrustrumPointNetなどなど • 点群×ディープラーニング【⼊⾨】 15