wantedly / machine-learning-round-table

Gather around the table, and have a discussion to catch up the latest trend of machine learning 🤖
https://www.wantedly.com/projects/391912
305 stars 2 forks source link

[2019/05/29] Machine Learning 輪講 #3

Open agatan opened 5 years ago

agatan commented 5 years ago

Why

Machine Learning 輪講は最新の技術や論文を追うことで、エンジニアが「技術で解決できること」のレベルをあげていくことを目的にした会です。

prev. #2

What

話したいことがある人はここにコメントしましょう! 面白いものを見つけた時点でとりあえず話すという宣言だけでもしましょう!

agatan commented 5 years ago

Structured Domain Randomization: Bridging the Reality Gap by Context-Aware Synthetic Data

Synthetic Data で良い Object Detector を学習するために頑張る話。

image image

agatan commented 5 years ago

semi-supervised node classification のために PageRank と GNN を組み合わせようという話。 (グラフ中の一部ノードにのみラベルが与えられているとき、全ノードを正しく classification したい。というタスク)

概要

GCN の問題点

Graph Convolutional Network (GCN) は以下のような式で定義される(2 層の場合)。

ここで、 A は normalize された隣接行列, X は feature matrix, W はパラメータ。 直感的には、一層ごとに自身の feature と隣接ノードの feature の平均を取るようなイメージ。

問題は

Personalized PageRank の活用

GCN の層を増やしていくと、propagate の分布は PageRank に似た分布に近づいていく。 PageRank は

を無限 step 計算したときの \pi で、

を無限 step 繰り返したときの分布と一致する。 (GCN との違いは self loop の扱いと normalize の有無だけ。)

が、PageRank は Graph 全体に対するプロパティであり、各ノードに focus したものではない。 そこで Personalized PageRank を使うというアイディアが出てくる。

x は root node, i_x は teleport vector (personalize vector) でここでは [0, 0, ..., 1, 0, ...] のように「自分自身が 1, それ以外は 0」であるような要素 n のベクトル。 Personalized PageRank は「確率 1 - α でランダムウォーク、確率 α で自分自身に戻る」を無限に繰り返したときの分布。 全ノードから見た Personalized PageRank を計算する必要があるので大変。

Personalized propagation of neural predictions (PPNP)

ノードを別個で predict する Network に通した後、周辺にその結果を propagate する PPNP を提案している。

image

Approximate personalized propagation of neural predictions (APPNP)

PPNP は Personalized PageRank を使っているが、全ノードごとに Personalized PageRank を作ると NxN の Dense Matrix を作る必要があるし時間計算量も N^2 でかかってくる。

そこで、topic-sensitive PageRank を活用することで近似しつつ計算量を落とす。 topic-sensitive PageRank は、topic ごとに teleport vector が定義されるような PageRank。 今回の場合は、クラス = Topic とみなして topic-sensitive PageRank を計算する。

image

K step の power iteration で近似する。(収束したかどうかは見ない。常に固定回数)

評価

image

State of the Art の精度を出している。 PubMed などはグラフが大きいので PPNP は計算できない。が、APPNP は計算可能で性能もよかった。

image

学習時間はシンプルな GCN よりは遅いが、GAT などよりは速い。

image

APPNP の power iteration 数と精度の分析。 最適な K は、max(ラベルのあるノードとの shortest path distance for node in all nodes) と大体同じになっているらしい。

image

「propagate をどのタイミングで活用するか」についての分析。 propagate しない、training 時のみ、inference 時のみ、両方、の 4 pattern ある。