Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
次元の呪いと球面集中現象
Search
K_DM
September 19, 2021
Technology
0
870
次元の呪いと球面集中現象
『次元の呪い』という言葉について、K近傍法を高次元なデータに適用した場合にどのような問題が発生するかを具体例に挙げて説明します。
動画:
https://youtu.be/DhnMnaWLo-E
K_DM
September 19, 2021
Tweet
Share
More Decks by K_DM
See All by K_DM
主成分分析(PCA)の仕組み
k_study
0
120
X-meansの仕組み
k_study
0
820
勾配ブースティングの仕組み
k_study
0
44
k-meansクラスタリングの仕組み
k_study
0
140
決定木を使った回帰の仕組み
k_study
0
170
アンサンブル学習① ランダムフォレストの仕組み
k_study
0
47
決定木に含まれるパラメタによる事前剪定と事後剪定
k_study
0
330
線形回帰② 正則化と過学習
k_study
0
240
外れ値とHuber(フーバー)損失
k_study
0
610
Other Decks in Technology
See All in Technology
関数型DDDの理論と実践:「決定を遅らせる」を先につくり、 ビジネスの機動力と価値をあげる
knih
2
480
エバンジェリスト活動を7年やってきて見えてきた、コミュニティとエバンジェリストの関係
soracom
PRO
1
200
Vos logs méritent mieux que la config par défaut
lyrixx
2
350
Introduction to Jetpack Compose
pohjus
1
110
業務で使えるかもしれない…!?GitHub Actions の Tips 集 / CI/CD Test Night #7
ponkio_o
PRO
24
7.1k
社内共通ルールを値オブジェクトにして社内ライブラリとして運用してみた話
leveragestech
2
1.2k
こんなに簡単!AWSマルチアカウント
takuya_terada
0
110
生成AI・LLM時代における 機械学習エンジニアとしてのキャリア戦略・開発戦略 / my-career-and-development-strategies-for-ml-engineer-2024
yuya4
4
710
オブジェクト指向宗教史
tanakahisateru
14
12k
8週連続ウェビナー_イチから学ぶFivetran
cmsuzu
0
170
XRミーティング 2024-03-20
1ftseabass
PRO
0
100
これまでのキャリアとこれからMLエンジニアとしてどう動くか
masatakashiwagi
0
470
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
124
32k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
225
51k
Building a Scalable Design System with Sketch
lauravandoore
455
32k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3k
Reflections from 52 weeks, 52 projects
jeffersonlam
343
19k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
101
6.6k
Code Review Best Practice
trishagee
54
15k
Stop Working from a Prison Cell
hatefulcrawdad
265
19k
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
The Invisible Customer
myddelton
114
12k
Fantastic passwords and where to find them - at NoRuKo
philnash
35
2.4k
Transcript
,ͷษڧνϟϯωϧ
今回の内容 •次元の呪いとは •K近傍法と球面集中現象 •次元が大きくなる時にどのような問題が発生するか次元の呪いを避けるためには 『次元の呪い』とは何か説明します
次元の呪いとは 高次元のデータを用いて計算・データ分析をする際に発生する問題の総称 The curse of dimensionality refers to various phenomena
that arise when analyzing and organizing data in high- dimensional spaces that do not occur in low-dimensional settings … ग़యɿhttps://en.wikipedia.org/wiki/Curse_of_dimensionality 組合せ爆発 データ間の距離を測る上での問題 機械学習や異常検知における、予測に関係しない次元の多さ 計算量の増加
K-近傍法 データの周辺のk個の点をもとに、分類や回帰を行う x1 x0 この点は白か黒か? x1 x0 近傍が白なので白
K-近傍法 データの周辺のk個の点をもとに、分類や回帰を行う x1 x0 こ の は か か x1
x0 近傍が白なので白 この近傍の点を探索する作業、 どれくらい大変なのでしょうか?
データが1次元の場合 ソートして周辺と比較すれば、近傍の点を探索できる [0, 1, 9, 2, 11, 10, 8, 2,
1, 1, 100] 12 12に近いデータはどれ…? [0, 1, 1, 1, 2, 2, 8, 9, 10, 11, 100] ソートしてから二分探索すれば速く見つけられる!
データが2次元の場合 空間をいくつかの区画に分けて探索 (4, 5)に近いデータはどれ…? x1 x0 • • • •
• • • • • • • • • • • • • • • • • • • • • • • • • • x1 x0 • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • 区画を分けて、 区画分けを木で表現すれば探索できる kD木と呼びます
さらに次元数を増やしたら どうなるか?
データが3次元の場合 近傍にあたる領域がどれくらいあるのかを調べます x1 x0 • x1 x0 • x2 黒い点の近傍(表面の濃い青色)の体積を求めてみる
表面の体積は、2つの球の体積の差で求まる 近傍にあたる領域がどれくらいあるのかを調べます x1 x0 x2 • = -
表面の体積は、2つの球の体積の差で求まる 近傍にあたる領域がどれくらいあるのかを調べます x1 x0 x2 • = - an rn
an (r − b)n = an rn(1 − (1 − d r )n) an = 次元数によって決定する定数 = 次元数 n
次元数nが大きくなると球の表面が体積のほとんどを占める つまり、球の表面に黒点の近傍が大量に存在している x1 x0 x2 • = - an rn
an (r − b)n = an rn(1 − (1 − d r )n) nが大きいほど0に近づく と an rn がほぼ同じ体積 つまり • • • • • • • • • • • •
この状態でk近傍探索すると、近傍の点が大量に見つかる つまり、球の中心から見て同じ距離の箇所に大量に点がある x1 x0 x2 • と an rn がほぼ同じ体積
• • • • • • • • • • • • 球の体積のほとんどは である は中心の点から見て等しい距離 仮にデータを100個ランダムにばらまい た時、ばらまいたデータのほとんどは球 の表面 に含まれてしまい、 中心から見ると99個のデータがどれも 近傍にあるように見える ※球面集中現象と呼ばれています
まとめ 次元の呪いについて説明しました • 高次元のデータを用いて計算・データ分析をする際に発生する問 題の総称 • 一例として、次元の呪いの一種である球面集中現象がk近傍法で どのように影響するかを紹介しました • 高次元なデータを扱う場合、次元を削減できないか検討し、次元
数とデータ数がアルゴリズムの前提に合っているか確認する必要 がある