Definition Was ist ein Capsule Neural Network?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Nico Litzel

Das Capsule Neural Network ist eine Klasse Künstlicher Neuronaler Netzwerke (KNN). Es ergänzt das Convolutional Neural Network (CNN) mit sogenannten Kapseln. Zwischen diesen Kapseln lassen sich Informationen vektorgerichtet dynamisch routen. Vorteil dieses Konzepts ist es, dass in Anwendungen wie etwa der Bilderkennung bessere Ergebnisse erzielbar sind. Das Lernverhalten ist dem menschlichen Erkennen von Objekten ähnlicher.

Firmen zum Thema

(Bild: © aga7ta - stock.adobe.com)

Der deutsche Begriff für Capsule Neural Network, abgekürzt CapsNet, lautet Kapselnetze. Es handelt sich bei den Capsule Neural Networks um eine noch recht junge Klasse Künstlicher Neuronaler Netzwerke (KNN). Das Konzept des Capsule Neural Networks wurde erstmals vom Stanford-Wissenschaftler Geoffrey Hinton im Jahr 2011 vorgestellt, der es in den Folgejahren verbesserte und ergänzte. Erste funktionierende Trainingsalgorithmen wurden ebenfalls in den nachfolgenden Jahren entwickelt.

Das Capsule Neural Network basiert auf dem Konzept des Convolutional Neural Networks (CNN) und erweitert dieses um das funktionale Element der Kapseln. Kapseln bestehen aus mehreren gruppierten Neuronen. Die einzelnen Kapseln sind wiederum in Schichten angeordnet. Das Besondere an den Kapseln ist, dass sie als Input und Output mit gerichteten Vektoren arbeiten und hierarchische Beziehungen abbilden. Ziel dieses Vorgehens ist es, in Anwendungen wie der Bilderkennung bessere Ergebnisse zu erzielen. Beispielsweise beseitigen die Kapseln die Schwäche der Convolutional Neural Networks, Objekte aus verschiedenen dreidimensionalen Perspektiven, mit vertauschten Einzelkomponenten oder mit überlagertem Rauschen zu erkennen. Die Bilderkennung ist dem menschlichen Bildverständnis ähnlicher. Schwächen der Kapselnetze liegen in der noch geringen Performance bei großen Datenmengen und dem hohen Ressourcenbedarf an Rechenleistung.

Grundlagen zu Convolutional Neural Networks

Um die Idee des Capsule Neural Networks zu verstehen, im Folgenden zunächst eine kurze Erklärung der Funktionsweise der Convolutional Neural Networks, aus denen sich die Kapselnetze ableiten. Convolutional Neural Network lässt sich mit „Gefaltetes Neuronales Netzwerk“ oder „Faltendes Neuronales Netzwerk“ ins Deutsche übersetzen. Es ist eine Form des Künstlichen Neuronales Netzwerks, das häufig für maschinelles Lernen und Aufgaben in der Objektklassifizierung oder Audio- und Bilderkennung eingesetzt wird.

Der Aufbau eines Convolutional Neural Networks ist in gewisser Weise der Sehrinde eines biologischen Gehirns nachempfunden. Das Convolutional Neural Network besteht nicht wie herkömmliche neuronale Netze aus mehreren Ebenen voll- oder teilvermaschter Neuronen, sondern setzt sich aus den Schichten Convolutional-Schicht, Pooling-Schicht und vollständig vermaschte Schicht zusammen. Das Grundprinzip ähnelt einem teilweise lokal vermaschten neuronalen Feedforward-Netz. Durch das Schichtenkonzept und die Teilvermaschung bleibt die Anzahl der Verbindungen in einem beherrschbaren Rahmen. Erst die letzte Schicht ist vollständig vermascht.

Gefaltete Neuronale Netze erzielen sehr gute Ergebnisse in der Bilderkennung und Objektklassifizierung, haben aber einige Schwächen. Beispielsweise kann das sogenannte Picasso-Problem auftreten, bei dem räumliche Beziehungen einzelner Bildelemente nicht korrekt eingeordnet werden können. Für die Erkennung eines menschlichen Gesichts bedeutet das beispielsweise, dass solange Augen, Nase oder Mund vorhanden sind, es für das CNN unerheblich ist, wie sie angeordnet sind. Die Nase könnte auf der Stirn platziert sein, ohne dass sich die Klassifizierung für das CNN ändert. Weitere Schwächen der CNNs sind die mangelnde Unterstützung verschiedener dreidimensionaler Perspektiven, die fehlende Rotationsinvarianz und die Anfälligkeit gegenüber überlagertem Rauschen.

Funktionsweise eines Capsule Neural Networks

Das Capsule Neural Network beseitigt die beschriebenen Schwächen der Convolutional Neural Networks durch die Einführung des Konzepts der Kapseln. Eine Kapsel besteht aus mehreren gruppierten Neuronen. Mehrere Kapseln sind in hierarchischen Schichten angeordnet. Die Kapseln erzeugen im Gegensatz zu den einzelnen Neuronen eines herkömmlichen Neural Networks keinen skalaren Output, sondern gerichtete Vektoren. Es werden nicht nur Werte geliefert, sondern auch Richtungsinformationen. Diese Vektoren können Kapseln höherer Schichten als Input verarbeiten.

Durch die Vektoren und das dynamische Routing zwischen den Schichten lassen sich Beziehungen besser abbilden und erkennen. Dies führt dazu, dass Capsule Neural Networks Objekte unabhängig von der Perspektive korrekt erkennen und klassifizieren. Zudem haben die Netzwerke Kenntnis über die korrekte Anordnung der Einzelelemente und leiden nicht mehr unter dem Picasso-Problem.

Vor- und Nachteile der Capsule Neural Networks

Capsule Neural Networks bieten einige Vorteile wie:

  • Erkennung und Klassifizierung von Objekten unabhängig von der Perspektive
  • Vermeidung des Picasso-Problems (mangelnde Einordnung räumlicher Beziehungen der Einzelelemente)
  • Beseitigung weiterer Schwächen gefalteter Neuronaler Netzwerke wie die Anfälligkeit gegenüber überlagertem Rauschen
  • sehr gute Performance bei kleinen Datenmengen

Als Nachteile der Capsule Neural Networks lassen sich aufführen:

  • geringe Performance bei der Verarbeitung großer Datenmengen
  • hohe Anforderungen an die Rechenleistung der Systeme
  • längere Trainings- und Verarbeitungszeiten

(ID:47126426)

Über den Autor