Sebelum menyentuh pipeline ML produksi, kalian perlu menguasai Python, aljabar linear & statistik, serta pemahaman ML fundamental. Di episode ini kalian juga menyiapkan Python 3.12+, venv, library inti (NumPy, Pandas, PyTorch, scikit-learn, MLflow), dan strategi akses GPU baik lokal maupun cloud, lalu memverifikasi seluruh environment siap dipakai

Selamat datang di series Belajar ML Engineer! Series ini akan membawa kalian menguasai peran Machine Learning Engineer (MLE) — profesi yang mengubah model riset menjadi sistem produksi yang andal, terukur, dan terpantau. Total ada 28 episode yang tersusun dalam enam fase, dari fondasi skill sampai production readiness.
Sebelum menjalankan model.fit(...) atau mendeploy app = FastAPI(), ada skill dasar dan perangkat yang wajib kalian siapkan. Mengapa prasyarat ini penting? Karena MLE bekerja di persimpangan tiga dunia: data, algoritma, dan sistem produksi. Tanpa dasar Python yang kuat, kalian akan tersesat saat membaca kode contoh; tanpa aljabar linear dan statistik, kalian tidak akan paham mengapa gradient descent bekerja atau apa arti sebuah metrik; dan tanpa environment yang benar, semua eksperimen akan sulit direproduksi.
Episode 0 ini adalah peta jalan kalian: memastikan skill dasar terpenuhi, menyiapkan environment Python, memasang library inti, mengatur strategi GPU, dan memverifikasi semuanya. Setelah episode ini selesai, seluruh series bisa diikuti dengan nyaman.
Python adalah bahasa utama ekosistem ML. Kalian wajib nyaman dengan syntax, list/dict, fungsi, comprehension, dan exception handling. Bedanya dengan data scientist, MLE memakai Python bukan cuma untuk eksplorasi, tetapi untuk menulis kode produksi — module, class, type hint, dan test. Latihan kecil: buat fungsi ber-tipe dengan default argument.
from typing import Literal
def normalize(value: float, mode: Literal["minmax", "zscore"] = "minmax") -> float:
if mode == "minmax":
return max(0.0, min(1.0, value))
return value
print(normalize(1.5))ML beroperasi di atas vektor dan matriks. Kalian perlu paham konsep dot product, matriks multiplikasi, gradient, dan distribusi probabilitas. Anda tidak perlu bisa menurunkan rumus kalkulus setiap hari, tetapi harus bisa membaca notasi seperti X @ w dan paham arti bias-variance tradeoff.
| Konsep | Kenapa Penting untuk MLE |
|---|---|
| Vektor & matriks | Representasi data dan bobot model |
| Gradien & turunan | Dasar optimizer (SGD, Adam) |
| Mean/variance/standar deviasi | Normalisasi data dan metrik evaluasi |
| Distribusi (Gaussian, Binomial) | Asumsi model statistik & uncertainty |
Kalian harus mengerti perbedaan supervised/unsupervised, konsep train/val/test, dan metrik dasar (accuracy, precision, recall, F1, RMSE). Jika belum, selesaikan dulu series Belajar Machine Learning sebelum lanjut — episode-episode di sini berasumsi kalian sudah pernah melatih model sederhana dengan scikit-learn.
Pastikan Python versi 3.12 atau lebih baru terinstall. Gunakan venv atau uv untuk semua proyek:
python3 --version
python3 -m venv ~/ml-engineer-lab/venv
source ~/ml-engineer-lab/venv/bin/activateInstall library yang akan menemani seluruh series ini:
pip install numpy pandas scikit-learn
pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu
pip install mlflow transformers datasetsCatatan: di sini PyTorch diinstall versi CPU agar bisa langsung jalan di laptop mana pun. Episode 12 dan 21 akan membahas kapan dan bagaimana memakai GPU sungguhan.
MLflow adalah platform experiment tracking dan model registry yang akan kita pakai di episode 6 dan 8. Untuk saat ini cukup pastikan ia terinstall:
python3 -c "import mlflow; print(mlflow.__version__)"Seluruh praktik episode 0-11 dan 16-27 dirancang berjalan di CPU dengan RAM minimal 8GB. GPU baru benar-benar dibutuhkan untuk deep learning di episode 12-15 dan 21-23. Dua opsi saat GPU dibutuhkan:
| Opsi | Kelebihan | Kekurangan |
|---|---|---|
| GPU lokal (RTX 30/40/50 series, 8GB+) | Gratis, low latency, privasi | Setup driver & CUDA manual |
| Cloud (Colab free/Pro, Lambda, RunPod, GCP/AWS) | Skala bebas, tanpa beli hardware | Biaya per jam, transfer data |
Tip
Jangan membeli GPU mahal di awal. Mulai dari CPU + Colab free tier. Hampir semua praktik series ini bisa dikecilkan agar tetap jalan di Colab saat GPU dibutuhkan.
Jalankan verifikasi menyeluruh sebelum lanjut:
python3 --version
python3 -c "import numpy, pandas, sklearn, torch, mlflow; print('inti OK')"
python3 -c "import transformers; print('HF OK')"Uji kecil berikut memastikan stack berjalan normal end-to-end:
import numpy as np
import pandas as pd
import torch
from sklearn.linear_model import LogisticRegression
X = np.random.rand(100, 4)
y = (X[:, 0] > 0.5).astype(int)
model = LogisticRegression(max_iter=1000).fit(X, y)
print("sklearn:", model.predict([[0.9, 0, 0, 0]])[0])
t = torch.tensor([1.0, 2.0, 3.0])
print("torch:", (t * 2).tolist())Output sklearn: 1 dan torch: [2.0, 4.0, 6.0] menandakan environment kalian siap.
Rangkuman yang sudah kalian siapkan di episode 0:
venv di ~/ml-engineer-lab.Inti yang harus dibawa pulang:
venv, library inti, dan strategi GPU (mulai dari CPU + Colab).Di episode 1 selanjutnya kita akan membahas peran & perbedaan MLE dengan data scientist — dari lingkup kerja, tanggung jawab, dan pembagian tugas di tim, hingga bagaimana konteks 2026 mengubah MLE modern dengan pipeline LLM: training, fine-tune, eval, dan deployment. Pastikan environment kalian sudah siap, karena perjalanan Belajar ML Engineer baru saja dimulai!