Upload
tomoki-hayashi
View
2.445
Download
0
Embed Size (px)
Citation preview
目次1. Introduction
2. Stochastic Neighbor Embedding
3. t-Stochastic Neighbor Embedding
4. Experiments
5. Applying t-SNE to large dataset
6. Discussion
7. Conclusion
22015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
目次1. Introduction
2. Stochastic Neighbor Embedding
3. t-Stochastic Neighbor Embedding
4. Experiments
5. Applying t-SNE to large dataset
6. Discussion
7. Conclusion
32015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Introduction高次元データの可視化は様々な分野で重要な課題
様々な次元数を取り扱う
例:乳がんに関連する細胞核の種類 → 30 種類
例:文書を表現する単語ベクトル → 数千次元
これまで様々な手法が研究されてきた
図像ベースの手法
Chernoff faces [Chernoff, 1973]
Pixel based technique [Keim, 2000]
次元削減手法
Principal Component Analysis [Hotteling, 1993]
Multi Dimensional Scaling [Torgerson, 1952]
42015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Introduction Chernoff Face [Chernoff, 1973]
多次元データを人間の顔で表示する
15種類の顔のパラメータを持つ
52015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Chernoff faceの例
Introduction Pixel-based technique [Keim, 2000]
高次元データを色やエッジで表現する(?)
62015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
20年間の日記を可視化した結果
Introduction高次元データの可視化は様々な分野で重要な課題
様々な次元数を取り扱う
例:乳がんに関連する細胞核の種類 → 30 種類
例:文書を表現する単語ベクトル → 数千次元
本論文の目的
高次元データ𝑋 = {𝑥1, 𝑥2, … , 𝑥𝑛}を図示可能な低次元データ𝑌 = 𝑦1, 𝑦2, … , 𝑦𝑛 に変換
データのLocalな構造だけでなく多様体のようなGlobalな構造を保ったまま可視化
72015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Introduction多様体 (manifold) とは
高次元空間中に存在する実質的にはより低次元で表現できるような図形
82015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
多様体の例:スイスロール
Introduction Globalな構造とLocalな構造を両方保つとは?
92015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
例:手書き数字文字の可視化
Introduction Globalな構造とLocalな構造を両方保つとは?
102015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
例:手書き数字文字の可視化
クラスタが生成されているだけでなく9と7の判別がつきにくいものがきちんと近傍に位置している
目次1. Introduction
2. Stochastic Neighbor Embedding
3. t-Stochastic Neighbor Embedding
4. Experiments
5. Applying t-SNE to large dataset
6. Discussion
7. Conclusion
112015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
SNE – (1)Stochastic Neighbor Embedding (SNE)
高次元空間上のユークリッド距離をデータ点の類似度を表現する条件付き確率に変換する手法
𝑥𝑗の𝑥𝑖に対する類似度を表す条件付き確率
𝑥𝑖を中心とするガウス分布の密度に比例して近傍が選択されてほしい
条件付き確率が高い → データ点が近い
条件付き確率が低い → データ点が遠い
122015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
𝑥𝑖 𝑥𝑗
類似度高い
𝑥𝑘
類似度低い
𝑥𝑖を中心とするガウス分布
SNE – (2)Stochastic Neighbor Embedding (SNE)
高次元空間上のユークリッド距離をデータ点の類似度を表現する条件付き確率に変換する手法
データ点𝑥𝑖に対するデータ点𝑥𝑗の条件付き確率は
条件付き確率:𝑥𝑖に対する𝑥𝑗の類似度を表現
二点間の類似度のモデル化のみに着目 → 𝑝𝑖|𝑖 = 0
132015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)1()2/exp(
)2/exp(
22
22
|
ik iki
iji
ij
xx
xxp
𝑥𝑖:高次元データ点𝑥𝑗:高次元データ点
𝜎𝑖: 𝑥𝑖を中心としたガウス分布の分散
SNE – (3)高次元データ点に対応する低次元データ点を定義
マップ点の条件付き確率
二点間の類似度のモデル化のみに着目 → 𝑞𝑖|𝑖 = 0
マップ点が正しくモデル化されたならば 𝑝𝑗|𝑖 = 𝑞𝑗|𝑖
142015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)2()2
1(
)exp(
)exp(
2
2
|
ik ki
ji
ij
yy
yyq
ji xx , ji yy ,高次元空間表現 低次元空間表現(マップ点表現)
𝑝𝑗|𝑖と𝑞𝑗|𝑖の間のKL距離を最小化するような
マップ点の探索
SNE – (4)勾配法を用いてKL距離の最小化を行う
すべてのデータ点に対するKL距離の和
KL距離は非対称
マップ上での距離は等しく重み付けられてはいない
マップ上で遠い点を近いデータ点に対応 → コスト大
マップ上で近い点を遠いデータ点に対応 → コスト小
152015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)3(log)|(|
|
| i j ij
ij
ij
i
iiq
ppQPKLC
𝑃𝑖:データ点𝑥𝑖に対するすべてのデータ点の条件付き確率分布𝑄𝑖:マップ点𝑦𝑖に対するすべてのマップ点の条件付き確率分布
マップ上で局所的な構造を保てる
SNE – (5)データ点𝑥𝑖に対するガウス分布の分散の選択
単一の分散をすべてのデータ点に与える → 不適切
密度の濃い領域のデータ点 → 分散小
密度の薄い領域のデータ点 → 分散大
Perplexity尺度による二値探索の導入
Perplexityを定義
𝑃𝑒𝑟𝑝:データ点𝑥𝑖の有効な近傍の数の尺度
指定された𝑃𝑒𝑟𝑝を持つように𝜎𝑖を設定
一般的には5~50の間を𝑃𝑒𝑟𝑝として設定
※ 𝜎𝑖に対して𝑃𝑒𝑟𝑝は単調増加
162015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)4(2)()( iPH
iPPerp ))5(log)(( |2|j
ijiji ppPH
SNE – (6)各マップ点の勾配は驚くことに非常にシンプル
物理的な勾配の解釈
マップ点𝑦𝑖と他のマップ点𝑦𝑗間のバネによる合成力
バネは 𝑦𝑖 − 𝑦𝑗 の向きに作用
マップ点が非常に近い → バネは反発する
マップ点が非常に遠い → バネは引き合う
バネの力は硬さと長さに比例する
172015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
j
jijijiijij
i
yyqpqpy
C)6())((2 ||||
)( |||| jijiijij qpqp )( ji yy
データ点の類似度とマップ点の類似度の不整合
マップ上での距離
SNE – (7)勾配法による更新
1. 平均0で分散が小さい等方性のガウス分布からランダムに初期マップ点をサンプリング
2. 局所解に陥らないようモーメンタムを導入し更新
学習初期段階では更新後にガウス性ノイズを付加
徐々にノイズの分散を小さくする
182015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)7()( )2()1()1()( tttt YYtY
CYY
𝑌(𝑡) ∶時刻𝑡におけるマップ点𝜂 ∶学習率𝛼 𝑡 ∶時刻𝑡におけるモーメンタム
局所解から脱出するのを手助けする
SNE – (8)SNEの弱点
ノイズの初期値と減衰率の設定が非常にシビア
上記のパラメータが学習率やモーメンタムとも関係
パラメータの探索に非常に時間を要する
収束が確約された他の手法の方が使いやすい
計算時間の削減されたパラメータの探索無しに良い結果が得られる最適化手法が必要
192015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
t-Distributed Stochastic
Neighbor Embedding
目次1. Introduction
2. Stochastic Neighbor Embedding
3. t-Stochastic Neighbor Embedding
4. Experiments
5. Applying t-SNE to large dataset
6. Discussion
7. Conclusion
202015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
t-SNE SNE:非常に合理的な可視化を実現
コスト関数の最適化が困難
Crowding問題(後述)により扱いが困難
t-SNE:これらの問題を軽減した改良版SNE
改善点
SNEのコスト関数を対称的なバージョンを利用
勾配がよりシンプルに
低次元空間(マップ)上での二点間の類似度の計算をガウス分布ではなくStudent-t分布基準に
Crowding問題と最適化困難性を軽減
212015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Symmetric SNE – (1) SNE:条件付き確率分布 𝑝𝑗|𝑖と𝑞𝑗|𝑖のKL距離を最小化
代替案:同時確率分布 𝑝𝑗𝑖と𝑞𝑗𝑖のKL距離の最小化
コスト関数は
条件付き確率分布の場合と同様に 𝑝𝑖𝑗= 𝑞𝑖𝑗= 0
この場合を Symmetric SNE と呼ぶ
分布が任意の 𝑖 と 𝑗に対して対称 ( 𝑝𝑖𝑗= 𝑝𝑗𝑖 , 𝑞𝑖𝑗 = 𝑞𝑗𝑖)
222015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)8(log)|( i j ij
ij
ij
i q
ppQPKLC
Symmetric SNE – (2) Symmetric SNEのマップ点の類似度
Symmetric SNEのデータ点の類似度
が,データ点𝑥𝑖が外れ値の時に問題が発生
(すべてのデータ点に対して 𝑥𝑖 − 𝑥𝑗2が大きいとき)
232015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)10()2/exp(
)2/exp(
22
22
lk lk
ji
ij
xx
xxp
)9()exp(
)exp(
2
2
lk lk
ji
ij
yy
yyq
Symmetric SNE – (3) 外れ値による悪影響
1. データ点𝑥𝑖が外れ値の時 → 𝑥𝑖 − 𝑥𝑗2が大きい
2. 同時確率𝑝𝑖𝑗が非常に小さくなる
3. マップ点𝑦𝑖のコスト関数への影響力が小さくなる
4. マップ点の位置がうまく定まらなくなる
これを防ぐためデータ点の類似度の形を変更
これによりすべてのデータ点がコスト関数に貢献!
Symmetric SNEの勾配はよりシンプル
242015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
n
ppp
jiij
ij2
|| ( 𝑛はデータ点の総数)
j
jiijij
i
yyqpy
C)11())((4
Crowding problem – (1) 本質的に10次元を持った高次元空間上の多様体
手書き数字文字データセットを想像すると良い
10次元多様体上での距離を正確モデル化できない
例:10次元多様体上で相互に等間隔な11個のデータ点
二次元空間上への正確なマッピングは不可能
次元数+1までの個数しか等間隔に配置できない
252015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
二次元空間上で4個を等間隔二次元空間上で3個を等間隔
???
Crowding problem – (2)データ点が𝑥𝑖の周りに一様に分布
二次元空間上のスペースを考える
𝑥𝑖から適度に離れた点用のスペース : 狭い
𝑥𝑖の近くに位置する点用のスペース : 広い
→ 次元が増えるほど等間隔に位置する点は増加
→ 小さな距離を正確に表現すると適度に離れた点は非常に遠くに配置される
SNEでは非常に離れた点にはわずかな引力のみ
しかし,中心には非常に多くの引力が集まってしまい,潜在的なクラスタを形成するのを妨げてしまう
Crowding problem
262015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Crowding problem – (3)UNI-SNE [Cook et al., 2007]
小さな混同比 𝜌を持った一様背景分布モデルの導入
すべてのバネに微小な斥力を付加
SNEよりも優れた性能を示すが,最適化が困難
UNI-SNEの最適化
1. 通常のSNEで最適化
2. 混合比をわずかに増加させて最適化
3. クラスタを形成するためのギャップが生成がされる
2つのクラスタが最適化初期で分離された場合それらを再び引き寄せるための力がなくなる
272015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
t-SNE – (1)裾の広がりの異なる分布の利用
高次元空間:ガウス分布で類似度へ変換
低次元空間:自由度1のt-分布で類似度へ変換
→ 適度に離れた点をマップ上でより遠くに配置可能
→ データ点と似ていない点との間の引力を削除可能
282015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
ガウス分布と自由度1のt分布の比較
より遠くへ配置される
より近くへ配置される
t-SNE – (2)自由度1のt分布を利用したマップ点の同時確率
自由度1のt分布を利用する理由
1 + 𝑦𝑖 − 𝑦𝑗2 −1
から,マップ上での大きな距離
𝑦𝑖 − 𝑦𝑗 に対して逆二乗則が成立
遠く離れた点によるマップのスケールの変化に対して不変
クラスタの集合に対しても同様のことが起きる
t分布は実は様々な分散の無限混合ガウス分布に等しい
表現力が高い上に計算コストも低い
292015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)12(1
1
12
12
lk
lk
ji
ij
yy
yyq
t-SNE – (3)データ点の類似度とマップ点の類似度
この場合の勾配は
302015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
n
ppp
jiij
ij2
||
lk
lk
ji
ij
yy
yyq
12
12
1
1
j
jijiijij
i
yyyyqpy
C)13()1)()((4 1
2
勾配の導出 – (1)高次元空間上での対称条件付き確率
マップ上での同時確率
KL距離に基づくコスト関数は
計算の簡単化のため2つの補助変数を導入
𝑦𝑖が変化したとき変化するのは𝑑𝑖𝑗 , 𝑑𝑗𝑖のみ
312015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
n
ppp
jiij
ij2
||
lk
lk
ji
ij
yy
yyq
12
12
1
1
i
ijijij
j
ij
i j ij
ij
ij
i
qpppq
ppQPKLC logloglog)|(
jiij yyd
lk
kldZ 12 )1(
j
ji
ijj
ji
jiiji
yyd
Cyy
d
C
d
C
y
C)(2)(
j
jijiijij
i
yyyyqpy
C 12
)1)()((4
勾配の導出 – (2) コスト関数は
322015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
i
ijijij
j
ij qpppC loglog
12
1212
1222
22
12
)1)((2
)1()1(2)1(2
)0))1((
()1(
2)1(2
1))1((1
)log(log
)(log
)(log
ijijij
lk
klijijijij
lk ij
klij
klij
ij
ij
lk ijij
kl
kl
kl
lk ij
klkl
lk ij
klkl
i j ij
ij
ij
ij
dqp
pdqdp
d
djlikwhen
Z
dpd
Zq
p
d
Z
Zd
d
Zqp
d
ZZqp
d
qp
d
qp
d
C
t-SNEの利点 – (1)
332015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
1. 似てない点をマップ上において近い距離でモデル化した場合きちんと斥力が働く
SNEは斥力がない
UNI-SNEは引力に比べて斥力が弱い
UNI-SNEはマップ上の距離が大きい時しか斥力が大きくならない
t-SNEの利点 – (2)
342015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
2. 斥力が大きくなり過ぎない
UNI-SNEは斥力が低次元空間上での距離に比例
データ点が互いに非常に遠く離れていってしまう
t-SNEの利点 – (3)t-SNEの特徴まとめ
1. データ点間の距離が大きいものを似ていない点としてモデル化
2. データ点間の距離が小さいものを似ていない点としてモデル化
3. コスト関数の最適化が容易(事前のパラメータ探索が不要)
352015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
t-SNEの更新アルゴリズム – (1)
362015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
最も単純なアルゴリズム
これだけでも他の手法よりも優れた結果を示す
t-SNEの更新アルゴリズム – (2)学習をより効果的にするための2つのテクニック
1. Early Compression
最適化開始時にマップ上の点を密集するようにする
コスト関数にL2ノルム正則化項を追加
クラスタが綺麗に分かれるのを手助けできる
2. Early exaggeration
最適化開始時に𝑝𝑖𝑗に適当な数字(4)とかをかける
𝑞𝑖𝑗は非常に小さいので𝑝𝑖𝑗に対応するため大きく動く
結果としてマップ点が広くバラけるのを促進
クラスタがGlobalな構造を見つけやすくできる
学習効率を上げるためにどちらかを利用可能
372015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
t-SNEの更新アルゴリズム実際の本誌で扱われたパラメータ
Early exaggeration: 4を最初の50回
イテレーション: 1000回
モーメンタム: 0.5 (𝑡 ≤ 250) 0.8 (𝑡 > 250)
学習率:100+Adaptive learning rateによる最適化
Perplexity: 40
382015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
目次1. Introduction
2. Stochastic Neighbor Embedding
3. t-Stochastic Neighbor Embedding
4. Experiments
5. Applying t-SNE to large dataset
6. Discussion
7. Conclusion
392015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Experiments – (1)以下の7つの手法と比較
1. Sammon Mapping
2. Isomap
3. Locally Linear Embedding (LLE)
4. Curvilinear Components Analysis (CCA)
5. SNE
6. Maximum Variance Unfolding (MVU)
7. Laplacian Eigenmaps
本誌では上の3つのみに注目
402015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Sammon Mapping Sammon Mapping
高次元空間上での距離と射影された二次元空間上の距離をできるだけ近づけるような次元削減手法
誤差関数を次のように定義
勾配法で更新を行う
412015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
ij ij
ijij
ij
ij d
dd
dE
*
2*
*
1 𝑑𝑖𝑗∗ :高次元空間上での距離
𝑑𝑖𝑗:低次元空間上での距離
Y
EYY tt
)1()(
𝑌(𝑡) ∶時刻𝑡におけるマップ点𝜂 ∶学習率
誤差関数が変化しただけ
Isomap – (1)Isomap
𝑘-近傍グラフを用いて多様体上の測地線距離を求め多次元尺度構成法を用いて低次元空間に射影する
測地線距離とは
すごく単純に言うと多様体に沿った面における距離
422015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
参考:http://www.slideshare.net/kohta/risomap二次元多様体スイスロール
スイスロールを伸ばす
測地線距離
Isomap
𝑘-近傍グラフを用いて多様体上の測地線距離を求め多次元尺度構成法を用いて低次元空間に射影する
𝒌-近傍グラフとは
ノードとそのノードの𝑘個の近傍ノードを直線距離に基づく有向リンクで結んだもの
Isomap – (2)
432015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
𝑘 = 3のときの近傍グラフの例
参考:http://www.slideshare.net/kohta/risomap
Isomap
𝑘-近傍グラフを用いて多様体上の測地線距離を求め多次元尺度構成法を用いて低次元空間に射影する
どうやって測地線距離を測る?
多様体上でも近くの点同士はユークリッド距離関係に
𝑘-近傍グラフを作成することで測地線距離を近くの点のユークリッド距離の足しあわせで近似
Isomap – (3)
442015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap
多様体の面を𝑘-近傍グラフで近似 直線距離の足し合わせで近似
Isomap
k-近傍グラフを用いて多様体上の測地線距離を求め多次元尺度構成法を用いて低次元空間に射影する
多次元尺度構成法(MDS)とは
距離データのみが与えられたときにその距離を再現するような座標系を逆算する手法
Isomap – (4)
452015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap
データ点取得
近傍グラフ作成
測地線距離計算
多次元尺度構成法
による座標取得
散布図上に可視化
Locally Linear EmbeddingLocally Linear Embedding (局所線形埋め込み法)
多様体は狭い範囲で見れば線形空間とみなせる
狭い範囲で構築した線形モデルを滑らかに繋げば多様体がうまく表現できる
各データ点𝑥𝑖をその近傍の点の線形結合で表現
以下を最小化するようなパラメータ𝑊を求める
パラメータ𝑊を固定したまま低次元座標を求める
以下を最小化するような座標𝑌を求める
462015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
2
)(
minarg
iNj
jijiW
xwx𝑁 𝑖 : 𝑥𝑖の近傍集合制約条件 ∶ 𝑗𝑤𝑖𝑗 = 1
2
)(
minarg
iNj
jijiY
ywy 𝑦𝑖: 低次元空間表現
Experiments – (2)利用するデータセット
1. MNIST dataset (手書き数字文字)
28 × 28 = 784 (pixel)の0~9までの手書き数字
60000個データからランダムに6000個サンプリング
2. Olivetti faces dataset
40人の顔画像が一人につき10枚 (400枚)
92 × 112 = 10,304 (pixel)
3. COIL-20 dataset
20種類の物体の72方向から撮影された画像 (1440枚)
32 × 32 = 1024 (pixel)
472015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Experiments – (3)実験の流れ
1. PCAにより30次元に次元圧縮
各データ点間の距離計算時間の短縮
ノイズの抑圧
2. 各種法により2次元に次元圧縮
3. 散布図をプロット
各データセットはラベルを持っているが次元圧縮には一切利用しない
散布図の色付けと記号選択にのみ利用
512015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Experiments – (4)実験に用いたパラメータ
Sammon Mapping
Newton法による最適化 500 Iteration
Isomap & LLE
近傍グラフ上で最も接続数の多いデータ点群のみを可視化
522015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
Olivetti faces dataset – (2)
562015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
同じクラスの画像が2つのクラスタに分離
COIL-20 dataset – (2)
582015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
前方からと後方からのイメージがほとんど一緒
ソーセージ部分
目次1. Introduction
2. Stochastic Neighbor Embedding
3. t-Stochastic Neighbor Embedding
4. Experiments
5. Applying t-SNE to large dataset
6. Discussion
7. Conclusion
592015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
大規模データセットへの適用 – (1)大規模データセットに手法を適用することは困難
計算の複雑さ・メモリ容量の問題
t-SNEの場合10000点を超えると厳しい
解決策は?
データセットの中からランダムにデータをサンプリング
サンプリングされたデータを用いて可視化を行う
が,裏に潜んだ多様体に関する情報を見失う可能性
602015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
サンプリングして利用することの問題点 (1)
612015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
データ空間
A
B
C
ランダムにサンプリングされたほぼ等距離の3点
一見AとBの類似度とAとCの類似度は同じ
サンプリングして利用することの問題点 (2)
622015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
データ空間
A
B
C
データ点全体を考えてみる
AとBの類似度の方がAとCの類似度よりも高そう!
ランダムウォークによる類似度計算 – (1)
ランダムウォークによる類似度𝒑𝒋|𝒊の計算
ランドマーク点から出発して別のランドマーク点に辿り着いたら即終了するランダムウォークを考える
1. 考慮する近傍数𝑘を選択
2. 𝑘-近傍グラフを作成
3. 各エッジに𝑒− 𝑥𝑖−𝑥𝑗2
に比例する選択確率を付与
4. ランダムにLandmark点(可視化する点)を選択
5. あるLandmark点𝑥𝑖から別のLandmark点𝑥𝑗へ辿り着くパスをすべて探索
6. あるLandmark点𝑥𝑖から別のLandmark点𝑥𝑗へ辿り着く割合を類似度𝑝𝑗|𝑖とする
632015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
ランダムウォークによる類似度計算 – (2)
𝒌-近傍グラフ
ノードとそのノードの𝑘個の近傍ノードを有向リンクで結んだもの
642015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
𝑘 = 3のときの近傍グラフの例
ランダムウォークによる類似度計算 – (3)
最短パスではなく全体のパスを統合して用いる理由
“Short-circuit”問題の回避 [Lafon and Lee, 2006]
“Short-circuit”問題
データ空間中の2つの領域の間のノイズ点によって橋が形成されてしまうこと
652015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
ノイズ点
本来のあるべき姿 ノイズ点によって橋が形成
解析的解法 – (1)類似度計算のもう一つの方法 [Grady, 2006]
Kakutani, 1945; Doyle and Shel, 1984 曰く
ランドマーク点でない点から初期化されたランダムウォークが特定のランドマーク点に最初にたどり着く確率
あるランドマーク点が1に固定され,別のランドマーク点を0とした場合の,あるランドマーク点の位置を境界条件とした組み合わせディリクレ問題の解
両者は等しくなる(そうです)
662015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
解析的解法 – (2)ランダムウォークが隣接行列𝐖で表現されるとき
隣接行列W とは
ノード間の接続の有無を0か1で表現した行列
672015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
nnn
n
ww
ww
1
111
W
1
2
3
4
5
00010
00110
01001
11001
00110
解析的解法 – (2)ランダムウォークが隣接行列𝐖で表現されるとき
次数行列D とは
ノード間の接続数が対角要素に入った行列
682015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
nnn
n
ww
ww
1
111
W
10000
02000
00200
00030
00002
1
2
3
4
5
解析的解法 – (2)ランダムウォークが隣接行列𝐖で表現されるとき
グラフラプラシアンL とは
隣接行列と次数行列から 𝐋 = 𝐃 −𝐖
692015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
nnn
n
ww
ww
1
111
W
10010
02110
01201
11031
00112
1
2
3
4
5
解析的解法 – (2)ランダムウォークが隣接行列𝐖で表現されるとき
グラフラプラシアンL とは
隣接行列と次数行列から 𝐋 = 𝐃 −𝐖
702015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
nnn
n
ww
ww
1
111
W
10010
02110
01201
11031
00112
1
2
3
4
5
解析的解法 – (3) 求める解は組み合わせディリクレ積分公式の最小化
一般性を失うことなくランドマーク点が先頭に来るように入れ替えを行える
𝑥𝑁に関して微分し臨界点を求めることは線形システムを解くことと等価
712015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)32(2
1][ TLxxxD
)34(22
1
)33(2
1][ TT
NN
T
NM
TT
NLL
T
L
N
L
N
T
L
NLN
xLxxBxxLx
x
x
LB
BLxxxD
)35(TBxL NN
解析的解法 – (4) 得られた特性方程式
𝐵𝑇:グラフラプラシアン𝐿のランドマーク点に対応する行成分を含んだ行列
線形システム (35)は以下の場合のみ非特異解
グラフが完全に結合
相互に結合している要素が少なくとも1つランドマーク点を含んでいる
得られた解を正規化した行ベクトル𝑋𝑁 ランドマークでない点から開始したランダムウォークがランドマーク点を終点とする確率に対応
我々が本当に知りたいもの
ランドマーク点から開始したランダムウォークが別のランドマーク点を終点とする確率に対応
722015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)35(TBxL NN
解析的解法 – (5)ランドマーク点を複製することで解決!
1. ランドマーク点を複製
2. 複製したランドマーク点からランダムウォークを開始
𝑋𝑁全体をメモリ内に保持しておくことは困難
欲しいのは複製したランドマーク点の部分
線形システムを一つ一つ順番に解く
欲しい部分のみをメモリ内に保持
実際に求める場合はコレスキー分解を利用
これを解くことで求める確率が得られる!
732015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
T
T
CCL
BxL
N
NN
yCx
BCy
N
T
大規模データセットへの適用 – (2)どちらの手法を利用すべきか
1. ランダムウォークによる類似度計算
2. 解析的解法による類似度計算
予備実験で両者の性能を比較 → 有意な差は無し
計算コストの優位性からランダムウォークを採用
ただし非常に大規模なデータセットの場合
ランドマーク点が非常にスパースになってしまう
このような場合はおそらく解析的解法の方が適切
742015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
MNIST dataset の可視化結果 – (1)
752015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
ランドマーク点6000個 + ランダムウォーク (𝑘 = 20)
MNIST dataset の可視化結果 – (1)
762015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
クラスタが生成されているだけでなく9と7の判別がつきにくいものがきちんと近傍に位置している
ランドマーク点6000個 + ランダムウォーク (𝑘 = 20)
MNIST dataset の可視化結果 – (2)
772015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
次元削減された結果を用いてKNNで10交差検証
計算時間: CPUを用いた演算で1時間のみ
ランダムウォークの妥当性の証明
次元削減無し (784次元) 5.75 %
T-SNEによる次元削減 (2次元) 5.13 %
高次元空間上での構造が低次元空間上でもきちんと保たれている!
目次1. Introduction
2. Stochastic Neighbor Embedding
3. t-Stochastic Neighbor Embedding
4. Experiments
5. Applying t-SNE to large dataset
6. Discussion
7. Conclusion
782015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
前回のろんぶんしょうかい!
792015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
t-SNEの特徴まとめ
1. データ点間の距離が大きいものを似ていない点としてモデル化
2. データ点間の距離が小さいものを似ていない点としてモデル化
3. コスト関数の最適化が容易(事前のパラメータ探索が不要)
データのLocalな構造とGlobalな構造を保持
が,10000点以上の大規模データセットへは適用困難
大規模データセットへの適用のための2つの手法
1. ランダムウォークによる類似度計算
2. 解析的解法による類似度計算
上記の手法により大規模データセットにも適用可能!
MNIST dataset の可視化結果 – (1)
802015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
ランドマーク点6000個 + ランダムウォーク (𝑘 = 20)
MNIST dataset の可視化結果 – (1)
812015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
クラスタが生成されているだけでなく9と7の判別がつきにくいものがきちんと近傍に位置している
ランドマーク点6000個 + ランダムウォーク (𝑘 = 20)
Sammon Mapping Sammon Mapping
高次元空間上での距離と射影された二次元空間上の距離をできるだけ近づけるような次元削減手法
誤差関数を次のように定義
勾配法で更新を行う
822015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
ij ij
ijij
ij
ij d
dd
dE
*
2*
*
1 𝑑𝑖𝑗∗ :高次元空間上での距離
𝑑𝑖𝑗:低次元空間上での距離
Y
EYY tt
)1()(
𝑌(𝑡) ∶時刻𝑡におけるマップ点𝜂 ∶学習率
誤差関数が変化しただけ
Isomap – (1)Isomap
𝑘-近傍グラフを用いて多様体上の測地線距離を求め多次元尺度構成法を用いて低次元空間に射影する
測地線距離とは
すごく単純に言うと多様体に沿った面における距離
832015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
参考:http://www.slideshare.net/kohta/risomap二次元多様体スイスロール
スイスロールを伸ばす
測地線距離
Isomap
𝑘-近傍グラフを用いて多様体上の測地線距離を求め多次元尺度構成法を用いて低次元空間に射影する
𝒌-近傍グラフとは
ノードとそのノードの𝑘個の近傍ノードを直線距離に基づく有向リンクで結んだもの
Isomap – (2)
842015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
𝑘 = 3のときの近傍グラフの例
参考:http://www.slideshare.net/kohta/risomap
Isomap
𝑘-近傍グラフを用いて多様体上の測地線距離を求め多次元尺度構成法を用いて低次元空間に射影する
どうやって測地線距離を測る?
多様体上でも近くの点同士はユークリッド距離関係に
𝑘-近傍グラフを作成することで測地線距離を近くの点のユークリッド距離の足しあわせで近似
Isomap – (3)
852015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap
多様体の面を𝑘-近傍グラフで近似 直線距離の足し合わせで近似
Isomap
k-近傍グラフを用いて多様体上の測地線距離を求め多次元尺度構成法を用いて低次元空間に射影する
多次元尺度構成法(MDS)とは
距離データのみが与えられたときにその距離を再現するような座標系を逆算する手法
Isomap – (4)
862015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap
データ点取得
近傍グラフ作成
測地線距離計算
多次元尺度構成法
による座標取得
散布図上に可視化
Locally Linear EmbeddingLocally Linear Embedding (局所線形埋め込み法)
多様体は狭い範囲で見れば線形空間とみなせる
狭い範囲で構築した線形モデルを滑らかに繋げば多様体がうまく表現できる
各データ点𝑥𝑖をその近傍の点の線形結合で表現
以下を最小化するようなパラメータ𝑊を求める
パラメータ𝑊を固定したまま低次元座標を求める
以下を最小化するような座標𝑌を求める
872015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
2
)(
minarg
iNj
jijiW
xwx𝑁 𝑖 : 𝑥𝑖の近傍集合制約条件 ∶ 𝑗𝑤𝑖𝑗 = 1
2
)(
minarg
iNj
jijiY
ywy 𝑦𝑖: 低次元空間表現
他のノンパラ手法との比較 – (1)Classical scaling [Torgerson, 1952]
高次元空間上での距離と低次元空間上での距離の間の二乗和誤差を最小化するような線形変換
目的関数
Classical scalingの問題点
線形変換ではカーブした多様体をモデル化できない
近くのデータ点よりも遠くのデータ点の距離を保持することに注目している
この問題を解決しようとした手法がSammon mapping
882015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
ij
ijij ddE2*
𝑑𝑖𝑗∗ :高次元空間上での距離
𝑑𝑖𝑗:低次元空間上での距離
他のノンパラ手法との比較 – (2) Sammon Mapping
高次元空間上での距離と射影された二次元空間上の距離をできるだけ近づけるような次元削減手法
目的関数
Sammon mappingの問題点
マップ上で保持している二点間の距離が二点間の距離の中の小さな違いに大きく依存
物凄く高次元中で近接した2点の距離の小さな誤差が目的関数に大きく影響を与えてしまう
892015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
ij ij
ijij
ij
ij d
dd
dE
*
2*
*
1 𝑑𝑖𝑗∗ :高次元空間上での距離
𝑑𝑖𝑗:低次元空間上での距離
微分の際の計算を容易にするための定数
他のノンパラ手法との比較 – (3) Sammon mappingに比べてt-SNEが優れている理由
Localな構造とGlobalな構造の間に境界を定義
近くにいる2点の距離とガウス分布の分散を関連
2点間の分離のモデル化と実際の分離の度合いが独立
データの局所的密度に応じてそれぞれの分散を定義
902015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
他のノンパラ手法との比較 – (3)Isomap
𝑘-近傍グラフを用いて多様体上の測地線距離を求め多次元尺度構成法を用いて低次元空間に射影する
Isomapの問題点
Short-curcuitの影響を非常に受けやすい
主に小さな測地線距離より大きなものに注目
912015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
他のノンパラ手法との比較 – (4)Locally Linear Embedding (局所線形埋め込み法)
多様体は狭い範囲で見れば線形空間とみなせる
狭い範囲で構築した線形モデルを滑らかに繋げば多様体がうまく表現できる
LLEの問題点
すべてのデータ点が1つ点に集中するのを防いでいる
このことが低次元空間上の共分散に制約を与える
実用上この制約は以下のように満足される
ほとんどの点をマップの中央に配置
大きな共分散を得るためいくつかの点を幅広く配置
2015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
他のノンパラ手法との比較 – (5) 𝑘-近傍グラフに基づいた手法の問題点
IsomapやLLEなどの手法
2つ以上の離れた多様体からなるデータを扱えない
データが結合されたグラフとして表現されないため
Short-circuitによる影響が大きい
一方でランダムウォークVer. t-SNE は?
近傍グラフ中のすべてのパスを統合して類似度を算出
Short-circuitの影響を受けにくい
似たような手法としてDiffusion mapが存在
942015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
他のノンパラ手法との比較 – (7)Diffusion map [Lafon and Lee, 2006]
近傍グラフ上のランダムウォークに基づいたDiffusion距離と低次元空間上での距離を最小化
Diffusion距離
目的関数
952015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)15(
)(),(
)0(
)()(
)(
k k
t
jk
t
ik
ji
t
x
ppxxD
𝑝𝑖𝑘(𝑡)
∶時刻𝑡において粒子が𝑥𝑖から𝑥𝑘に移動する確率
𝜓 𝑥𝑘(0):その点の局所的な密度 SNEと同様の考え方
)16(),(2
)(
ji
jiji
t yyxxDC
𝑦𝑖:低次元空間上での座標
他のノンパラ手法との比較 – (8)Diffusion map [Lafon and Lee, 2006]
近傍グラフ上のランダムウォークに基づいたDiffusion距離と低次元空間上での距離を最小化
目的関数
Diffusion mapの問題点
Classical scalingと同様の問題
遠い距離の点を重視しすぎてしまう
データのLocalな構造の情報が失われる
962015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
)16(),(2
)(
ji
jiji
t yyxxDC
t-SNEの弱点 t-SNEは他のどの手法よりも優れた可視化を提供
しかしながら潜在的に3つの弱点が存在
1. 一般的な次元削減タスクにおける振る舞いが未知
2. データの本質的な次元数の呪いを受ける
3. 目的関数の収束を保証しない
972015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
t-SNEの弱点 – (1) 1. 一般的な次元削減タスクにおける振る舞いが未知
評価を簡単にするため可視化のみに注目
非常に優れた可視化結果を提供
次元数が3より大きい場合の挙動は未知
t-分布の裾広がりの部分が確率質量の大部分を占める
Local構造をうまく保持することが困難に
より高次元空間に圧縮する場合
t-分布の自由度を大きくする必要がある
本誌ではこの適切な自由度に関する議論は無し
982015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
t-SNEの弱点 – (2)2. データの本質的な次元の呪いを受ける
t-SNEはデータのLocal構造に基づく
次元の呪いの影響を非常に受けやすい![Bengio, 2007]
以下のような条件で可視化がイマイチに
データの本質的な次元が非常に高い (100次元ほど)
それぞれ潜んでいる多様体が大きく異なっている
多様体上での局所的線形性の仮定が崩れるため
LLEやIsomapも全く同様の問題を持つ
より複雑なデータを可視化したい場合
Auto-encoder [Hinton et al., 2006] を利用
層構造で複雑な非線形関数を表現可能
992015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
そのような構造を二次元上に可視化することはそもそも不可能であるということを念頭を置くべき
t-SNEの弱点 – (3)3. 目的関数の収束が保証されていない
ほとんどの主要な次元削減手法 → 目的関数が凸状
が,t-SNEは目的関数の凸性が保証されていない
可視化結果がいくつかのパラメータに依存
しかしながら
パラメータをランダムに変更
可視化結果自体はそれほど変化しない
t-SNEの利用を拒む理由にはなり得ない!
他の手法も計算量の問題から結局似たような問題に
LLEやLaplacian eigenmapも逐次最適化手法
• Iterative Arnoldi [Arnoldi,1951]• Jacobi-Davidson [Fokkema et al., 1999]
1002015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -
目次1. Introduction
2. Stochastic Neighbor Embedding
3. t-Stochastic Neighbor Embedding
4. Experiments
5. Applying t-SNE to large dataset
6. Discussion
7. Conclusion
1012015/07/23 武田研究室論文紹介 - Visualizing Data Using t-SNE -