Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

位相的データ解析入門 「『穴』lytics」

842 views

Published on

第72回 Tokyo.R 発表資料
TDA入門

Published in: Data & Analytics
  • Be the first to comment

位相的データ解析入門 「『穴』lytics」

  1. 1. 「穴」lytics @kur0cky_y 2018/09/01 Tokyo.R
  2. 2. 自己紹介 • 名前 - kur0cky : @kur0cky_y • 職業 - 学生(経営工学専攻 M1) • 専門 - 統計学(あさくひろく) • 趣味 - 映画,音楽全般(弾く・聴く),飲食,kaggle • 悩み - 就活したくない,お金が欲しい,承認が欲しい
  3. 3. 自己紹介 • 名前 - kur0cky : @kur0cky_y • 職業 - 学生(経営工学専攻 M1) • 専門 - 統計学(あさくひろく) • 趣味 - 映画,音楽全般(弾く・聴く),飲食 • 悩み - 就活したくない,お金が欲しい,承認が欲しい
  4. 4. • つらい • 心の「穴」ありますか??
  5. 5. つらい• • 心の「穴」ありますか??
  6. 6. 「穴」lytics キルケゴール• 『死に至る病』つらい人は読む 絶望と自己には密接な関わりがある つまり・・・•
  7. 7. 「穴」lytics • キルケゴール『死に至る病』つらい人は読む 絶望と自己には密接な関わりがある • つまり・・・ 穴 is 特徴
  8. 8. 本日のテーマ • データの「穴」を見よう • 今回の「穴」とは 欠損 位相的特徴 • キーワード - 位相的データ解析 - Persistent Homology(持続的なホモロジー) - Persistent Diagram - 遅れ時間座標
  9. 9. 目次 1. 位相的データ解析 2. Persistent Homology 3. “TDA” package 4. Persistent diagramの要約・応用 5. 時系列データへの応用 6. 応用例
  10. 10. 位相的データ解析 Topological Data Analysis (TDA)• データの• 位相的特徴に注目した解析手法 従来• の統計手法では捉えられないデータの側面を分析する手法 として注目されている 位相的特徴? うーんよくわからん
  11. 11. 位相幾何学(とぽろじぃ) • 数学の一分野 • 微分幾何学と異なり,点と点のつながりに着目 • 切り貼りすることなく連続的に変形させて重なり合う図形は 同じ(位相同型) • 「柔らかい幾何学」 R ※すべて1つの連結,1つの穴を持つ
  12. 12. ほもろじぃ 位相幾何• における代数的対象 • 0次元のホモロジー:連結 • 1次元のホモロジー:わっか(穴) • 2次元のホモロジー:空洞 難しいので定義と詳細は割愛()
  13. 13. 図で考える • 0次元:1個 • 1次元:5個 • 0次元:2個 • 1次元:3個
  14. 14. イントロ まとめ • データの位相的特徴に着目する 位相的データ解析 (TDA) がある • 位相幾何では,切り貼りせず連続的 に変形できる形は同じ • 絶望と向き合おう (この発表で一番大事)
  15. 15. 目次 1. 位相的データ解析 2. Persistent Homology 3. “TDA” package 4. Persistent diagramの要約・応用 5. 時系列データへの応用 6. 応用例
  16. 16. データのホモロジー 入力データ:ℝ 𝑑上の有限点集合𝒟 = 𝑢𝑖 𝑖=1 𝑁 𝓓自体は位相情報を持っていない ⬇️ 𝒟の各点を中心とした半径𝑟の超球を考えることで 位相構造を作り出す ※ 𝑟 をどのように取るか?
  17. 17. Persistent Homology (PH) (スーパー感覚的な理解) TDA• にも色々な手法があるが,主に場合Persistent Homology が用いられる ※他にはmapper や size functionなど <Persistent Homology> ホモロジーの「発生」と「消失」に着目する データ1. (有限点集合)を与える(特徴量空間で観測は点) 2. 各点を中心とした超球を考える 3. 半径𝒓を連続的に増やし,ホモロジーの「発生」と「消失」をみる
  18. 18. 例:人工データ • 右のような人工データを 考える • 円周上の一様分布
  19. 19. gif でみる PH • 新しい「連結」が生まれ, 最後には1つになる • 「わっか」が発生し消失 する どう解析すん の??
  20. 20. Persistent Diagram (PD) パーシステンス対 𝑏𝑗, 𝑑𝑗 𝑏𝑗:ホモロジー𝑗が発生する半径 𝑑𝑗:ホモロジー𝑗が消失する半径 𝒟 ➡ PH ➡ 𝑏𝑗, 𝑑𝑗 𝑗=1 𝑆 ∪ 𝑏𝑗, ∞ 𝑗=𝑆+1 𝑆+𝑡 最終的に得られる集合をPersistent Diagramという ※ 0次のホモロジーでは半径を大きくしても連結成分が1つ残る
  21. 21. Persistent Diagram (PD) PH• は Persistent Diagramとして一意に表現できる 横軸• :発生半径𝑏 縦軸:消失半径𝑑 ※𝑑 = 𝑏から離れていればより持続的なホモロジー
  22. 22. 人工データ+ノイズ • ノイズなし,ノイズ小,ノイズ大の3種類
  23. 23. 人工データ+ノイズ ノイズなし• ,ノイズ小,ノイズ大の3種類 ホモロジーの• 持続性がなくなっていく様子がわかる
  24. 24. Persistent Homologyの計算 半径• 𝑟 を連続的に増やしながら,ホモロジーを数えるのは非現実的 単体• 複体という代数的対象を利用する チェック• 複体(厳密*,遅い,超球を考えることに相当) ヴィートリス・リップス• 複体(厳密でない,早い) アルファ• 複体(厳密,早め) *脈体定理により,超球を考えた場合とホモトピー同値であることが保証されるHatcher (2002) ホモトピー同値:切り貼りしない連続変形で移りあえる関係 語感がかわいい
  25. 25. <単体複体> 『単体複体とは単体点(0次元),辺(1次元),三角形(2次 元),四面体(3次元),‥‥,𝑘次元の三角形,をきちんと 貼り合わせてできる幾何学的対象のことである』平岡(2013) [定義] 平岡(2013) ℝ 𝑁 に属する有限個の単体の集まり𝐾が以下の条件を満たすと き, 𝐾を単体複体とよぶ 1. 𝐾に属する単体𝜏の面𝜎 ≺ 𝜏もまた𝐾に含まれる 2. 2つの単体𝜏, 𝜎 ∈ 𝐾の共通部分𝜏 ∩ 𝜎が空集合でないならば, 𝜏 ∩ 𝜎 は𝜏の面であり,かつ𝜎の面である
  26. 26. アルファ複体 1. 有限点集合𝒟のボロノイ図を作成する 2. 𝑛個のボロノイ領域が接するとき対応する点の間に 𝑛 − 1 単 体を張る(ドロネー複体) 3. ドロネー複体の各頂点を頂点とする 4. 𝑚個のボロノイ領域が接するとき,領域に対応する𝑚頂点に 半径𝑟の超球を置く 5. 𝑚個の円盤が共通部分を持つならそこに 𝑚 − 1 単体を張る アルファ複体はドロネー複体の部分複体
  27. 27. 解析手順 まとめ 1. 点群(多次元データ)を用意する なんらかのライブラリで2. PHを計 算する 3. PD(n×3 行列)を作成する ホモロジーの• 次元,発生半径, 消失半径 なんか4. 解析
  28. 28. 目次 1. 位相的データ解析 2. Persistent Homology 3. “TDA” package 4. Persistent diagramの要約・応用 5. 時系列データへの応用 6. 応用例
  29. 29. TDA package • 「CRANにないものはない」ないものはつくる 今年• はCRANから消えては復活しを続けているので要注意 過去• のバージョンを使いたいときは repmis::InstallOldPackages(“TDA”, versions=“1.4”) v1.4が安定していたはず(どこかで問題はあるかも) install.packages("TDA") library(TDA)
  30. 30. 先ほどの例 • TDA::circleUnif() で円周上の一様分布から乱数 • 2種類の円周上から一様乱数を得た data <- rbind(TDA::circleUnif(50, r=1), TDA::circleUnif(50, r=0.5) + 1) head(data) #> x1 x2 #> [1,] 0.6945338 -0.7194600 #> [2,] 0.9385411 -0.3451675 #> [3,] 0.9081197 -0.4187106 #> [4,] 0.7173014 -0.6967630 #> [5,] -0.2169708 0.9761781 #> [6,] -0.6534316 0.7569856
  31. 31. TDA::• alphaComplexDiag(df)でアルファ複体を利用したPDの計算 リストが• 返ってくきてよくわからんのでdiag[[“diagram”]]で行列を 取り出す ちなみに• plot(diag)でPDをプロットしてくれる ggplot• 使いはご自分でどうぞ diag <- TDA::alphaComplexDiag(data) class(diag) #> [1] "list" diag[["diagram"]][1:5,] #> dimension Birth Death #> [1,] 0 0 Inf #> [2,] 0 0 0.05519140 #> [3,] 0 0 0.03325115 #> [4,] 0 0 0.03182473 #> [5,] 0 0 0.02726743
  32. 32. 目次 位相的1. データ解析 Persistent Homology2. 3. “TDA” package Persistent diagram4. の解析・要約 時系列5. データへの応用 応用例6.
  33. 33. 主な解析 1. PD をそのまま2次元散布図とみなしそのまま解析 • Bottleneck や Wasserstein 距離を用いて比較 • 画像認識 • 専門家による判断 2. PD から何らかの要約をし,ベクトル化,統計的学習に持ち込む • カーネル法 • Maximum Persistence • Persistence Landscape • Silhouette • Betti Sequence • etc... 今回はいくつか抜粋して紹介
  34. 34. 準備 パーシステントホモロジーの• 𝑞次元のダイアグラムを 𝐷 𝑞 = 𝑏𝑖, 𝑑𝑖 𝑖∈𝐼 𝑞 で表現するとする • 𝑏𝑖はホモロジー𝑖の発生半径,𝑑𝑖は消失半径
  35. 35. Bottleneck • 2つのPDの非類似度を求める手法 • 一つのPDをもう一つのPD もしくは𝑏 = 𝑑と重ねるために 動かす最小距離 bottleneck = 0.229
  36. 36. Maximum persistence • 読んで字のごとく最大のpersistence (発生半径 - 消失半径) maxPers 𝐷 𝑞 = max 𝑖∈𝐼 𝑞 (𝑑𝑖 − 𝑏𝑖)
  37. 37. Persistence Landscape (PL) • 存続の強いホモロジーに注目した要約 • 𝑡の時系列とみなせる Λ 𝑖 𝑡 = 𝑡 − 𝑏𝑖, 𝑡 ∈ 𝑏𝑖, 𝑏𝑖 + 𝑑𝑖 2 𝑑𝑖 − 𝑡, 𝑡 ∈ 𝑏𝑖 + 𝑑𝑖 2 , 𝑑𝑖 0, 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 Landscape 𝒟 𝑞 𝑡 = sup 𝑖∈𝐷 𝑞 Λ 𝑖 𝑡
  38. 38. Silhouette 𝜙 𝐷 𝑞 𝑝 𝑡 = σ 𝑗 |𝑑𝑗 − 𝑏𝑗|Λ𝑗 𝑡 σ 𝑗 |𝑑𝑗 − 𝑏𝑗| 𝑝 , 0 ≤ 𝑝 ≤ ∞ ※𝑝はパラメータ 小さければ持続性の小さいホモロジーの影響を, 大きければ持続性の大きいホモロジーの影響を受ける
  39. 39. Betti Sequence 半径• 𝑟を動かした時のベッチ数の系列 ベッチ数:存在しているホモロジーの数 これも• 半径 r の時系列とみなせる ノイズに• 由来するような、数が多く持続性の弱いホモロジーに 左右される
  40. 40. 新たな特徴量としてのTDA • PDやその要約を特徴量として用い, 統計的学習に持ち込むことが出来る 例 • Bottleneckを非類似度として教師なし学習 • Maximum persistenceを他の特徴量にまぜて教師あり学習
  41. 41. PDの解析 まとめ Persistent Diagram• を解析に活か したい 直接的• な解析としては画像認識や bottleneckなどによる比較がある 統計的学習• につなげるための様々な 提案がなされている
  42. 42. 目次 1. 位相的データ解析 2. Persistent Homology 3. “TDA” package 4. Persistent diagramの要約・応用 5. 時系列データへの応用 6. 応用例
  43. 43. 時系列データの「穴」 点群• を用意すればPDが作成できる 多次元時系列• ならそのままTDAのメソッドが使えそうだ(既に 点群になっている) • 1次元時系列データでは??? 時間遅れ座標を用いた埋め込み
  44. 44. 遅れ時間座標への埋め込み (embedding) • カオス力学系の分野では,しばしばアトラクタの再構成に埋め 込みが用いられる • アトラクタ:ダイナミクスの時間発展を記述する集合 𝑦𝑡 (𝑡 = 1, … , 𝑇) ↓ 𝒚 𝑡 = 𝑦𝑡, 𝑦 𝑡−𝜏 , … , 𝑦 𝑡− 𝑚−1 𝜏 T 𝜏間隔で,過去の𝑦と合わせて𝑚次元化する
  45. 45. 埋め込む際の注意点 • 遅れ単位𝜏はどうするのか 系列- の周期の倍数はよくない - 小さすぎて相関が出てしまってもよくない 色々- ためしてみよう • 埋め込み次元𝑚はどうするのか ターケンス- の埋め込み定理(𝑚の十分条件を与える)がよく参照される 色々- ためしてみよう 偽近傍- が外れるまで行う方法も提案されている 十分多次元- に埋め込んでから次元削減にかける方法も提案されている
  46. 46. 時系列の例 • 次のような時系列の埋め込みを考える 𝑦 = sin 𝑡 sin 32𝑡 + 𝑥
  47. 47. 上昇• トレンド,微細周期,微細周期 の振れ幅をすべて捉えられているの は𝜏 = 20 上昇• :右上への動き 微細周期• :回転 微細周期• の振れ幅:回転半径 𝜏• = 1では時間遅れ座標との相関が強 すぎて潰れている 𝜏• = 100は悪くないが,サンプルが減 り,微細周期の振れ幅をうまく反映 できていない 𝜏 = 1 𝜏 = 100 𝜏 = 20 時系列の例埋め込み
  48. 48. 目次 1. 位相的データ解析 2. Persistent Homology 3. “TDA” package 4. Persistent diagramの要約・応用 5. 時系列データの解析 6. 応用例
  49. 49. 非晶質固体の構造解析 PD• を用い,液体シリカと非晶質シリカ の原子配置の位相的な階層構 造の差異を確認した Cu• -Zr金属ガラスにおいても原子の階層構造を明らかにした ※非晶質固体 結晶の中では原子(または分子)は周期的に規則正しく並んでいる. これに対して,原子の配置あるいは原子のつながりが大きく乱れた固体 (例:ガラス) Hiraoka et al. (2016)
  50. 50. 金融危機の早期検知 • アメリカ市場の指数であるS&P500, DJIA, NASDAQ, Russel2000の 対数収益率で点群を作成 • スライド窓によるPDの推移を観察 • リーマンショック等の金融危機が起こる前に,PLのL1ノルム・ L2ノルムが変化することを確認した. Gidea and Katz (2018)
  51. 51. 時系列の分類 時系列• の分類問題はDTWや特徴量ベースの教師あり学習が行わ れてきた カオス• 時系列に対しては不適切でない • 実データはカオティックな面と非カオティックな面がある Betti• Sequenceを新たな特徴量として用い、CNNなどで分類 Umeda(2017)
  52. 52. まとめ • 位相的データ解析 (TDA) を紹介した • まだまだ応用事例が少ない • 興味が沸いたらやってみてください • 懇親会で仲良くしてください(重要)
  53. 53. 参考文献 1. H. Edelsbrunner and J. Harer, “Topological persistence and simplification,”Discrete and Computational Geometry, 28, pp.~511--533, 2002. (Persistent Homology) 2. H. Edelsbrunner and J. Harer, “Computational Topology: An Introduction,” AMS, 2010. (ドロネー複体からアルファ複体の導出) 3. P. Bubenik, “Statistical topological data analysis using persistence landscapes,” JMLR, 16, pp.~77--102, 2015. (Persistence Landscape) 4. F. Chazal, B. Fasy, F. Lecci, A. Rinaldo and L. Wasserman, “Stochastic convergence of persistence landscapes and silhouettes,” Journal of Computational Geometry, 6, pp. 140—161, 2015. (Silhouette) 5. A. Hatcher, “Algebraic Topology,” Cambridge University Press, 2001. (脈体定理)
  54. 54. 参考文献 6. Y. Umeda, “Time Series Classification via Topological Data Analysis,” 人工知能学会論文誌, 32 巻, 3号, p. D-G72_1-12, 2017. (Betti Sequence) 7. F. Takens, “Detecting strange attractors in turbulence,” Dynamical Systems and Turbulence, Warwick 1980, 898, pp. 366-381, 1981. (ターケンスの埋め込み定理) 8. Y. Hiraoka, T. Nakamura, A. Hirata, E. Escolar, K. Matsue, and Y. Nishiura, “Hierarchical structures of amorphous solids characterized by persistent homology,” PNAS, 113, pp. 7035- 7040, 2016. (非晶質シリカの構造分析) 9. M. Gidea and Y. Katz, “Topological data analysis of financial time series: Landscapes of crashes,” Physica A: Statistical Mechanics and its Applications, 491, pp. 820-834, 2018. (金融危機の早期検知) 10. 平岡裕章, 『タンパク質構造とトポロジー ―パーシステントホモロジー群入門―』,共 立出版, 2013. (Persistent Homologyに関する和書)
  55. 55. Enjoy!!

×