Apa beberapa dataset yang baik untuk mempelajari algoritma pembelajaran mesin dasar dan mengapa?

19

Saya baru mengenal pembelajaran mesin dan mencari beberapa set data yang melaluinya saya dapat membandingkan dan membedakan perbedaan antara algoritma pembelajaran mesin yang berbeda (Decision Trees, Boosting, SVM, dan Neural Networks)

Di mana saya dapat menemukan kumpulan data tersebut? Apa yang harus saya cari saat mempertimbangkan dataset?

Akan lebih bagus jika Anda bisa menunjuk ke beberapa dataset yang baik dan juga memberi tahu saya apa yang membuat mereka dataset yang baik?

Kelinci
sumber
6
Saya ingin tahu apakah pertanyaan ini tidak cocok untuk opendata.stackexchange.com ... Mengenai dataset, sebagian besar buku teks menyebutkan dataset tersebut dan menyediakannya, banyak yang sudah tersedia dalam perangkat lunak statistik atau di perpustakaan untuk perangkat lunak tersebut. Anda dapat melihat juga archive.ics.uci.edu/ml/datasets.html . Tentu saja, pertanyaan lain adalah apa yang membuat beberapa set data "baik" untuk pembelajaran dan beberapa "buruk" - itu adalah pertanyaan yang menarik.
Tim
Anda akan menemukan beberapa dataset sebagai paket di CRAN, seperti: ElemStatLearn dan lainnya.
kjetil b halvorsen
2
@Tim Karena ada aspek pedagogis untuk pertanyaan ini (misalnya, satu contoh kumpulan data "baik" untuk tujuan pembelajaran adalah salah satu yang menunjukkan di mana algoritma yang berbeda memberikan hasil yang sangat berbeda) Saya pikir lebih cocok untuk CV daripada OpenData.
Silverfish
2
Saya pikir pertanyaan tentang kumpulan data dari sudut pandang pedagogis sudah pasti pada topik di sini: misalnya aspek apa dari rangkaian data “Iris” yang membuatnya sangat sukses sebagai contoh / pengajaran / tes data ; Kumpulan data dibuat untuk tujuan yang mirip dengan kuartet Anscombe
Silverfish
@Silverfish: Ini telah dibahas di Meta - “Pertanyaan tentang Kumpulan Data”: Kemungkinan Pengecualian? - & Tampaknya ada kesepakatan umum dengan sudut pandang Anda. Tapi saya masih memikirkan q ini. agak luas - apa yang dengan jelas membedakannya dari Menemukan sampel data yang tersedia secara bebas ?
Scortchi

Jawaban:

16

Kumpulan data di situs berikut ini tersedia secara gratis. Set data ini telah digunakan untuk mengajarkan algoritma ML kepada siswa karena untuk sebagian besar ada deskripsi dengan set data. Juga, telah disebutkan jenis algoritma apa yang berlaku.

  1. Gudang Pembelajaran Mesin UCI
  2. ML Comp
  3. Gambar Mammo
  4. Mulan
Pelajar
sumber
11

Kaggle memiliki sejumlah data yang dapat Anda gunakan untuk berlatih.

(Aku terkejut itu tidak disebutkan sejauh ini!)

Ada dua hal (di antara banyak hal lain) yang menjadikannya sumber daya yang sangat berharga:

  • Banyak set data bersih. Meskipun dataset bebas noise tidak benar-benar mewakili dataset dunia nyata, mereka terutama cocok untuk tujuan Anda - menggunakan algoritma ML.
  • Anda juga dapat melihat model ML orang lain untuk dataset yang sama, yang bisa menjadi cara yang menyenangkan untuk mengambil beberapa peretasan di sepanjang jalan. Tak perlu dikatakan bahwa jenis paparan yang Anda dapatkan dari belajar dari praktisi terbaik, seperti untuk hal lain, sangat membantu.
nz_21
sumber
1
Ini benar-benar harus menjadi jawaban teratas karena di samping sejumlah besar kumpulan data, forum untuk setiap tantangan adalah sumber daya yang tak ternilai untuk mengambil teknik dan trik, bersama dengan contoh kode.
Alex R.
2

Pertama, saya sarankan mulai dengan data sampel yang disediakan dengan perangkat lunak. Sebagian besar distribusi perangkat lunak menyertakan contoh data yang dapat Anda gunakan untuk membiasakan diri dengan algoritma tanpa berurusan dengan tipe data dan gulat data ke dalam format yang tepat untuk algoritma. Bahkan jika Anda sedang membangun algoritma dari awal, Anda dapat mulai dengan sampel dari implementasi yang sama dan membandingkan kinerjanya.

Kedua, saya akan merekomendasikan bereksperimen dengan set data sintetis untuk merasakan bagaimana kinerja algoritma ketika Anda tahu bagaimana data dihasilkan dan rasio sinyal terhadap noise.

Di R, Anda bisa mendaftar semua dataset dalam paket yang diinstal saat ini dengan perintah ini:

data(package = installed.packages()[, 1])

Paket R mlbench memiliki dataset nyata dan dapat menghasilkan dataset sintetis yang berguna untuk mempelajari kinerja algoritma.

Scikit-learn Python memiliki data sampel dan menghasilkan dataset sintetis / mainan juga.

SAS memiliki dataset pelatihan yang tersedia untuk diunduh dan data sampel SPSS diinstal dengan perangkat lunak di C: \ Program Files \ IBM \ SPSS \ Statistics \ 22 \ Sampel

Terakhir, saya akan melihat data di alam liar. Saya akan membandingkan kinerja berbagai algoritme dan parameter tuning pada set data nyata. Ini biasanya membutuhkan lebih banyak pekerjaan karena Anda jarang akan menemukan dataset dengan tipe data dan struktur yang dapat Anda masukkan langsung ke dalam algoritma Anda.

Untuk data di alam, saya akan merekomendasikan:

Arsip Data reddit

Daftar KDnugget

brandco
sumber
1
Bagi mereka yang tidak memiliki R, & tidak ingin mengunduhnya hanya untuk mendapatkan akses ke dataset ini, dataset & deskripsi tersedia online di sini .
gung - Reinstate Monica
0

The Iris Data set tangan ke bawah. Ada di basis R juga.

apel-jeruk
sumber
1
Harap jawab bagian substantif dari pertanyaan: "... juga beri tahu saya apa yang menjadikannya dataset yang baik?"
Whuber
0

Menurut pendapat saya, Anda bisa mulai dengan dataset kecil yang tidak memiliki terlalu banyak fitur.

Salah satu contoh akan menjadi dataset Iris (untuk klasifikasi). Ini memiliki 3 kelas, 50 sampel untuk setiap kelas dengan total 150 poin data. Satu sumber yang bagus untuk membantu Anda menjelajahi dataset ini adalah seri video ini oleh Data School.

Dataset lain untuk checkout adalah set data Kualitas Anggur dari repositori UCI -ML. Ini memiliki 4898 titik data dengan 12 atribut.

Darshan Chaudhary
sumber