Was ist geometrisches Tiefenlernen?

10

Was ist geometrisches Deep Learning (GDL)? Wie unterscheidet es sich von Deep Learning? Warum brauchen wir GDL? Was sind einige Anwendungen von GDL?

nbro
quelle
Ich habe den Eindruck, dass es bald zu weit geschlossen sein wird, aber ich schätze den Impuls, dieses neue Gebiet zu erkunden
Nicola Bernini
@NicolaBernini Sie müssen nicht alle Aspekte von GDL detailliert beschreiben. Ich habe ein paar Unterfragen gestellt, damit sich die Leute auf diese konzentrieren können. Ich habe andere spezifischere, aber verwandte Fragen gestellt: ai.stackexchange.com/questions/tagged/geometric-deep-learning . Ich werde meine Antwort irgendwann verbessern, sobald ich fundiertere Kenntnisse auf dem Gebiet habe (und noch etwas Zeit).
nbro

Antworten:

8

Um die erste Antwort zu vervollständigen, die eher grafisch ausgerichtet ist, werde ich ein wenig über tiefes Lernen auf Mannigfaltigkeiten schreiben, was in Bezug auf GDL aufgrund der Natur der Mannigfaltigkeiten ziemlich allgemein ist.

Beachten Sie, dass die Beschreibung von GDL durch die Erklärung der DL in Graphen und Mannigfaltigkeiten im Gegensatz zu DL in euklidischen Domänen aus dem Papier Geometric Deep Learning 2017 stammt, das über euklidische Daten hinausgeht (dieses Papier ist hervorragend geeignet, um sowohl die Intuition als auch die Klarheit zu verdeutlichen die Mathematik dessen, was ich schreibe).

1. Falls Sie nicht wissen, was ein Verteiler ist

Wie das zuvor zitierte Papier es ausdrückt:

Eine Mannigfaltigkeit ist ungefähr ein Raum, der lokal euklidisch ist. Eines der einfachsten Beispiele ist eine sphärische Oberfläche, die unseren Planeten modelliert: Um einen Punkt herum scheint sie planar zu sein, was Generationen von Menschen dazu gebracht hat, an die Flachheit der Erde zu glauben. Formal gesehen ist eine (differenzierbare) d-dimensionale Mannigfaltigkeit X ein topologischer Raum, in dem jeder Punkt x eine Nachbarschaft hat, die topologisch äquivalent (homöomorph) zu einem d-dimensionalen euklidischen Raum ist, der als Tangentenraum bezeichnet wird.

Gute andere nicht so technische Erklärung zu stats.stackexchange

Andere Wikipedia-Beispiele entwickeln kein zu abstraktes Verständnis

Kurz gesagt, es ist eine interessante mathematische Menge, an der gearbeitet werden kann (es gibt verschiedene Arten, siehe Artikel am Ende dieser Antwort für DL-bezogene Verteileranwendungen). Unter Arbeit können Sie normalerweise verstehen, dass Sie die neuronalen Netzparameter auf die von Ihnen gewählte Mannigfaltigkeit beschränken (z. B. Training mit Parametern, die auf eine Hypersphäre beschränkt sind, unter den Beispielen für Geomstats-Papiere ).

Ihre Daten können dank einer praktischen Mannigfaltigkeit auch dargestellt werden. Sie können beispielsweise Bilder und Videos bearbeiten, indem Sie die Beispiele mithilfe von SPD-Matrizen (Symmetric Positive Definite) darstellen (siehe dieses Dokument ), wobei der Raum der SPD-Matrizen selbst vielfältig ist.

2. Warum sollte man sich die Mühe machen, auf Mannigfaltigkeiten zu lernen?

Das Definieren eines klareren / besser angepassten Satzes (verstehen Sie, dass dies eine Art Einschränkung ist!), Um Parameter und Funktionen zu lernen, kann es einfacher machen, formal zu verstehen, was Ihr Modell tut, und zu besseren Ergebnissen führen. Ich sehe es als Teil der Bemühungen um eine tiefgreifende Formalisierung des Lernens. Man könnte sagen, Sie suchen nach der besten Informationsgeometrie für Ihre Aufgabe , die die gewünschten Datenverteilungseigenschaften am besten erfasst. Um diese Intuition zu entwickeln, berücksichtigen Sie die Analogie des Sonnensystems für das vielfältige Lernen dieses Kaggle-Kernels :

Vielleicht ist eine gute Analogie hier die eines Sonnensystems: Die Oberfläche unserer Planeten sind die Mannigfaltigkeiten, an denen wir interessiert sind, eine für jede Ziffer. Angenommen, Sie befinden sich auf der Erdoberfläche, die eine 2-Mannigfaltigkeit ist, und Sie bewegen sich in eine zufällige Richtung (nehmen wir an, dass die Schwerkraft nicht existiert und Sie durch feste Objekte gehen können). Wenn Sie die Struktur der Erde nicht verstehen, befinden Sie sich schnell im Weltraum oder in der Erde. Wenn Sie sich stattdessen innerhalb der lokalen Erdkoordinaten (z. B. sphärische Koordinaten) bewegen, bleiben Sie an der Oberfläche und können all die coolen Dinge sehen.

Diese Analogie erinnert uns an das sphärische Oberflächenplanetenmodell aus Bronsteins Papier bereits oben zitiertem Artikel. In diesem Artikel wird auch ein typischer Fall beschrieben, für den Mannigfaltigkeiten interessant sind: Wenn Diagramme (das andere Beispiel für GDL / DL für nichteuklidische Daten) besser mit Daten aus sozialen Netzwerken oder Sensornetzwerken umgehen können, können Mannigfaltigkeiten 3D-Objekte gut modellieren, die mit Eigenschaften wie ausgestattet sind Farbtextur in Computer Vision.

3. In Bezug auf tiefe neuronale Netze auf Mannigfaltigkeiten

Ich würde empfehlen, das mit Geomstats verknüpfte Papier zu lesen, das hervorragend zeigt, was es ist und wie es verwendet werden kann, zusammen mit Beispielcodes (z. B. MNIST auf Hypersphären, vielfältiger Beispielcode hier ). Diese Bibliothek implementiert Mannigfaltigkeiten und zugehörige Metriken in Keras. Die Wahl der Metriken ist wichtig, um den Punkt der Arbeit an Mannigfaltigkeiten zu verstehen: Sie müssen an einer angepassten mathematischen Menge ( dh mit den richtigen Eigenschaften) mit einer angepassten Abstandsdefinition arbeiten ( damit das Maß tatsächlich etwas bedeutet, wenn Sie das Problem betrachten Sie versuchen zu lösen ), dass Sie zur Arbeit an Verteilern wechseln.

Wenn Sie in die Details und Beispiele des tiefen Lernens auf Mannigfaltigkeiten eintauchen möchten, finden Sie hier einige Artikel:

4. Warum Riemannsche Mannigfaltigkeiten?

TL; DR: Sie benötigen eine Metrik für maschinelles Lernen (andernfalls, wie können Sie bewerten, wie viel Sie tatsächlich gelernt haben!)

Immer noch basierend auf Bronsteins Papier :

Auf jedem Tangentenraum definieren wir ein inneres Produkt [...]. Dieses innere Produkt wird als Riemannsche Metrik in der Differentialgeometrie bezeichnet und ermöglicht die Durchführung lokaler Messungen von Winkeln, Abständen und Volumina. Eine mit einer Metrik ausgestattete Mannigfaltigkeit wird als Riemannsche Mannigfaltigkeit bezeichnet.

5. Wie ist die Beziehung zwischen einer Riemannschen Mannigfaltigkeit und einem euklidischen Raum?

Immer noch basierend auf Bronsteins Papier :

Eine Riemannsche Mannigfaltigkeit kann als Teilmenge eines euklidischen Raums (in diesem Fall soll sie in diesen Raum eingebettet sein ) realisiert werden, indem die Struktur des euklidischen Raums verwendet wird, um eine Riemannsche Metrik zu induzieren.

Ich überlasse die Details dem Papier, sonst wird diese Antwort niemals enden.

6. Antworten auf Fragen in Kommentaren

Ich werde nur antworten, wenn ich denke, dass ich eine relativ gut argumentierte Antwort gefunden habe, also werde ich nicht alles auf einmal beantworten.

  • Ist vielfältiges Lernen nicht nur ein Weg zur Reduzierung der Dimensionalität?

Ich denke nicht, es ist nicht nur das . Ich habe (noch?) In den von mir gelesenen Artikeln keine Einschränkung der Dimensionsreduktion gesehen (vgl. Wieder Geomstats).

Im Codebeispiel für Hypersphere / MNIST-Geomstats sehen Sie die ausgewählte Mannigfaltigkeitsdimension hypersphere_dimension = 17. Da wir mit MNIST-Daten arbeiten, würde dies in diesem speziellen Fall eine Dimensionsreduzierung bedeuten. Ich gebe zu, ich müsste genau prüfen, was diese Dimension für die Architektur des neuronalen Netzes bedeutet. Ich habe mein Verständnis davon noch nicht besprochen.

Haftungsausschluss

Ich entwickle immer noch ein strengeres mathematisches Verständnis von Mannigfaltigkeiten und werde diesen Beitrag aktualisieren, um zusätzliche notwendige Klarstellungen zu treffen: Genau das, was in einem traditionellen Deep-Learning-Kontext als Mannigfaltigkeit angesehen werden kann, warum verwenden wir das Wort Mannigfaltigkeit, wenn wir über die Mannigfaltigkeiten sprechen versteckter Zustand von Auto-Encodern (siehe den zuvor zitierten Kaggle-Kernel, der Goodfellows Buch dazu zitiert). All dies, wenn die vollkommen klare Antwort hier vorher nicht auftaucht!

Blupon
quelle
Ich habe nicht über Mannigfaltigkeiten gesprochen, weil ich mit diesem Konzept nicht sehr vertraut bin, und ich denke, dass viele CS / AI-Studenten mit einem solchen Konzept nicht vertraut sein werden. Ich denke, Sie sollten die Bedeutung einer Mannigfaltigkeit intuitiv und kurz erklären, um diese Lücke zu schließen. Wie denken Sie intuitiv an eine Mannigfaltigkeit? Ist eine Mannigfaltigkeit nicht auch "euklidische Daten"? Warum ist zB ein Bild nicht vielfältig? Ich denke, Ihre Antwort würde sich sehr verbessern, wenn Sie diese Punkte erklären und klarstellen. Übrigens, siehe diese verwandte Frage: ai.stackexchange.com/q/11226/2444 . Fühlen Sie sich frei, es zu beantworten, wenn Sie dazu in der Lage sind.
nbro
Ich denke, Sie sollten auch die Tatsache berücksichtigen, dass Menschen verwendet werden, um Datensätze als Entwurfsmatrix oder als Bündel von Merkmalsvektoren (für jede Beobachtung) zu betrachten. Wie würde dies mit Mannigfaltigkeiten und nichteuklidischen Daten verglichen werden? Wenn Sie in der Lage sind, sollten Sie diese Fragen möglicherweise auf die verknüpfte und verwandte Frage beantworten.
nbro
Ist vielfältiges Lernen nicht nur ein Weg zur Reduzierung der Dimensionalität?
nbro
Manifold ist leicht zu verstehen, wenn Sie den euklidischen Raum verstehen. Der euklidische Raum ist ein Raum aus n-dimensionalen Vektoren reeller Zahlen. Manifold ist ein Raumvektor (Satz von Vektoren), der für jeden Punkt des kleinen Bereichs um ihn herum (reibungslos und reversibel) in einen Ball aus dem euklidischen Raum umgewandelt werden kann. Die Mannigfaltigkeit ist also lokal fast euklidisch, global jedoch im Allgemeinen nicht. Das bedeutet, dass jeder kleine Bereich der Mannigfaltigkeit durch eine Hyperebene angenähert werden kann (je kleiner der Bereich, desto genauer), aber global kann dies nicht sein. Verteiler werden in Differentialtopologie und Differentialgeometrie eingeführt.
Mirror2image
@ mirror2image Du hättest beschreiben sollen, was ein euklidischer Raum ist. Was sind die notwendigen Eigenschaften, die ein Raum haben muss, um als euklidisch betrachtet zu werden? Sie sollten auch erklären, was Sie unter "lokal" und "global" verstehen.
nbro
2

Der Artikel Geometrisches Deep Learning: Über euklidische Daten hinaus (von Michael M. Bronstein, Joan Bruna, Yann LeCun, Arthur Szlam und Pierre Vandergheynst) bietet einen Überblick über dieses relativ neue Teilgebiet des Deep Learning. Es beantwortet alle oben gestellten Fragen (und mehr). Wenn Sie mit Deep Learning, Grafiken, linearer Algebra und Analysis vertraut sind, sollten Sie in der Lage sein, diesem Artikel zu folgen.

Was ist geometrisches Deep Learning (GDL) ?

Dieser Artikel beschreibt GDL wie folgt

Geometrisches Tiefenlernen ist ein Überbegriff für neue Techniken, die versuchen, (strukturierte) tiefe neuronale Modelle auf nichteuklidische Bereiche wie Graphen und Mannigfaltigkeiten zu verallgemeinern.

Die Eingaben in diese GDL-Modelle sind also Diagramme (oder Darstellungen von Diagrammen) oder im Allgemeinen nichteuklidische Daten . Genauer gesagt sind die Eingaben in diese Modelle (z. B. neuronale Graphennetzwerke ) z. B. Merkmalsvektoren, die den Knoten der Graphen und Matrizen zugeordnet sind, die die Graphstruktur beschreiben (z. B. die Adjazenzmatrix der Graphen).

Warum sind zB Graphen nichteuklidische Daten?

Ein Graph ist eine nichteuklidische Struktur, da z. B. die Abstände zwischen Knoten nicht genau definiert sind. Ja, Sie können Diagramme mit Gewichten haben, die den Kanten zugeordnet sind, aber nicht alle Diagramme haben diese Eigenschaft.

Welche Problemklassen behandelt GDL?

In GDL gibt es zwei Klassen von Problemen, die häufig angegangen werden:

  1. charakterisieren die Struktur der Daten (zB eines Graphen)
  2. Analyse von Funktionen, die für eine bestimmte nichteuklidische Domäne definiert sind

Diese Problemklassen hängen zusammen, da die Struktur des Diagramms den Funktionen, die darauf definiert werden können, bestimmte Eigenschaften auferlegt. Darüber hinaus können diese Eigenschaften dieser Funktionen auch Informationen über die Struktur des Graphen vermitteln.

Was sind Anwendungen von GDL?

Ein Beispiel für eine Anwendung, bei der diese Art von Daten (Grafiken) auftritt, ist der Kontext sozialer Netzwerke, in denen jeder Benutzer einem Scheitelpunkt des sozialen Diagramms und den Merkmalen (oder Merkmalen) jedes Benutzers (z. B. Anzahl der Freunde) zugeordnet werden kann ) kann als Merkmalsvektor dargestellt werden (der dann dem entsprechenden Scheitelpunkt eines Graphen zugeordnet werden kann). In diesem Zusammenhang könnte das Ziel beispielsweise darin bestehen, verschiedene Benutzergruppen im sozialen Netzwerk zu bestimmen (dh Clustering).

Warum können wir nicht einfach Deep-Learning-Methoden (wie CNNs) verwenden, wenn die Daten nicht euklidisch sind?

Beim Umgang mit nichteuklidischen Daten treten verschiedene Probleme auf. Beispielsweise werden Operationen wie Faltung (normalerweise) nicht für nichteuklidische Daten definiert. Genauer gesagt ist die relative Position von Knoten in Graphen nicht definiert (dies wäre jedoch erforderlich, um die übliche Faltungsoperation durchzuführen): Mit anderen Worten, es ist bedeutungslos, über einen Scheitelpunkt zu sprechen, der sich z. B. links von einem anderen Scheitelpunkt befindet. In der Praxis bedeutet dies, dass wir nicht einfach das übliche CNN verwenden können, wenn wir nichteuklidische Daten erhalten. Es gab Versuche, die Faltungsoperation auf Graphen zu verallgemeinern (oder zu approximieren). Das Feld ist noch recht neu, daher wird es sicherlich neue Entwicklungen und Durchbrüche geben.

nbro
quelle
Ich muss diese Antwort verbessern, indem ich die Bedeutung von "Struktur der Daten charakterisieren" und "Funktionen analysieren, die in einer bestimmten nichteuklidischen Domäne definiert sind" genauer erläutere. Ich sollte auch erklären, was die Ausgabe dieser GDL-Modelle ist und wie sie trainiert werden können.
nbro