Cara menghitung mape dengan python
Rata-rata persentase kesalahan absolut (MAPE) biasanya digunakan untuk mengukur akurasi prediksi model. Ini dihitung sebagai berikut:
MAPE = (1/n) * Σ(|aktual – prediksi| / |aktual|) * 100
Emas:
- Σ – simbol yang berarti “jumlah”
- n – ukuran sampel
- nyata – nilai sebenarnya dari data
- prediksi – nilai data yang diprediksi
MAPE umum digunakan karena mudah diinterpretasikan dan dijelaskan. Misalnya nilai MAPE sebesar 11,5% berarti selisih rata-rata antara nilai prediksi dengan nilai sebenarnya adalah 11,5%.
Semakin rendah nilai MAPE, semakin baik model dalam memprediksi nilai. Misalnya model dengan MAPE 5% lebih akurat dibandingkan model dengan MAPE 10%.
Cara menghitung MAPE dengan Python
Tidak ada fungsi bawaan Python untuk menghitung MAPE, namun kita dapat membuat fungsi sederhana untuk melakukannya:
import numpy as np def mape( actual , pred ): actual, pred = np.array(actual), np.array(pred) return np.mean(np.abs((actual - pred) / actual)) * 100
Kita kemudian dapat menggunakan fungsi ini untuk menghitung MAPE untuk dua tabel: satu yang berisi nilai data aktual dan satu lagi yang berisi nilai data prediksi.
actual = [12, 13, 14, 15, 15,22, 27] pred = [11, 13, 14, 14, 15, 16, 18] map(actual, pred) 10.8009
Dari hasil tersebut terlihat rata-rata persentase error absolut model ini adalah 10,8009% . Dengan kata lain selisih rata-rata antara nilai prediksi dengan nilai sebenarnya adalah sebesar 10,8009%.
Tindakan pencegahan untuk menggunakan MAPE
Meskipun MAPE mudah untuk dihitung dan diinterpretasikan, penggunaannya memiliki dua potensi kelemahan:
1. Karena rumus menghitung persentase kesalahan absolut adalah |prediksi aktual| / |nyata| ini berarti MAPE tidak akan terdefinisi jika salah satu nilai sebenarnya adalah nol.
2. MAPE tidak boleh digunakan dengan data bervolume rendah. Misalnya, jika permintaan aktual suatu barang adalah 2 dan perkiraannya adalah 1, nilai persentase kesalahan absolutnya adalah |2-1| / |2| = 50%, yang membuat kesalahan perkiraan tampak cukup tinggi, meskipun perkiraan hanya meleset 1 satuan.