Apa itu curse of dimensionality?
Curse of dimensionality adalah kumpulan masalah yang muncul ketika data punya banyak feature: volume ruang tumbuh secara eksponensial seiring jumlah dimensi, sehingga sampel yang jumlahnya tetap menjadi jarang, dan jarak antartitik menjadi hampir sama. Istilah ini diciptakan oleh Richard Bellman dalam konteks dynamic programming.
Masalah ini muncul di mana pun model mengandalkan jarak atau kepadatan lokal. Kinerja k-nearest neighbors, k-means clustering, kernel method, dan detektor anomali menurun ketika banyak feature hanya membawa sedikit sinyal. Studi ekspresi gen dengan 20.000 gen dan beberapa ratus pasien, data rekomendasi dengan jutaan kolom sparse, dan pixel gambar mentah semuanya menghadapi masalah ini. Cara standar mengatasinya adalah feature selection, dimensionality reduction seperti PCA, regularization, dan mengumpulkan lebih banyak data.
Ide utama
- Volume tumbuh secara eksponensial seiring dimensi, jadi sampel yang jumlahnya tetap menjadi jarang.
- Di dimensi tinggi, hampir seluruh volume kubus ada di sudut-sudutnya.
- Jarak antarpasangan terkonsentrasi, jadi tetangga terdekat dan terjauh berjarak hampir sama.
- Neighborhood k-NN harus membentang di sebagian besar tiap sumbu untuk memuat beberapa titik saja.
- Feature yang tidak relevan mengencerkan jarak dan paling merugikan model berbasis jarak.
- Feature selection, dimensionality reduction, dan regularization adalah solusi utamanya.
Pertanyaan umum
Apakah curse of dimensionality memengaruhi deep learning?
Lebih kecil daripada yang terlihat dari ukuran input mentah. Neural network mempelajari representasi berdimensi rendahnya sendiri, dan data alami seperti gambar berada di dekat manifold berdimensi rendah, jadi gambar 150.000 pixel tidak butuh 10^150.000 sampel. Curse ini tetap muncul pada nearest-neighbor search atas embedding, dan itu salah satu alasan vector database memakai metode aproksimasi dan cosine similarity.
Berapa sampel yang dibutuhkan per feature?
Tidak ada aturan universal. Untuk model linear, patokan yang umum adalah minimal 10 sampai 20 sampel per feature, sedangkan metode nonparametrik seperti k-NN butuh jauh lebih banyak karena kebutuhan datanya tumbuh secara eksponensial seiring dimensi. Regularization dan feature selection menurunkan kebutuhan itu, dan cross-validation menunjukkan apakah sebuah dataset sudah cukup.
Apakah ada blessing of dimensionality?
Ada. Di dimensi yang lebih banyak, kelas lebih sering bisa dipisahkan secara linear, dan itulah ide di balik kernel method. Concentration of measure juga membuat random projection bisa diandalkan: lema Johnson-Lindenstrauss menyatakan titik-titik bisa diproyeksikan ke sekitar log(n)/ε² dimensi sambil mempertahankan jarak antarpasangan dalam faktor 1 ± ε.
Apakah memakai cosine similarity, bukan jarak Euclidean, menyelesaikan masalah ini?
Tidak sepenuhnya. Cosine similarity menghilangkan efek panjang vector, dan itu membantu untuk teks dan embedding, tetapi similarity antar-vector acak berdimensi tinggi tetap mengumpul rapat di sekitar nol. Aggarwal dkk. menemukan bahwa metrik dengan eksponen lebih kecil, seperti jarak Manhattan, mempertahankan kontras lebih baik daripada jarak Euclidean saat dimensi bertambah.
Penjelasan terkait
- K-Nearest Neighbors · Klasifikasi berdasarkan kedekatan dan metrik jarak
- Dimensionality Reduction · PCA dan t-SNE untuk melihat data berdimensi tinggi
- Feature Selection · Metode filter, wrapper, dan embedded untuk memilih feature
- Norm dan Metrik Jarak · L1, L2, cosine similarity: cara mengukur kedekatan di ruang vector
- Regularization · Dropout, L1, dan L2 agar model tetap jujur
- K-Means Clustering · Pengelompokan unsupervised berdasarkan jarak ke centroid
Referensi
- Beyer, Goldstein, Ramakrishnan & Shaft (1999), "When Is 'Nearest Neighbor' Meaningful?", ICDT
- Aggarwal, Hinneburg & Keim (2001), "On the Surprising Behavior of Distance Metrics in High Dimensional Space", ICDT
- James, Witten, Hastie & Tibshirani, "An Introduction to Statistical Learning", ch. 6
Terakhir diperbarui