Tugas supervised learning telah didefinisikan dengan baik dan dapat diterapkan ke banyak skenario, seperti mengidentifikasi spam atau memprediksi presipitasi.
Konsep dasar supervised learning
Supervised machine learning didasarkan pada konsep inti berikut:
- Data
- Model
- Pelatihan
- Mengevaluasi
- Inferensi
Data
Data adalah kekuatan pendorong ML. Data tersedia dalam bentuk kata dan angka yang tersimpan dalam tabel, atau sebagai nilai piksel dan bentuk gelombang yang diambil dalam file gambar dan audio. Kami menyimpan data terkait dalam {i>dataset<i}. Contohnya, kita mungkin memiliki {i>dataset <i}berikut ini:
- Gambar kucing
- Harga perumahan
- Informasi cuaca
Set data terdiri dari setiap contoh yang berisi fitur dan label. Anda bisa menganggap sebuah contoh sebagai analog dengan satu baris di {i>spreadsheet<i}. Fitur adalah nilai yang digunakan model yang diawasi untuk memprediksi label. Labelnya adalah "jawaban", atau nilai yang ingin diprediksi oleh model. Dalam model cuaca yang memprediksi curah hujan, fitur tersebut bisa berupa lintang, bujur, suhu, kelembapan, cakupan awan, arah angin, dan tekanan atmosfer. Labelnya adalah jumlah curah hujan.
Contoh yang berisi fitur dan label disebut contoh berlabel.
Dua contoh berlabel
Sebaliknya, contoh tak berlabel mengandung fitur, tetapi tidak memiliki label. Setelah Anda membuat model, model akan memprediksi label dari fitur.
Dua contoh tak berlabel
Karakteristik set data
Sebuah {i>dataset<i} ditandai dengan ukuran dan keragamannya. Ukuran menunjukkan jumlah contoh. Keberagaman menunjukkan cakupan contoh-contoh tersebut. {i>Dataset<i} yang baik berukuran besar dan sangat beragam.
Beberapa {i>dataset<i} berukuran besar dan beragam. Namun, beberapa {i>dataset<i} berukuran besar tetapi memiliki keragaman yang rendah, dan beberapa kecil tetapi sangat beragam. Dengan kata lain, set data yang besar tidak menjamin keberagaman yang memadai, dan set data yang sangat beragam tidak menjamin contoh yang memadai.
Misalnya, set data mungkin berisi data selama 100 tahun, tetapi hanya untuk bulan Juli. Menggunakan set data ini untuk memprediksi curah hujan di bulan Januari akan menghasilkan prediksi yang buruk. Sebaliknya, set data mungkin hanya mencakup beberapa tahun tetapi berisi setiap bulan. {i>Dataset<i} ini mungkin menghasilkan prediksi yang buruk karena tidak berisi tahun yang cukup untuk memperhitungkan variabilitas.
Memeriksa Pemahaman Anda
{i>Dataset <i}juga dapat dicirikan dengan jumlah fitur-fiturnya. Misalnya, beberapa set data cuaca mungkin berisi ratusan fitur, mulai dari citra satelit hingga nilai cakupan cloud. Set data lain mungkin hanya berisi tiga atau empat fitur, seperti kelembapan, tekanan atmosfer, dan suhu. Set data dengan lebih banyak fitur dapat membantu model menemukan pola tambahan dan membuat prediksi yang lebih baik. Namun, set data dengan lebih banyak fitur tidak selalu menghasilkan model yang membuat prediksi lebih baik karena beberapa fitur mungkin tidak memiliki hubungan kausal dengan label.
Model
Dalam supervised learning, model adalah kumpulan angka kompleks yang menentukan hubungan matematis dari pola fitur input tertentu hingga nilai label output tertentu. Model ini menemukan pola ini melalui pelatihan.
Pelatihan
Sebelum model yang diawasi dapat membuat prediksi, model tersebut harus dilatih terlebih dahulu. Untuk melatih sebuah model, kita memberi model sebuah set data dengan contoh berlabel. Tujuan model adalah mendapatkan solusi terbaik untuk memprediksi label dari fitur. Model ini menemukan solusi terbaik dengan membandingkan nilai prediksinya dengan nilai label yang sebenarnya. Berdasarkan perbedaan antara nilai yang diprediksi dan nilai sebenarnya—yang didefinisikan sebagai kerugian—model ini secara bertahap memperbarui solusinya. Dengan kata lain, model mempelajari hubungan matematika antara fitur dan label agar dapat membuat prediksi terbaik pada data yang tidak terlihat.
Misalnya, jika model memprediksi 1.15 inches
hujan, tetapi nilai sebenarnya adalah .75 inches
, model akan memodifikasi solusinya sehingga prediksinya lebih dekat dengan .75 inches
. Setelah melihat setiap contoh dalam set data—dalam beberapa kasus, beberapa kali—model tersebut akan mendapatkan solusi yang membuat rata-rata prediksi terbaik untuk setiap contoh.
Berikut ini adalah contoh melatih model:
Model ini mengambil satu contoh berlabel dan memberikan sebuah prediksi.
Gambar 1. Model ML yang membuat prediksi dari contoh berlabel.
Model ini membandingkan nilai prediksinya dengan nilai sebenarnya dan memperbarui solusinya.
Gambar 2. Model ML sedang mengupdate nilai prediksinya.
Model mengulangi proses ini untuk setiap contoh berlabel dalam set data.
Gambar 3. Model ML memperbarui prediksinya untuk setiap contoh berlabel dalam set data pelatihan.
Dengan cara ini, model secara bertahap mempelajari hubungan yang benar antara fitur dan label. Pemahaman bertahap ini juga menjadi alasan mengapa set data yang besar dan beragam menghasilkan model yang lebih baik. Model ini telah melihat lebih banyak data dengan rentang nilai yang lebih luas dan telah meningkatkan pemahamannya tentang hubungan antara fitur dan label.
Selama pelatihan, praktisi ML dapat melakukan penyesuaian kecil pada konfigurasi dan fitur yang digunakan model untuk membuat prediksi. Misalnya, fitur tertentu memiliki kemampuan prediksi yang lebih besar daripada fitur lainnya. Oleh karena itu, praktisi ML dapat memilih fitur mana yang digunakan model selama pelatihan. Misalnya, set data cuaca berisi time_of_day
sebagai fitur. Dalam hal ini, praktisi ML dapat menambahkan atau menghapus time_of_day
selama pelatihan untuk melihat apakah model tersebut membuat prediksi yang lebih baik dengan atau tanpa model tersebut.
Mengevaluasi
Kami mengevaluasi model terlatih untuk menentukan seberapa baik model tersebut dipelajari. Saat mengevaluasi model, kita menggunakan set data berlabel, tetapi hanya memberikan fitur set data pada model. Kemudian, kita bandingkan prediksi model dengan nilai label yang sebenarnya.
Gambar 4. Mengevaluasi model ML dengan membandingkan prediksinya dengan nilai sebenarnya.
Bergantung pada prediksi model, kita mungkin melakukan lebih banyak pelatihan dan evaluasi sebelum men-deploy model dalam aplikasi dunia nyata.
Memeriksa Pemahaman Anda
Inferensi
Setelah puas dengan hasil evaluasi model, kita dapat menggunakan model tersebut untuk membuat prediksi, yang disebut inferensi, pada contoh tak berlabel. Dalam contoh aplikasi cuaca, kita akan memberikan model kondisi cuaca saat ini—seperti suhu, tekanan atmosfer, dan kelembaban relatif—kepada model yang akan memprediksi jumlah curah hujan.