Isomap.id
Ringkasan
- Isomap membangun graf tetangga, menghitung jarak geodesik, lalu menanamkan data agar jarak itu tetap terjaga.
- Metode ini efektif untuk data pada manifold melengkung.
_neighbors sangat menentukan konektivitas graf dan kualitas embedding.
Intuisi #
Isomap tidak memakai jarak lurus antar titik, tetapi jarak sepanjang permukaan data. Karena itu bentuk manifold dapat ‘dibuka’ dengan lebih alami di dimensi rendah.
Penjelasan Rinci #
1. Ide dasar #
- Bentuk graf tetangga dengan (k)-NN atau radius (\varepsilon).
- Hitung jarak lintasan terpendek (geodesik) antar pasangan titik pada graf tersebut.
- Masukkan matriks jarak itu ke MDS agar memperoleh embedding berdimensi lebih rendah.
Hasilnya mempertahankan struktur global sambil membuka lipatan manifold.
2. Contoh Python #
| |
3. Parameter penting #
n_neighbors: menentukan graf lokal; terlalu kecil membuat graf terputus, terlalu besar merusak bentuk manifold.n_components: jumlah dimensi target (biasanya 2–3 untuk visualisasi).- Bersihkan noise/duplikat dan lakukan penskalaan fitur sebelum membuat graf.
4. Kelebihan vs kekurangan #
| Kelebihan | Kekurangan |
|---|---|
| Menjaga struktur manifold dan jarak geodesik | Biaya tinggi karena perlu shortest path untuk semua pasangan |
| Visualisasi intuitif | Sangat sensitif terhadap pemilihan tetangga |
5. Catatan #
- Isomap = graf tetangga + MDS; pastikan grafnya benar-benar merefleksikan topologi data.
- Periksa apakah graf memiliki satu komponen terhubung; jika tidak, embedding akan pecah.
- Alternatif modern seperti UMAP/t-SNE lebih cepat saat fokus pada hubungan lokal.