Skip to main content

Cara Kerja Machine Learning

Pada materi sebelumnya, kita telah memahami bahwa Machine Learning merupakan salah satu pendekatan yang memungkinkan komputer mempelajari pola dari data.

Sekarang kita akan melihat lebih jauh:

Bagaimana sebenarnya Machine Learning belajar dari data?

Untuk memahami hal tersebut, kita perlu membandingkan Machine Learning dengan pemrograman tradisional.

Pengertian Machine Learning

Secara sederhana, Machine Learning adalah proses menggunakan algoritma untuk mempelajari pola yang terdapat dalam data sehingga pola tersebut dapat digunakan untuk membuat prediksi atau keputusan terhadap data baru.

Secara umum:

Data

Machine Learning Algorithm

Pattern

Model

Prediction

Misalnya kita memiliki data rumah:

Luas RumahJumlah KamarHarga
602300 juta
803450 juta
1003550 juta
1204700 juta

Machine Learning dapat mempelajari hubungan antara karakteristik rumah dengan harga.

Setelah proses pembelajaran selesai, model dapat digunakan untuk memperkirakan harga rumah yang belum pernah dilihat sebelumnya.

Model dan Algoritma

Dalam pembahasan Machine Learning, kita akan sering menemukan istilah algorithm dan model.

Keduanya berhubungan tetapi bukan sesuatu yang sama.

Algorithm

Algoritma adalah metode atau prosedur yang digunakan untuk melakukan proses pembelajaran.

Contohnya:

  • Linear Regression
  • Decision Tree
  • K-Nearest Neighbors
  • K-Means
  • Support Vector Machine

Model

Model adalah hasil yang diperoleh setelah algoritma Machine Learning mempelajari data.

Secara sederhana:

Dataset

Algorithm

Training

Model

Model kemudian dapat digunakan untuk melakukan prediksi.

Model
+
Data Baru

Prediction

Dalam percakapan sehari-hari, istilah algoritma dan model terkadang digunakan secara bergantian. Namun, dalam pembelajaran teknis, penting untuk memahami bahwa algoritma merupakan metode pembelajaran, sedangkan model merupakan hasil pembelajaran tersebut.

Pemrograman Tradisional

Sebelum membahas proses Machine Learning, mari kita lihat kembali pemrograman tradisional.

Pada pemrograman tradisional, programmer menentukan aturan atau instruksi secara eksplisit.

Strukturnya:

Data + Rules

Program

Output

Misalnya kita ingin menentukan apakah seseorang dapat dikategorikan sebagai dewasa.

age = 20

if age >= 17:
result = "Dewasa"
else:
result = "Belum Dewasa"

print(result)

Programmer menentukan aturan:

Jika age >= 17
→ Dewasa

Jika age < 17
→ Belum Dewasa

Komputer hanya menjalankan aturan yang telah dibuat.

Karakteristik Pemrograman Tradisional

Dalam pendekatan tradisional:

  • programmer menentukan aturan
  • komputer menjalankan aturan
  • data digunakan sebagai input
  • output dihasilkan berdasarkan aturan

Contoh lain:

Data Transaksi
+
Aturan Fraud

Program

Fraud / Bukan Fraud

Masalahnya muncul ketika aturan yang dibutuhkan terlalu kompleks untuk ditulis secara manual.

Machine Learning

Machine Learning menggunakan pendekatan yang berbeda.

Daripada programmer menulis semua aturan secara manual, kita memberikan contoh data kepada algoritma.

Secara sederhana:

Data + Jawaban Ideal

Algorithm

Training

Model

Model kemudian digunakan untuk data baru:

Data Baru

Model

Prediction

Perbedaan paling penting adalah dari mana aturan diperoleh.

Pada pemrograman tradisional:

Programmer → menentukan rules

Pada Machine Learning:

Algorithm → mempelajari pola dari data

Contoh Prediksi Harga Rumah

Misalnya kita memiliki dataset:

LuasKamarHarga
502250 juta
702350 juta
903500 juta
1104650 juta
1304750 juta

Kita ingin membuat sistem yang dapat memprediksi harga rumah.

Dalam pemrograman tradisional, kita harus membuat aturan secara manual.

Misalnya:

Jika luas 50–70 m² → harga sekitar ...
Jika luas 70–90 m² → harga sekitar ...

Aturan tersebut dapat menjadi sangat panjang dan sulit dipelihara.

Dengan Machine Learning, kita memberikan contoh:

Luas + Kamar → Harga

Kemudian algoritma mempelajari pola dari contoh tersebut.

Dataset

Machine Learning Algorithm

Training

Model

Setelah model selesai dilatih:

Rumah Baru
Luas = 85 m²
Kamar = 3

Model

Prediksi Harga

Model menggunakan pola yang dipelajarinya untuk menghasilkan prediksi.

Analogi Membuat Makanan

Untuk memahami perbedaan tersebut, kita dapat menggunakan analogi sederhana.

Bayangkan kita ingin membuat Honey Mustard Chicken.

Program Tradisional

Dalam pendekatan tradisional, kita diberikan:

  • bahan
  • resep
  • langkah-langkah memasak

Misalnya:

Ayam
Mustard
Madu
Garam
Merica
Minyak

Kemudian diberikan instruksi:

1. Potong ayam.
2. Tambahkan garam dan merica.
3. Campurkan madu dan mustard.
4. Masak ayam.
5. Tambahkan saus.
6. Panggang hingga matang.

Kita hanya perlu mengikuti resep tersebut.

Bahan + Resep

Proses

Masakan

Machine Learning

Dalam analogi Machine Learning, kita tidak diberikan resep secara langsung.

Kita diberikan:

Bahan
+
Contoh Masakan yang Benar

Kemudian sistem mencoba menemukan hubungan antara bahan dan hasil yang diinginkan.

Secara konseptual:

Bahan
+
Contoh Masakan

Learning

Pola / Recipe

Masakan Baru

Dalam Machine Learning yang sebenarnya, tentu prosesnya tidak dilakukan dengan mencoba memasak makanan secara literal.

Analogi tersebut hanya digunakan untuk menggambarkan ide bahwa Machine Learning mempelajari pola dari contoh, bukan menerima seluruh aturan secara eksplisit.

Proses Training

Proses ketika Machine Learning mempelajari pola dari data disebut training atau pelatihan.

Secara sederhana:

Training Data

Algorithm

Learning

Model

Misalnya kita memiliki data:

LuasKamarHarga
602300
803450
1003550
1204700

Algoritma mencoba menemukan hubungan antara:

Feature

Luas
Jumlah Kamar

Target

Harga

Hasil proses tersebut adalah model.

Model Belajar dari Kesalahan

Dalam banyak algoritma Machine Learning, proses training melibatkan evaluasi terhadap hasil prediksi model.

Secara sederhana:

Data

Model membuat prediksi

Prediksi dibandingkan dengan target

Kesalahan dihitung

Model diperbaiki

Proses diulang

Misalnya target sebenarnya adalah:

500 juta

tetapi model memprediksi:

450 juta

Terdapat perbedaan antara prediksi dan nilai sebenarnya.

Perbedaan tersebut digunakan dalam proses pembelajaran untuk membantu model menghasilkan prediksi yang lebih baik.

Konsep mengenai loss function, optimization, dan bagaimana model diperbaiki akan dibahas lebih mendalam pada materi berikutnya.

Data Baru dan Prediction

Setelah model selesai dilatih, model dapat digunakan untuk data yang belum pernah dilihat sebelumnya.

Misalnya:

Training Data

Training

Model

Kemudian terdapat rumah baru:

Luas = 90 m²
Kamar = 3

Model menerima data tersebut:

Data Baru

Model

Prediction

Hasilnya misalnya:

Prediksi Harga = 500 juta

Angka tersebut merupakan contoh ilustrasi.

Model sebenarnya akan menghasilkan prediksi berdasarkan pola yang dipelajari dari dataset training.

Data Analysis

Machine Learning memiliki hubungan yang erat dengan Data Analysis, tetapi keduanya bukan hal yang sama.

Data Analysis berfokus pada memahami data.

Contohnya:

  • mencari rata-rata
  • membandingkan kelompok
  • mencari tren
  • melihat distribusi
  • membuat visualisasi
  • menemukan hubungan antarvariabel

Misalnya kita ingin mengetahui:

Produk apa yang paling banyak terjual?

Kita dapat menggunakan Data Analysis untuk menjawab pertanyaan tersebut.

Dataset

Data Analysis

Insight

Data Science

Data Science memiliki cakupan yang lebih luas.

Data Science dapat mencakup:

Data Science

├── Data Collection
├── Data Cleaning
├── Data Analysis
├── Statistics
├── Data Visualization
├── Machine Learning
└── Communication / Decision Making

Machine Learning dapat menjadi salah satu bagian dari proses Data Science.

Misalnya perusahaan ingin meningkatkan penjualan.

Data Science dapat digunakan untuk:

Data Penjualan

Data Cleaning

Data Analysis

Visualization

Machine Learning

Prediksi Penjualan

Business Decision

Perbedaan Data Analysis, Data Science, dan Machine Learning

Ketiganya dapat dibedakan secara sederhana:

BidangFokus
Data AnalysisMemahami dan menganalisis data
Data ScienceMenggunakan data untuk menghasilkan insight dan mendukung keputusan
Machine LearningMempelajari pola dari data untuk membuat prediksi atau keputusan

Namun, dalam praktiknya batas antara ketiganya tidak selalu kaku.

Seorang Data Scientist dapat melakukan Data Analysis dan Machine Learning.

Seorang Machine Learning Engineer dapat bekerja sangat dekat dengan Data Scientist.

Machine Learning sebagai Eksperimen

Machine Learning dapat dipandang sebagai proses eksperimen.

Kita tidak langsung mengetahui model atau algoritma mana yang akan memberikan hasil terbaik.

Kita dapat mencoba beberapa pendekatan.

Misalnya:

Dataset

Model A

Evaluation

Dataset

Model B

Evaluation

Dataset

Model C

Evaluation

Kemudian hasilnya dibandingkan.

Model A → Score 0.75
Model B → Score 0.82
Model C → Score 0.79

Berdasarkan evaluasi tersebut, kita dapat menentukan model yang lebih sesuai.

Nilai di atas hanya contoh ilustrasi.

Konsep perbandingan model akan menjadi bagian penting dalam pembelajaran Machine Learning.

Machine Learning sebagai Proses Berulang

Machine Learning bukan proses sekali jalan.

Dalam proyek nyata, prosesnya sering dilakukan secara iteratif.

Understand Problem

Collect Data

Prepare Data

Train Model

Evaluate

Improve

Train Again

Evaluate Again

Final Model

Kita mungkin menemukan bahwa performa model belum cukup baik.

Kemudian kita dapat:

  • memperbaiki data
  • memilih feature yang lebih baik
  • mencoba algoritma lain
  • mengubah hyperparameter
  • menambah data
  • melakukan feature engineering

Kemudian model dilatih kembali.

Contoh Sederhana dengan Python

Sekarang kita dapat melihat gambaran sederhana proses Machine Learning menggunakan Python.

Kita menggunakan Linear Regression sebagai contoh.

from sklearn.linear_model import LinearRegression

model = LinearRegression()

model.fit(X_train, y_train)

prediction = model.predict(X_test)

Secara sederhana:

LinearRegression()

Model

model.fit()

Training

model.predict()

Prediction

Pada contoh tersebut:

  • LinearRegression() membuat model
  • fit() melakukan training
  • X_train berisi feature untuk training
  • y_train berisi target untuk training
  • predict() menghasilkan prediksi
  • X_test berisi data yang digunakan untuk melakukan prediksi

Pembahasan mengenai X_train, y_train, training data, testing data, dan evaluasi akan dilakukan secara bertahap.

Kesimpulan

Machine Learning memungkinkan komputer mempelajari pola dari data dan menggunakan pola tersebut untuk membuat prediksi atau keputusan.

Perbedaan utama dengan pemrograman tradisional adalah cara aturan diperoleh.

Pemrograman tradisional:

Rules + Data

Program

Output

Machine Learning:

Data + Target

Algorithm

Training

Model

Data Baru

Prediction

Beberapa konsep penting yang perlu diingat:

  • Algorithm adalah metode yang digunakan untuk melakukan pembelajaran.
  • Training adalah proses ketika algoritma mempelajari pola dari data.
  • Model adalah hasil dari proses training.
  • Feature merupakan input yang digunakan model.
  • Target merupakan nilai yang ingin diprediksi atau dipelajari.
  • Prediction merupakan hasil model ketika diberikan data baru.

Machine Learning juga memiliki hubungan erat dengan Data Science dan Data Analysis, tetapi ketiganya memiliki fokus yang berbeda.