Dari wikipedia,
pengurangan dimensi atau pengurangan dimensi adalah proses mengurangi jumlah variabel acak yang sedang dipertimbangkan, dan dapat dibagi menjadi pemilihan fitur dan ekstraksi fitur.
Apa perbedaan antara pemilihan fitur dan ekstraksi fitur?
Apa contoh pengurangan dimensi dalam tugas Pemrosesan Bahasa Alami?
Pengurangan dimensi biasanya memilih basis atau representasi matematis di mana Anda dapat menggambarkan sebagian besar tetapi tidak semua varians dalam data Anda, dengan demikian mempertahankan informasi yang relevan, sambil mengurangi jumlah informasi yang diperlukan untuk mewakilinya. Ada berbagai teknik untuk melakukan hal ini termasuk namun tidak terbatas pada
PCA
,ICA
, danMatrix Feature Factorization
. Ini akan mengambil data yang ada dan menguranginya ke komponen yang paling diskriminatif. Ini semua memungkinkan Anda untuk mewakili sebagian besar informasi dalam dataset Anda dengan lebih sedikit, fitur yang lebih diskriminatif.Seleksi Fitur adalah fitur pemilihan tangan yang sangat diskriminatif. Ini lebih banyak berkaitan dengan rekayasa fitur daripada analisis, dan membutuhkan pekerjaan yang lebih banyak secara signifikan pada bagian ilmuwan data. Ini membutuhkan pemahaman tentang aspek-aspek apa dari dataset Anda yang penting dalam prediksi apa pun yang Anda buat, dan yang tidak. Ekstraksi fitur biasanya melibatkan pembuatan fitur baru yang merupakan komposit dari fitur yang ada. Kedua teknik ini masuk dalam kategori rekayasa fitur. Umumnya rekayasa fitur penting jika Anda ingin mendapatkan hasil terbaik, karena melibatkan pembuatan informasi yang mungkin tidak ada dalam dataset Anda, dan meningkatkan rasio sinyal terhadap noise.
sumber
Dimensionality Reduction
klausa Anda tetapi sedikit berbeda padaFeature Engineering
penggunaan - yang dari apa yang saya lihat hanyaFeature Extraction
:Feature Selection
dianggap secara terpisah. Itu hanya perbedaan dalam terminologi.Seperti dalam @damienfrancois, pilihan fitur jawaban adalah tentang memilih subset fitur. Jadi dalam NLP akan memilih satu set kata-kata tertentu (tipikal dalam NLP adalah bahwa setiap kata mewakili fitur dengan nilai yang sama dengan frekuensi kata atau bobot lain berdasarkan TF / IDF atau serupa).
Pengurangan dimensi adalah pengenalan ruang fitur baru di mana fitur asli diwakili. Ruang baru adalah dimensi yang lebih rendah dari ruang aslinya. Dalam hal teks contohnya adalah trik hashing di mana sepotong teks direduksi menjadi vektor beberapa bit (katakanlah 16 atau 32) atau byte. Yang menakjubkan adalah bahwa geometri ruang dipertahankan (diberi bit yang cukup), sehingga jarak relatif antara dokumen tetap sama seperti di ruang asli, sehingga Anda dapat menggunakan teknik pembelajaran mesin standar tanpa harus berurusan dengan tidak terikat (dan jumlah besar) of) dimensi ditemukan dalam teks.
sumber
Pemilihan fitur adalah tentang memilih beberapa fitur berdasarkan pada skor statistik tetapi ekstraksi fitur menggunakan teknik untuk mengekstraksi beberapa informasi lapisan kedua dari data, misalnya frekuensi sinyal yang menarik menggunakan transformasi Fourier.
Pengurangan dimensi adalah semua tentang mengubah data menjadi ruang dimensi rendah di mana data mempertahankan struktur euclidean tetapi tidak menderita kutukan dimensi. Misalnya, Anda mengekstrak beberapa fitur kata dari kumpulan data di mana setiap dokumen dapat dimodelkan sebagai titik dalam ruang n-dimensi dan n terlalu besar (contoh mainan). Dalam hal ini banyak algoritma tidak bekerja sesuai dengan distorsi jarak ruang dimensi tinggi. Sekarang Anda perlu mengurangi dimensionalitas dengan memilih fitur yang paling informatif atau mengubahnya menjadi manifold dimensi rendah menggunakan metode reduksi dimensionalitas misalnya PCA, LLE, dll.[ x1, . . . , xn]
sumber
Untuk melengkapi jawaban Damien, contoh pengurangan dimensionalitas dalam NLP adalah model topik , di mana Anda merepresentasikan dokumen dengan vektor yang menunjukkan bobot topik penyusunnya.
sumber
Untuk tinjauan dan definisi yang tepat, Anda dapat melihat Dimensi Reduksi vs Pemilihan Variabel juga di buku Ekstraksi Fitur dan Ekstraksi fitur Aplikasi diuraikan menjadi dua langkah: konstruksi fitur dan pemilihan fitur.
sumber
A1. Apa itu pengurangan dimensionalitas: Jika Anda memikirkan data dalam matriks, di mana baris adalah instance dan kolom adalah atribut (atau fitur), maka reduksi dimensionalitas memetakan matriks data ini ke matriks baru dengan lebih sedikit kolom. Untuk visualisasi, jika Anda menganggap setiap matriks-kolom (atribut) sebagai dimensi dalam ruang fitur, maka pengurangan dimensi adalah proyeksi contoh dari ruang dimensi yang lebih tinggi (lebih banyak kolom) ke ruang sub-dimensi yang lebih rendah (lebih sedikit kolom). Tujuan umum untuk transformasi ini adalah (1) menjaga informasi dalam matriks data, sambil mengurangi kompleksitas komputasi; (2) meningkatkan keterpisahan berbagai kelas dalam data.
A2. Pengurangan dimensi sebagai pemilihan fitur atau ekstraksi fitur: Saya akan menggunakan dataset Iris yang ada di mana-mana , yang bisa dibilang 'hello world' dari ilmu data. Secara singkat, dataset Iris memiliki 3 kelas dan 4 atribut (kolom). Saya akan mengilustrasikan pemilihan fitur dan ekstraksi untuk tugas mengurangi dimensionalitas dataset Iris dari 4 menjadi 2.
Saya menghitung pair-wise co-variance dari dataset ini menggunakan library dengan Python yang disebut seaborn. Kode tersebut adalah: sns.pairplot (iris, rona = "spesies", marker = ["o", "s", "D"]) Angka yang saya dapatkan adalah saya dapat memilih pasangan atribut (2 dimensi) yang menyediakan saya pemisahan terbesar antara 3 kelas (spesies) dalam dataset Iris. Ini akan menjadi kasus pemilihan fitur.
Selanjutnya adalah ekstraksi fitur. Di sini, saya memproyeksikan ruang fitur 4-dimensi Iris ke ruang bagian 2-dimensi baru, yang tidak sejajar dengan ruang asli. Ini adalah atribut baru. Mereka biasanya didasarkan pada distribusi di ruang dimensi tinggi asli. Metode yang paling populer adalah Principal Component Analysis, yang menghitung vektor Eigen di ruang asli. Jelas, kami tidak dibatasi hanya menggunakan proyeksi linier dan global untuk subruang berdasarkan vektor Eigen. Kita dapat menggunakan metode proyeksi non-linear juga. Berikut ini adalah contoh PCA non-linear menggunakan jaringan saraf . Atribut (dimensi) pada contoh terakhir diekstraksidari 4 atribut asli menggunakan jaringan saraf. Anda dapat bereksperimen dengan berbagai rasa PCA untuk data iris diri Anda menggunakan kode metode pca ini .
Rangkuman: Meskipun metode ekstraksi fitur mungkin tampak lebih unggul dalam kinerja dibandingkan pemilihan fitur, pilihan tersebut ditentukan oleh aplikasi. Atribut dari ekstraksi fitur biasanya kehilangan interpretasi fisik, yang mungkin atau mungkin tidak menjadi masalah berdasarkan tugas yang dihadapi. Misalnya, jika Anda mendesain tugas pengumpulan data yang sangat mahal dengan sensor mahal dan perlu menghemat atribut (jumlah sensor yang berbeda), Anda ingin mengumpulkan sampel pilot kecil menggunakan semua sensor yang tersedia dan kemudian pilih yang paling informatif untuk tugas pengumpulan data besar.
sumber
Diekstraksi dari pembelajaran mesin Hands-on dengan scikit-learn & Tensorflow
sumber
Beberapa jawaban hebat di sini, khususnya, jawaban @ damienfrancois dengan sangat ringkas menangkap gagasan umum.
Namun, saya tidak melihat contoh rekayasa fitur untuk data relasional atau time-series. Dalam hal itu, para ilmuwan data umumnya mengekstraksi pola statistik lintas hubungan dan seiring waktu. Misalnya, untuk memprediksi apa yang akan dilakukan oleh pelanggan di masa depan dalam basis data e-niaga, orang dapat mengekstrak jumlah seperti rata-rata jumlah pembelian historis, atau frekuensi pembelian sebelumnya.
Saya menulis artikel tentang topik ini yang jauh lebih detail dengan beberapa contoh di sini: https://www.featurelabs.com/blog/feature-engineering-vs-feature-selection/
sumber
Mari saya mulai dengan urutan terbalik ekstraksi fitur dan mengapa perlu pemilihan fitur dan pengurangan dimensi.
Dimulai dengan penggunaan ekstraksi fitur yang terutama untuk tujuan klasifikasi. Klasifikasi adalah proses pengambilan keputusan yang termasuk kategori objek tertentu. Ini memiliki dua fase i) fase pelatihan, di mana diberikan data atau objek sifat-sifatnya dipelajari menggunakan beberapa proses (ekstraksi fitur) ii) fase pengujian, di mana objek yang tidak diketahui diklasifikasikan menggunakan fitur yang dipelajari pada fase (pelatihan) sebelumnya.
Ekstraksi fitur sesuai dengan namanya mengingat data bertujuan untuk menemukan pola yang mendasarinya. Pola dasar inilah yang disebut sebagai fitur yang sesuai dengan data masing-masing. Ada berbagai metodologi yang ada untuk ekstraksi fitur seperti Support Vector Machine (SVM).
Sekarang, ekstraksi fitur harus menghasilkan fitur yang seharusnya
Pemilihan Fitur: Satu set data tertentu dapat diwakili oleh fitur tunggal atau serangkaian fitur. Dalam proses klasifikasi, suatu sistem dilatih untuk setidaknya dua kelas. Jadi sistem pelatihan akan menghasilkan satu fitur atau serangkaian fitur. Fitur-fitur ini harus memiliki properti yang disebutkan di atas.
Masalahnya muncul ketika ada set fitur untuk setiap kelas dan ada korelasi antara beberapa fitur. Itu menyiratkan di antara fitur-fitur yang berkorelasi satu atau beberapa yang cukup untuk representasi dan di situlah pemilihan fitur datang ke gambar. Selain itu, fitur-fitur ini perlu disimpan dengan peningkatan kebutuhan memori yang ditetapkan juga meningkat.
Kemudian datang pengurangan dimensi yang tidak lain adalah bagian dari proses pemilihan fitur. Ini adalah proses memilih set fitur yang optimal yang paling menggambarkan data. Ada banyak teknik untuk hal yang sama seperti analisis komponen utama, analisis komponen independen, dan faktorisasi matriks dll.
sumber
Sebagai contoh ... jika Anda memiliki lahan pertanian maka memilih satu area tertentu dari lahan itu akan menjadi fitur seleksi. di setiap pabrik untuk menemukan kelainan ... untuk ini Anda akan mempertimbangkan ekstraksi fitur. Dalam contoh ini tanah pertanian asli sesuai dengan pengurangan Dimensi.
sumber