- Jarak Wasserstein mengukur perbedaan antara dua distribusi sebagai biaya untuk memindahkan massa probabilitas.
- Ditunjukkan cara menghitungnya pada 1 dimensi dan pendekatan umum untuk kasus multidimensi.
- Dijelaskan pula normalisasi, biaya komputasi, dan pengaturan parameter dalam praktik.
1. Definisi dan Intuisi #
Untuk dua distribusi diskrit 1 dimensi \(P\) dan \(Q\), jarak 1-Wasserstein didefinisikan sebagai:
$$ W_1(P, Q) = \int_{-\infty}^{\infty} |F_P(x) - F_Q(x)| , dx $$
Pada dimensi lebih tinggi, masalah ini diformulasikan sebagai optimal transport — mencari biaya minimum untuk memindahkan massa dari satu distribusi ke yang lain.
Berbeda dengan metrik berbasis rata-rata, jarak ini mempertimbangkan perbedaan lokasi dan bentuk distribusi.
2. Perhitungan di Python #
import numpy as np
from scipy.stats import wasserstein_distance
x = np.random.normal(0, 1, size=1_000)
y = np.random.normal(1, 1.5, size=1_000)
dist = wasserstein_distance(x, y)
print(f"Wasserstein distance: {dist:.3f}")
Fungsi scipy.stats.wasserstein_distance menghitung jarak 1D.
Untuk data multidimensi, metode pendekatan seperti Sinkhorn distance dari pustaka POT (Python Optimal Transport) sering digunakan dalam praktik.
3. Karakteristik Utama #
- Peka terhadap bentuk distribusi: Meskipun rata-rata sama, perbedaan varian atau jumlah mode meningkatkan jarak.
- Lebih tangguh: Tidak menjadi tak hingga seperti KL Divergence saat dukungan tidak tumpang tindih, serta lebih stabil terhadap outlier.
- Biaya komputasi: Untuk dimensi tinggi, perhitungan bisa berat — gunakan pendekatan regularisasi seperti metode Sinkhorn untuk mempercepatnya.
4. Aplikasi Praktis #
- Evaluasi model generatif: Mengukur perbedaan keseluruhan antara distribusi hasil generasi dan data nyata.
- Inspeksi kualitas & simulasi: Cocok untuk membandingkan keseluruhan histogram, bukan hanya statistik ringkas.
- Pemantauan deret waktu: Melacak perubahan distribusi antarperiode dan memberi peringatan saat melewati ambang batas.
5. Pertimbangan Praktis #
- Karena nilainya bergantung pada skala data, lakukan standarisasi atau normalisasi agar interpretasi lebih mudah.
- Jarak kecil tidak selalu berarti rata-rata atau varians sama — kombinasikan dengan metrik lain.
- Parameter regularisasi pada metode Sinkhorn memengaruhi hasil, jadi sesuaikan dengan tujuan analisis.
Ringkasan #
Jarak Wasserstein mengukur perbedaan distribusi dengan mempertimbangkan posisi dan bentuk sekaligus.
Mudah dihitung pada 1 dimensi dan dapat didekati secara efisien untuk data multidimensi.
Gabungkan dengan KL atau JS Divergence untuk analisis distribusi yang lebih menyeluruh.