Czy macierze jądra RBF są źle warunkowane?

10

Używam funkcji jądra RBF do implementacji jednego algorytmu uczenia maszynowego opartego na jądrze (KLPP), otrzymanej macierzy jądra jest bardzo źle uwarunkowany. Liczba stanów L2-norm wynosi 10 ^ {17} -10 ^ {64}K

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

Czy jest jakiś sposób, aby uczynić go dobrze uwarunkowanym? Myślę, że parametr σ musi zostać dostrojony, ale nie wiem dokładnie.

Dzięki!

ZeyuHu
źródło
1
cóż, jeśli σm numer warunku.
user189035

Odpowiedzi:

11

Zmniejszenie szerokości jądra σm zwykle zmniejsza liczbę warunków.

Jednak macierze jądra mogą stać się liczbą pojedynczą lub zbliżoną do liczby pojedynczej dla dowolnej funkcji bazowej lub rozkładu punktowego, pod warunkiem, że funkcje podstawowe nakładają się. Powód tego jest w rzeczywistości dość prosty:

  • Macierz K jądra Kjest pojedyncza, gdy jej wyznacznik det(K) wynosi zero.
  • Zamiana dwóch punktów i w interpolacji jest równoważna wymianie dwóch wierszy w , zakładając, że twoje punkty próbne pozostaną stałe.xixjK
  • Zamiana dwóch wierszy w macierzy zmienia znak jej wyznacznika.

Teraz wyobraź sobie, że wybierasz dwa punkty i i powoli obracasz je, aby zamieniały się miejscami. W tym czasie wyznacznik zmieni znak, stając się zerem w pewnym punkcie pomiędzy. W tym momencie jest z definicji liczbą pojedynczą.xixjKK

Pedro
źródło
Czy macierze K nie są symetryczne - zamiana dwóch punktów zamienia wiersze i kolumny?
denis
@Denis Tak jest tylko w przypadku, gdy twoje węzły i punkty próbne są takie same i przesuwasz oba. Właśnie dlatego w drugim punkcie napisałem „zakładając, że twoje punkty próbne pozostaną stałe”.
Pedro
matryca jądra Gaussa (pytanie OP) jest w każdym razie dodatnia na wpół określona?
denis
@Denis: Ponownie, jest to pytanie, jak zdefiniujesz swój problem interpolacji RBF. Rozważmy przypadku najogólniejszym gdzie masz RBFs koncentruje się na punkty , , a chcesz zminimalizować interpolacji Pod punktów , . Przykład plakatu zakłada i . Jeśli początkowo ustawione i , a potem po prostu przesunąć możemy trywialnie wygenerować swoistą . Nxii=1NMξjj=1MM=Nξj=xiMNξjxixiK
Pedro
3

Kilka sugestii:

  1. Wybierz średni dystans | losowe - najbliższe . (Niedrogie przybliżenie punktów równomiernie rozmieszczonych w sześcianie jednostkowym w , wynosi 0,5 / .) Chcemy być duży dla pobliżu , mały dla szumu tła; narysuj to dla kilku losowych .σxxiNRd,d 2..5N1/d
    ϕ(|xxi|)xixx

  2. Przesuń od 0, , lub mniej więcej; to znaczy, ureguluj.KKK+λIλ106

  3. Spójrz na wagi z rozwiązywania . Jeśli niektóre nadal są ogromne (niezależnie od liczby warunków), to raczej potwierdza Boyda (poniżej), że Gaussowski RBF jest zasadniczo słaby.(K+λI)w=f

(Jedną alternatywą dla RBF jest ważenie w odwrotnej odległości, IDW. Ma tę zaletę, że automatyczne skalowanie, to samo dla najbliższych odległości 1 2 3 jak dla 100 200 300 Również znajduję wyraźny wybór użytkownika , liczba bliskich sąsiadów do rozważenia, jaśniejsze niż wyszukiwanie siatki w .)Nnearσ,λ

John P. Boyd, Bezużyteczność szybkiej transformaty Gaussa do sumowania szeregów funkcji radialnej podstawy Gaussa , mówi

interpolant Gaussa RBF jest źle uwarunkowany dla większości serii w tym sensie, że interpolant jest niewielką różnicą terminów o wykładniczo dużych współczynnikach.

Mam nadzieję że to pomoże; podziel się swoim doświadczeniem.

denis
źródło