„Głębokie twierdzenie Noether”: budowanie w ograniczeniach symetrii


9

Jeśli mam problem z uczeniem się, który powinien mieć nieodłączną symetrię, czy istnieje sposób na poddanie mojego problemu uczenia się ograniczeniu symetrii w celu usprawnienia uczenia się?

Na przykład, jeśli wykonuję rozpoznawanie obrazu, może potrzebuję symetrii obrotowej 2D. Oznacza to, że obrócona wersja obrazu powinna uzyskać taki sam wynik jak oryginał.

Lub jeśli uczę się grać w kółko i krzyżyk, wówczas obracanie o 90 stopni powinno dać tę samą grę.

Czy przeprowadzono na ten temat jakieś badania?



@ Emre Thanks! Czy znasz jakieś prace poza CNN?
aidan.plenert.macdonald

Nie, mam tylko powierzchowną wiedzę na temat tej niszy. Niezależnie od tego CNN wydają się naturalnym środowiskiem ...
Emre

3
Powinienem także wspomnieć o rozprawie doktorskiej Risi Kondor, Grupowe metody teoretyczne w uczeniu maszynowym (pdf)
Emre

Odpowiedzi:


8

Z powyższego komentarza Emre, sekcja 4.4 grupowych metod teoretycznych w uczeniu maszynowym autorstwa Risi Kondor zawiera szczegółowe informacje i dowody na temat tworzenia metod jądra, które z natury mają symetrię. Podsumuję to w miejmy nadzieję intuicyjny sposób (jestem fizykiem, a nie matematykiem!).

Większość algorytmów ML ma mnożenie macierzy, takie jak,

si=jWij xj=jWij (ejx)
z x będąc wkładem i Wij jako ciężary, które chcemy trenować.

Metoda jądra

Wejdź do dziedziny metod jądra i pozwól algorytmowi przetwarzać dane wejściowe za pośrednictwem,

si=jWij k(ej, x)
gdzie teraz uogólniamy x,ejX.

Rozważ grupę G to działa na X przez xTg(x) dla gG. Prostym sposobem na uczynienie naszego algorytmu niezmiennym w tej grupie jest utworzenie jądra,

kG(x,y)=1|G|gGk(x,Tg(y))
z k(x,y)=k(Tg(x),Tg(y)).

Więc,

kG(x,Th(y))=1|G|gGk(x,Tgh(y))=1|G|gGk(x,Tg(y))=1|G|gGk(Tg(x),y)

Dla k(x,y)=xy który działa dla wszystkich reprezentacji jednolitych,

kG(x,Th(y))=[1|G|gGTg(x)]y

Który oferuje macierz transformacji, która może symetrycznie wprowadzać dane do algorytmu.

SO (2) Przykład

Właściwie tylko grupa, na którą mapuje się π2 rotacje dla uproszczenia.

Uruchommy regresję liniową danych (xi,yi)R2×R gdzie oczekujemy symetrii obrotowej.

Nasz problem optymalizacji staje się

minWji12(yiy~i)2y~i=jWjkG(ej,xi)+bi

Jądro spełnia . Możesz także użyć i różnych jąder.k(x,y)=xy2k(x,y)=k(Tg(x),Tg(y))k(x,y)=xy

Tak więc

kG(ej,xi)=14n=14R(nπ/2) ejxi2=14n=14(cos(nπ/2)xi1)2+(sin(nπ/2)xi2)2=14[2xi12+2xi22+(1xi1)2+(1xi2)2+(1+xi1)2+(1+xi2)2]=xi12+xi22+1

Zauważ, że nie musimy sumować przez ponieważ jest to to samo dla obu. Tak więc naszym problemem staje się: j

minWi12(yiy~i)2y~i=W[xi12+xi22+1]+bi

Co daje oczekiwaną sferyczną symetrię!

Kółko i krzyżyk

Przykładowy kod można zobaczyć tutaj . Pokazuje, jak możemy stworzyć macierz, która koduje symetrię i z niej korzystać. Zauważ, że to naprawdę źle, kiedy faktycznie go uruchamiam! Praca z innymi jądrami w tej chwili.


Dobra robota, Aidan! Jeśli masz czas, możesz napisać bardziej szczegółowy post na blogu. Społeczność będzie najbardziej zainteresowana.
Emre,

1
Nie jestem pewien, do jakiej społeczności się odnosisz, ale zacząłem pisać więcej. Chciałem znaleźć sposób na oszacowanie optymalnego jądra, biorąc pod uwagę zestaw danych. Zoptymalizowałem więc entropię w przestrzeni jądra, aby intuicyjnie uzyskać nowy zestaw funkcji, które są symetrycznie ograniczone, a także maksymalnie entropiczne (tj. Informacyjne). Teraz, czy to właściwe podejście. Nie mogę powiedzieć Tylko ostrzeżenie, matematyka jest teraz trochę hackingiem i trochę przypomina mecha statystyki. overleaf.com/read/kdfzdbyhpbbq
aidan.plenert.macdonald

Czy istnieje jakieś sensowne podejście, gdy grupa symetrii nie jest znana?
leitasat

@leitasat Skąd wiesz, że jest symetryczny, jeśli nie znasz grupy?
aidan.plenert.macdonald

@ aidan.plenert.macdonald z danych. Załóżmy, że mamy 1000 zestawów po 100 zdjęć każdy, aw każdym zestawie znajdują się zdjęcia jednego obiektu z różnych punktów widzenia. Czy dowolny algorytm może „nauczyć się idei” symetrii SO (3) i wykorzystać ją na wcześniej niewidzialnych obiektach?
leitasat

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.