„Theorem von Deep Noether“: Aufbau von Symmetrieeinschränkungen


9

Wenn ich ein Lernproblem habe, das eine inhärente Symmetrie haben sollte, gibt es eine Möglichkeit, mein Lernproblem einer Symmetrieeinschränkung zu unterwerfen, um das Lernen zu verbessern?

Wenn ich beispielsweise eine Bilderkennung durchführe, möchte ich möglicherweise eine 2D-Rotationssymmetrie. Dies bedeutet, dass die gedrehte Version eines Bildes das gleiche Ergebnis wie das Original erzielen sollte.

Oder wenn ich lerne, Tic-Tac-Toe zu spielen, sollte eine Drehung um 90 Grad das gleiche Spielverhalten ergeben.

Wurden diesbezüglich Untersuchungen durchgeführt?



@ Emmre Danke! Kennen Sie Arbeiten außerhalb von CNNs?
aidan.plenert.macdonald

Nein, ich kenne diese Nische nur oberflächlich. Trotzdem scheinen CNNs eine natürliche Umgebung zu sein ...
Emre

3
Ich sollte auch Risi Kondors Doktorarbeit, Gruppentheoretische Methoden im maschinellen Lernen (pdf)
Emre

Antworten:


8

Aus Emres obigem Kommentar geht hervor, dass Abschnitt 4.4 der gruppentheoretischen Methoden des maschinellen Lernens von Risi Kondor detaillierte Informationen und Beweise zum Erstellen von Kernelmethoden enthält, die von Natur aus Symmetrien aufweisen. Ich werde es auf hoffentlich intuitive Weise zusammenfassen (ich bin Physiker, kein Mathematiker!).

Die meisten ML-Algorithmen haben eine Matrixmultiplikation wie

sich=jW.ichj xj=jW.ichj (ejx)
wobei x die Eingabe undW.ichjdie Gewichte sind, die wir trainieren möchten.

Kernel-Methode

Betreten Sie den Bereich der Kernel-Methoden und lassen Sie den Algorithmus die Eingabe über

sich=jW.ichj k(ej, x)
wobei wir nun aufx,ejX.verallgemeinern.

Betrachten Sie eine Gruppe G , die über x T g ( x ) für g G auf X. einwirkt . Eine einfache Möglichkeit, unseren Algorithmus unter dieser Gruppe invariant zu machen, besteht darin, einen Kernel, k G ( x , y ) , zu erstellen.xT.G(x)GG

kG(x,y)=1|G|GGk(x,T.G(y))
mitk(x,y)=k(T.G(x),T.G(y)).

Also,

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

Für k(x,y)=xy das für alle einheitlichen Darstellungen gilt,

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

Dies bietet eine Transformationsmatrix, die die Eingabe in den Algorithmus symmetrisieren kann.

SO (2) Beispiel

Eigentlich nur die Gruppe, die auf π2 Einfachheit halber 2 Umdrehungen.

Lassen Sie uns eine lineare Regression für Daten (xi,yi)R2×R. wobei wir eine Rotationssymmetrie erwarten.

Unser Optimierungsproblem wird

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

Der Kern k(x,y)=xy2 erfüllt k(x,y)=k(Tg(x),Tg(y)) . Sie können auch k(x,y)=xy und eine Vielzahl von Kerneln verwenden.

Somit ist

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

j

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

Was die erwartete sphärische Symmetrie ergibt!

Tic-Tac-Toe

Beispielcode ist hier zu sehen . Es zeigt, wie wir eine Matrix erstellen können, die die Symmetrie codiert und verwendet. Beachten Sie, dass dies wirklich schlecht ist, wenn ich es tatsächlich laufen lasse! Momentan mit anderen Kerneln arbeiten.


Gute Arbeit, Aidan! Wenn Sie Zeit haben, können Sie einen detaillierteren Blog-Beitrag schreiben. Die Community wird am meisten interessiert sein.
Emre

1
Ich bin mir nicht sicher, auf welche Community Sie sich beziehen, aber ich habe angefangen, mehr zu schreiben. Ich wollte einen Weg finden, um den optimalen Kernel anhand eines Datensatzes zu schätzen. Daher habe ich die Entropie im Kernelraum optimiert, um intuitiv einen neuen Satz von Funktionen zu erhalten, die symmetrisch eingeschränkt und auch maximal entropisch (dh informativ) sind. Nun, ob das der richtige Ansatz ist. Das kann ich nicht sagen Nur eine Warnung, die Mathematik ist im Moment ein bisschen ein Hack-Job und irgendwie direkt aus dem Status mech. overleaf.com/read/kdfzdbyhpbbq
aidan.plenert.macdonald

Gibt es einen sinnvollen Ansatz, wenn die Symmetriegruppe nicht bekannt ist?
Leitasat

@leitasat Woher weißt du, dass es symmetrisch ist, wenn du die Gruppe nicht kennst?
aidan.plenert.macdonald

@ aidan.plenert.macdonald aus den Daten. Angenommen, wir haben 1000 Sätze mit jeweils 100 Bildern, und in jedem Satz befinden sich Bilder eines Objekts aus verschiedenen Blickwinkeln. Kann irgendein Algorithmus die Idee der SO (3) -Symmetrie "lernen" und sie auf zuvor nicht sichtbaren Objekten anwenden?
Leitasat

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.