Dimensi dan Beragam

13

Kalimat yang sering terdengar dalam Pembelajaran Mesin tanpa pengawasan adalah

Input dimensi tinggi biasanya hidup di atau dekat manifold dimensi rendah

Apa itu dimensi? Apa itu bermacam-macam? Apa bedanya?

Bisakah Anda memberi contoh untuk menggambarkan keduanya?

Berjenis dari Wikipedia:

Dalam matematika, berjenis adalah ruang topologis yang menyerupai ruang Euclidean di dekat setiap titik. Lebih tepatnya, setiap titik manifold n-dimensional memiliki lingkungan yang homeomorfik dengan ruang dimensi Euclidean n.

Dimensi dari Wikipedia:

Dalam fisika dan matematika, dimensi ruang (atau objek) matematika secara informal didefinisikan sebagai jumlah minimum koordinat yang diperlukan untuk menentukan titik di dalamnya.

Apa arti Wikipedia dalam istilah awam? Kedengarannya seperti beberapa definisi aneh seperti kebanyakan definisi pembelajaran mesin?

Keduanya adalah ruang, jadi apa perbedaan antara ruang Euclidean (yaitu Manifold) dan ruang dimensi (yaitu berbasis fitur)?

alva
sumber
1
Sudahkah Anda mencoba pencarian Internet? Itu sudah cukup.
Aleksandr Blekh
1
ya, saya punya google tapi itu jelas tidak cukup, lihat pertanyaan yang diperbarui.
alvas
1
Saya tidak yakin bahwa itu ide yang bagus untuk mencari penjelasan tentang konsep pembelajaran mesin yang kompleks "dalam istilah awam". Juga, Anda harus memperluas pencarian Anda di luar Wikipedia.
Aleksandr Blekh

Jawaban:

29

Apa itu dimensi?

Sederhananya, jika Anda memiliki kumpulan data tabular dengan kolom m rows dan n, maka dimensi data Anda adalah n:

Apa itu bermacam-macam?

Contoh paling sederhana adalah planet Bumi kita. Bagi kami itu terlihat datar, tapi itu benar-benar bola. Jadi itu semacam manifold 2d yang tertanam di ruang 3d.

Apa bedanya?

Untuk menjawab pertanyaan ini, perhatikan contoh manifold lain:

masukkan deskripsi gambar di sini

Ini disebut "gulungan swiss". Poin data dalam 3d, tetapi semuanya terletak pada manifold 2d, sehingga dimensi manifold adalah 2, sedangkan dimensi ruang input adalah 3.

Ada banyak teknik untuk "membuka" manifold ini. Salah satunya disebut Penempelan Linier Secara Lokal , dan beginilah caranya:

masukkan deskripsi gambar di sini

Berikut cuplikan scikit-learn untuk melakukan itu:

from sklearn.manifold import LocallyLinearEmbedding

lle = LocallyLinearEmbedding(n_neighbors=k, n_components=2)
X_lle = lle.fit_transform(data)
plt.scatter(X_lle[:, 0], X_lle[:, 1], c=color)
plt.show()
Alexey Grigorev
sumber
6

Dimensi suatu dataset adalah jumlah variabel yang digunakan untuk merepresentasikannya. Sebagai contoh, jika kami tertarik untuk menggambarkan orang dalam hal tinggi dan berat badan mereka, dataset "orang" kami akan memiliki 2 dimensi. Jika sebaliknya kita memiliki dataset gambar, dan masing-masing gambar adalah satu juta piksel, maka dimensi dari dataset akan menjadi satu juta. Bahkan, dalam banyak aplikasi pembelajaran mesin modern, dimensi suatu dataset bisa sangat besar.

Ketika dimensionalitas sangat besar (lebih besar dari jumlah sampel dalam dataset), kita bisa mengalami beberapa masalah serius. Pertimbangkan algoritma klasifikasi sederhana yang berupaya menemukan sekumpulan bobot sedemikian rupa sehingga ketika dihiasi dengan sampel x, memberikan angka negatif untuk satu kelas dan angka positif untuk yang lain. w akan memiliki panjang yang sama dengan dimensi data, sehingga akan memiliki lebih banyak parameter daripada sampel dalam seluruh dataset. Ini berarti bahwa seorang pelajar akan dapat menyesuaikan data, dan akibatnya tidak akan menggeneralisasi dengan baik untuk sampel lain yang tidak terlihat selama pelatihan.

Manifold adalah objek dimensionalitas d yang tertanam dalam ruang dimensi yang lebih tinggi. Bayangkan satu set poin di selembar kertas. Jika kita mengerutkan kertas, poinnya sekarang dalam 3 dimensi. Banyak algoritme pembelajaran berlipat ganda yang berupaya "membuka" lembar kertas untuk mengembalikan data ke dalam 2 dimensi. Bahkan jika kita tidak khawatir dengan overfitting model kita, pelajar berjenis non-linear dapat menghasilkan ruang yang membuat masalah klasifikasi dan regresi lebih mudah.

Jordan A
sumber
Apakah ada kasus di mana dimensi tinggi tidak mudah kusut?
alvas
Pastinya! Terkadang, data sudah ada di ruang intrinsiknya. Dalam hal itu, mencoba mengurangi dimensi mungkin akan merusak kinerja klasifikasi. Dalam kasus ini, Anda harus menemukan bahwa fitur dalam dataset yang Anda gunakan sebagian besar independen secara statistik satu sama lain.
Jordan A
1

Salah satu cara melakukan reduksi dimensi adalah dengan melakukan hashing fitur. Ini diketahui pada 1960-an. Jadi misalnya jika data Anda adalah sekumpulan titik dalam 3 dimensi (x, y, z), Anda membuat fungsi hash (baik) h (x, y, z). Anda dapat menggunakannya tentu saja untuk tabel hash atau pencarian filter Bloom. Ini adalah bentuk kompresi data yang baik. Saya tidak tahu mengapa komunitas AI tidak menggunakannya. Ini jauh lebih ke titik daripada jaring saraf.

SeanOCVN
sumber
1
Bagaimana reduksi dimensi terkait dengan bermacam-macam?
alvas
Ini adalah cara memilih semua yang ada di manifold dan mengecualikan yang lainnya.
SeanOCVN
Saya pikir @alvas ada benarnya di sini. Tidak segera jelas bagaimana ini berhubungan dengan pertanyaan awal mengenai penjelasan tentang manifold dan dimensi.
Ryan J. Smith
Untuk membantu menyelesaikan tautan yang hilang dari jawaban SeanOCVN dan komentar alvas: Manifold (dalam ruang topologi) adalah output dari pelaksanaan (atau a) algoritma Penempelan Linier Lokal dengan data input dalam ruang yang disematkan. Hasilnya adalah bahwa kuantitas dimensi data input lebih tinggi daripada kuantitas dimensi data output. Ekstraksi representasi data baru (dapat dipetakan ke representasi data asli) disebut sebagai "ekstraksi fitur"; yang merupakan subtipe dari "pengurangan dimensi".
pds
0

@Alexey Grigorev sudah memberikan jawaban yang sangat bagus, namun saya pikir bisa bermanfaat untuk menambahkan dua hal:

  • Saya ingin memberi Anda sebuah contoh yang membantu saya memahami pentingnya manifold secara intuitif.
  • Menguraikan hal itu, saya ingin sedikit menjelaskan "menyerupai ruang Euclidian".

Contoh Intuitif

Bayangkan kita akan bekerja pada koleksi gambar HDready (hitam putih) (1280 * 720 piksel). Gambar-gambar itu hidup di dunia 921.600 dimensi; Setiap gambar ditentukan oleh nilai individual piksel.

Sekarang bayangkan bahwa kita akan membuat gambar-gambar ini dengan mengisi setiap piksel secara berurutan dengan menggulirkan cetakan 256-sisi.

Gambar yang dihasilkan mungkin akan terlihat sedikit seperti ini:

masukkan deskripsi gambar di sini

Tidak terlalu menarik, tetapi kita bisa terus melakukan itu sampai kita menemukan sesuatu yang ingin kita pertahankan. Sangat melelahkan tetapi kita dapat mengotomatisasi ini dalam beberapa baris Python.

Jika ruang gambar yang bermakna (apalagi realistis) bahkan akan jauh dari keseluruhan ruang fitur, kita akan segera melihat sesuatu yang menarik. Mungkin kita akan melihat foto bayi Anda atau artikel berita dari timeline alternatif. Hei, bagaimana kalau kita menambahkan komponen waktu, dan kita bahkan bisa beruntung dan menghasilkan Kembali ke Masa Depan dengan akhiran alternatif

Bahkan kami dulu punya mesin yang akan melakukan hal ini: TV lama yang tidak disetel dengan benar. Sekarang saya ingat melihat itu dan tidak pernah melihat sesuatu yang bahkan memiliki struktur.

Mengapa ini terjadi? Nah: Gambar yang menurut kami menarik sebenarnya adalah proyeksi fenomena dengan resolusi tinggi dan diatur oleh hal-hal yang jauh lebih sedikit dimensi. Sebagai contoh: Kecerahan adegan, yang dekat dengan fenomena satu dimensi, mendominasi hampir satu juta dimensi dalam kasus ini.

Ini berarti bahwa ada subruang (manifold), dalam hal ini (tetapi tidak tidak per definisi) dikendalikan oleh variabel tersembunyi, yang berisi contoh-contoh yang menarik bagi kami

Perilaku Euclidian lokal

Perilaku Euclidian berarti perilaku tersebut memiliki sifat geometris. Dalam hal kecerahan yang sangat jelas: Jika Anda meningkatkannya di sepanjang "itu sumbu" gambar yang dihasilkan menjadi lebih terang terus menerus.

Tapi di sinilah ia menjadi menarik: Perilaku Euclidian itu juga bekerja pada dimensi yang lebih abstrak di ruang Manifold kita. Pertimbangkan contoh ini dari Pembelajaran Jauh oleh Goodfellow, Bengio dan Courville

Kiri: Peta 2-D dari wajah Frey berlipat ganda.  Satu dimensi yang telah ditemukan (horizontal) sebagian besar sesuai dengan rotasi wajah, sementara yang lain (vertikal) sesuai dengan ekspresi emosional.  Kanan: Peta 2-D dari manifold MIST

Kiri: Peta 2-D dari wajah Frey berlipat ganda. Satu dimensi yang telah ditemukan (horizontal) sebagian besar sesuai dengan rotasi wajah, sementara yang lain (vertikal) sesuai dengan ekspresi emosional. Kanan: Peta 2-D dari manifold MIST

Salah satu alasan mengapa pembelajaran yang mendalam sangat sukses dalam aplikasi yang melibatkan gambar adalah karena ia menggabungkan bentuk pembelajaran berjenis yang sangat efisien. Yang merupakan salah satu alasan mengapa itu berlaku untuk pengenalan gambar, dan kompresi, serta manipulasi gambar.

S van Balen
sumber