Was ist geometrisches Deep Learning (GDL)? Wie unterscheidet es sich von Deep Learning? Warum brauchen wir GDL? Was sind einige Anwendungen von GDL?
Was ist geometrisches Deep Learning (GDL)? Wie unterscheidet es sich von Deep Learning? Warum brauchen wir GDL? Was sind einige Anwendungen von GDL?
Antworten:
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).
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.
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.
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:
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.
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.
Ich werde nur antworten, wenn ich denke, dass ich eine relativ gut argumentierte Antwort gefunden habe, also werde ich nicht alles auf einmal beantworten.
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.
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!
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:
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.