Apakah matriks kernel RBF cenderung tidak terkondisi?

10

Saya menggunakan fungsi kernel RBF untuk mengimplementasikan satu algoritma pembelajaran mesin berbasis kernel (KLPP), yang menghasilkan matriks kernel terbukti sangat tidak terkondisi. Jumlah kondisi norma-L2 datangK ( i , j ) = exp ( - ( x i - x j ) 2K 1017-1064

K(i,j)=exp((xixj)2σm2)
10171064

Apakah ada cara untuk membuatnya terkondisi dengan baik? Saya kira parameter perlu dicari, tetapi saya tidak tahu persis bagaimana.σ

Terima kasih!

ZeyuHu
sumber
1
baik, jika Anda membuat lebih kecil Anda meningkatkan nomor kondisi. σm
user189035

Jawaban:

11

Mengurangi lebar kernel biasanya akan mengurangi nomor kondisi.σm

Namun, matriks kernel dapat menjadi singular, atau dekat dengan singular, untuk setiap fungsi basis atau distribusi titik, asalkan fungsi basis tumpang tindih. Alasannya sebenarnya cukup sederhana:

  • Matriks kernel adalah singular ketika determinannya adalah nol.det ( K )Kdet(K)
  • Mengganti dua titik dan di interpolasi Anda sama dengan bertukar dua baris dalam , dengan asumsi titik uji coba Anda tetap konstan.x j KxixjK
  • Menukar dua baris dalam matriks akan mengubah tanda penentu.

Sekarang bayangkan mengambil dua titik dan dan perlahan-lahan memutarnya sehingga mereka berpindah tempat. Saat melakukan ini, penentu akan beralih tanda, menjadi nol di beberapa titik di antaranya. Pada titik ini, menurut definisi , singular.x j K KxixjKK

Pedro
sumber
Bukankah matriks K simetris - bertukar dua poin menukar baris dan kolom?
denis
@Denis Itu hanya terjadi jika node dan titik percobaan Anda sama dan Anda memindahkan keduanya. Inilah sebabnya, dalam peluru kedua, saya menulis "mengasumsikan poin uji coba Anda tetap konstan."
Pedro
matriks kernel dari Gaussians (pertanyaan OP) positif setengah-setengah?
denis
@Denis: Sekali lagi, ini adalah pertanyaan tentang bagaimana Anda mendefinisikan masalah interpolasi RBF Anda. Pertimbangkan kasus yang paling umum di mana Anda memiliki RBFs berpusat pada titik-titik , , dan Anda ingin meminimalkan interpolasi di poin , . Contoh poster mengasumsikan dan . Jika pada awalnya kita mengatur dan , dan kemudian hanya memindahkan , kita dapat secara sepele menghasilkan singular . x i i = 1 ... N M ξ j j = 1 ... M M = N ξ j = x i M N ξ jx i x i KNxii=1NMξjj=1MM=Nξj=xiMNξjxixiK
Pedro
3

Beberapa saran:

  1. Pilih jarak rata-rata | acak - terdekat . (Perkiraan murah untuk titik terdistribusi secara seragam di dalam unit cube di , adalah 0,5 / .) Kami ingin menjadi besar untuk dekat , kecil untuk kebisingan latar belakang; plot itu untuk beberapa acak .x x i N R d , d 2 . . 5 N 1 / d ϕ ( | x - x i | ) x i x xσxxiNRd,d 2..5N1/d
    ϕ(|xxi|)xixx

  2. Alihkan dari 0, , atau lebih; yaitu, mengatur.K K + λ I λ 10 - 6KKK+λIλ106

  3. Lihatlah bobot dari pemecahan . Jika beberapa masih besar (terlepas dari nomor kondisi), itu akan cenderung untuk mengkonfirmasi Boyd (di bawah) bahwa Gaussian RBF pada dasarnya lemah.(K+λI)w=f

(Salah satu alternatif untuk RBF adalah pembobotan jarak-terbalik, IDW. Ini memiliki keunggulan penskalaan otomatis, sama untuk jarak terdekat 1 2 3 seperti untuk 100 200 300 Juga saya menemukan pilihan pengguna eksplisit , nomor tetangga dekat untuk dipertimbangkan, lebih jelas daripada pencarian kotak pada .)... N n e a r σ , λNnearσ,λ

John P. Boyd, Kesia-siaan dari Fast Gauss Transform untuk menjumlahkan seri fungsi dasar radial Gaussian , kata

interpolant RGB Gaussian tidak dikondisikan untuk sebagian besar seri dalam arti bahwa interpolant adalah perbedaan kecil dari istilah dengan koefisien eksponensial besar.

Semoga ini membantu; tolong bagikan pengalaman Anda.

denis
sumber