Tingkatkan kemampuan organisasi Anda dalam ML/AI dengan Kaggle

1. Pengantar

47566e1490c16443.png

Terakhir Diperbarui: 10-05-2024

Apa itu Kaggle?

Kaggle adalah komunitas AI & ML terbesar, platform terbaik bagi penggemar data science dan machine learning dari semua level untuk meningkatkan kemampuan dengan teknik dan teknologi terbaru. Temukan repositori besar set data, notebook, dan model terlatih untuk memulai project berikutnya. Ikuti kompetisi, pelajari kursus, dan terhubung dengan beragam komunitas yang terdiri dari lebih dari 18 juta pengguna dari seluruh dunia. Baik Anda seorang pemula maupun profesional berpengalaman, Kaggle adalah tempat yang tepat untuk mengasah keterampilan, terus mengikuti perkembangan terbaru, dan berkolaborasi dalam project-project mutakhir.

Yang akan Anda bangun

Dalam codelab ini, Anda akan membuat, mengonfigurasi, dan meluncurkan kompetisi kaggle. Anda akan mempelajari pengalaman kompetitor dan memahami praktik terbaik untuk menjalankan kompetisi yang menarik.

Yang akan Anda pelajari

  • Memahami cara membuat dan mengelola kompetisi Kaggle dari sisi penyelenggara
  • Menavigasi pengalaman kompetitor, dari eksplorasi hingga pengiriman
  • Mempelajari praktik terbaik untuk menjalankan kompetisi yang menarik

Codelab ini berfokus pada pembuatan kompetisi dengan cepat dan memanfaatkan library kompetisi Kaggle yang terus berkembang.

Yang Anda butuhkan

  • Browser web terbaru
  • Pengetahuan dasar tentang Python

2. Mempersiapkan

Buat Akun Kaggle

Buka situs Kaggle (https://www.kaggle.com/) dan klik "Register" untuk membuat akun gratis.

Verifikasi akun Anda

  1. Di pojok kanan atas halaman, klik gambar profil Anda
  2. Klik "Profil Anda"
  3. Klik tombol "Setelan" di sisi kanan konten profil
  4. Di bagian "Verifikasi Telepon", ikuti petunjuk untuk memverifikasi akun Anda

3. Membuat kompetisi pertama Anda

Memperkenalkan template kompetisi yang dibuat AI

Kompetisi yang Dibuat AI adalah fitur baru di Kaggle yang memungkinkan pengguna membuat kompetisi machine learning dengan cepat dan mudah. Solusi ini memanfaatkan AI untuk menghasilkan set data sintetis yang meniru properti statistik set data yang ada tanpa berisi informasi identitas pribadi.

Berikut caranya:

  1. Pilih template: Pilih dari daftar template berdasarkan berbagai tugas machine learning (misalnya, klasifikasi, regresi).
  2. AI membuat set data: AI Kaggle membuat set data baru untuk kompetisi Anda berdasarkan template yang Anda pilih. Set data ini mirip dengan aslinya, tetapi menggunakan subset fitur dan memiliki distribusi fitur yang sedikit berbeda.
  3. Sesuaikan kompetisi Anda: Masukkan detail dasar seperti nama, deskripsi, dan linimasa kompetisi. Anda juga dapat memilih setelan privasi untuk kompetisi Anda.
  4. Peluncuran: Setelah menyelesaikan detail dan menetapkan peluncuran, Anda siap meluncurkan kompetisi.

Fitur ini menyederhanakan proses pembuatan kompetisi, sehingga dapat diakses oleh lebih banyak pengguna dan memungkinkan mereka berfokus pada aspek machine learning, bukan penyiapan set data.

Membuat kompetisi

Buka https://www.kaggle.com/competitions/new, pilih "New AI Generated Competition"

2629bf77a282a46c.png

Pilih Kompetisi "Regresi dengan Set Data Usia Kepiting".

Detail Kompetisi

2dd2228b9d686a6e.png

Isi nama dan subjudul deskriptif. Misalnya, Anda dapat menggunakan 'Kompetisi Kepiting Tes <Nama Anda>' sebagai judul dan 'Membuat kompetisi pertama saya untuk melihat cara kerjanya' sebagai subjudul. Perhatikan bahwa URL kompetisi akan otomatis diisi berdasarkan judul.

Visibilitas dan Akses

Sekarang kita perlu menyetel visibilitas dan akses untuk kompetisi.

5c7dcae412ddd574.png

Visibilitas

  • Publik: Kompetisi Anda dapat dilihat oleh siapa saja di Kaggle. Ruang akan muncul di hasil penelusuran, sehingga siapa pun yang tertarik dapat bergabung.
  • Pribadi: Kompetisi Anda disembunyikan dari tampilan publik. Acara ini tidak akan muncul dalam penelusuran, dan hanya orang yang Anda undang secara khusus yang dapat berpartisipasi.

Siapa yang Dapat Bergabung

  • Siapa saja: Ini seperti kebijakan pintu terbuka. Siapa pun di Kaggle dapat bergabung ke kompetisi Anda.
  • Hanya orang yang memiliki link: Opsi ini lebih eksklusif. Anda akan membuat link khusus, dan hanya orang yang memiliki link tersebut yang dapat bergabung.
  • Daftar email terbatas: Ini adalah opsi yang paling terkontrol. Anda memberikan daftar alamat email atau domain tertentu (seperti @sekolahanda.edu), dan hanya orang dengan alamat tersebut yang dapat bergabung.

Kita akan membahas lebih lanjut setelan Aktifkan Notebook dan Model nanti. Untuk saat ini, pastikan fitur ini diaktifkan. Untuk contoh set kompetisi, tetapkan setelan ini ke Pribadi dan Hanya orang yang memiliki link.

Baca dan setujui persyaratan, lalu klik "Buat Kompetisi".

4. Memahami dan mengonfigurasi persaingan Anda

Di balik layar, kami telah membuat kompetisi yang benar-benar baru dengan set data yang unik. Mari kita tinjau kembali setelan kompetisi secara singkat.

Tab Host

Tab host berisi semua yang Anda butuhkan sebagai host untuk mengonfigurasi kompetisi dengan benar. Lihat daftar halaman di sebelah kanan halaman:

bcedd6768cc4f32c.png

Detail Dasar

Bagian ini mencakup:

  • Umum
  • Privasi, Akses & Sumber Daya
  • Linimasa
  • Penilaian & Tim

Kami membahas bagian Umum dan Privasi saat meluncurkan kompetisi.

Linimasa

Tanggal akhir kompetisi disesuaikan dengan zona waktu.

7141f4aea90bccb0.png

Penilaian & Tim

Bagian Penilaian & Tim memungkinkan Anda mengontrol jumlah orang yang dapat bergabung dengan tim, berapa kali mereka dapat mengirimkan setiap hari, dan berapa banyak kiriman yang perlu mereka pilih untuk evaluasi akhir.

5efb6387612db941.png

Gambar

Gambar memungkinkan Anda menyesuaikan banner dan thumbnail untuk kompetisi Anda. Hal ini akan memengaruhi halaman beranda kompetisi serta entri listingan untuk kompetisi Anda.

6dfd442376a1c702.png

Host

Di sini, Anda dapat menambahkan pengguna Kaggle lain sebagai penyelenggara kompetisi Anda. Host lain akan memiliki akses penuh (termasuk peluncuran) ke kompetisi Anda.

8f8c90eb6baa7747.png

Metrik Evaluasi

Tab Metrik Evaluasi adalah inti dari kompetisi ini. Saat membuat kompetisi dari awal, Anda perlu memikirkan dengan cermat metrik evaluasi (atau pemberian skor) yang akan digunakan, mengupload file solusi, menentukan pembagian pengujian publik/pribadi, dan memberikan contoh kiriman. Namun, karena kita menggunakan kompetisi yang dibuat, kita tidak perlu melakukan semua ini.

Metrik Pemberian Skor

Hal ini menentukan cara pemberian skor pada kiriman berdasarkan file solusi. Setiap metrik memiliki dokumentasi dan kode sebenarnya yang tersedia.

File Solusi

Karena kita menggunakan kompetisi yang dihasilkan, file ini unik untuk kompetisi Anda.

89fa1f42d177505a.png

Sampling Solusi memungkinkan Anda menyesuaikan jumlah file solusi yang digunakan untuk memberi skor pada kiriman selama kompetisi (papan peringkat publik) vs. jumlah baris yang digunakan untuk menentukan papan peringkat akhir. Selama kompetisi, pengguna akan diizinkan untuk memilih (berdasarkan setelan Kiriman Pribadi yang diberi Skor) kiriman mana yang akan digunakan untuk papan peringkat akhir (disebut Papan Peringkat Pribadi di sini).

Proses ini memastikan bahwa kompetitor tidak diberi penghargaan karena overfitting atau membanjiri pengiriman.

Pengiriman Sandbox

Hal ini memungkinkan penyelenggara kompetisi memastikan bahwa pemberian skor berfungsi seperti yang diharapkan, dan memungkinkan mereka menetapkan kiriman "tolok ukur" untuk dibandingkan dengan kiriman peserta. Kiriman tolok ukur ini akan muncul di papan peringkat.

Tim & Kiriman

Selama kompetisi, tindakan ini memungkinkan penyelenggara mendownload semua skor, serta mengelola tim. Sebelum kompetisi dimulai, bagian ini kosong.

Launch Checklist

Hal ini akan dibahas di bagian berikutnya.

5. Meluncurkan kompetisi Anda

50b03df072c02e6a.png

Dari bagian atas halaman kompetisi, klik tombol "Daftar Peluncuran".

Launch Checklist

Daftar Peluncuran menampilkan langkah-langkah yang diperlukan untuk dilakukan sebelum meluncurkan kompetisi. Karena kita sudah memulai dari template kompetisi, sebagian besar langkah ini sudah selesai. Hanya ada dua tugas yang tersisa, yaitu menetapkan batas waktu dan memperbarui aturan kompetisi.

938b9ed7bc4e0597.png

Tetapkan Batas Waktu

Pertama, klik panah di samping Tetapkan Batas Waktu. Kompetisi biasanya berlangsung setidaknya beberapa bulan. Durasi maksimum kompetisi adalah satu tahun.

Edit Aturan

Aturan kompetisi Anda harus diperbarui dari template default sebelum diluncurkan. Jika Anda menjalankan kompetisi ini untuk kelas atau grup, ini adalah tempat yang tepat untuk mencantumkan informasi tentang ekspektasi.

Peluncuran

Kami siap meluncurkan! Lanjutkan dan luncurkan kompetisi Anda. Sekarang Anda siap mengizinkan kompetitor bergabung.

6. Pengalaman Pesaing

Setelah Anda meluncurkan kompetisi, mari kita lihat seperti apa pengalaman kompetitor. Kami akan membahas cara bergabung dalam kompetisi dan mengirimkan kiriman. Untuk melakukannya, Anda dapat bergabung ke Kompetisi Demo Google I/O di sini: https://www.kaggle.com/competitions/google-io-demo-competition

Bergabung dalam kompetisi

Setelah membuka halaman beranda kompetisi, klik tombol "Gabung Kompetisi" di kanan atas, lalu baca dan setujui aturan.

Melakukan pengiriman pertama Anda

Buka tab kode, lalu klik "Notebook Baru". Langkah ini akan membuka notebook yang memungkinkan Anda mengirimkan entri ke kompetisi.

Pertama, kita akan membaca data pelatihan dan pengujian

# membaca data pengujian dan pelatihan

train = pd.read_csv('/kaggle/input/google-io-demo-competition/train.csv')

test = pd.read_csv('/kaggle/input/google-io-demo-competition/test.csv')

Mari kita lihat datanya.

# lihat beberapa data

train.head()

Siapkan data untuk pelatihan. Dalam hal ini, kita menghilangkan Sex karena bukan nilai numerik. (Petunjuk: mencari tahu cara menyertakannya akan meningkatkan performa model Anda).

 # hapus hasil dari data pengujian

data = train.drop(columns=[‘Age', ‘Sex'])

answers = train[‘Age']

Kemudian, kita membuat model. Dalam hal ini, kita membuat model random forest.

# impor untuk model

from sklearn.model_selection import train_test_split

from sklearn.ensemble import RandomForestRegressor

from sklearn.metrics import mean_absolute_error

model = RandomForestRegressor()

​​# latih model

model.fit(data, answers)

Membuat kiriman:

predictions = model.predict(test.drop(columns=[‘Sex']))

submission = pd.DataFrame({‘id': test[‘id'], ‘Age': predictions})

submission.to_csv(‘submission.csv', index=False)

Kemudian, Anda dapat mengirimkan lagu ke kompetisi dengan memilih "Kirimkan ke Kompetisi" di menu sisi kanan.

1cf17449cae53abe.png

Tips untuk menjalankan kompetisi yang menarik

  1. Pastikan untuk menyertakan notebook awal yang membuat pengiriman dasar
  2. Mendorong penggunaan diskusi dan berbagi notebook di awal kompetisi
  3. Selamat bersenang-senang.