Komparasi Performa Model
Analisis perbandingan 5 algoritma machine learning berdasarkan metrik evaluasi pada data uji (test set 15%).
Tabel Metrik Evaluasi
Data uji: 0.6724| Algoritma | Tipe | MAE ↓ | RMSE ↓ | R² ↑ | MAPE ↓ | Evaluasi |
|---|---|---|---|---|---|---|
| Linear Regression | Supervised Regression | 0.6724 | 0.8685 | -0.1851 | — | Perlu Tuning |
| ANN | Supervised Regression | 0.5941 | 0.7445 | 0.1292 | — | Terbaik |
| RNN/LSTM | Supervised (Sequential) | 0.7446 | 0.9043 | -0.2717 | 43.26% | Perlu Tuning |
| Backpropagation | Supervised Regression | 0.6307 | 0.7895 | 0.0207 | — | Normal |
| K-Means Clustering | Unsupervised | — | — | Sil: 0.3941 | ||
MAE (kecil = baik)
RMSE (kecil = baik)
R² Score (besar = baik)
Training Loss Curves
Progres konvergensi model selama pelatihanANN Loss
LSTM Loss
Backprop Loss
Interpretasi Metrik
Catatan Hasil
Nilai R² yang rendah atau negatif pada beberapa model menunjukkan bahwa kecepatan angin harian di stasiun Klimatologi Jawa Barat memiliki variabilitas tinggi yang sulit diprediksi dari fitur cuaca saja.
Dataset gabungan BMKG + ERA5 kini berjumlah 1.958 baris (Jan 2021 – Mei 2026). Dengan penambahan data ERA5, model deep learning seperti ANN mendapat lebih banyak sampel untuk belajar pola non-linier. Linear Regression tetap menjadi baseline yang kuat untuk data tabular cuaca karena hubungan antara fitur meteorologi dan kecepatan angin memiliki komponen linier yang signifikan.
Penjelasan Algoritma
Linear Regression adalah algoritma regresi yang memodelkan hubungan linier antara variabel input (fitur cuaca seperti suhu, kelembaban, dan penyinaran matahari) dengan variabel target (kecepatan angin FF_AVG). Model bekerja dengan mencari koefisien bobot optimal melalui metode Ordinary Least Squares (OLS), yaitu meminimalkan jumlah kuadrat residual antara prediksi dan nilai aktual. Meskipun sederhana, Linear Regression sering menjadi baseline yang kuat dan dapat diinterpretasikan karena setiap koefisien menunjukkan seberapa besar pengaruh fitur tersebut terhadap prediksi angin.
Artificial Neural Network (ANN) adalah jaringan saraf tiruan yang terdiri dari lapisan-lapisan neuron yang saling terhubung. Pada proyek ini digunakan arsitektur Dense multilayer: input (13 fitur) → Dense(256, ReLU) → BatchNormalization → Dropout(0.25) → Dense(128, ReLU) → Dense(64, ReLU) → Dense(32, ReLU) → output linier (1 neuron). Model dilatih menggunakan optimizer Adam dengan Early Stopping dan ReduceLROnPlateau untuk mencegah overfitting. ANN mampu memodelkan hubungan non-linier yang kompleks antar fitur cuaca yang tidak bisa ditangkap oleh regresi linier biasa.
Long Short-Term Memory (LSTM) adalah varian dari Recurrent Neural Network (RNN) yang dirancang khusus untuk memproses data sekuensial dengan dependensi jangka panjang. LSTM menggunakan tiga mekanisme gate: input gate (menentukan informasi baru yang disimpan), forget gate (menentukan informasi lama yang dihapus), dan output gate (menentukan output yang dihasilkan). Pada proyek ini, data diformat menjadi sequence 7 hari sebelumnya sebagai konteks temporal, dengan arsitektur LSTM(64, return_sequences) → Dropout(0.2) → LSTM(32) → Dense(1). LSTM merupakan pilihan tepat untuk data time series seperti pengamatan cuaca harian yang memiliki pola musiman.
Backpropagation adalah algoritma pelatihan jaringan saraf yang menghitung gradien error secara mundur dari layer output ke layer input menggunakan chain rule diferensial. Pada proyek ini, jaringan diimplementasikan dari nol menggunakan NumPy murni tanpa library deep learning, dengan arsitektur: input(13) → Dense(128, ReLU) → Dense(64, ReLU) → Dense(32, ReLU) → output(1, linear). Setiap iterasi terdiri dari forward pass (menghitung prediksi), kalkulasi loss (MSE), backward pass (menghitung gradien), dan weight update (gradient descent). Implementasi manual ini bertujuan untuk memahami cara kerja backpropagation secara mendalam.
K-Means adalah algoritma unsupervised learning yang membagi data ke dalam K cluster berdasarkan kemiripan jarak Euclidean antar data point. Algoritma bekerja secara iteratif: menentukan K centroid secara acak, menugaskan setiap data ke centroid terdekat, lalu memperbarui centroid berdasarkan rata-rata anggota cluster hingga konvergen. Pada proyek ini, K-Means diterapkan pada 5 fitur angin (FF_AVG, FF_X, RH_AVG, TAVG, RR) untuk mengelompokkan kondisi iklim harian menjadi 4 kategori: Angin Tenang, Ringan, Sedang, dan Kencang. Elbow Method digunakan untuk menentukan K optimal.