Geoffrey Hinton hat etwas erforscht, das er "Kapseltheorie" in neuronalen Netzen nennt. Was ist das und wie funktioniert es?
Geoffrey Hinton hat etwas erforscht, das er "Kapseltheorie" in neuronalen Netzen nennt. Was ist das und wie funktioniert es?
Antworten:
Es scheint noch nicht veröffentlicht worden zu sein; Das Beste, was online verfügbar ist, sind diese Folien für diesen Vortrag . (Einige Leute verweisen auf ein früheres Gespräch mit diesem Link , aber leider ist es zum Zeitpunkt des Schreibens dieser Antwort nicht funktioniert.)
Mein Eindruck ist, dass es ein Versuch ist, die Erstellung von Subnetzen innerhalb eines neuronalen Netzwerks zu formalisieren und zu abstrahieren. Das heißt, wenn Sie sich ein standardmäßiges neuronales Netzwerk ansehen, sind die Schichten vollständig verbunden (dh, jedes Neuron in Schicht 1 hat Zugriff auf jedes Neuron in Schicht 0 und wird selbst von jedem Neuron in Schicht 2 zugegriffen). Dies ist jedoch offensichtlich nicht sinnvoll. Man könnte stattdessen beispielsweise n parallele Stapel von Schichten (die "Kapseln") haben, die sich jeweils auf eine separate Aufgabe spezialisieren (für deren erfolgreiche Ausführung möglicherweise mehr als eine Schicht erforderlich ist).
Wenn ich mir die Ergebnisse richtig vorstelle, scheint diese ausgefeiltere Graphentopologie etwas zu sein, das sowohl die Effektivität als auch die Interpretierbarkeit des resultierenden Netzwerks verbessern könnte.
Ergänzend zur vorherigen Antwort: Es gibt einen Artikel darüber, in dem es hauptsächlich darum geht, Kapseln auf niedrigem Niveau aus Rohdaten zu lernen, der jedoch Hintons Konzept einer Kapsel im einleitenden Abschnitt erläutert: http://www.cs.toronto.edu/~ fritz / absps / transauto6.pdf
Es ist auch erwähnenswert, dass der Link zum MIT-Vortrag in der obigen Antwort wieder funktioniert.
Nach Hinton ist eine "Kapsel" eine Untergruppe von Neuronen in einer Schicht, die sowohl einen "Instantiierungsparameter" ausgibt, der angibt, ob eine Entität in einer begrenzten Domäne vorhanden ist, als auch einen Vektor von "Stellungsparametern", die die Stellung der Entität relativ zu spezifizieren eine kanonische Version.
Die von Low-Level-Kapseln ausgegebenen Parameter werden in Vorhersagen für die Pose der durch High-Level-Kapseln dargestellten Entitäten umgewandelt. Diese werden aktiviert, wenn die Vorhersagen übereinstimmen, und geben ihre eigenen Parameter aus (wobei die High-Level-Pose-Parameter Durchschnittswerte der empfangenen Vorhersagen sind ).
Hinton spekuliert, dass diese hochdimensionale Übereinstimmungserkennung das Ziel der Minisäulenorganisation im Gehirn ist. Sein Hauptziel scheint es zu sein, das in Faltungsnetzwerken verwendete maximale Pooling zu ersetzen, bei dem tiefere Schichten Informationen über die Pose verlieren.
Kapselnetzwerke versuchen, Hintons Beobachtungen des menschlichen Gehirns an der Maschine nachzuahmen. Die Motivation ergibt sich aus der Tatsache, dass neuronale Netze eine bessere Modellierung der räumlichen Beziehungen der Teile benötigten. Anstatt die Koexistenz zu modellieren und die relative Positionierung zu vernachlässigen, versuchen Kapselnetze, die globalen relativen Transformationen verschiedener Unterteile entlang einer Hierarchie zu modellieren. Dies ist der Kompromiss zwischen Äqivarianz und Invarianz, wie oben von anderen erläutert.
Diese Netzwerke beinhalten daher ein gewisses Standpunkt- / Orientierungsbewusstsein und reagieren unterschiedlich auf unterschiedliche Orientierungen. Diese Eigenschaft macht sie diskriminierender, während möglicherweise die Fähigkeit eingeführt wird, eine Posenschätzung durchzuführen, da die Latentraummerkmale interpretierbare, pose-spezifische Details enthalten.
All dies wird erreicht, indem eine verschachtelte Schicht, die als Kapseln bezeichnet wird, in die Schicht aufgenommen wird, anstatt eine weitere Schicht im Netzwerk zu verketten. Diese Kapseln können eine Vektorausgabe anstelle einer skalaren Ausgabe pro Knoten bereitstellen.
Der entscheidende Beitrag des Papiers ist das dynamische Routing, das das Standard-Max-Pooling durch eine intelligente Strategie ersetzt. Dieser Algorithmus wendet eine Mittelwertverschiebung für die Kapselausgaben an, um sicherzustellen, dass die Ausgabe nur an das entsprechende übergeordnete Element in der obigen Ebene gesendet wird.
Die Autoren koppeln die Beiträge auch mit einem Margenverlust und einem Rekonstruktionsverlust, was gleichzeitig dazu beiträgt, die Aufgabe besser zu lernen und die neuesten Ergebnisse auf MNIST zu zeigen.
Das kürzlich erschienene Papier heißt Dynamic Routing Between Capsules und ist unter folgender Adresse verfügbar: https://arxiv.org/pdf/1710.09829.pdf .
Basierend auf ihrem Papier Dynamic Routing zwischen Kapseln
Eine Kapsel ist eine Gruppe von Neuronen, deren Aktivitätsvektor die Instantiierungsparameter eines bestimmten Entitätstyps darstellt, z. B. eines Objekts oder eines Objektteils. Wir verwenden die Länge des Aktivitätsvektors, um die Wahrscheinlichkeit darzustellen, dass die Entität existiert, und ihre Ausrichtung, um die Instanziierungsparameter darzustellen. Aktive Kapseln auf einer Ebene treffen Vorhersagen über Transformationsmatrizen für die Instantiierungsparameter von Kapseln auf höherer Ebene. Wenn mehrere Vorhersagen übereinstimmen, wird eine Kapsel höherer Ebene aktiv. Wir zeigen, dass ein diskriminativ geschultes, mehrschichtiges Kapselsystem auf MNIST auf dem neuesten Stand der Technik ist und deutlich besser als ein Faltungsnetz darin ist, stark überlappende Ziffern zu erkennen. Um diese Ergebnisse zu erzielen, verwenden wir einen iterativen Routing-by-Agreement-Mechanismus: Eine Kapsel mit niedrigerem Level sendet ihre Ausgabe bevorzugt an Kapseln mit höherem Level, deren Aktivitätsvektoren ein großes Skalarprodukt aufweisen, wobei die Vorhersage von der Kapsel mit niedrigerem Level stammt. Die endgültige Version des Papiers wird überarbeitet, um die Kommentare der Reviewer einzubeziehen.
Einer der Hauptvorteile von Faltungs-Neuronalen Netzen ist ihre Unveränderlichkeit gegenüber der Übersetzung. Diese Invarianz ist jedoch mit einem Preis verbunden, und das heißt, es wird nicht berücksichtigt, wie verschiedene Merkmale miteinander in Beziehung stehen. Wenn wir zum Beispiel ein Bild von einem Gesicht haben, wird CNN Schwierigkeiten haben, die Beziehung zwischen Mundmerkmalen und Nasenmerkmalen zu unterscheiden. Der Hauptgrund für diesen Effekt sind maximale Poolschichten. Denn wenn wir Max-Pooling-Schichten verwenden, verlieren wir die genauen Positionen des Mundes und des Geräusches und können nicht sagen, wie sie miteinander zusammenhängen.
Kapseln versuchen, den Vorteil von CNN zu erhalten und diesen Nachteil auf zwei Arten zu beheben.
Wenn die Kapsel ordnungsgemäß funktioniert, ist die Wahrscheinlichkeit, dass die visuelle Entität vorhanden ist, lokal invariant - sie ändert sich nicht, wenn sich die Entität über die Vielzahl möglicher Erscheinungen innerhalb des von der Kapsel abgedeckten begrenzten Bereichs bewegt.
Mit anderen Worten, Kapsel berücksichtigt die Existenz des spezifischen Merkmals, nach dem wir suchen, wie Mund oder Nase. Diese Eigenschaft stellt sicher, dass die Kapseln genauso translatorisch sind wie die CNNs.