Wasserstein distance, juga dikenali sebagai Earth Mover's Distance, ialah kaedah matematik yang digunakan untuk mengukur jarak antara dua taburan kebarangkalian. Berbanding dengan kaedah pengukuran jarak tradisional seperti jarak Euclidean, jarak Wasserstein secara lebih komprehensif mempertimbangkan persamaan antara taburan dan hubungan antara jarak geometri, menjadikannya lebih sesuai untuk menerangkan persamaan set data dimensi tinggi. Jarak Wasserstein dikira dengan jumlah kos minimum yang diperlukan untuk mengubah satu pengedaran kepada yang lain. Kos ini boleh ditafsirkan sebagai usaha yang diperlukan untuk memindahkan jisim dalam pengedaran dari satu lokasi ke lokasi lain. Oleh itu, jarak Wasserstein boleh dilihat sebagai kos pemindahan jisim antara dua pengagihan. Ini menjadikan jarak Wasserstein digunakan secara meluas dalam banyak bidang, termasuk pemprosesan imej, pemprosesan bahasa semula jadi, ekonomi, dll. Dengan mengambil kira persamaan dan jarak geometri antara taburan
Takrifan jarak Wasserstein adalah berdasarkan meminimumkan kos yang diperlukan untuk mengubah satu taburan kepada yang lain. Kos ini boleh sewenang-wenangnya, tetapi biasanya merujuk kepada kos pemindahan jisim dari satu lokasi ke lokasi lain dalam pengedaran, yang boleh dinyatakan sebagai hasil darab antara dua lokasi dan jisim. Nilai jarak Wasserstein adalah sama dengan nilai minimum kos semua penyelesaian transformasi yang mungkin.
Secara matematik, jarak Wasserstein boleh ditakrifkan sebagai:
W_p(mu,nu)=left(inf_{gammainGamma(mu,nu)}int_{mathbb{R}^d times mathbb{R}^ d} |x-y|^p dgamma(x,y)kanan)^{1/p}
Antaranya, mu dan nu ialah dua taburan kebarangkalian, dan Gamma(mu,nu) ialah semua faktor yang menukar mu kepada nu Satu set taburan kebarangkalian, gamma(x,y) mewakili kebarangkalian penukaran sepadan dengan (x,y). Dalam jarak Wasserstein, p geq 1 ialah pemalar, biasanya p=1 atau p=2. Apabila p=1, jarak Wasserstein juga dipanggil Jarak Penggerak Bumi kerana ia boleh dilihat sebagai ukuran bilangan operasi minimum yang diperlukan untuk memindahkan satu pengedaran ke yang lain.
Untuk lebih memahami konsep jarak Wasserstein, kita boleh mempertimbangkan contoh mudah: Katakan kita mempunyai dua taburan kebarangkalian satu dimensi P dan Q, yang masing-masing berada dalam selang [0,1] dan [0.5,1.5 ] diedarkan sama rata di bahagian atas. Kita boleh menggunakan perpustakaan Python dan Scipy untuk mengira jarak Wasserstein di antara mereka.
import numpy as np from scipy.stats import wasserstein_distance # 定义两个概率分布 P 和 Q P = np.ones(100) / 100 Q = np.ones(100) / 100 Q[50:] = 0 # 计算它们之间的Jarak Wasserstein w_dist = wasserstein_distance(P, Q) print("Wasserstein distance:", w_dist)
Dalam contoh ini, kami menggunakan perpustakaan numpy untuk menjana dua taburan kebarangkalian 100 elemen, yang kedua-duanya diedarkan secara seragam. Kemudian, kami menetapkan 50 elemen terakhir bagi taburan kedua Q kepada 0 untuk mensimulasikan taburannya pada selang [0.5,1]. Akhir sekali, kami mengira jarak Wasserstein antara mereka menggunakan fungsi wasserstein_distance dalam perpustakaan Scipy. Selepas menjalankan kod, kita boleh mendapatkan output:
Wasserstein distance: 0.5
Ini bermakna kos minimum yang diperlukan untuk mengubah pengagihan P kepada pengagihan Q ialah 0.5. Dalam contoh ini, kita boleh mentafsirkannya sebagai jarak minimum yang diperlukan untuk memindahkan busut dengan panjang 0.5 ke dalam lubang dengan panjang 0.5.
Ringkasnya, jarak Wasserstein ialah kaedah untuk mengukur jarak antara dua taburan kebarangkalian, yang mengambil kira hubungan antara persamaan dan jarak geometri antara taburan. Ia mempunyai banyak aplikasi, seperti fungsi kehilangan dalam rangkaian adversarial generatif (GAN) dan ukuran persamaan dalam mendapatkan semula imej.
Atas ialah kandungan terperinci Jarak Wasserstein. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!