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
94
k-meansクラスタリングの仕組み
k_study
0
230
決定木を使った回帰の仕組み
k_study
0
210
アンサンブル学習① ランダムフォレストの仕組み
k_study
0
90
決定木に含まれるパラメタによる事前剪定と事後剪定
k_study
0
620
線形回帰② 正則化と過学習
k_study
0
510
外れ値とHuber(フーバー)損失
k_study
0
1k
Other Decks in Technology
See All in Technology
【実演版】カンファレンス登壇者・スタッフにこそ知ってほしいマイクの使い方 / 大吉祥寺.pm 2025
arthur1
1
770
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
360
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
8
2.8k
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
20
9.7k
サンドボックス技術でAI利活用を促進する
koh_naga
0
200
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
160
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
110
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.2k
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
1
470
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.7k
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
1
230
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
3
1.5k
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Optimizing for Happiness
mojombo
379
70k
Making Projects Easy
brettharned
117
6.4k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
A Modern Web Designer's Workflow
chriscoyier
696
190k
Speed Design
sergeychernyshev
32
1.1k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Writing Fast Ruby
sferik
628
62k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Fireside Chat
paigeccino
39
3.6k
For a Future-Friendly Web
brad_frost
180
9.9k
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近傍法で どのように影響するかを紹介しました • 高次元なデータを扱う場合、次元を削減できないか検討し、次元
数とデータ数がアルゴリズムの前提に合っているか確認する必要 がある