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
1.6k
次元の呪いと球面集中現象
『次元の呪い』という言葉について、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
190
X-meansの仕組み
k_study
0
1.8k
勾配ブースティングの仕組み
k_study
0
97
k-meansクラスタリングの仕組み
k_study
0
240
決定木を使った回帰の仕組み
k_study
0
210
アンサンブル学習① ランダムフォレストの仕組み
k_study
0
91
決定木に含まれるパラメタによる事前剪定と事後剪定
k_study
0
640
線形回帰② 正則化と過学習
k_study
0
520
外れ値とHuber(フーバー)損失
k_study
0
1k
Other Decks in Technology
See All in Technology
データエンジニアがこの先生きのこるには...?
10xinc
0
440
Azure Well-Architected Framework入門
tomokusaba
1
290
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
3
330
社内お問い合わせBotの仕組みと学び
nish01
0
150
ACA でMAGI システムを社内で展開しようとした話
mappie_kochi
1
250
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
9k
Where will it converge?
ibknadedeji
0
180
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
5.4k
組織観点からIAM Identity CenterとIAMの設計を考える
nrinetcom
PRO
1
170
Azure SynapseからAzure Databricksへ 移行してわかった新時代のコスト問題!?
databricksjapan
0
140
定期的な価値提供だけじゃない、スクラムが導くチームの共創化 / 20251004 Naoki Takahashi
shift_evolve
PRO
3
300
PLaMoの事後学習を支える技術 / PFN LLMセミナー
pfn
PRO
9
3.8k
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
The Language of Interfaces
destraynor
162
25k
Speed Design
sergeychernyshev
32
1.1k
Why Our Code Smells
bkeepers
PRO
339
57k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
KATA
mclloyd
32
15k
The Invisible Side of Design
smashingmag
301
51k
Thoughts on Productivity
jonyablonski
70
4.9k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
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近傍法で どのように影響するかを紹介しました • 高次元なデータを扱う場合、次元を削減できないか検討し、次元
数とデータ数がアルゴリズムの前提に合っているか確認する必要 がある