icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

35
ICML2015 論文紹介】 Sparse Subspace Clustering with Missing Entries Congyuan Yang, Daniel Robinson, René Vidal 佐藤 貴海 @tkm2261 株式会社ブレインパッド 2015820ICML2015読み会 1 ICML2015読み会@株式会社ドワンゴ様 セミナールーム

Upload: takami-sato

Post on 14-Apr-2017

5.286 views

Category:

Science


0 download

TRANSCRIPT

Page 1: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

【ICML2015 論文紹介】

Sparse Subspace Clustering with Missing Entries Congyuan Yang, Daniel Robinson, René Vidal

佐藤 貴海 @tkm2261

株式会社ブレインパッド

2015年8月20日 ICML2015読み会 1

ICML2015読み会@株式会社ドワンゴ様 セミナールーム

Page 2: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

自己紹介

2015年8月20日 ICML2015読み会 2

名前: 佐藤 貴海 (さとう たかみ) @tkm2261

専門: 経営工学/数理最適化 (OR屋さん)

所属: 株式会社ブレインパッド

最近やってること:

物流の最適化

レコメンドアルゴリズムの検証

Page 3: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

Lilleはいいところでした

せっかく行ってきたので、話すことに

2015年8月20日 ICML2015読み会 3

Page 4: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

Sparse Subspace Clustering (SSC)[Elhamifar+ 2009]

画像処理の分野等では 高次元空間に低次元空間が埋め込まれるていることが多々ある

2015年8月20日 ICML2015読み会 4

http://vision.jhu.edu/ssc.htm http://motion.pratt.duke.edu/sketchmimicking/

観測された点を、複数の線形部分空間に分割する問題

3つの部分空間で構成 2次元平面上に文字を描写

Page 5: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

Sparse Subspace Clustering (SSC)[Elhamifar+ 2009]

線形部分空間内の点は、同空間の点の線形結合で表現できる

2015年8月20日 ICML2015読み会 5

全データ(N個)

線形結合の係数

自分以外で線形結合

(self-expressive)

Page 6: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

Sparse Subspace Clustering (SSC)[Elhamifar+ 2009]

2015年8月20日 ICML2015読み会 6

このままだと、D次元の部分空間作られて意味がないので

これを行列表現で書くと

となってるが、行列のL1ノルムになるので、得られる解は異なりそう・・・

Page 7: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

Sparse Subspace Clustering (SSC)[Elhamifar+ 2009]

疎な表現のCが得られたら、後はスペクトラルクラスタリングの要領

2015年8月20日 ICML2015読み会 7

こんな風に、類似度行列を作り

コレをグラフラプラシアン行列だと思えばOK (記述はないが、行和を対角に入れたほうが良いかも)

あとは固有ベクトル求めてK-means法を実行

http://vision.jhu.edu/ssc.htm

Page 8: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

本論文の貢献

2015年8月20日 ICML2015読み会 8

(私見)

Page 9: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

先行研究(欠損値なし)

K-subspaces [Bradley+ 2000, Tseng 2000]

2015年8月20日 ICML2015読み会 9

欠損値がない場合の先行研究と筆者の見解

k-means法を拡張して、k個の超平面への距離でクラスタリング

⇒ 局所解に陥りやすい

mixture of probabilistic PCAs [Tipping+ 1999]

データをk個の超平面から生成されたと思って、GMM解く感じ

⇒ 局所解に陥りやすい

Page 10: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

先行研究(欠損値なし)

2015年8月20日 ICML2015読み会 10

欠損値がない場合の先行研究と筆者の見解

Generalized Principal Component Analysis [Vidal+ 2005]

⇒ ノイズに弱い

Sparse Subspace Clustering (SSC) [Elhamifar+2009]

前述のアルゴリズム。今回はコレの拡張

Page 11: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

先行研究(欠損値あり)

[Gruber+ 2004]

2015年8月20日 ICML2015読み会 11

欠損値がある場合の先行研究は少ないが、いくつか存在

mixture of probabilistic PCAsとEMアルゴリズムで欠損値に対応 ⇒ 局所解に陥りやすい

[Vidal+ 2004]

データ行列全体も低ランクであることを仮定して低ランク補完

⇒ 部分空間が低ランクでも全体が低ランクとは限らない

Page 12: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

先行研究(欠損値あり)

2015年8月20日 ICML2015読み会 12

欠損値がある場合の先行研究は少ないが、いくつか存在

[Eriksson+ 2012]

欠損値を近傍点で補完

⇒ 保持する近傍点が多く必要で非実用的

[Candes+ 2014]

特定のカーネル行列の欠損値を期待値で補完し Danzig Selectorで学習

⇒ 期待値の計算方法が与えられていない

Page 13: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

比較手法

2015年8月20日 ICML2015読み会 13

MC+SSC Matrix Completion + SSC

ZF+SSC Zero-Fill+SSC

SSC-EWZF SSC by Entry-Wise Zero-Fill

SSC-EC SSC by Expectation-based Completion

SSC-CEC SSC by Column-wise Expectation-based Completion

BCDS Bias-corrected Dantzig Selector

※BCDSは一部データのみ

この6つの手法を検証(赤色が提案手法)

Page 14: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

Matrix Completion + SSC (MC+SSC)

私がこのタスクを解くのに真っ先に思いついたのがコレ

2015年8月20日 ICML2015読み会 14

最初に低ランク補完(核ノルム+フロベニウスノルム最小化)して、

その後に普通にSSCを解く

観測されてるところはX=A

Page 15: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

Zero-Fill+SSC (ZF+SSC)

非常に直感的

ただ単に欠損値をゼロで補完

2015年8月20日 ICML2015読み会 15

Page 16: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

SSC by Entry-Wise Zero-Fill (SSC-EWZF)

2015年8月20日 ICML2015読み会 16

観測されていないところの誤差はゼロだと思って学習

実験的に以下の場合にはコレでうまくいくらしい

①部分空間が十分分割されている

②観測点が各部分空間内に十分分散している

③各部分空間の欠損値のパターンが独立である

Page 17: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

SSC by Expectation-based Completion (SSC-EC)

2015年8月20日 ICML2015読み会 17

Lemma 1.

欠損率がこの分布に従う時に

Page 18: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

SSC by Expectation-based Completion (SSC-EC)

この補題1を使ってカーネル行列の推定量を書くと

2015年8月20日 ICML2015読み会 18

欠損値をゼロで補完

ただし、第二項のせいで半正定値性を仮定できないので補正する

非常にわかりやすい補正だが、

せっかく不偏推定量まで求めたのに補正してしまうのは勿体無い (悪い補正じゃないし、代案があるわけではないが・・・)

Page 19: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

SSC by Expectation-based Completion (SSC-EC)

2015年8月20日 ICML2015読み会 19

最終的に解くのはこちら

Page 20: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

SSC by Column-wise Expectation-basedCompletion (SSC-CEC)

SSC-ECはゼロ補完があるので、ZF+SSCに近い

SSC-EWZFのように、欠損の誤差を無視したモデルを考案

2015年8月20日 ICML2015読み会 20

行列型ではなく、元の列ごとの最適化

各列で欠損の無いところだけで学習

データjで

観測されてるインデックスの集合

Page 21: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

SSC by Column-wise Expectation-basedCompletion (SSC-CEC)

誤差項を展開すると、

2015年8月20日 ICML2015読み会 21

Lemma 2.

列の一部ω だけでも

補題1同様に 不偏推定量

cが関わらないので無視

※要推定 ※要推定

この関係にも注意 =

Page 22: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

SSC by Column-wise Expectation-basedCompletion (SSC-CEC)

2015年8月20日 ICML2015読み会 22

この補題2を使ってカーネル行列の推定量を書くと

こちらも第二項のせいで半正定値性を仮定できないので補正する

Page 23: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

SSC by Column-wise Expectation-basedCompletion (SSC-CEC)

2015年8月20日 ICML2015読み会 23

最終的に解くのはこちら

これもADMM [Boyd+ 2010]で解ける

問題サイズは対して小さくなってないのに、 データの数だけ解く必要があるので基本大変

Γのj列ベクトル

Page 24: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

Bias-corrected Dantzig Selector (BCDS)

2015年8月20日 ICML2015読み会 24

[Candes+ 2014]で提案

誤差項が制約に落ちてきて、無限大ノルムになっている

筆者らの実験では、以下の傾向があるとのこと

• SSC-CECよりも計算コストが高く

• λの選択に敏感

Page 25: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

数値実験(検証手法)

2015年8月20日 ICML2015読み会 25

MC+SSC 低ランク行列補完+SSC(スペクトラルクラスタリング)

ZF+SSC ゼロ補完+SSC

SSC-EWZF 欠損要素の関連する誤差をゼロにしてSSC

SSC-EC カーネル行列の不偏推定量を使ってSSC

SSC-CEC 列毎のカーネル行列の不偏推定量を使ってSSC

BCDS 誤差項を制約にして、∞ノルムをつかったSSC

これまで紹介した6つの手法を検証

Page 26: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

合成データに対する数値実験

高ランクのデータ

2015年8月20日 ICML2015読み会 26

低ランクのデータ

データの次元数 100

部分空間毎のデータ数 50

部分空間のランク 5

部分空間数 2

データの次元数 25

部分空間毎のデータ数 50

部分空間のランク 5

部分空間数 5

Page 27: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

ペナルティ項αの影響

• 単純なゼロ置換の結果はαの影響を受けやすい

• SSC-EWZFとSSC-CECは安定して良い性能

2015年8月20日 ICML2015読み会 27

αの定義はコチラ 決め方は先行研究[Elhamifar+ 2013]

δは欠損率

Page 28: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

欠損率δの影響

• 低ランクではMC+SSC, SSC-EWZF, SSC-CECが欠損率にロバスト • そのうち高ランクでは低ランク補完を使ったMC+SSCが悪くなっている

2015年8月20日 ICML2015読み会 28

Page 29: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

SSC-CECの部分空間の数、次元数、データ数の影響

• 欠損率が低い時は、低ランクの場合にSSC-CECが良く • 欠損率が高い時は、高ランクの場合にSSC-CECが良い

2015年8月20日 ICML2015読み会 29

Page 30: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

ペナルティ項αの影響 その2 クラスタリングの精度だけではなく、Cの結果を直接評価したい

横軸: Cの各列での、自クラスタ以外の係数の和の列平均 (低いと良い)

縦軸: クラスタ毎の正規化ラプラシアン行列の第2最小固有値 (高いと良い)

(クラスタのまとまりの指標)

2015年8月20日 ICML2015読み会 30

• 基本的にSSC-EWZFとSSC-CECが良い • 高ランクの場合では行列補完系は基本悪い

※左上にあるほどよい結果

Page 31: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

動領域抽出データに対する数値実験

Hopkins 155の155データに対する検証

2015年8月20日 ICML2015読み会 31

http://www.vision.jhu.edu/data/hopkins155/

データの次元数 フレーム数の2倍

部分空間のランク 1~3

部分空間数 2,3

Page 32: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

欠損率δとフレーム数の影響

2015年8月20日 ICML2015読み会 32

• 欠損が少ない時はデータ全体が低ランクのためMC+SSCが良い • 欠損が多く、フレームが少ない(擬似高ランク)場合には、 SSC-EWZFとSSC-CECが良い結果となっている

Page 33: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

本論文の貢献

2015年8月20日 ICML2015読み会 33

再掲

Page 34: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

私見

2015年8月20日 ICML2015読み会 34

• 個人的には疎(スパース)で欠損値アリは琴線に触れた

• 『部分空間内なら他の点で自己表現可能(self-expressive)』 、という着眼点で疎学習は好きな感じでした – 欠損をベルヌーイ分布を仮定して扱うのは定石だったりするのか?

• 恐らく大規模問題には対応できなそう – 行列型で解くと、計算途中でCの疎性が使えないはず

– 列毎に解いても、データ数だけ解くのは厳しい

– 計算時間に論文中で一切言及が無いのは、その証左かと

Page 35: Icml2015 論文紹介 sparse_subspace_clustering_with_missing_entries

ご清聴ありがとうございました

2015年8月20日 ICML2015読み会 35

初日のWelcome cocktail 最終日のBanquet