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:
kaggle-intro-novice-competitions
Kompetisi untuk pemula (novice)
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.
kaggle-competition-basic-structure
Laman kompetisi Titanic
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

Postingan populer dari blog ini

Sistem Informasi Data Spasial Pemodelan Data Spasial

Sistem Informasi Data Spasial Sistem Koordinat

Sistem Informasi Data Spasial Sistem informasi geografis