Memahami definisi formal Machine Learning menurut Arthur Samuel dan Tom Mitchell, posisinya dalam payung AI, serta empat pendekatan utama: supervised, unsupervised, semi-supervised, dan reinforcement learning, lengkap dengan contoh masalah nyata dan cara memilihnya.

Setelah di episode 0 kita menyiapkan environment — Python 3.12+, venv, dan scikit-learn 1.8.x siap dipakai — pada episode ini kita membangun fondasi konseptual: apa sebenarnya yang dimaksud dengan Machine Learning, dan apa saja jenis-jenisnya.
Mengapa memahami definisi dan taksonomi penting? Karena pilihan pendekatan menentukan seluruh alur kerja: data apa yang harus dikumpulkan, metrik apa yang dievaluasi, dan model apa yang dipakai. Engineer yang tidak paham perbedaan supervised vs unsupervised akan kesulitan bahkan di tahap formulasi masalah — sebelum kode pertama ditulis.
Konsep ML sebenarnya sudah lama ada. Arthur Samuel (1959) mendefinisikannya sebagai:
Bidang studi yang memberikan kemampuan kepada komputer untuk belajar tanpa diprogram secara eksplisit.
Kemudian Tom Mitchell (1997) memberikan definisi yang lebih operasional dan menjadi acuan hingga sekarang:
Sebuah program komputer dikatakan belajar dari pengalaman E terhadap kelas tugas T, jika performanya, yang diukur oleh metrik P, membaik dengan pengalaman E.
Mari kita urai dengan contoh nyata — program anti-spam:
| Simbol | Contoh | Arti |
|---|---|---|
| T (task) | Mengklasifikasi email | Apakah email adalah spam? |
| E (experience) | Kumpulan email berlabel | Data latih berisi spam dan bukan spam |
| P (performance) | Akurasi / precision | Seberapa tepat prediksi dibanding label asli |
Perhatikan kata kuncinya: "belajar tanpa diprogram eksplisit". Artinya kita tidak menulis aturan if subject contains "free money" → spam satu per satu. Sebaliknya, kita memberi model ribuan contoh berlabel, dan model menemukan pola yang memisahkan spam dari bukan spam. Inilah perbedaan fundamental ML vs pemrograman klasik.
Machine Learning adalah salah satu cabang dari Artificial Intelligence. Visualisasinya kira-kira begini:
Series ini fokus pada classical ML (regression, tree, clustering, dsb.) yang tetap menjadi workhorse untuk data tabular di 2026, ditambah pengenalan RL di episode 21.
Supervised learning bekerja dengan data berlabel: setiap baris punya fitur X dan target y yang diketahui. Tugas model adalah mempelajari pemetaan X → y. Ada dua sub-jenis:
Target berupa kategori diskrit: spam/tidak spam, churn/tidak churn, kelas A/B/C. Output model berupa probabilitas atau label kelas. Contoh: deteksi penipuan, diagnosa penyakit, pengenalan gambar.
Target berupa nilai kontinu: harga rumah, suhu besok, jumlah penjualan. Output model berupa angka. Contoh: prediksi harga rumah, prediksi penjualan, peramalan permintaan.
from sklearn.linear_model import LogisticRegression, LinearRegression
# Classification: y berupa label diskrit
clf = LogisticRegression()
clf.fit(X_umur_dan_saldo, y_churn) # 0 atau 1
# Regression: y berupa angka kontinu
reg = LinearRegression()
reg.fit(X_luas_tanah, y_harga_rumah) # angka jutaanNote
Aturan praktis sederhana: jika target kalian berupa label/kategori → classification; jika berupa angka kontinu → regression. Kesalahan umum di sini adalah memakai classification untuk target kontinu atau sebaliknya.
Unsupervised learning bekerja tanpa label: hanya ada X, tidak ada y. Model menemukan struktur tersembunyi dalam data. Sub-jenis utamanya:
Unsupervised sangat berguna ketika label mahal atau tidak tersedia — misalnya menelusuri ribuan transaksi untuk menemukan pola aneh tanpa tahu harus mencari apa.
Semi-supervised adalah kompromi: sedikit data berlabel + banyak data tak berlabel. Realita di dunia nyata: memberi label itu mahal (butuh tenaga ahli), sedangkan data mentah melimpah.
Strateginya sederhana — latih model pada data berlabel kecil, lalu gunakan prediksinya (dengan confidence tinggi) sebagai "label buatan" untuk data tak berlabel, dan latih ulang. Pendekatan ini hemat biaya dan sering dipakai di NLP dan vision.
Reinforcement learning (RL) berbeda total: tidak ada dataset berlabel. Sebuah agent berinteraksi dengan environment, mengambil action, dan menerima reward (hadiah) atau hukuman. Tujuannya memaksimalkan total reward jangka panjang.
| Komponen | Contoh: robot vakum |
|---|---|
| Agent | Robot vakum |
| Environment | Ruangan dengan rintangan |
| Action | Maju, berbelok, bersihkan |
| Reward | +1 ruangan bersih, -1 nabrak dinding |
Contoh penerapan: permainan (AlphaGo, game Atari), robotika, optimasi iklan. Kita akan membangun pengenalan RL dengan Gymnasium di episode 21.
| Jenis | Label | Tujuan | Contoh Masalah |
|---|---|---|---|
| Supervised | Ya | Prediksi label/angka | Klasifikasi churn, prediksi harga |
| Unsupervised | Tidak | Temukan struktur | Segmentasi, reduksi dimensi, anomaly |
| Semi-supervised | Sebagian | Prediksi + pemanfaatan data mentah | Labeling dokumen massal |
| Reinforcement | Reward | Maksimalkan reward | Game, robotika, rekomendasi |
Alur keputusan sederhana yang bisa kalian pakai:
Pertanyaan kuncinya selalu: apa yang kalian punya, dan apa yang ingin kalian hasilkan?
Pada episode 1 ini, kalian telah memahami fondasi konseptual Machine Learning.
Inti yang harus dibawa pulang:
Di episode 2 selanjutnya kita akan membahas pipeline ML dan tooling — alur lengkap dari data mentah sampai deployment, konsep split train/validation/test, API scikit-learn (fit/predict/transform), serta pentingnya reproducibility lewat seed. Sampai jumpa di episode 2!