Kalau Anda berinteraksi dengan dunia data science (DS), machine learning (ML), atau artificial intelligence (AI), cepat atau lambat Anda akan bertemu dengan kata Kaggle, yang merujuk pada situs Kaggle.com. Misalnya, kalau Anda baca-baca lowongan untuk DS, ML, atau AI engineer,
sering Anda temukan persyaratan yang berbunyi “partisipasi dalam Kaggle
adalah nilai plus”. Atau kalau Anda bergaul dengan komunitas DS, ML,
atau AI, kadang ada ajakan untuk bergabung dalam tim Kaggle.
Jadi apakah Kaggle itu?
Kaggle
adalah situs dan platform untuk berlomba membuat model terbaik untuk
menganalisa dan memprediksi suatu dataset. Dataset ini diberikan oleh
suatu perusahaan, dengan suatu deskripsi masalah tertentu. Misalnya,
diberikan data rumah beserta fitur-fiturnya dan harga jualnya, dan
deskripsi masalahnya adalah buatlah model untuk memprediksi harga jual
berdasarkan fitur-fitur tersebut. Sederhana kan? Kalau Anda bisa membuat
model terbaik, ada hadiah total USD $1.2 juta dolar hehe.
Kaggle sangat bermanfaat untuk semua yang berkecimpung di dunia data science.
Banyak perusahaan yang mempunyai permasalahan analisa/pemodelan data, namun mereka tidak punya sumber daya data scientist yang mumpuni untuk memecahkannya. Dengan Kaggle, mereka bisa meminta bantuan data scientist seluruh dunia untuk memecahkan masalah tersebut dengan membuat model terbaik. Istilah kerennya crowd sourcing. Biasanya dengan dengan imbalan hadiah.
Kaggle juga dapat dimanfaatkan oleh perusahaan untuk merekrut data scientist atau ML engineer, dengan cara menyelenggarakan kompetisi untuk tujuan rekrutmen.
Bagi kita praktisi atau pelajar data science, Kaggle sangat berguna untuk belajar, berlatih, dan mempertajam skill dan insting data science kita. Dengan mempelajari write up
atau ulasan orang lain dalam memecahkan suatu masalah, kita bisa
mendapat banyak ide dan ilmu tentang bagaimana proses dan jalan berpikir
dia memecahkan masalah data science. Lalu dengan ikut dalam kompetisi, kita akan diberi feedback
tentang akurasi model kita, dan dari situ kita berlatih bagaimana
membuat model yang lebih baik. Selama kompetisi, sering orang berbagi
tips atau ide yang dia pakai, sehingga dari situ tidak hanya kita bisa
memperbaiki model kita, tapi kita juga bisa belajar, menjadi lebih
kreatif, sekaligus melatih insting pemecahan masalah kita.
Setelah kompetisi selesai, biasanya para pemenang atau orang yang mendapat skor tinggi akan menulis write up tentang solusi dia juga, sehingga kita bisa belajar solusi yang wow itu seperti apa.
Bahkan walaupun Anda masih pemula sekali, yang belum bisa koding
membuat model sendiri (seperti saya saat menulis artikel ini), membaca
ulasan Kaggle sangat berguna untuk mengetahui bagaimana contoh
permasalahan data science di dunia nyata (misalnya, dataset di
dunia nyata sering terdapat banyak cacat, tidak seperti dataset di kelas
MOOC), bagaimana cara berpikir seorang data scientist dalam memecahkan suatu masalah, dan pengetahuan-pengetahuan apa yang harus dipelajari untuk membuat solusinya.
Jadi saya sangat menyarankan untuk bergabung dengan Kaggle.
Saya Sudah Mendaftar. Lalu Bagaimana? ..
Memang ini pertanyaan utama setelah mendaftar Kaggle, karena tutorial atau petunjuk getting started-nya agak
susah ditemukan. Oleh karena itulah saya menulis artikel ini untuk
membantu agar Anda lebih cepat beradaptasi dengan Kaggle.
Di Kaggle, Anda belajar dengan cara langsung masuk ke kompetisi,
karena materi-materi untuk tutorial ada dalam kompetisi tersebut. Dalam
hal ini kompetisi-kompetisi khusus untuk getting started. Silakan klik Competitions pada bagian atas menu Kaggle. Lalu scroll ke bawah ke kompetisi yang bergaris hijau, atau artinya kompetisi untuk pemula (novice). Ada tiga kompetisi di situ:
Klik Titanic: Machine Learning from Disaster. Ini adalah kompetisi “standar” sebagai kompetisi pertama untuk diikuti kaggler. Di dalam laman kompetisi Titanic, klik tombol Join Competition. Yay, Anda resmi jadi peserta kompetisi Kaggle hehe..
Komponen Kompetisi
Di laman kompetisi Titanic, Anda akan melihat tampilan kurang lebih seperti ini.
Berikut adalah penjelasan tentang komponen-komponen dalam sebuah kompetisi.
Overview
Berisi informasi dasar tentang spesifikasi kompetisi, yaitu deskripsi permasalahan yang hendak dipecahkan serta solusi apa yang diharapkan. Di laman overview ini juga ada laman Tutorials (di menu kiri) yang berisi petunjuk dan link-link ke kernel atau forum diskusi untuk memecahkan masalah di kompetisi ini.
Data/dataset
Sebuah kompetisi akan memberi minimal dua
data (dalam bentuk CSV), yaitu data training dan data test. Data
training digunakan untuk melatih model Anda, lalu Anda memasukkan hasil
prediksi model Anda dalam data test, untuk di-submit dan dinilai oleh platform kompetisi Kaggle.
Kernel
Kernel adalah istilah Kaggle untuk workspace
pekerjaan Anda di sebuah kompetisi. Tadinya saya bingung dengan istilah
ini, karena kalau di IT biasanya istilah kernel dipakai untuk sesuatu
yang menjadi core sebuah sistem.
Sebuah kernel terdiri dari data (yang Anda ambil dari dataset spesifikasi kompetisi di atas), sebuah notebook (Python
atau R), kode, dan komentar-komentar/diskusi yang Anda atau anggota tim
Anda tuliskan untuk kernel itu. Kernel bisa dibuat dari nol, atau
dengan cara mem-fork dari kernel orang lain.
Discussion, Leaderboard, dll.
Jelas.
Belajar dengan Membaca Ulasan Kompetisi
Cara terbaik untuk mendapatkan ilmu di Kaggle adalah dengan membaca
ulasan orang lain di suatu kompetisi. Semakin banyak ulasan bagus yang
dibaca, semakin banyak ide-ide dan ilmu-ilmu yang bisa kita dapatkan.
Menurut saya, tutorial pertama yang bagus untuk dibaca adalah Getting Started with Excel: Kaggle’s Titanic Competition, yang sangat mudah diikuti untuk mengerti workflow “standard” di Kaggle, mulai dari mengunduh dataset kompetisi, menganalisa data, membuat model, sampai men-submit solusi Anda. Anda tidak harus mengerti dengan detil bagaimana cara menggunakan Excel (misalnya bagaimana membuat pivot table). Yang penting Anda mengerti tentang workflow-nya.
Setelah Anda baca itu, Anda bisa mencari tutorial berikutnya untuk dibaca di tempat-tempat berikut.
Tutorial di Laman Overview
Anda bisa cek dan ikuti link-link tutorial di laman Tutorial.
Tapi menurut saya tutorial yang ditampilkan belum tentu yang terbaik
(karena laman ini relatif statik/jarang diperbarui), sehingga kalau Anda
kurang jelas ketika membaca suatu tutorial, jangan terlalu berlama-lama
macet di situ. Mungkin Anda bisa coba baca tutorial yang lain dari
forum diskusi atau kernel (lihat info di bawah ini), siapa tahu lebih
mudah diikuti.
Forum Diskusi dengan Vote Tertinggi
Silakan jelajahi forum diskusi Titanic, lalu urutkan berdasarkan vote. Anda bisa temukan artikel tutorial sesuai dengan bahasa pemrograman yang Anda pakai (Python atau R).
Kernel dengan Vote Tertinggi
Cara lain untuk mencari tutorial adalah dengan menjelajahi laman kernel Titanic dan urutkan berdasarkan vote. Di sini Anda bisa pilih kernelnya berdasarkan bahasa pemrograman yang Anda pakai (Python atau R).
Langkah Berikutnya
Setelah Anda mengerti bagaimana cara mengikuti dan memecahkan soal
kompetisi di Kaggle, langkah berikutnya tinggal pilih kompetisinya dan
ikuti!
Atau…
Kalau Anda pemula sekali seperti saya, dengan membaca ulasan
kompetisi, saya jadi mendapatkan gambaran pengetahuan dan kemampuan apa
yang dibutuhkan untuk menjadi data scientist. Yang utama (yang saya tangkap) adalah, kita harus punya skill dan insting tentang data, lalu skill untuk memakai tools
analisis data, misalnya kalau untuk Python berarti harus belajar Numpy,
Panda, Matplotlib, IPython, Scikit-learn, dan mungkin sampai
Tensorflow.
Banyak sekali yang harus dipelajari, jadi yuk kembali ke kelas!
Adam Adi Prayogo
1514321124
https://indoml.com/2017/08/22/panduan-menggunakan-kaggle-untuk-pemula/
Komentar
Posting Komentar