Kaggle: Tempat para ilmuwan data belajar dan bersaing

Ilmu data biasanya lebih merupakan seni daripada sains, terlepas dari namanya. Anda mulai dengan data kotor dan model prediksi statistik lama dan mencoba bekerja lebih baik dengan pembelajaran mesin. Tidak ada yang memeriksa pekerjaan Anda atau mencoba memperbaikinya: Jika model baru Anda lebih cocok daripada yang lama, Anda mengadopsinya dan melanjutkan ke masalah berikutnya. Saat data mulai melayang dan model berhenti bekerja, Anda memperbarui model dari kumpulan data baru.

Melakukan ilmu data di Kaggle sangat berbeda. Kaggle adalah komunitas dan lingkungan pembelajaran mesin online. Ini memiliki kumpulan data standar yang dicoba oleh ratusan atau ribuan individu atau tim, dan ada papan peringkat untuk setiap kompetisi. Banyak kontes menawarkan hadiah uang tunai dan poin status, dan orang-orang dapat menyempurnakan model mereka hingga kontes ditutup, untuk meningkatkan skor mereka dan menaiki tangga. Persentase kecil sering kali membuat perbedaan antara pemenang dan runner-up.

Kaggle adalah sesuatu yang dapat dimainkan oleh data scientist profesional di waktu luang mereka, dan calon data scientist dapat menggunakannya untuk mempelajari cara membuat model machine learning yang baik.

Apa itu Kaggle?

Dilihat secara lebih komprehensif, Kaggle adalah komunitas online untuk ilmuwan data yang menawarkan kompetisi pembelajaran mesin, kumpulan data, buku catatan, akses ke akselerator pelatihan, dan pendidikan. Anthony Goldbloom (CEO) dan Ben Hamner (CTO) mendirikan Kaggle pada 2010, dan Google mengakuisisi perusahaan pada 2017.

Kompetisi Kaggle telah meningkatkan kondisi seni pembelajaran mesin di beberapa area. Salah satunya adalah memetakan materi gelap; lainnya adalah penelitian HIV / AIDS. Melihat para pemenang kompetisi Kaggle, Anda akan melihat banyak model XGBoost, beberapa model Random Forest, dan beberapa jaringan neural dalam.

Kompetisi kaggle

Ada lima kategori kompetisi Kaggle: Memulai, Playground, Featured, Research, dan Recruitment.

Kompetisi Memulai bersifat semi permanen, dan dimaksudkan untuk digunakan oleh pengguna baru yang baru saja menginjakkan kaki di bidang pembelajaran mesin. Mereka tidak menawarkan hadiah atau poin, tetapi memiliki banyak tutorial. Kompetisi Memulai memiliki papan peringkat bergulir selama dua bulan.

Kompetisi taman bermain adalah satu langkah di atas Memulai dalam kesulitan. Hadiah berkisar dari kudos hingga hadiah uang tunai kecil.

Kompetisi unggulan adalah tantangan pembelajaran mesin skala penuh yang menimbulkan masalah prediksi yang sulit, umumnya dengan tujuan komersial. Kompetisi unggulan menarik beberapa pakar dan tim paling tangguh, dan menawarkan kumpulan hadiah yang bisa mencapai satu juta dolar. Itu mungkin terdengar mengecilkan hati, tetapi bahkan jika Anda tidak memenangkan salah satunya, Anda akan belajar dari mencoba dan dari membaca solusi orang lain, terutama solusi tingkat tinggi.

Kompetisi penelitian melibatkan masalah yang lebih eksperimental daripada masalah persaingan unggulan. Mereka biasanya tidak menawarkan hadiah atau poin karena sifatnya yang eksperimental.

Dalam kompetisi Perekrutan, individu bersaing untuk membuat model pembelajaran mesin untuk tantangan yang dikurasi perusahaan. Pada penutupan kompetisi, peserta yang tertarik dapat mengunggah resume mereka untuk dipertimbangkan oleh tuan rumah. Hadiahnya (berpotensi) wawancara kerja di perusahaan atau organisasi yang menyelenggarakan kompetisi.

Ada beberapa format kompetisi. Dalam kompetisi Kaggle standar, pengguna dapat mengakses kumpulan data lengkap di awal kompetisi, mengunduh data, membangun model pada data secara lokal atau di Kaggle Notebooks (lihat di bawah), membuat file prediksi, lalu mengunggah prediksi sebagai pengajuan di Kaggle. Kebanyakan kompetisi di Kaggle mengikuti format ini, tetapi ada alternatif lain. Beberapa kompetisi dibagi menjadi beberapa tahapan. Beberapa kompetisi kode yang harus diserahkan dari dalam Kaggle Notebook.

Kumpulan data kaggle

Kaggle menampung lebih dari 35 ribu kumpulan data. Ini ada dalam berbagai format publikasi, termasuk nilai yang dipisahkan koma (CSV) untuk data tabular, JSON untuk data seperti pohon, database SQLite, arsip ZIP dan 7z (sering digunakan untuk kumpulan data gambar), dan Kumpulan Data BigQuery, yang multi set data SQL -terabyte yang dihosting di server Google.

Ada beberapa cara untuk menemukan kumpulan data Kaggle. Pada home page Kaggle Anda akan menemukan daftar dataset “hot” dan dataset yang diupload oleh orang yang Anda ikuti. Pada halaman dataset Kaggle, Anda akan menemukan daftar dataset (awalnya diurutkan menurut "terpanas" tetapi dengan opsi pemesanan lainnya) dan filter pencarian. Anda juga dapat menggunakan tag dan halaman tag untuk menemukan kumpulan data, misalnya //www.kaggle.com/tags/crime.

Anda dapat membuat kumpulan data publik dan pribadi di Kaggle dari mesin lokal, URL, repositori GitHub, dan keluaran Notebook Kaggle. Anda dapat menyetel set data yang dibuat dari URL atau repositori GitHub untuk diperbarui secara berkala.

Saat ini, Kaggle memiliki cukup banyak dataset, tantangan, dan notebook COVID-19. Sudah ada beberapa kontribusi masyarakat dalam upaya memahami penyakit ini dan virus penyebabnya.

Notebook Kaggle

Kaggle mendukung tiga jenis notebook: skrip, skrip RMarkdown, dan Notebook Jupyter. Skrip adalah file yang menjalankan segala sesuatu sebagai kode secara berurutan. Anda dapat menulis buku catatan dengan R atau Python. Pembuat kode R dan orang yang mengirimkan kode untuk kompetisi sering menggunakan skrip; Pembuat kode Python dan orang-orang yang melakukan analisis data eksplorasi cenderung lebih memilih Notebook Jupyter.

Notebook dengan garis apa pun secara opsional dapat memiliki akselerator GPU (Nvidia Tesla P100) atau TPU gratis dan dapat menggunakan layanan Google Cloud Platform, tetapi ada kuota yang berlaku, misalnya 30 jam GPU dan 30 jam TPU per minggu. Pada dasarnya, jangan gunakan GPU atau TPU di notebook kecuali Anda perlu mempercepat pelatihan deep learning. Penggunaan layanan Google Cloud Platform dapat menimbulkan biaya ke akun Google Cloud Platform Anda jika Anda melebihi jatah tingkat gratis.

Anda dapat menambahkan kumpulan data Kaggle ke notebook Kaggle kapan saja. Anda juga dapat menambahkan kumpulan data Kompetisi, tetapi hanya jika Anda menerima aturan kompetisi. Jika mau, Anda dapat merantai notebook dengan menambahkan output dari satu notebook ke data notebook lain.

Notebook berjalan dalam kernel, yang pada dasarnya merupakan wadah Docker. Anda dapat menyimpan versi buku catatan Anda saat Anda mengembangkannya.

Anda bisa mencari buku catatan dengan kueri kata kunci situs dan filter di buku catatan, atau dengan menelusuri beranda Kaggle. Anda juga dapat menggunakan daftar Notes; seperti kumpulan data, urutan buku catatan dalam daftar adalah menurut "hotness" secara default. Membaca buku catatan publik adalah cara yang baik untuk mempelajari cara orang melakukan ilmu data.

Anda dapat berkolaborasi dengan orang lain di buku catatan dengan berbagai cara, bergantung pada apakah buku catatan itu publik atau pribadi. Jika publik, Anda dapat memberikan hak pengeditan kepada pengguna tertentu (semua orang dapat melihat). Jika bersifat pribadi, Anda dapat memberikan hak untuk melihat atau mengedit.

API publik Kaggle

Selain membuat dan menjalankan buku catatan interaktif, Anda dapat berinteraksi dengan Kaggle menggunakan baris perintah Kaggle dari komputer lokal Anda, yang memanggil API publik Kaggle. Anda dapat menginstal Kaggle CLI menggunakan pemasang Python 3 pip, dan mengautentikasi mesin Anda dengan mengunduh token API dari situs Kaggle.

CLI dan API Kaggle dapat berinteraksi dengan kompetisi, kumpulan data, dan notebook (kernel). API ini open source dan dihosting di GitHub di //github.com/Kaggle/kaggle-api. File README di sana menyediakan dokumentasi lengkap untuk alat baris perintah.

Komunitas dan pendidikan yang mengagetkan

Kaggle menyelenggarakan forum diskusi komunitas dan kursus mikro. Topik forum termasuk Kaggle itu sendiri, memulai, umpan balik, Q&A, kumpulan data, dan kursus mikro. Kursus mikro mencakup keterampilan yang relevan dengan ilmuwan data dalam beberapa jam masing-masing: Python, pembelajaran mesin, visualisasi data, Pandas, rekayasa fitur, pembelajaran mendalam, SQL, analisis geospasial, dan sebagainya.

Secara keseluruhan, Kaggle sangat berguna untuk mempelajari ilmu data dan untuk bersaing dengan orang lain dalam tantangan ilmu data. Ini juga sangat berguna sebagai tempat penyimpanan untuk kumpulan data publik standar. Namun, ini bukan pengganti layanan ilmu data cloud berbayar atau untuk melakukan analisis Anda sendiri.