次元の呪い
機械学習に出てくる「次元の呪い」をリンクしておく。
(引用開始)
次元の呪いとは
大量のデータを分析する時は大きな次元のデータの処理をする事が多くなりますが、次元数が大きくなると次元の呪いと呼ばれる問題が発生する事に注意しなくてはなりません。
次元の呪いとは、データの次元数が大きくなり過ぎると、そのデータで表現できる組み合わせが飛躍的に多くなってしまい、その結果、手元にある有限なサンプルデータでは十分な学習結果が得られなくなることを指しています。
ビッグデータを処理するためのコンピュータシステムを用意している場合でも、機械学習でデータを処理する場に、次元の呪いに注意しないと、計算コストが莫大となるだけでなく、十分な学習結果が得られず、未知のデータに適切に対応出来なくなる等の不具合が発生してしまいます。
(引用終了)
(引用開始)
超球をメロンパンに例えています。高次元空間においては、「皮」に相当する部分が体積の殆どを占めるようです。
3次元では皮の体積が3%であるのに対し、500次元では99.3%が皮になります。とても不思議です。
(引用終了)
高次元空間では、任意の相異なる点同士の距離はかなり疎になる。
つまり、高次元空間では、皮に相当する部分にデータが集まっている。
距離が離れると、予測の信頼性は大幅に下がってしまう。
訓練データの次元が多いほど、過学習のリスクが高くなる。
だから、次元削減のための手法がいくつか生み出されているストーリーらしい。
人間は3次元までしか認識できないので、1000次元空間の中の200次元曲線なんてイメージできない。
絵も書けないから、数式からそのイメージを沸かせるしかない。
| 固定リンク
「統計学・機械学習・深層学習」カテゴリの記事
- 統計学の考え方をastahでまとめた(2023.05.28)
- ランダム化比較試験はなぜ注目されて利用されるようになったのか(2023.04.08)
- ChatGPTで起きている事象の意味は何なのか(2023.04.02)
- 過学習に陥った人間や社会の事例は何があるのか(2023.01.09)
- 計量政治学と計量経済学の考え方の違い(2022.10.02)
「Python」カテゴリの記事
- 「コーディングを支える技術」は良い本だ(2022.05.26)
- Pythonで微分積分や統計の基礎を理解しよう(2022.05.15)
- Python の numpy の裏では FORTRAN のライブラリが動いているらしい(2022.02.06)
- プログラマが「何をやっているか分からない」「何が分からないか分からない」状態から脱出する記事がとても良い(2021.07.18)
- MATLABとPythonのリンク(2021.06.06)
コメント