SlideShare a Scribd company logo
KDDCUP2020 ML Track2⼊賞⼿法の紹介
NTTドコモ
サマリ
• KDD CUP 2020 ML Track2 4位⼊賞(446チーム中)
• Graph Neural NetworkへのAdversarial Attackについて紹介
2
KDD CUPとは?
Ø ACM SIGKDD 主催のデータ分析コンペ
Ø 1997年からの⻑い伝統を持ち、データ分析コンペの世界最⾼
峰的位置づけ
Ø 年に⼀回開催され、毎年8⽉のKDD Conferenceの中で⼊賞者
が表彰される
Ø 2019年参加チーム数は約2,800チームで年々増加している
3
ML Track2 背景
• グラフ構造は様々な分野にあるデータ構造で応⽤範囲が広い
• 深層学習は画像認識などで⾶躍的な精度向上を果たし、グラフ
のデータにも適⽤されるようになってきた
Geographic networksSocial networks User-Item network
Academic paper
citation network
4
ML Track2 背景
• 深層学習ではadversarial exampleという、分類精度を低下させ
る攻撃が知られている
• KDD2018でグラフに対するadversarial exampleの論⽂が発表
され、グラフ構造でも同様の攻撃があることがわかっている
Source: Goodfellow et al. (2014)
Daniel Zügner et al., KDD2018
5
ML Track2のタスク
• 論⽂引⽤関係のグラフへの攻撃と防御を⾏うタスク
ノード:論⽂、エッジ:引⽤とした
論⽂の引⽤関係のグラフが提供される
攻撃タスク:ノードを追加し既存ノードの分類を
誤らせる
防御タスク:攻撃ノードの影響を減らして正確に
ノードの分類を⾏う
攻撃
ノード
6
Adversarial Attacks and Defense on
Academic Graph
Team NTT DOCOMO LABS
NTT DOCOMO, INC.
Keiichi Ochiai, Hiroaki Tanaka, Keita Yokoyama
Akihiro Kawana, Takuya Chida, Daisuke Koizumi
ML Track2のタスク
train: 609,574
test: 50,000
追加で500ノード、
各100エッジ追加できる。
また攻撃ノードの特徴量も提出
グラフの隣接⾏列
• 提供されるデータ
• 隣接⾏列
• 特徴量
• Trainの正解ラベル(18カテゴリ)
攻撃ノード: 最⼤500個
8
その他のルール
• 防御は隣接⾏列と特徴量を受け取って各ノードのラベルを出⼒
す機械学習モデルをDockerでコンテナ化して提出する
• 防御モデルは10秒以内、モデルファイルは1GB以内
• 隣接⾏列を⾒ればどのノードを追加した(攻撃している)かわ
かってしまうがアルゴリズム的な側⾯で攻撃を防御するように
という指⽰が運営から出ている
• 定期的に運営が攻撃/防御モデルをマッチングして精度をリー
ダーボードに公開する
• 戦略を知られたくないチームは最終⽇までsubmitしなくて構わない
9
評価⽅法
• 攻撃と防御の両⽅を考慮した精度
https://www.biendata.xyz/competition/kddcup_2020_formal/evaluation/より引⽤ 10
スケジュール
4⽉ 5⽉ 6⽉ 7⽉ 8⽉
ML Track2
4/25
Phase 1
Start
4/20
Dataset
Release
6/30
Phase 1
End
Phase 1
7/3
Phase 2
Start
7/26
Phase 2
End
7/29
Winner
Announcement
7/30
Paper
Submission
8/5
Presentation
Video due
8/26
KDD CUP Day
7/1
Dataset
Release
攻撃側のみで運営が
⽤意した防御モデルを
攻撃する
11
参考: Graph Convolutional Network
• 画像の畳み込み
• 着⽬している画素を周りの画素に重み付けして⾜し合わせて活性化関数を適⽤
• グラフの畳み込み
• 着⽬しているノードの特徴量を隣接ノードの特徴量に重み付けして⾜し合わせて
活性化関数を適⽤
INPUT GRAPH
TARGET NODE B
D
E
F
C
A
B
C
D
A
A
A
C
F
B
E
A
w1 w2 w3
w4 w5 w6
w7 w8 w9
w1
w2
w3
xA
xB
xC
xE
xF
xAD
xB
xC
xAD
σ(・)
hA
σ(W・CONCAT(MEAN( , , ), ))
12
図の⼀部は http://snap.stanford.edu/proj/embeddings-www/ から引⽤
Strategy for Attack
• Graph Structure Attack
1. 次数が低いノードは攻撃しやすい [1]
→ 次数が10以下のテストノードを対象に攻撃
2. 攻撃ノードを多く追加するほど攻撃しやすい
→ 最⼤の500ノードを追加
3. 攻撃ノードから張るエッジ数は50-90の間でランダムに設定
• (1) 攻撃エッジが多い⽅が攻撃⼒が⾼い
• (2) ただし、上限である100にするとすぐに攻撃とバレてしまうので少し少ない
50-90の間で設定
[1] Zügner, Daniel et al. “Adversarial Attacks on Neural Networks for Graph Data.” KDD (2018): 2847-2856. 13
Strategy for Attack
• Feature Attack
• Adversarial attackの⽅法の1つにgradient-based attackがあり
有名な⼿法としてFast Gradient Sign Method (FGSM) [2]がある
[2] Goodfellow, Ian J., Jonathon Shlens, and Christian Szegedy. "Explaining and harnessing adversarial examples."
arXiv preprint arXiv:1412.6572 (2014).
Original
image
perturbation
Figure from [2]
画像とラベルが
必要
14
参考: 既存ライブラリ
• GNNへの攻撃/防御に関するライブラリが公開されているが、
⼤規模グラフではそのまま利⽤できない
15
Strategy for Attack
• Feature Attack
• FGSMをグラフに応⽤する⽅法を実装
• (1) copy feature from training node
• (2) calculate loss
• (3) modify node feature based on the Eq. (1)
train label: y1
train label: y2
train node
adversarial node
test node
test label: !𝑦
copied from
training node 16
Strategy for Attack
• Feature Attack
• FGSMをグラフに応⽤する⽅法を実装
• (1) copy feature from training node
• (2) calculate loss
• (3) modify node feature based on the Eq. (1)
train label: y1
train label: y2
test label: !𝑦
estimated
label
we use 1-layer linear GCN model
as surrogate model to efficiently
calculate loss
Adj Feat W
train node
adversarial node
test node
学習/テストノードの特徴量が
変えられないので固定値にし、
攻撃ノードの特徴量だけ微分
するように実装し省メモリ化
通常のNNではWを微分で
求めるが今回は特徴量を
改変するのでFeatを微分
× ×
GCNの⾏列計算
17
Strategy for Attack
• Feature Attack
• FGSMをグラフに応⽤する⽅法を実装
• (1) copy feature from training node
• (2) calculate loss
• (3) modify node feature based on the Eq. (1)
node feature perturbation
(1)
train label: y1
train label: y2
test label: !𝑦
estimated
label
train node
adversarial node
test node
18
Strategy for defense
• 特徴量の閾値処理
• 特徴量の値が[-1.74, 1.63]に⼊っていなければ除去
• MIN = -1.74 , MAX = 1.63は学習データの統計値から算出
• 次数の閾値処理
• 次数が[90, 100]のノードは攻撃の疑いがあるので除去
• 隣接⾏列の値が0/1以外なら0に置換
pre-processing
inference
post-processing
Feature value
MIN = -1.74 MAX = 1.63
Degree distribution
90≦deg≦100
→570 nodes (0.086%)
ノード次数 19
Strategy for defense
pre-processing
inference
post-processing
• 4-layer GIN model [3]
• Adam optimizer
• Hyper-parameter optimization using Optuna [4]
• Learning rate: 0.01
• Dropout rate: 0.2
• Hidden dim: 144
• Early stopping/Batch normalization
[3] Xu, Keyulu, et al. "How Powerful are Graph Neural Networks?." ICLR 2018
[4] Akiba, Takuya, et al. "Optuna: A next-generation hyperparameter optimization framework.” KDD 2019.
GINConv
BatchNorm
Linear
Dropout
Linear
Softmax
×4
• 全特徴量が0ならラベル1に上書き(学習データの統計から)
20
Model Selection
• 前処理がモデル選択のために複数種類のモデルを投稿しスコア
を⾒て効果的なものを選択
• Models: GCN, SAGE, GIN
• Model training: Adding noise to features to increase robustness
• Pre-processing: thresholding by feature/degree of nodes
Defender Model Pre-processing Training Avg. Acc
NTTDOCOMO LABS-0716 GCN - - 0.460
NTTDOCOMO LABS-0717 SAGE - - 0.472
NTTDOCOMO LABS-0718 GIN - - 0.261
NTTDOCOMO LABS-0721 GIN Feature/Degree - 0.686
NTTDOCOMO LABS-0722 SAGE Feature - 0.639
NTTDOCOMO LABS-0723 GIN Feature/Degree Add noise 0.666
21
Model Selection
• ローカルテストのために学習ノードをtrain/val/testに分割してモデルを
検証
• ⾃分たちの攻撃/防御モデルを戦わせていい⼿法を選別
最終的はローカルの結果とリーダーボードを⾒てモデル選択
22
結果
• 参加446チーム中 4位⼊賞
23
まとめ
• グラフデータは様々な領域に⾒られるデータ構造
• グラフニューラルネットは注⽬されている技術
• 画像などと⽐較して外部からの攻撃がしやすい
• 特徴量やグラフの統計値に基づく閾値処理は基本的だが有効
• 今後の課題
• 既存研究は⼤規模グラフでの検証が少ない
24

More Related Content

PDF
KDDCUP2020 RL Track : 強化学習部門入賞の手法紹介
PDF
RTBにおける機械学習の活用事例
PPTX
量子情報18
PDF
アプリケーションの性能最適化2(CPU単体性能最適化)
PDF
200514material minami
PDF
Neural networks for Graph Data NeurIPS2018読み会@PFN
DOCX
深層学習 Day1レポート
PDF
強化学習の実適用に向けた課題と工夫
KDDCUP2020 RL Track : 強化学習部門入賞の手法紹介
RTBにおける機械学習の活用事例
量子情報18
アプリケーションの性能最適化2(CPU単体性能最適化)
200514material minami
Neural networks for Graph Data NeurIPS2018読み会@PFN
深層学習 Day1レポート
強化学習の実適用に向けた課題と工夫

Similar to KDDCUP2020 ML Track2 (20)

PPTX
Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recog...
PDF
深層強化学習の分散化・RNN利用の動向〜R2D2の紹介をもとに〜
PPTX
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
PDF
SOINN-AM
PDF
ICASSP2017読み会 (Deep Learning III) [電通大 中鹿先生]
PDF
WWW2018 論文読み会 Web Search and Mining
PPTX
[DL輪読会] “Asymmetric Tri-training for Unsupervised Domain Adaptation (ICML2017...
PDF
グラフニューラルネットワーク入門
PDF
ICML2017 参加報告会 山本康生
PPTX
Combinatorial optimization with graph convolutional networks and guided
PPTX
Combinatorial optimization with graph convolutional networks and guided ver20...
PDF
深層学習(岡本孝之 著) - Deep Learning chap.1 and 2
PDF
[DL輪読会]Imputing Missing Events in Continuous-Time Event Streams (ICML 2019)
PDF
LCCC2010:Learning on Cores, Clusters and Cloudsの解説
PDF
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
PDF
Journal club dec24 2015 splice site prediction using artificial neural netw...
PPTX
NeurIPS2019参加報告
PDF
JPA2022_NetworkTutorial_Part2.pdf
PDF
線形回帰と階層的クラスタリングの実装
Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recog...
深層強化学習の分散化・RNN利用の動向〜R2D2の紹介をもとに〜
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
SOINN-AM
ICASSP2017読み会 (Deep Learning III) [電通大 中鹿先生]
WWW2018 論文読み会 Web Search and Mining
[DL輪読会] “Asymmetric Tri-training for Unsupervised Domain Adaptation (ICML2017...
グラフニューラルネットワーク入門
ICML2017 参加報告会 山本康生
Combinatorial optimization with graph convolutional networks and guided
Combinatorial optimization with graph convolutional networks and guided ver20...
深層学習(岡本孝之 著) - Deep Learning chap.1 and 2
[DL輪読会]Imputing Missing Events in Continuous-Time Event Streams (ICML 2019)
LCCC2010:Learning on Cores, Clusters and Cloudsの解説
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
Journal club dec24 2015 splice site prediction using artificial neural netw...
NeurIPS2019参加報告
JPA2022_NetworkTutorial_Part2.pdf
線形回帰と階層的クラスタリングの実装
Ad

More from NTTDOCOMO-ServiceInnovation (7)

PDF
202408_JAWSPANKRATION_Introduction_of_Minaden.pdf
PDF
Amazon SageMaker Unified Studioを触ってみた (20250129)
PDF
20240725_BigData_JAWS資料_大規模な通信制御信号処理の環境下におけるAthenaのパフォーマンス比較.pdf
PDF
20240201_大規模通信制御信号 ETLシステムにおける 大幅なコスト削減・意識改革の取り組み.pdf
PDF
拡散する画像生成.pdf
PDF
大規模データ処理基盤における MLOpsについて.pdf
PDF
AWSサーバレスサービスによるセキュリティログ分析基盤
202408_JAWSPANKRATION_Introduction_of_Minaden.pdf
Amazon SageMaker Unified Studioを触ってみた (20250129)
20240725_BigData_JAWS資料_大規模な通信制御信号処理の環境下におけるAthenaのパフォーマンス比較.pdf
20240201_大規模通信制御信号 ETLシステムにおける 大幅なコスト削減・意識改革の取り組み.pdf
拡散する画像生成.pdf
大規模データ処理基盤における MLOpsについて.pdf
AWSサーバレスサービスによるセキュリティログ分析基盤
Ad

KDDCUP2020 ML Track2