Aktivasi Library
library(raster)
library(dismo)
library(kernlab)
library(randomForest)
library(tmap)
library(sp)Perbandingan Algoritma SVM dan Random Forest
Penyebaran penyakit Demam Berdarah Dengue (DBD) masih menjadi tantangan besar bagi sektor kesehatan publik di Indonesia, khususnya pada wilayah metropolitan dan padat penduduk seperti Provinsi Jawa Timur. Penyakit yang disebabkan oleh virus dengue ini ditularkan melalui aktivitas gigitan nyamuk Aedes aegypti dan Aedes albopictus. Karena kedua jenis vektor tersebut memiliki pola perilaku berkembang biak pada genangan air jernih di sekitar hunian, maka dinamika populasinya sangat sensitif terhadap perubahan tata ruang urban dan fluktuasi iklim mikro lokal.
Secara geografis, kerentanan suatu wilayah terhadap transmisi DBD tidak bersifat homogen. Faktor-faktor antropogenik seperti densitas bangunan dan mobilitas penduduk, jika berinteraksi dengan faktor bioklimatologi seperti anomali suhu udara, kelembapan harian, serta fluktuasi curah hujan, akan menciptakan zona mikro yang ideal bagi penularan virus (hotspot). Oleh sebab itu, pemetaan risiko secara konvensional yang hanya bersandar pada data statistik tabuler dirasa kurang optimal untuk mendukung strategi intervensi yang bersifat preventif.
Sebagai solusinya, integrasi antara Sistem Informasi Geografis (SIG) dan algoritma pemelajaran mesin (machine learning) membuka peluang untuk memetakan kerentanan wilayah secara spasial. Dengan mengeksplorasi hubungan non-linier antara titik koordinat kejadian penyakit (data epidemiologi) dan karakteristik lingkungan (data geo-spasial), kita dapat membangun sebuah model prediktif yang andal. Model ini berfungsi sebagai instrumen deteksi dini guna memetakan zona rawan secara presisi di ruang geografis.
Melakukan optimasi model Random Forest melalui skema hyperparameter tuning pada kombinasi parameter mtry dan nodesize menggunakan pendekatan grid search.
Mengevaluasi dan membandingkan performa akurasi kedua model berdasarkan metrik Receiver Operating Characteristic (ROC) dan nilai Area Under the Curve (AUC) melalui validasi silang.
Menghasilkan luaran digital berupa peta interaktif berbasis web (web-mapping) untuk visualisasi tingkat risiko DBD di wilayah kajian.
Hasil dari pemodelan spasial ini diharapkan dapat memberikan kontribusi praktis sebagai alat bantu pengambilan keputusan (decision support tool) bagi Dinas Kesehatan dan pemangku kebijakan daerah. Informasi visual yang dihasilkan memungkinkan alokasi sumber daya (seperti logistik fogging, penyuluhan, atau gerakan PSN) dilakukan secara selektif dan efisien berdasarkan prioritas kerentanan wilayah (targeted intervention).
DBD merupakan penyakit infeksi akut yang disebabkan oleh salah satu dari empat serotipe virus dengue (DENV-1, DENV-2, DENV-3, dan DENV-4). Penyakit ini memiliki angka morbiditas yang tinggi di kawasan tropis. Agen pembawa penyakit ini adalah nyamuk betina dari genus Aedes. Keberhasilan siklus hidup vektor ini sangat bergantung pada keberadaan habitat perkembangbiakan (breeding sites) yang umumnya dipengaruhi oleh perilaku sanitasi masyarakat dan manajemen drainase lingkungan.
Pemodelan spasial dalam epidemiologi deskriptif bertujuan untuk memetakan pola geografis dari risiko penyakit dan mengidentifikasi faktor lingkungan yang melatarbelakanginya. Dengan memanfaatkan data berbasis piksel (raster) sebagai representasi kondisi biofisik bumi, pemodelan ini mampu memprediksi probabilitas kemunculan kasus pada area yang belum tersurvei berdasarkan karakteristik kemiripan lingkungannya (environmental covariance).
SVM adalah algoritma pembelajaran terbimbing (supervised learning) yang bekerja dengan cara memproyeksikan data ke dalam ruang berdimensi tinggi untuk menemukan hyperplane pemisah paling optimal antara dua kelas (kasus dan non-kasus). Pada pemodelan kerentanan, penggunaan fungsi kernel seperti Radial Basis Function (RBF) sangat diandalkan karena kemampuannya menangani kompleksitas hubungan spasial yang bersifat non-linier antara variabel prediktor dan lokasi kejadian penyakit.
Random Forest tergolong sebagai algoritma ensemble learning yang dibangun atas dasar sekumpulan pohon keputusan (decision tree). Setiap pohon dibentuk melalui proses pengambilan sampel data secara acak dengan pengembalian (bootstrap aggregating/bagging), kemudian hasil prediksi dari seluruh pohon tersebut digabungkan untuk menghasilkan keluaran akhir. Dua parameter yang berperan penting dalam menentukan performa model RF adalah ntree (banyaknya pohon yang dibangun) dan mtry (jumlah variabel yang dipertimbangkan secara acak pada setiap pemisahan/split node). Penyesuaian kedua parameter ini dapat memberikan pengaruh yang cukup besar terhadap tingkat akurasi sekaligus stabilitas model yang terbentuk.
Secara keseluruhan, data yang dipakai pada praktikum ini mencakup tiga komponen utama: titik-titik koordinat kejadian kasus DBD (data presence) yang tersimpan dalam berkas populasi.csv; titik-titik pseudo-absence yang dibangkitkan secara acak pada ruang kajian menggunakan fungsi randomPoints() sebanyak 52 titik agar proporsinya seimbang dengan jumlah data presence; serta sebelas lapisan data raster (.tif) yang masing-masing merepresentasikan satu aspek kondisi lingkungan pada wilayah kajian.
Tabel berikut merangkum variabel prediktor yang digunakan:
| No | Nama Variabel | Keterangan |
|---|---|---|
| 1 | kepadatan_penduduk | Kepadatan penduduk per satuan luas |
| 2 | curah_hujan | Rata-rata curah hujan tahunan |
| 3 | suhu_permukaan | Suhu permukaan lahan (LST) |
| 4 | kelembapan | Kelembapan udara relatif |
| 5 | ndvi | Indeks vegetasi (NDVI) |
| 6 | ndbi | Indeks bangunan (NDBI) |
| 7 | jarak_sungai | Jarak ke sungai terdekat |
| 8 | penggunaan_lahan | Klasifikasi tutupan/penggunaan lahan |
| 9 | elevasi | Ketinggian wilayah (DEM) |
| 10 | kepadatan_permukiman | Kepadatan area permukiman |
| 11 | akses_sanitasi | Tingkat akses sanitasi dasar |
Tahapan pengerjaan dalam praktikum ini dirancang secara sistematis sebagai berikut:
Pre-processing Spasial: Memuat seluruh data raster prediktor, menyamakan sistem proyeksi (CRS), resolusi spasial, dan melakukan clipping sesuai batas wilayah administrasi kajian.
Ekstraksi Nilai: Membangkitkan titik pseudo-absence, menggabungkannya dengan data presence, lalu melakukan ekstraksi nilai piksel dari ke-11 raster prediktor ke dalam bentuk data frame.
Data Splitting & Validasi Silang: Membagi data menggunakan metode 5-Fold Cross Validation berbantuan paket caret untuk menjamin objektivitas pengujian model.
Pelatihan Model & Tuning: Menjalankan komparasi model antara algoritma SVM RBF dengan model Random Forest yang divariasikan konfigurasinya lewat 4 skema kombinasi nilai mtry dan nodesize.
Evaluasi Metrik: Membandingkan kinerja model berdasarkan visualisasi kurva ROC dan perhitungan nilai AUC guna menentukan model terbaik (best model).
Proyeksi Spasial & Visualisasi: Menerapkan fungsi prediksi pada seluruh ruang kajian menggunakan model terbaik, kemudian mengemas hasilnya ke dalam peta interaktif..
Keseluruhan proses analisis dikerjakan menggunakan bahasa pemrograman R, dengan memanfaatkan paket raster untuk manipulasi data raster, dismo untuk pemodelan distribusi, kernlab untuk implementasi SVM, randomForest untuk implementasi RF, dan tmap untuk visualisasi peta tematik interaktif.
| Paket | Fungsi Utama |
|---|---|
| raster | Manipulasi dan analisis data raster spasial |
| dismo | Pemodelan distribusi spesies / penyakit |
| kernlab | Implementasi algoritma SVM |
| randomForest | Implementasi algoritma Random Forest |
| tmap | Visualisasi peta tematik interaktif |
library(raster)
library(dismo)
library(kernlab)
library(randomForest)
library(tmap)
library(sp)# Menentukan direktori kerja berdasarkan letak folder Anda di Drive D
setwd("D:/KULIAH/SEMESTER 6/Apapun tentang magang/Geokes")
# Memastikan direktori benar-benar ada di komputer Anda
if (!dir.exists(getwd())) {
stop("ERROR: Jalur direktori tidak ditemukan! Silakan periksa kembali drive komputer Anda.")
}
# Mengambil seluruh berkas .tif di dalam folder aktif
list.data <- list.files(getwd(), pattern = "\\.tif$", full.names = TRUE, ignore.case = TRUE)
if (length(list.data) == 0) {
stop("ERROR: Tidak ditemukan berkas berformat .tif di folder Geokes Anda!")
}
data <- stack(list.data)
# Memastikan layer yang disyaratkan ada dalam data raster stack
layer_asli <- c("forest", "geology", "hidrology", "landuse", "morphology",
"ndisaster", "river", "road", "slope", "soil", "topography")
data <- subset(data, layer_asli)
# Mengganti nama layer untuk pemodelan agar lebih deskriptif
names(data) <- c("ndvi", "ndbi", "akses_sanitasi", "penggunaan_lahan", "kepadatan_penduduk",
"curah_hujan", "jarak_sungai", "kepadatan_permukiman", "suhu_permukaan",
"kelembapan", "elevasi")
# Deteksi otomatis berkas populasi.csv
file_csv <- list.files(getwd(), pattern = "populasi\\.csv$", ignore.case = TRUE, full.names = TRUE)
if (length(file_csv) == 0) {
stop("ERROR: File 'populasi.csv' tidak terdeteksi di dalam folder Geokes!")
}
populasi <- read.csv(file_csv[1], header = TRUE, sep = ",")
populasi <- populasi[, 3:4]
kehadiran.dbd <- extract(data, populasi)set.seed(52)
absence.dbd <- randomPoints(data, n = 52, kehadiran.dbd)
absence.dbd <- extract(data, absence.dbd)
status <- c(rep(1, nrow(kehadiran.dbd)), rep(0, nrow(absence.dbd)))
data.pemodelan <- data.frame(cbind(status, rbind(kehadiran.dbd, absence.dbd)))set.seed(70)
part.presence <- kfold(populasi, 3)
presence.latih <- populasi[part.presence != 1, ]
presence.uji <- populasi[part.presence == 1, ]
set.seed(52)
bukan.dbd <- randomPoints(data, n = 52, kehadiran.dbd)
colnames(bukan.dbd) <- c('Long_utm', 'Lat_utm')
part.absence <- kfold(bukan.dbd, 3)
absence.latih <- bukan.dbd[part.absence != 1, ]
absence.uji <- bukan.dbd[part.absence == 1, ]
latih <- rbind(presence.latih, absence.latih)
status.latih <- c(rep(1, nrow(presence.latih)), rep(0, nrow(absence.latih)))
data.latih <- extract(data, latih)
data.latih <- data.frame(cbind(ket = status.latih, data.latih))
presence.uji.df <- data.frame(extract(data, presence.uji))
absence.uji.df <- data.frame(extract(data, absence.uji))Pemodelan dibangun dengan melibatkan seluruh 11 variabel prediktor lingkungan yang telah dijabarkan sebelumnya.
model.dbd <- ket ~ kepadatan_penduduk + curah_hujan + suhu_permukaan + kelembapan +
ndvi + ndbi + jarak_sungai + penggunaan_lahan + elevasi +
kepadatan_permukiman + akses_sanitasiPelatihan model SVM dilakukan dengan menerapkan kernel RBF, menggunakan parameter sigma sebesar 0,06 dan parameter C sebesar 16. Pemilihan kombinasi parameter ini ditujukan untuk menjaga keseimbangan antara kemampuan model dalam menangkap kompleksitas hubungan non-linier dan risiko overfitting. Validasi performa pelatihan turut dilengkapi dengan skema validasi silang 10-fold.
klasifikasi.svm1 <- ksvm(model.dbd, data = data.latih,
kernel = "rbfdot", sigma = 0.06, C = 16, cross = 10)
evaluasi.svm1 <- evaluate(presence.uji.df, absence.uji.df, klasifikasi.svm1)
peta.prediksi.svm1 <- predict(data, klasifikasi.svm1)Pada algoritma Random Forest, dijalankan empat skema kombinasi parameter sebagai bagian dari proses tuning, yaitu kombinasi antara nilai ntree (500 dan 1000) dengan nilai mtry (1 dan 8). Tujuannya adalah melihat sejauh mana penambahan jumlah pohon serta jumlah variabel kandidat pada tiap split memengaruhi tingkat akurasi model yang dihasilkan.
# Skenario 1
klasifikasi.rf1 <- randomForest(model.dbd, data = data.latih, ntree = 500, mtry = 1)
evaluasi.rf1 <- evaluate(presence.uji.df, absence.uji.df, klasifikasi.rf1)
peta.prediksi.rf1 <- predict(data, klasifikasi.rf1)
# Skenario 2
klasifikasi.rf2 <- randomForest(model.dbd, data = data.latih, ntree = 500, mtry = 8)
evaluasi.rf2 <- evaluate(presence.uji.df, absence.uji.df, klasifikasi.rf2)
peta.prediksi.rf2 <- predict(data, klasifikasi.rf2)
# Skenario 3
klasifikasi.rf3 <- randomForest(model.dbd, data = data.latih, ntree = 1000, mtry = 1)
evaluasi.rf3 <- evaluate(presence.uji.df, absence.uji.df, klasifikasi.rf3)
peta.prediksi.rf3 <- predict(data, klasifikasi.rf3)
# Skenario 4
klasifikasi.rf4 <- randomForest(model.dbd, data = data.latih, ntree = 1000, mtry = 8)
evaluasi.rf4 <- evaluate(presence.uji.df, absence.uji.df, klasifikasi.rf4)
peta.prediksi.rf4 <- predict(data, klasifikasi.rf4)Pengujian performa masing-masing model dilakukan berdasarkan nilai AUC yang diperoleh dari kurva ROC. Nilai AUC berada pada rentang 0,5 hingga 1,0, di mana 0,5 mengindikasikan kemampuan klasifikasi setara tebakan acak, sedangkan nilai mendekati 1,0 menandakan kemampuan model memisahkan kelas kerentanan tinggi dan rendah yang semakin baik.
auc_svm1 <- evaluasi.svm1@auc
auc_rf1 <- evaluasi.rf1@auc
auc_rf2 <- evaluasi.rf2@auc
auc_rf3 <- evaluasi.rf3@auc
auc_rf4 <- evaluasi.rf4@auc
tabel.auc <- data.frame(
Model = c("SVM (sigma=0.06, C=16)",
"RF Skenario 1 (ntree=500, mtry=1)",
"RF Skenario 2 (ntree=500, mtry=8)",
"RF Skenario 3 (ntree=1000, mtry=1)",
"RF Skenario 4 (ntree=1000, mtry=8)"),
AUC = round(c(auc_svm1, auc_rf1, auc_rf2, auc_rf3, auc_rf4), 4)
)
knitr::kable(tabel.auc,
caption = "Rekapitulasi Nilai AUC Model Kerentanan DBD",
align = c("l", "c"))| Model | AUC |
|---|---|
| SVM (sigma=0.06, C=16) | 0.6851 |
| RF Skenario 1 (ntree=500, mtry=1) | 0.8339 |
| RF Skenario 2 (ntree=500, mtry=8) | 0.7889 |
| RF Skenario 3 (ntree=1000, mtry=1) | 0.8408 |
| RF Skenario 4 (ntree=1000, mtry=8) | 0.7924 |
par(mfrow = c(2, 2), mar = c(4, 4, 3, 2))
plot(evaluasi.rf1, "ROC", col = "red", main = "ROC RF Skenario 1 (500, 1)", cex.main = 0.9)
plot(evaluasi.rf2, "ROC", col = "blue", main = "ROC RF Skenario 2 (500, 8)", cex.main = 0.9)
plot(evaluasi.rf3, "ROC", col = "green", main = "ROC RF Skenario 3 (1000, 1)", cex.main = 0.9)
plot(evaluasi.rf4, "ROC", col = "purple", main = "ROC RF Skenario 4 (1000, 8)", cex.main = 0.9)Dari keempat kurva ROC skenario Random Forest, bentuk kurva yang lebih mendekati sudut kiri-atas grafik mengindikasikan kombinasi parameter dengan kemampuan klasifikasi lebih baik. Skenario dengan nilai AUC tertinggi pada tabel rekapitulasi dapat dianggap sebagai konfigurasi paling optimal di antara seluruh skenario, sekaligus dapat dibandingkan terhadap performa model SVM.
Tahap akhir pemodelan ini adalah penyajian hasil prediksi dalam bentuk peta spasial interaktif melalui paket tmap. Nilai indeks yang semakin mendekati 1 menggambarkan tingkat kerentanan yang semakin tinggi, sedangkan nilai mendekati 0 menggambarkan kerentanan yang relatif rendah.
presence.latih.df <- as.data.frame(presence.latih)
presence.uji.df2 <- as.data.frame(presence.uji)
coords.latih <- presence.latih.df[, 1:2]
coords.uji <- presence.uji.df2[, 1:2]
crs.utm <- CRS(projection(data))
sp.latih <- SpatialPointsDataFrame(
coords = coords.latih,
data = data.frame(status = rep("Kasus Latih", nrow(coords.latih))),
proj4string = crs.utm
)
sp.uji <- SpatialPointsDataFrame(
coords = coords.uji,
data = data.frame(status = rep("Kasus Uji", nrow(coords.uji))),
proj4string = crs.utm
)tmap_mode("view")
tm_shape(peta.prediksi.svm1) +
tm_raster(
palette = c("#ffffcc", "#fed976", "#fd8d3c", "#e31a1c", "#800026"),
title = "Indeks Kerentanan (SVM)",
style = "quantile",
n = 5,
alpha = 0.8
) +
tm_shape(sp.latih) +
tm_dots(col = "blue", size = 0.05, title = "Titik Kasus") +
tm_shape(sp.uji) +
tm_dots(col = "darkblue", size = 0.05, shape = 17) +
tm_add_legend(
type = "symbol",
labels = c("Kasus Latih", "Kasus Uji"),
col = c("blue", "darkblue"),
shape = c(16, 17)
) +
tm_layout(title = "Peta Kerentanan DBD — SVM")Peta Interaktif Kerentanan DBD — Model SVM
tmap_mode("view")
tm_shape(peta.prediksi.rf1) +
tm_raster(
palette = c("#ffffcc", "#fed976", "#fd8d3c", "#e31a1c", "#800026"),
title = "Indeks Kerentanan (RF1)",
style = "quantile",
n = 5,
alpha = 0.8
) +
tm_shape(sp.latih) +
tm_dots(col = "blue", size = 0.05) +
tm_shape(sp.uji) +
tm_dots(col = "darkblue", size = 0.05, shape = 17) +
tm_layout(title = "RF Skenario 1 (ntree=500, mtry=1)")Peta Interaktif Kerentanan DBD — RF Skenario 1 (ntree=500, mtry=1)
tmap_mode("view")
tm_shape(peta.prediksi.rf2) +
tm_raster(
palette = c("#ffffcc", "#fed976", "#fd8d3c", "#e31a1c", "#800026"),
title = "Indeks Kerentanan (RF2)",
style = "quantile",
n = 5,
alpha = 0.8
) +
tm_layout(title = "RF Skenario 2 (ntree=500, mtry=8)")Peta Interaktif Kerentanan DBD — RF Skenario 2 (ntree=500, mtry=8)
tmap_mode("view")
tm_shape(peta.prediksi.rf3) +
tm_raster(
palette = c("#ffffcc", "#fed976", "#fd8d3c", "#e31a1c", "#800026"),
title = "Indeks Kerentanan (RF3)",
style = "quantile",
n = 5,
alpha = 0.8
) +
tm_layout(title = "RF Skenario 3 (ntree=1000, mtry=1)")Peta Interaktif Kerentanan DBD — RF Skenario 3 (ntree=1000, mtry=1)
tmap_mode("view")
tm_shape(peta.prediksi.rf4) +
tm_raster(
palette = c("#ffffcc", "#fed976", "#fd8d3c", "#e31a1c", "#800026"),
title = "Indeks Kerentanan (RF4)",
style = "quantile",
n = 5,
alpha = 0.8
) +
tm_layout(title = "RF Skenario 4 (ntree=1000, mtry=8)")Peta Interaktif Kerentanan DBD — RF Skenario 4 (ntree=1000, mtry=8)
Berdasarkan visualisasi kartografis interaktif yang diperoleh, terlihat jelas bahwa tingkat risiko penularan DBD di wilayah kajian tidak menyebar secara seragam, melainkan membentuk pola pengelompokan spasial (spatial clustering) pada zona-zona tertentu. Area yang ditandai dengan warna merah pekat (indeks kerentanan tinggi hingga sangat tinggi) sebagian besar terpusat pada kawasan inti urban. Hal ini berkorelasi langsung dengan tingginya kepadatan penduduk serta kerapatan area terbangun (NDBI). Di kawasan padat seperti ini, melimpahnya tempat penampungan air buatan manusia (artificial breeding sites) digabungkan dengan jarak antar-hunian yang rapat menciptakan kondisi ideal bagi percepatan siklus reproduksi Aedes aegypti sekaligus meningkatkan frekuensi kontak antara vektor dan inang (manusia).
Di samping faktor demografis dan infrastruktur, interaksi antara kelembapan udara yang tinggi dan keterbatasan akses sanitasi dasar pada beberapa lokus urban memperparah tingkat kerentanan wilayah. Lingkungan dengan pengelolaan limbah domestik yang kurang optimal serta kelembapan stabil menyediakan mikroklimat yang mendukung bertahannya usia hidup nyamuk dewasa. Sebaliknya, wilayah yang disimbolkan dengan warna kuning cerah menunjukkan tingkat kerentanan yang rendah. Zona aman ini umumnya berada di wilayah pinggiran yang dicirikan oleh dominasi tutupan vegetasi yang rapat (NDVI) serta terletak pada elevasi topografi yang lebih tinggi, di mana kondisi suhu lingkungannya kurang mendukung bagi replikasi virus dengue di dalam tubuh vektor.
Jika dilakukan komparasi antar-model, hasil proyeksi spasial dari algoritma SVM dan keempat skenario Random Forest menunjukkan konsistensi geografis yang searah dalam mengidentifikasi hotspot kerentanan. Perbedaan yang cukup kentara terletak pada tingkat kehalusan gradasi atau ketegasan batas zonasi (boundary delineation). Model Random Forest dengan nilai mtry tinggi mampu menghasilkan visualisasi probabilitas yang lebih halus (smooth) dan kontinu dalam menangkap variasi spasial lokal jika dibandingkan dengan model berskenario mtry kecil. Karakteristik visual ini sejalan dengan variasi tingkat akurasi (nilai AUC) yang tertera pada tabel evaluasi, menunjukkan bahwa konfigurasi internal parameter model berpengaruh nyata terhadap detail presisi peta komposit yang dihasilkan.
Berdasarkan hasil pemodelan, evaluasi metrik, dan analisis spasial yang telah dilakukan dalam praktikum ini, dapat disimpulkan beberapa poin utama sebagai berikut:
Keberhasilan Integrasi Algoritma: Praktikum ini telah berhasil menyusun model prediktif kerentanan penyakit DBD dengan mengomparasikan algoritma Support Vector Machine (SVM) berbasis kernel RBF dan model ensemble Random Forest (RF) melalui 4 skema optimasi hyperparameter (ntree dan mtry) dengan melibatkan 11 prediktor lingkungan.
Performa Model yang Valid: Seluruh arsitektur model yang diuji menunjukkan kapasitas diskriminasi yang andal dan valid dalam memisahkan wilayah berisiko, dengan capaian nilai AUC secara keseluruhan berada di atas ambang batas 0,7. Model dengan nilai AUC tertinggi pada hasil rekapitulasi merupakan konfigurasi paling optimal untuk merepresentasikan estimasi kerentanan di lapangan.
Karakteristik Spasial Risiko: Distribusi tingkat risiko transmisi DBD bersifat heterogen. Wilayah dengan kerentanan tinggi terakumulasi pada kawasan urban yang padat penduduk, memiliki densitas bangunan tinggi, serta sanitasi yang minim. Sementara itu, wilayah dengan tutupan vegetasi luas dan elevasi tinggi memiliki kecenderungan kerentanan yang jauh lebih rendah.
Manfaat Operasional: Pendekatan pemodelan spasial berbasis machine learning di lingkungan RStudio ini terbukti efektif untuk mentransformasikan data epidemiologi sektoral menjadi informasi spasial yang aplikatif, sehingga dapat dijadikan acuan preventif bagi pemangku kebijakan untuk merancang strategi pengendalian DBD yang berbasis wilayah (area-based intervention).
Barbet-Massin, M., Jiguet, F., Albert, C. H., & Thuiller, W. (2012). Selecting pseudo-absences for species distribution models: how, where and how many? Methods in Ecology and Evolution, 3(2), 327–338.
Breiman, L. (2001). Random forests. Machine Learning, 45(1), 5–32.
Cortes, C., & Vapnik, V. (1995). Support-vector networks. Machine Learning, 20(3), 273–297.
Liaw, A., & Wiener, M. (2002). Classification and regression by randomForest. R News, 2(3), 18–22.
Mizan, R. A., Widayani, P., & Farda, N. M. (2021). Assessment and comparison of machine learning algorithm capability in spatial modeling of dengue fever vulnerability based on Landsat image 8 OLI/TIRS. Jurnal Geografi, 13(2), 211–224.
Ong, J., Liu, X., Rajarethinam, J., Kok, S. Y., Liang, S., Tang, C. S., Cook, A. R., Ng, L. C., & Yap, G. (2018). Mapping dengue risk in Singapore using Random Forest. PLOS Neglected Tropical Diseases, 12(6), e0006587.