Visualizing Data Using t-SNE

3,838 views

Published on

研究室での論文紹介スライド.
Laurens van der Maaten, Geoffrey Hinton, ”Visualizing Data
using t-SNE”, Journal of Machine Learning Research (2008)
pp.1-48

Published in: Education

Visualizing Data Using t-SNE

  1. 1. Visualizing Data Using t-SNE 名古屋大学 情報科学研究科 武田研究室 林 知樹
  2. 2. 目次 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 -
  3. 3. 目次 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 -
  4. 4. 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 -
  5. 5. Introduction  Chernoff Face [Chernoff, 1973]  多次元データを人間の顔で表示する  15種類の顔のパラメータを持つ 52015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - Chernoff faceの例
  6. 6. Introduction  Pixel-based technique [Keim, 2000]  高次元データを色やエッジで表現する(?) 62015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 20年間の日記を可視化した結果
  7. 7. Introduction  高次元データの可視化は様々な分野で重要な課題  様々な次元数を取り扱う  例:乳がんに関連する細胞核の種類 → 30 種類  例:文書を表現する単語ベクトル → 数千次元 本論文の目的  高次元データ𝑋 = {𝑥1, 𝑥2, … , 𝑥 𝑛}を図示可能な 低次元データ𝑌 = 𝑦1, 𝑦2, … , 𝑦𝑛 に変換  データのLocalな構造だけでなく 多様体のようなGlobalな構造を保ったまま可視化 72015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  8. 8. Introduction 多様体 (manifold) とは  高次元空間中に存在する実質的にはより低次元で 表現できるような図形 82015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 多様体の例:スイスロール
  9. 9. Introduction  Globalな構造とLocalな構造を両方保つとは? 92015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 例:手書き数字文字の可視化
  10. 10. Introduction  Globalな構造とLocalな構造を両方保つとは? 102015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 例:手書き数字文字の可視化 クラスタが生成されているだけでなく 9と7の判別がつきにくいものが きちんと近傍に位置している
  11. 11. 目次 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 -
  12. 12. SNE – (1) Stochastic Neighbor Embedding (SNE)  高次元空間上のユークリッド距離をデータ点の類似度 を表現する条件付き確率に変換する手法  𝑥𝑗の𝑥𝑖に対する類似度を表す条件付き確率  𝑥𝑖を中心とするガウス分布の密度に比例して近傍が 選択されてほしい  条件付き確率が高い → データ点が近い  条件付き確率が低い → データ点が遠い 122015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 𝑥𝑖 𝑥𝑗 類似度高い 𝑥 𝑘 類似度低い 𝑥𝑖を中心とするガウス分布
  13. 13. 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 xx p   𝑥𝑖: 高次元データ点 𝑥𝑗: 高次元データ点 𝜎𝑖: 𝑥𝑖を中心としたガウス分布の分散
  14. 14. SNE – (3)  高次元データ点に対応する低次元データ点を定義  マップ点の条件付き確率  二点間の類似度のモデル化のみに着目 → 𝑞𝑖|𝑖 = 0  マップ点が正しくモデル化されたならば 𝑝𝑗|𝑖 = 𝑞 𝑗|𝑖 142015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - )2() 2 1 ( )exp( )exp( 2 2 |        ik ki ji ij yy yy q ji xx , ji yy , 高次元空間表現 低次元空間表現(マップ点表現) 𝑝𝑗|𝑖と𝑞𝑗|𝑖の間のKL距離を最小化するような マップ点の探索
  15. 15. SNE – (4)  勾配法を用いてKL距離の最小化を行う  すべてのデータ点に対するKL距離の和  KL距離は非対称  マップ上での距離は等しく重み付けられてはいない  マップ上で遠い点を近いデータ点に対応 → コスト大  マップ上で近い点を遠いデータ点に対応 → コスト小 152015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - )3(log)|( | | |  i j ij ij ij i ii q p pQPKLC 𝑃𝑖: データ点𝑥𝑖に対するすべてのデータ点の条件付き確率分布 𝑄𝑖: マップ点𝑦𝑖に対するすべてのマップ点の条件付き確率分布 マップ上で局所的な構造を保てる
  16. 16. SNE – (5)  データ点𝑥𝑖に対するガウス分布の分散の選択  単一の分散をすべてのデータ点に与える → 不適切  密度の濃い領域のデータ点 → 分散小  密度の薄い領域のデータ点 → 分散大 Perplexity尺度による二値探索の導入  Perplexityを定義  𝑃𝑒𝑟𝑝:データ点𝑥𝑖の有効な近傍の数の尺度  指定された𝑃𝑒𝑟𝑝を持つように𝜎𝑖を設定  一般的には5~50の間を𝑃𝑒𝑟𝑝として設定  ※ 𝜎𝑖に対して𝑃𝑒𝑟𝑝は単調増加 162015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - )4(2)( )( iPH iPPerp  ))5(log)(( |2| j ijiji ppPH
  17. 17. SNE – (6)  各マップ点の勾配は驚くことに非常にシンプル 物理的な勾配の解釈  マップ点𝑦𝑖と他のマップ点𝑦𝑗間のバネによる合成力  バネは 𝑦𝑖 − 𝑦𝑗 の向きに作用  マップ点が非常に近い → バネは反発する  マップ点が非常に遠い → バネは引き合う  バネの力は硬さと長さに比例する 172015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -   j jijijiijij i yyqpqp y C )6())((2 ||||   )( |||| jijiijij qpqp  )( ji yy  データ点の類似度と マップ点の類似度の不整合 マップ上での距離
  18. 18. SNE – (7) 勾配法による更新 1. 平均0で分散が小さい等方性のガウス分布から ランダムに初期マップ点をサンプリング 2. 局所解に陥らないようモーメンタムを導入し更新  学習初期段階では更新後にガウス性ノイズを付加  徐々にノイズの分散を小さくする 182015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -   )7()( )2()1()1()(   tttt YYt Y C YY     𝑌(𝑡) ∶ 時刻𝑡におけるマップ点 𝜂 ∶ 学習率 𝛼 𝑡 ∶ 時刻𝑡におけるモーメンタム 局所解から脱出するのを手助けする
  19. 19. SNE – (8) SNEの弱点  ノイズの初期値と減衰率の設定が非常にシビア  上記のパラメータが学習率やモーメンタムとも関係  パラメータの探索に非常に時間を要する  収束が確約された他の手法の方が使いやすい 計算時間の削減されたパラメータの探索無しに 良い結果が得られる最適化手法が必要 192015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - t-Distributed Stochastic Neighbor Embedding
  20. 20. 目次 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 -
  21. 21. t-SNE SNE:非常に合理的な可視化を実現  コスト関数の最適化が困難  Crowding問題(後述)により扱いが困難 t-SNE:これらの問題を軽減した改良版SNE  改善点  SNEのコスト関数を対称的なバージョンを利用  勾配がよりシンプルに  低次元空間(マップ)上での二点間の類似度の計算を ガウス分布ではなくStudent-t分布基準に  Crowding問題と最適化困難性を軽減 212015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  22. 22. 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 p pQPKLC
  23. 23. 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 xx p   )9( )exp( )exp( 2 2      lk lk ji ij yy yy q
  24. 24. Symmetric SNE – (3)  外れ値による悪影響 1. データ点𝑥𝑖が外れ値の時 → 𝑥𝑖 − 𝑥𝑗 2 が大きい 2. 同時確率𝑝𝑖𝑗が非常に小さくなる 3. マップ点𝑦𝑖のコスト関数への影響力が小さくなる 4. マップ点の位置がうまく定まらなくなる  これを防ぐためデータ点の類似度の形を変更 これによりすべてのデータ点がコスト関数に貢献!  Symmetric SNEの勾配はよりシンプル 242015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - n pp p jiij ij 2 ||   ( 𝑛 はデータ点の総数)   j jiijij i yyqp y C )11())((4  
  25. 25. Crowding problem – (1)  本質的に10次元を持った高次元空間上の多様体  手書き数字文字データセットを想像すると良い  10次元多様体上での距離を正確モデル化できない  例:10次元多様体上で相互に等間隔な11個のデータ点  二次元空間上への正確なマッピングは不可能  次元数+1までの個数しか等間隔に配置できない 252015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 二次元空間上で4個を等間隔二次元空間上で3個を等間隔 ???
  26. 26. Crowding problem – (2)  データ点が𝑥𝑖の周りに一様に分布  二次元空間上のスペースを考える  𝑥𝑖から適度に離れた点用のスペース : 狭い  𝑥𝑖の近くに位置する点用のスペース : 広い → 次元が増えるほど等間隔に位置する点は増加 → 小さな距離を正確に表現すると適度に 離れた点は非常に遠くに配置される  SNEでは非常に離れた点にはわずかな引力のみ  しかし,中心には非常に多くの引力が集まってしまい, 潜在的なクラスタを形成するのを妨げてしまう Crowding problem 262015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  27. 27. 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 -
  28. 28. t-SNE – (1)  裾の広がりの異なる分布の利用  高次元空間:ガウス分布で類似度へ変換  低次元空間:自由度1のt-分布で類似度へ変換 → 適度に離れた点をマップ上でより遠くに配置可能 → データ点と似ていない点との間の引力を削除可能 282015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - ガウス分布と自由度1のt分布の比較 より遠くへ配置される より近くへ配置される
  29. 29. 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 yy q
  30. 30. t-SNE – (3)  データ点の類似度とマップ点の類似度  この場合の勾配は 302015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - n pp p jiij ij 2 ||            lk lk ji ij yy yy q 12 12 1 1    j jijiijij i yyyyqp y C )13()1)()((4 12  
  31. 31. 勾配の導出 – (1)  高次元空間上での対称条件付き確率  マップ上での同時確率  KL距離に基づくコスト関数は  計算の簡単化のため2つの補助変数を導入  𝑦𝑖が変化したとき変化するのは𝑑𝑖𝑗, 𝑑𝑗𝑖のみ 312015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - n pp p jiij ij 2 ||            lk lk ji ij yy yy q 12 12 1 1   i ijijij j ij i j ij ij ij i qppp q p pQPKLC logloglog)|( jiij yyd     lk kldZ 12 )1(            j ji ijj ji jiiji yy d C yy d C d C y C )(2)(        
  32. 32.    j jijiijij i yyyyqp y 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 kl kl lk ij kl kl i j ij ij ij ij dqp pdqdp d d jlikwhen Z d pd Zq p d Z Zd d Zq p d ZZq p d q p d q p d C                
  33. 33. t-SNEの利点 – (1) 332015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 1. 似てない点をマップ上において近い距離で モデル化した場合きちんと斥力が働く  SNEは斥力がない  UNI-SNEは引力に比べて斥力が弱い  UNI-SNEはマップ上の距離が大きい時しか斥力が 大きくならない
  34. 34. t-SNEの利点 – (2) 342015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 2. 斥力が大きくなり過ぎない  UNI-SNEは斥力が低次元空間上での距離に比例  データ点が互いに非常に遠く離れていってしまう
  35. 35. t-SNEの利点 – (3) t-SNEの特徴まとめ 1. データ点間の距離が大きいものを似ていない点としてモデル化 2. データ点間の距離が小さいものを似ていない点としてモデル化 3. コスト関数の最適化が容易(事前のパラメータ探索が不要) 352015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  36. 36. t-SNEの更新アルゴリズム – (1) 362015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -  最も単純なアルゴリズム  これだけでも他の手法よりも優れた結果を示す
  37. 37. t-SNEの更新アルゴリズム – (2) 学習をより効果的にするための2つのテクニック 1. Early Compression  最適化開始時にマップ上の点を密集するようにする  コスト関数にL2ノルム正則化項を追加  クラスタが綺麗に分かれるのを手助けできる 2. Early exaggeration  最適化開始時に𝑝𝑖𝑗に適当な数字(4)とかをかける  𝑞𝑖𝑗は非常に小さいので𝑝𝑖𝑗に対応するため大きく動く  結果としてマップ点が広くバラけるのを促進  クラスタがGlobalな構造を見つけやすくできる  学習効率を上げるためにどちらかを利用可能 372015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  38. 38. 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 -
  39. 39. 目次 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 -
  40. 40. 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 -
  41. 41. Sammon Mapping Sammon Mapping  高次元空間上での距離と射影された二次元空間上の 距離をできるだけ近づけるような次元削減手法  誤差関数を次のように定義  勾配法で更新を行う 412015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -         ij ij ijij ij ij d dd d E * 2* * 1 𝑑𝑖𝑗 ∗ : 高次元空間上での距離 𝑑𝑖𝑗: 低次元空間上での距離 Y E YY tt     )1()( 𝑌(𝑡) ∶ 時刻𝑡におけるマップ点 𝜂 ∶ 学習率 誤差関数が変化しただけ
  42. 42. Isomap – (1) Isomap  𝑘-近傍グラフを用いて多様体上の測地線距離を求め 多次元尺度構成法を用いて低次元空間に射影する  測地線距離とは  すごく単純に言うと多様体に沿った面における距離 422015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap二次元多様体スイスロール スイスロールを伸ばす 測地線距離
  43. 43. Isomap  𝑘-近傍グラフを用いて多様体上の測地線距離を求め 多次元尺度構成法を用いて低次元空間に射影する  𝒌-近傍グラフとは  ノードとそのノードの𝑘個の近傍ノードを直線距離に 基づく有向リンクで結んだもの Isomap – (2) 432015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 𝑘 = 3のときの近傍グラフの例 参考:http://www.slideshare.net/kohta/risomap
  44. 44. Isomap  𝑘-近傍グラフを用いて多様体上の測地線距離を求め 多次元尺度構成法を用いて低次元空間に射影する  どうやって測地線距離を測る?  多様体上でも近くの点同士はユークリッド距離関係に  𝑘-近傍グラフを作成することで測地線距離を近くの 点のユークリッド距離の足しあわせで近似 Isomap – (3) 442015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap 多様体の面を𝑘-近傍グラフで近似 直線距離の足し合わせで近似
  45. 45. Isomap  k-近傍グラフを用いて多様体上の測地線距離を求め 多次元尺度構成法を用いて低次元空間に射影する  多次元尺度構成法(MDS)とは  距離データのみが与えられたときにその距離を再現 するような座標系を逆算する手法 Isomap – (4) 452015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap デ ー タ 点 取 得 近 傍 グ ラ フ 作 成 測 地 線 距 離 計 算 多 次 元 尺 度 構 成 法 に よ る 座 標 取 得 散 布 図 上 に 可 視 化
  46. 46. Locally Linear Embedding Locally Linear Embedding (局所線形埋め込み法)  多様体は狭い範囲で見れば線形空間とみなせる  狭い範囲で構築した線形モデルを滑らかに繋げば 多様体がうまく表現できる  各データ点𝑥𝑖をその近傍の点の線形結合で表現  以下を最小化するようなパラメータ𝑊を求める  パラメータ𝑊を固定したまま低次元座標を求める  以下を最小化するような座標𝑌を求める 462015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 2 )( minarg   iNj jiji W xwx 𝑁 𝑖 : 𝑥𝑖の近傍集合 制約条件 ∶ 𝑗 𝑤𝑖𝑗 = 1 2 )( minarg   iNj jiji Y ywy 𝑦𝑖: 低次元空間表現
  47. 47. 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 -
  48. 48. MNIST dataset 482015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  49. 49. Olivetti faces dataset 492015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  50. 50. COIL-20 dataset 502015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  51. 51. Experiments – (3) 実験の流れ 1. PCAにより30次元に次元圧縮  各データ点間の距離計算時間の短縮  ノイズの抑圧 2. 各種法により2次元に次元圧縮 3. 散布図をプロット  各データセットはラベルを持っているが次元圧縮には 一切利用しない  散布図の色付けと記号選択にのみ利用 512015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  52. 52. Experiments – (4)  実験に用いたパラメータ  Sammon Mapping  Newton法による最適化 500 Iteration  Isomap & LLE  近傍グラフ上で最も接続数の多いデータ点群のみを 可視化 522015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  53. 53. MNIST dataset – (1) 532015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  54. 54. MNIST dataset – (2) 542015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  55. 55. Olivetti faces dataset – (1) 552015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  56. 56. Olivetti faces dataset – (2) 562015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 同じクラスの画像が2つのクラスタに分離
  57. 57. COIL-20 dataset – (1) 572015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  58. 58. COIL-20 dataset – (2) 582015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 前方からと後方からの イメージがほとんど一緒 ソーセージ部分
  59. 59. 目次 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 -
  60. 60. 大規模データセットへの適用 – (1)  大規模データセットに手法を適用することは困難  計算の複雑さ・メモリ容量の問題  t-SNEの場合10000点を超えると厳しい  解決策は?  データセットの中からランダムにデータをサンプリング  サンプリングされたデータを用いて可視化を行う が,裏に潜んだ多様体に関する情報を見失う可能性 602015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  61. 61. サンプリングして利用することの問題点 (1) 612015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - データ空間 A B C  ランダムにサンプリングされたほぼ等距離の3点  一見AとBの類似度とAとCの類似度は同じ
  62. 62. サンプリングして利用することの問題点 (2) 622015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - データ空間 A B C  データ点全体を考えてみる  AとBの類似度の方がAとCの類似度よりも高そう!
  63. 63. ランダムウォークによる類似度計算 – (1) ランダムウォークによる類似度𝒑𝒋|𝒊の計算  ランドマーク点から出発して別のランドマーク点に 辿り着いたら即終了するランダムウォークを考える 1. 考慮する近傍数𝑘を選択 2. 𝑘-近傍グラフを作成 3. 各エッジに𝑒− 𝑥 𝑖−𝑥 𝑗 2 に比例する選択確率を付与 4. ランダムにLandmark点(可視化する点)を選択 5. あるLandmark点𝑥𝑖から別のLandmark点𝑥𝑗へ辿り 着くパスをすべて探索 6. あるLandmark点𝑥𝑖から別のLandmark点𝑥𝑗へ辿り 着く割合を類似度𝑝𝑗|𝑖とする 632015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  64. 64. ランダムウォークによる類似度計算 – (2) 𝒌-近傍グラフ  ノードとそのノードの𝑘個の近傍ノードを有向リンクで 結んだもの 642015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 𝑘 = 3のときの近傍グラフの例
  65. 65. ランダムウォークによる類似度計算 – (3)  最短パスではなく全体のパスを統合して用いる理由  “Short-circuit”問題の回避 [Lafon and Lee, 2006] “Short-circuit”問題  データ空間中の2つの領域の間のノイズ点によって 橋が形成されてしまうこと 652015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - ノイズ点 本来のあるべき姿 ノイズ点によって橋が形成
  66. 66. 解析的解法 – (1)  類似度計算のもう一つの方法 [Grady, 2006] Kakutani, 1945; Doyle and Shel, 1984 曰く  ランドマーク点でない点から初期化されたランダム ウォークが特定のランドマーク点に最初にたどり着く確率  あるランドマーク点が1に固定され,別のランドマーク点 を0とした場合の,あるランドマーク点の位置を境界条件 とした組み合わせディリクレ問題の解  両者は等しくなる(そうです) 662015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  67. 67. 解析的解法 – (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
  68. 68. 解析的解法 – (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
  69. 69. 解析的解法 – (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
  70. 70. 解析的解法 – (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
  71. 71. 解析的解法 – (3)  求める解は組み合わせディリクレ積分公式の最小化  一般性を失うことなくランドマーク点が先頭に来る ように入れ替えを行える  𝑥 𝑁に関して微分し臨界点を求めることは線形 システムを解くことと等価 712015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - )32( 2 1 ][ T LxxxD      )34(2 2 1 )33( 2 1 ][ TT NN T NM TT NLL T L N L N T L NLN xLxxBxxLx x x LB BL xxxD               )35(T BxL NN 
  72. 72. 解析的解法 – (4)  得られた特性方程式 𝐵 𝑇: グラフラプラシアン𝐿のランドマーク点に対応する 行成分を含んだ行列  線形システム (35) は以下の場合のみ非特異解  グラフが完全に結合  相互に結合している要素が少なくとも1つランドマーク 点を含んでいる  得られた解を正規化した行ベクトル𝑋 𝑁  ランドマークでない点から開始したランダムウォークが ランドマーク点を終点とする確率に対応  我々が本当に知りたいもの  ランドマーク点から開始したランダムウォークが 別のランドマーク点を終点とする確率に対応 722015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - )35(T BxL NN 
  73. 73. 解析的解法 – (5)  ランドマーク点を複製することで解決! 1. ランドマーク点を複製 2. 複製したランドマーク点からランダムウォークを開始  𝑋 𝑁全体をメモリ内に保持しておくことは困難  欲しいのは複製したランドマーク点の部分  線形システムを一つ一つ順番に解く  欲しい部分のみをメモリ内に保持  実際に求める場合はコレスキー分解を利用  これを解くことで求める確率が得られる! 732015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -      T T CCL BxL N NN      yCx BCy N T
  74. 74. 大規模データセットへの適用 – (2)  どちらの手法を利用すべきか 1. ランダムウォークによる類似度計算 2. 解析的解法による類似度計算  予備実験で両者の性能を比較 → 有意な差は無し  計算コストの優位性からランダムウォークを採用  ただし非常に大規模なデータセットの場合  ランドマーク点が非常にスパースになってしまう  このような場合はおそらく解析的解法の方が適切 742015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  75. 75. MNIST dataset の可視化結果 – (1) 752015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -  ランドマーク点6000個 + ランダムウォーク (𝑘 = 20)
  76. 76. MNIST dataset の可視化結果 – (1) 762015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - クラスタが生成されているだけでなく 9と7の判別がつきにくいものが きちんと近傍に位置している  ランドマーク点6000個 + ランダムウォーク (𝑘 = 20)
  77. 77. MNIST dataset の可視化結果 – (2) 772015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -  次元削減された結果を用いてKNNで10交差検証  計算時間: CPUを用いた演算で1時間のみ  ランダムウォークの妥当性の証明 次元削減無し (784次元) 5.75 % T-SNEによる次元削減 (2次元) 5.13 % 高次元空間上での構造が低次元空間上でも きちんと保たれている!
  78. 78. 目次 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 -
  79. 79. 前回のろんぶんしょうかい! 792015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - t-SNEの特徴まとめ 1. データ点間の距離が大きいものを似ていない点としてモデル化 2. データ点間の距離が小さいものを似ていない点としてモデル化 3. コスト関数の最適化が容易(事前のパラメータ探索が不要)  データのLocalな構造とGlobalな構造を保持  が,10000点以上の大規模データセットへは適用困難  大規模データセットへの適用のための2つの手法 1. ランダムウォークによる類似度計算 2. 解析的解法による類似度計算 上記の手法により大規模データセットにも適用可能!
  80. 80. MNIST dataset の可視化結果 – (1) 802015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -  ランドマーク点6000個 + ランダムウォーク (𝑘 = 20)
  81. 81. MNIST dataset の可視化結果 – (1) 812015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - クラスタが生成されているだけでなく 9と7の判別がつきにくいものが きちんと近傍に位置している  ランドマーク点6000個 + ランダムウォーク (𝑘 = 20)
  82. 82. Sammon Mapping Sammon Mapping  高次元空間上での距離と射影された二次元空間上の 距離をできるだけ近づけるような次元削減手法  誤差関数を次のように定義  勾配法で更新を行う 822015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -         ij ij ijij ij ij d dd d E * 2* * 1 𝑑𝑖𝑗 ∗ : 高次元空間上での距離 𝑑𝑖𝑗: 低次元空間上での距離 Y E YY tt     )1()( 𝑌(𝑡) ∶ 時刻𝑡におけるマップ点 𝜂 ∶ 学習率 誤差関数が変化しただけ
  83. 83. Isomap – (1) Isomap  𝑘-近傍グラフを用いて多様体上の測地線距離を求め 多次元尺度構成法を用いて低次元空間に射影する  測地線距離とは  すごく単純に言うと多様体に沿った面における距離 832015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap二次元多様体スイスロール スイスロールを伸ばす 測地線距離
  84. 84. Isomap  𝑘-近傍グラフを用いて多様体上の測地線距離を求め 多次元尺度構成法を用いて低次元空間に射影する  𝒌-近傍グラフとは  ノードとそのノードの𝑘個の近傍ノードを直線距離に 基づく有向リンクで結んだもの Isomap – (2) 842015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 𝑘 = 3のときの近傍グラフの例 参考:http://www.slideshare.net/kohta/risomap
  85. 85. Isomap  𝑘-近傍グラフを用いて多様体上の測地線距離を求め 多次元尺度構成法を用いて低次元空間に射影する  どうやって測地線距離を測る?  多様体上でも近くの点同士はユークリッド距離関係に  𝑘-近傍グラフを作成することで測地線距離を近くの 点のユークリッド距離の足しあわせで近似 Isomap – (3) 852015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap 多様体の面を𝑘-近傍グラフで近似 直線距離の足し合わせで近似
  86. 86. Isomap  k-近傍グラフを用いて多様体上の測地線距離を求め 多次元尺度構成法を用いて低次元空間に射影する  多次元尺度構成法(MDS)とは  距離データのみが与えられたときにその距離を再現 するような座標系を逆算する手法 Isomap – (4) 862015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 参考:http://www.slideshare.net/kohta/risomap デ ー タ 点 取 得 近 傍 グ ラ フ 作 成 測 地 線 距 離 計 算 多 次 元 尺 度 構 成 法 に よ る 座 標 取 得 散 布 図 上 に 可 視 化
  87. 87. Locally Linear Embedding Locally Linear Embedding (局所線形埋め込み法)  多様体は狭い範囲で見れば線形空間とみなせる  狭い範囲で構築した線形モデルを滑らかに繋げば 多様体がうまく表現できる  各データ点𝑥𝑖をその近傍の点の線形結合で表現  以下を最小化するようなパラメータ𝑊を求める  パラメータ𝑊を固定したまま低次元座標を求める  以下を最小化するような座標𝑌を求める 872015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - 2 )( minarg   iNj jiji W xwx 𝑁 𝑖 : 𝑥𝑖の近傍集合 制約条件 ∶ 𝑗 𝑤𝑖𝑗 = 1 2 )( minarg   iNj jiji Y ywy 𝑦𝑖: 低次元空間表現
  88. 88. 他のノンパラ手法との比較 – (1) Classical scaling [Torgerson, 1952]  高次元空間上での距離と低次元空間上での距離の 間の二乗和誤差を最小化するような線形変換  目的関数  Classical scalingの問題点  線形変換ではカーブした多様体をモデル化できない  近くのデータ点よりも遠くのデータ点の距離を保持 することに注目している この問題を解決しようとした手法がSammon mapping 882015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -    ij ijij ddE 2* 𝑑𝑖𝑗 ∗ : 高次元空間上での距離 𝑑𝑖𝑗: 低次元空間上での距離
  89. 89. 他のノンパラ手法との比較 – (2) Sammon Mapping  高次元空間上での距離と射影された二次元空間上の 距離をできるだけ近づけるような次元削減手法  目的関数  Sammon mappingの問題点  マップ上で保持している二点間の距離が 二点間の距離の中の小さな違いに大きく依存  物凄く高次元中で近接した2点の距離の小さな誤差が 目的関数に大きく影響を与えてしまう 892015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -         ij ij ijij ij ij d dd d E * 2* * 1 𝑑𝑖𝑗 ∗ : 高次元空間上での距離 𝑑𝑖𝑗: 低次元空間上での距離 微分の際の計算を 容易にするための定数
  90. 90. 他のノンパラ手法との比較 – (3)  Sammon mappingに比べてt-SNEが優れている理由  Localな構造とGlobalな構造の間に境界を定義  近くにいる2点の距離とガウス分布の分散を関連  2点間の分離のモデル化と実際の分離の度合いが独立  データの局所的密度に応じてそれぞれの分散を定義 902015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  91. 91. 他のノンパラ手法との比較 – (3) Isomap  𝑘-近傍グラフを用いて多様体上の測地線距離を求め 多次元尺度構成法を用いて低次元空間に射影する  Isomapの問題点  Short-curcuitの影響を非常に受けやすい  主に小さな測地線距離より大きなものに注目 912015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  92. 92. 他のノンパラ手法との比較 – (4) Locally Linear Embedding (局所線形埋め込み法)  多様体は狭い範囲で見れば線形空間とみなせる  狭い範囲で構築した線形モデルを滑らかに繋げば 多様体がうまく表現できる  LLEの問題点  すべてのデータ点が1つ点に集中するのを防いでいる  このことが低次元空間上の共分散に制約を与える  実用上この制約は以下のように満足される  ほとんどの点をマップの中央に配置  大きな共分散を得るためいくつかの点を幅広く配置 2015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  93. 93. LLEの弱点が顕著に現れた様子 932015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE - ほとんどの点が中央に集中 いくつかの点だけが幅広く配置
  94. 94. 他のノンパラ手法との比較 – (5)  𝑘-近傍グラフに基づいた手法の問題点  IsomapやLLEなどの手法  2つ以上の離れた多様体からなるデータを扱えない  データが結合されたグラフとして表現されないため  Short-circuitによる影響が大きい  一方でランダムウォークVer. t-SNE は?  近傍グラフ中のすべてのパスを統合して類似度を算出  Short-circuitの影響を受けにくい  似たような手法としてDiffusion mapが存在 942015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  95. 95. 他のノンパラ手法との比較 – (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 pp xxD  𝑝𝑖𝑘 (𝑡) ∶ 時刻𝑡において粒子が𝑥𝑖から𝑥 𝑘に移動する確率 𝜓 𝑥 𝑘 (0) : その点の局所的な密度 SNEと同様の考え方   )16(),( 2)(   ji jiji t yyxxDC 𝑦𝑖: 低次元空間上での座標
  96. 96. 他のノンパラ手法との比較 – (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
  97. 97. t-SNEの弱点  t-SNEは他のどの手法よりも優れた可視化を提供  しかしながら潜在的に3つの弱点が存在 1. 一般的な次元削減タスクにおける振る舞いが未知 2. データの本質的な次元数の呪いを受ける 3. 目的関数の収束を保証しない 972015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  98. 98. t-SNEの弱点 – (1) 1. 一般的な次元削減タスクにおける振る舞いが未知  評価を簡単にするため可視化のみに注目  非常に優れた可視化結果を提供  次元数が3より大きい場合の挙動は未知  t-分布の裾広がりの部分が確率質量の大部分を占める  Local構造をうまく保持することが困難に  より高次元空間に圧縮する場合  t-分布の自由度を大きくする必要がある  本誌ではこの適切な自由度に関する議論は無し 982015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -
  99. 99. 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 - そのような構造を二次元上に可視化することは そもそも不可能であるということを念頭を置くべき
  100. 100. 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 -
  101. 101. 目次 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 -
  102. 102. まとめと今後の課題 まとめ  t-SNEと呼ばれる可視化手法を提案  Local構造とクラスタのようなGlobalな構造を共に保持  ランダムウォークを利用することで非常に大きなデータ セット(10000点以上)にも対応可能 今後の課題  t-分布の自由度の最適化の調査  低次元マップ点によって高次元データ点をモデル化 する手法への拡張  明確な低次元空間へのマッピングを行うためのNNの 学習のために,ホールドアウト検証用のテストデータ の生成を可能にするパラメトリックVer.の開発 1022015/07/23 武田研究室 論文紹介 - Visualizing Data Using t-SNE -

×