RainVal V3

Validasi dan Koreksi Bias Data Hujan Satelit dengan Machine Learning — RF, Neural Network, LSTM, Stacking Ensemble

Dokumentasi RainVal

| Readme | Tutorial RainVal | Cara Sitasi | Dokumentasi Sitasi |

Unggah Data

Informasi Threshold

Threshold akan otomatis dihitung berdasarkan median dari kolom P_gro pada data training Anda.

Catatan: Pastikan file Excel Anda memiliki kolom: Tahun, Tanggal, P_sat, dan P_gro

Berkas Excel berisi data hujan periode 2000-2019
Berkas Excel berisi data hujan periode 2020-2023
Info Debug

Kolom yang ditemukan di file Excel Anda:

Contoh data (baris pertama):

Metodologi

Algoritma Empat Model
Random Forest Regressor:
Ensemble pohon regresi CART menggunakan bootstrap sampling, random subspace, dan pemilihan split berdasarkan penurunan SSE/MSE. Prediksi akhir merupakan rata-rata prediksi seluruh pohon; model final dilatih pada seluruh 80% data training.
Feed-forward Neural Network:
Dense(24, ReLU) → Dropout(0,05) → Dense(12, ReLU) → Dense(1), optimizer Adam, dan loss MSE pada data ternormalisasi. Validation subset internal hanya menentukan epoch; model final kemudian dilatih ulang pada seluruh 80% data training.
LSTM:
Sequence window P_sat dan fitur temporal → LSTM(12) → Dense(8, ReLU) → Dense(1), optimizer Adam, loss MSE, validation loss, dan early stopping. Epoch terpilih digunakan untuk melatih ulang model final pada seluruh 80% data training.
Stacking Ensemble:
Meta-regression linear dilatih menggunakan prediksi held-out Random Forest, Neural Network, dan LSTM pada validation subset internal; seluruh model dasar final tetap dilatih pada 80% data training, lalu stacking diterapkan pada independent test dan data implementasi.
Metrik Evaluasi
RMSE dan MAE:
RMSE = √mean((Pred − Obs)²)
MAE = mean(|Pred − Obs|)
NSE dan R²:
NSE = 1 − Σ(Obs − Pred)² / Σ(Obs − mean(Obs))²
R² = r(Obs, Pred)²
KGE dan PBIAS:
KGE = 1 − √[(r − 1)² + (α − 1)² + (β − 1)²]
PBIAS = 100 × Σ(Pred − Obs) / ΣObs
PBIAS positif menunjukkan overestimasi; PBIAS negatif menunjukkan underestimasi.
Metrik Kejadian:
POD = TP/(TP+FN); FAR = FP/(TP+FP); CSI = TP/(TP+FP+FN); Bias Score = (TP+FP)/(TP+FN)
OF (Objective Function) — mengikuti 3.RainVal:
E_RMSE = NRMSE/(1+NRMSE), dengan NRMSE = RMSE/mean(Obs)
E_KGE = [1 − clamp(KGE, −1, 1)]/2
E_PBIAS = min(|PBIAS|/100, 1)
E_CSI = 1 − CSI
E_R = [1 − clamp(r, −1, 1)]/2

OF = 0,30E_RMSE + 0,25E_KGE + 0,15E_PBIAS + 0,20E_CSI + 0,10E_R
Semakin kecil OF, semakin baik. Bobot dinormalisasi otomatis sehingga jumlahnya sama dengan 1.
Pemilihan Model Terbaik
Sedang mengunduh...