Mam dwa zestawy danych (dane źródłowe i docelowe), które mają różny rozkład. Korzystam z MMD - czyli nieparametrycznego rozkładu odległości - aby obliczyć rozkład krańcowy między danymi źródłowym i docelowym.
dane źródłowe, Xs
dane docelowe, Xt
adaptacja Matryca A
* Dane prognozowane, Zs = A '* Xs i Zt = A' Xt
* MMD => Odległość (P (Xs), P (Xt)) = | średnia (A'Xs) - średnia (A ' Xt) |
Oznacza to: odległość rozkładu między danymi źródłowymi i docelowymi w pierwotnej przestrzeni jest równa odległości między środkami rzutowanych danych źródłowych i docelowych w przestrzeni osadzonej.
Mam pytanie dotyczące koncepcji MMD.
We wzorze MMD: Dlaczego przy obliczaniu odległości w utajonej przestrzeni możemy zmierzyć odległość rozkładu w pierwotnej przestrzeni?
Dzięki
Odpowiedzi:
Może to pomóc w nieco szerszym omówieniu MMD.
Ogólnie rzecz biorąc, MMD jest zdefiniowane przez ideę reprezentowania odległości między rozkładami jako odległości między średnimi osadzeniami cech. Oznacza to, że mamy rozkładów i na zbiorze . MMD jest zdefiniowane przez mapę funkcji , gdzie to tak zwana przestrzeń Hilberta w jądrze odtwarzającym. Ogólnie rzecz biorąc, MMD toP Q X φ:X→H H MMD(P,Q)=∥EX∼P[φ(X)]−EY∼Q[φ(Y)]∥H.
Jako przykład możemy podać i . W takim przypadku: więc ten MMD to tylko odległość między średnimi dwóch rozkładów. Dopasowywanie takich rozkładów będzie odpowiadać ich środkom, choć mogą różnić się wariancją lub innymi sposobami.X=H=Rd φ(x)=x MMD(P,Q)=∥EX∼P[φ(X)]−EY∼Q[φ(Y)]∥H=∥EX∼P[X]−EY∼Q[Y]∥Rd=∥μP−μQ∥Rd,
Twój przypadek jest nieco inny: mamy i , z , gdzie jest macierzą . Mamy więc Ta MMD jest różnicą między dwoma różnymi rzutami średniej. Jeśli w innym przypadku lub mapowanie nie jest odwracalne,X=Rd H=Rp φ(x)=A′x A d×p MMD(P,Q)=∥EX∼P[φ(X)]−EY∼Q[φ(Y)]∥H=∥EX∼P[A′X]−EY∼Q[A′Y]∥Rp=∥A′EX∼P[X]−A′EY∼Q[Y]∥Rp=∥A′(μP−μQ)∥Rp. p<d A′ niż poprzedni: nie rozróżnia niektórych dystrybucji, które robi poprzedni.
Możesz także budować większe odległości. Na przykład, jeśli i użyjesz , wtedy MMD staje się i potrafi rozróżniać nie tylko różne środki, ale także różne wariancje.X=R φ(x)=(x,x2) (EX−EY)2+(EX2−EY2)2−−−−−−−−−−−−−−−−−−−−−−−−−√
I możesz stać się znacznie silniejszy: jeśli na ogólne jądro odtwarzające przestrzeń Hilberta, możesz zastosować sztuczkę jądra, aby obliczyć MMD, i okazuje się, że wiele jąder, w tym jądro Gaussa, prowadzi do MMD równa zero, jeśli tylko rozkłady są identyczne.φ
W szczególności, pozwalając , otrzymujesz które można bezpośrednio oszacować za pomocą próbek.k(x,y)=⟨φ(x),φ(y)⟩H MMD2(P,Q)=∥EX∼Pφ(X)−EY∼Qφ(Y)∥2H=⟨EX∼Pφ(X),EX′∼Pφ(X′)⟩H+⟨EY∼Qφ(Y),EY′∼Qφ(Y′)⟩H−2⟨EX∼Pφ(X),EY∼Qφ(Y)⟩H=EX,X′∼Pk(X,X′)+EY,Y′∼Qk(Y,Y′)−2EX∼P,Y∼Qk(X,Y)
Aktualizacja: oto, skąd pochodzi „maksimum” w nazwie.
Mapa funkcji zamienia się w przestrzeń Hilberta w jądrze odtwarzającym. Są to przestrzenie funkcji i spełniają kluczową właściwość (zwaną właściwością odtwarzania ): dla dowolnego .φ:X→H ⟨f,φ(x)⟩H=f(x) f∈H
W najprostszym przykładzie z , widzimy każdy jako funkcję odpowiadającą niektórym przez . Wtedy właściwość odtwarzania powinna mieć sens.X=H=Rd φ(x)=x f∈H w∈Rd f(x)=w′x ⟨f,φ(x)⟩H=⟨w,x⟩Rd
W bardziej skomplikowanych ustawieniach, takich jak jądro Gaussa, jest znacznie bardziej skomplikowaną funkcją, ale właściwość odtwarzania nadal obowiązuje.f
Teraz możemy podać alternatywną charakterystykę MMD: Drugi wiersz jest ogólnym faktem na temat norm w przestrzeniach Hilberta:MMD(P,Q)=∥EX∼P[φ(X)]−EY∼Q[φ(Y)]∥H=supf∈H:∥f∥H≤1⟨f,EX∼P[φ(X)]−EY∼Q[φ(Y)]⟩H=supf∈H:∥f∥H≤1⟨f,EX∼P[φ(X)]⟩H−⟨f,EY∼Q[φ(Y)]⟩H=supf∈H:∥f∥H≤1EX∼P[⟨f,φ(X)⟩H]−EY∼Q[⟨f,φ(Y)⟩H]=supf∈H:∥f∥H≤1EX∼P[f(X)]−EY∼Q[f(Y)]. supf:∥f∥≤1⟨f,g⟩H=∥g∥ osiąga się przez . Czwarty zależy od stanu technicznego znanego jako całkowalność Bochnera, ale jest prawdziwy np. W przypadku ograniczonych jąder lub dystrybucji z ograniczoną obsługą. Następnie na koniec używamy właściwości odtwarzania.f=g/∥g∥
Ten ostatni wiersz jest nazywany „maksymalną średnią rozbieżnością” - jest to maksymalna, ponad testowa funkcja w jednostce kuli , średniej różnicy między dwoma rozkładami.f H
źródło
Oto jak interpretowałem MMD. Dwa rozkłady są podobne, jeśli ich momenty są podobne. Stosując jądro, mogę przekształcić zmienną tak, aby wszystkie momenty (pierwszy, drugi, trzeci itd.) Były obliczane. W utajonej przestrzeni mogę obliczyć różnicę między momentami i uśrednić ją. Daje to miarę podobieństwa / odmienności między zestawami danych.
źródło