Ketika kotak masuk email dapat memisahkan spam, toko online dapat menyarankan produk, atau aplikasi dapat memperkirakan waktu perjalanan, ada kemungkinan machine learning bekerja di belakangnya. Sistem tersebut tidak sekadar menyimpan jawaban. Ia membaca pola dari banyak contoh, lalu menggunakan pola itu ketika bertemu data baru.
Jadi, machine learning adalah pendekatan untuk membuat komputer belajar dari data tanpa menuliskan seluruh aturan keputusan secara manual. Kata "belajar" di sini bukan berarti mesin memahami dunia seperti manusia. Model hanya mencari hubungan matematis yang berguna untuk menghasilkan prediksi, klasifikasi, atau pengelompokan.
Apa bedanya dengan program biasa?
Pada program biasa, kita menulis aturan dan memasukkan data untuk mendapatkan output. Misalnya, potongan harga 10 persen dapat dihitung dengan aturan yang jelas. Selama aturannya tidak berubah, program akan memberikan hasil yang sama.
Masalah menjadi lebih sulit ketika aturan tidak mudah ditulis. Bagaimana menjelaskan semua ciri email spam? Kita bisa membuat beberapa aturan, tetapi spammer terus mengubah pola. Dalam machine learning, kita memberikan contoh email beserta labelnya. Algoritma kemudian mencari kombinasi kata, tautan, pengirim, dan pola lain yang paling membantu membedakan spam dari email normal.
Hubungan AI, machine learning, dan deep learning
Artificial intelligence atau AI adalah bidang yang lebih luas. Tujuannya adalah membuat sistem mampu melakukan tugas yang biasanya membutuhkan kecerdasan manusia, seperti memahami bahasa, mengenali objek, merencanakan langkah, atau mengambil keputusan.
Machine learning adalah salah satu pendekatan di dalam AI. Deep learning berada lebih dalam lagi sebagai bagian dari machine learning yang menggunakan neural network berlapis. Karena itu, tidak semua AI menggunakan machine learning dan tidak semua proyek machine learning membutuhkan deep learning.
AI adalah bidang besarnya. Machine learning adalah cara belajar dari data. Deep learning adalah keluarga metode machine learning berbasis neural network dengan banyak layer.
Bagaimana machine learning bekerja?
Prosesnya selalu dimulai dari masalah, bukan dari algoritma. Kita perlu menentukan output yang ingin diperoleh. Apakah kita ingin memprediksi angka, memilih kelas, menemukan kelompok, atau mendeteksi kejadian tidak biasa?
Setelah itu kita menyiapkan dataset. Pada prediksi harga rumah, fitur dapat berupa luas bangunan, lokasi, jumlah kamar, dan usia bangunan. Harga menjadi target yang ingin diprediksi. Pada deteksi spam, isi email dan informasi pengirim menjadi fitur, sedangkan label spam atau bukan spam menjadi target.
Dataset kemudian dipisahkan menjadi data training dan testing. Data training digunakan untuk menyesuaikan parameter model. Data testing disimpan untuk memeriksa apakah pola yang dipelajari tetap bekerja pada data baru. Pemisahan ini penting karena model yang terlihat hebat pada data training bisa saja hanya menghafal.
data → fitur dan target → training → evaluasi → model → prediksiSetiap tahap dapat memengaruhi hasil akhir. Model yang baik tidak dapat memperbaiki target yang keliru atau data yang tidak mewakili masalah.Apa yang terjadi saat training?
Saat training, model membuat prediksi awal. Prediksi tersebut dibandingkan dengan jawaban yang benar melalui fungsi loss. Nilai loss menggambarkan seberapa jauh prediksi model dari target. Algoritma optimasi kemudian memperbarui parameter agar loss berkurang.
Proses ini dapat berlangsung sekali pada model tertentu atau berulang dalam banyak epoch pada neural network. Namun loss yang terus turun belum otomatis berarti model siap digunakan. Kita tetap perlu membaca performanya pada data testing dan melihat jenis kesalahan yang dibuat.
Jenis machine learning yang paling umum
Supervised learning menggunakan data berlabel. Model belajar dari pasangan input dan target. Regresi harga, klasifikasi penyakit, dan deteksi spam termasuk dalam kelompok ini.
Unsupervised learning bekerja tanpa target yang sudah ditentukan. Model mencari struktur pada data, misalnya mengelompokkan pelanggan melalui K-Means atau merangkum banyak fitur melalui PCA.
Reinforcement learning melatih agen melalui reward dan penalty. Agen mencoba tindakan, melihat akibatnya, lalu memperbaiki strategi. Pendekatan ini banyak dibahas pada game, robotika, dan sistem pengambilan keputusan berurutan.
Contoh machine learning dalam kasus nyata
Pada bisnis berlangganan, model dapat memperkirakan pelanggan yang berisiko berhenti menggunakan layanan. Tim bisnis kemudian dapat memeriksa faktor penyebabnya dan menentukan tindak lanjut. Pada manufaktur, data sensor dapat dipakai untuk mendeteksi kondisi mesin yang menyimpang sebelum kerusakan semakin besar.
Pada citra, CNN dapat membantu mengklasifikasikan objek. YOLO dapat mendeteksi sekaligus menghitung objek pada gambar. Pada teks, model dapat mengelompokkan topik, menilai sentimen, atau membantu pencarian dokumen. Semua contoh tersebut memiliki pola yang sama. Kita menentukan masalah, menyiapkan data, melatih model, mengukur kesalahan, lalu memeriksa apakah outputnya layak digunakan.
Kapan machine learning tidak diperlukan?
Machine learning bukan pilihan otomatis untuk setiap masalah. Jika aturan dapat ditulis dengan jelas dan jarang berubah, program biasa lebih mudah diuji serta dirawat. Model juga tidak banyak membantu ketika data terlalu sedikit, target tidak konsisten, atau kesalahan tidak dapat ditoleransi tanpa pemeriksaan manusia.
Hal yang perlu dicari bukan algoritma paling canggih, melainkan cara paling sederhana yang dapat menghasilkan keputusan yang cukup baik. Baseline sederhana sering memberi pembanding yang lebih jujur sebelum kita mencoba model kompleks.
Langkah berikutnya untuk mulai belajar
Setelah memahami pengertiannya, cara terbaik untuk melanjutkan adalah mengikuti satu alur kecil sampai selesai. Pilih dataset sederhana, periksa fitur, latih satu baseline, lalu baca hasil evaluasinya. Kita dapat melihat keseluruhan proses melalui lab ML Workflow, mencoba model pada platform interaktif, atau mengikuti roadmap belajar machine learning untuk pemula.
Dengan urutan tersebut, istilah seperti training, loss, overfitting, dan evaluasi tidak berhenti sebagai definisi. Kita dapat melihat kapan setiap konsep dibutuhkan dan apa akibatnya ketika satu tahap dikerjakan dengan kurang baik.
Lihat alur machine learning dari data sampai model
Atur jumlah fitur, preprocessing, model, dan evaluasi untuk melihat hubungan setiap tahap secara langsung.
Buka ML Workflow →