Für das autonome Fahren ist eine präzise Bewegungserkennung zwingend erforderlich. EDAG schlägt zur Verarbeitung zeitlicher und räumlicher Informationen eine H.A.R.D. Architektur vor – inspiriert durch die Verarbeitung visueller Bilder im Gehirn von Säugetieren.
Das Voranschreiten künstlicher Intelligenz hat einen signifikanten Einfluss auf die Vision der Stadt von morgen. Und je mehr Menschen in Städte ziehen, desto mehr stellen sich Fragen, wie es gelingen kann, die intelligente Stadt der Zukunft zu realisieren – mit zunehmendem Bewusstsein für die entsprechenden Megatrends: Individualisierung, Digitalisierung und Mobilität. Die Auswirkungen immer weiterwachsender Städte sind bereits heute zu spüren durch Verkehrsstaus, Emissionen, Verschmutzung sowie einen steigenden Bedarf an stets verfügbarem Personennahverkehr.
EDAG geht diese Probleme an: mit einem neuen Mobilitätskonzept basierend auf dem CityBot-Ökosystem. Das Herzstück ist der CityBot – ein schwarmintelligentes, vollautonomes, multifunktionales Fahrzeug für die Stadt von morgen. Um vollautonom funktionieren zu können, muss der CityBot die Umgebung um sich herum aktiv verstehen. Menschen spielen eine entscheidende Rolle in der Umgebung eines CityBot. Deswegen benötigt der CityBot ein übergeordnetes Verständnis davon, wie Menschen sich in seiner Umgebung bewegen, denn nur so kann er sicher und effektiv agieren und interagieren.
Um intelligente Maschinen zu erschaffen, ist es nur folgerichtig, sich von der Architektur des menschlichen Gehirns inspirieren zu lassen. Der visuelle Kortex (auch Sehrinde genannt) belegt über 50 % des Neokortex – dieser hohe Prozentsatz gibt bereits einen deutlichen Hinweis darauf, wie komplex die Verarbeitung visueller Bilder tatsächlich ist.
Im Sehsystem von Säugetieren ist die visuelle Bildverarbeitung hierarchisch aufgebaut, wobei die Verarbeitung auf niedriger Ebene den frühen und die Verarbeitung auf höherer Ebene den späten Stufen des Sehtraktes zugeordnet ist. Von hier aus werden die vom Auge eintreffenden sensorischen Informationen über den Sehnerv an das Gehirn weitergeleitet und zunächst in einem spezifischen Teil des Vorderhirns verarbeitet, dem so genannten Nucleus geniculatum lateralis (seitlicher Kniehöcker, NGL). Dort werden die Informationen dann in separate Informationsströme für räumliche und zeitliche Informationen unterteilt.
Anschließend projiziert der NGL die Informationen auf den visuellen Kortex, wo diese auf einer semantisch höheren Ebene weiterverarbeitet werden. In Convolutional Neural Networks (CNN) ähneln die großen Faltungsmatrizen und großen Merkmalskarten in den frühen Schichten sowie die kleineren Matrizen mit kleineren Merkmalskarten in den späteren Schichten dieser hierarchischen Anordnung von einer niedrigeren zu einer höheren Ebene. [2].
Ein wesentliches Merkmal der Zellen in der frühen Stufe des Sehsystems ist, dass jede einzelne Zelle ein bestimmtes rezeptives Feld auf der Netzhaut besitzt. Das Prinzip ähnelt sehr stark den CNNs, wo nicht jedes einzelne Neuron für das gesamte Eingangsbild verantwortlich ist. Der Kernel der Convolutional Layer bestimmt das rezeptive Feld jedes spezifischen Neurons. Insofern haben die Neuronen in einem CNN insbesondere in den frühen Schichten räumliche Abhängigkeiten: Sie werden nur aktiviert, wenn sich der korrekte Stimulus in ihrem jeweiligen rezeptiven Feld befindet.
Ähnlich wie die Neuronen im frühen visuellen Kortex sind auch die Neuronen in frühen Schichten eines CNN demzufolge nicht invariant gegenüber räumlicher Verschiebung. Da spätere Schichten jedoch Projektionen von diesen Neuronen in früheren Schichten empfangen, weisen sie einen höheren Grad räumlicher Invarianz auf. In den visuellen Kortizes sind Neuronen mit demselben rezeptiven Feld nebeneinander angeordnet und werden zu einer säulenartigen Form zusammengefasst. In ähnlicher Weise besitzen nebeneinander liegende Neuronen in einem CNN ebenfalls in etwa dasselbe rezeptive Feld.
Die Kernels der Convolutional Layers lassen nur dann eine Aktivierung von Neuronen zu, wenn ein Stimulus jene spezifische Eigenschaft aufweist, die die Matrize repräsentiert. Außerdem entdeckten Derrington et al., dass frühe Komponenten des Sehsystems, der Nucleus geniculatum lateralis (NGL) sowie der visuelle Kortexbereich 1 über spezielle Zellen zur Verarbeitung zeitlicher und räumlicher Informationen verfügen. Spezielle Zellen zur Verarbeitung räumlicher Informationen sind hinsichtlich der korrekten Frequenz sehr empfindlich. Im Gegensatz dazu sind Zellen zur Verarbeitung zeitlicher Informationen weniger empfindlich gegenüber Frequenzänderungen. In einem 3D CNN kann dies durch große Schritte (Strides) in der räumlichen Dimension der Faltungsmatrizen für räumliche Neuronen und kleine zeitliche Schritte für temporale Zellen realisiert werden.
Bei der H.A.R.D. Architektur berücksichtigt EDAG diese neurowissenschaftlichen Betrachtungen: Hier ergibt sich aufgrund der architektonischen Struktur, dass räumliche und zeitliche Informationen separat behandelt werden sollten. Insofern ist ein zweiströmiges neuronales Netz mit separaten Strömen (Streams) für räumliche und zeitliche Informationen gut geeignet. Die einzelnen Netze der beiden separaten Ströme sollten eine ausreichende Tiefe aufweisen, um hierarchische Eigenschaften sowie die Untergliederung der einzelnen Stufen in kleinere Blöcke zu ermöglichen.
Es wurden ResNets mit 34 Schichten gewählt, da diese Netze diese geforderten Eigenschaften erfüllen. Allerdings sind 3D Convolutions erforderlich, um die funktionale Spezialisierung der einzelnen Ströme sicherzustellen. Aus diesem Grunde wurden die 2D Convolutions in traditionellen ResNets durch 3D Convolutions ersetzt. Die Netzarchitektur nach dem Slow-Fast-Prinzip berücksichtigt diese Designentscheidungen – siehe die semantische Darstellung in Bild 1 – und dient somit als Ausgangsmodell [3].
Demzufolge schlägt die EDAG-Architektur einen zweiströmigen Ansatz vor, wobei ein Pfad kategorische Semantik mit einer geringen Abtastrate erfasst, während der andere schnell wechselnde Bewegungen mit einer hohen Framerate, jedoch einer deutlich geringeren Rechenlast erfasst, die etwa 20 % des gesamten Berechnungsaufwandes ausmacht. Dies wiederum weist Ähnlichkeiten mit der visuellen Bildverarbeitung von Säugetieren auf: die Verarbeitung räumlicher und zeitlicher Informationen ist in zwei unterschiedliche Ströme untergliedert, wobei der Strom zeitlicher Informationen deutlich weniger Volumen aufweist als der Strom räumlicher Informationen. Die einzelnen Ströme verfügen jeweils über eigene Kompetenz und verarbeiten eintreffende Informationen individuell. Da sie jedoch Fusionierungen aufweisen (wie in späteren Abschnitten erläutert), können sie Informationen miteinander teilen und auch ein gleichzeitiges Trainieren beider Ströme wird ermöglicht.
Langsamer Pfad
Theoretisch könnte der langsame Pfad auf einem beliebigen konvolutionalen Modell basieren, das räumlich-zeitliche Eingabedaten verarbeiten kann. Wie bereits erläutert, ergibt sich aus den gewonnenen neurowissenschaftlichen Einblicken jedoch, dass ein hierarchisches Modell mit einer sehr ausgeprägten Tiefe erforderlich ist, das weitere hierarchische Unterteilungen zulässt und die Auswahl spezialisierter Neuronen für die Verarbeitung räumlicher Informationen ermöglicht, wie zum Beispiel ein 3D-ResNet.
Für die Spezialisierung der Zellen werden große zeitliche Schritte in den Faltungsmatrizen der Eingangsframes verwendet. Durch diesen zeitlichen Schritt τ verarbeitet die Schicht nur einen von τ Frames. Den EDAG-Ermittlungen zufolge ist 16 ein geeigneter Wert für τ. Somit werden für ein Video mit 32 fps zwei Frames pro Sekunde des Videoclips abgetastet und in das Netz eingeleitet. Wenn T der Anzahl abgetasteter Frames aus einem Clip entspricht, hat der Clip demzufolge eine Gesamtlänge von T × τ.
Der langsame Pfad im H.A.R.D. wird mithilfe eines modifizierten 3D ResNet-101 mit zeitlichen Schritten implementiert. Damit ein Signal eine Schicht umgehen kann und zur nächsten Schicht einer Sequenz übergehen kann, werden so genannte Shortcut Connections verwendet. Diese Abkürzungen verlaufen über Gradienten durch das Netz von früheren zu späteren Schichten, was das Trainieren tiefer Modelle ermöglicht, in unserem Falle bestehend aus 101 Schichten. 3D ResNets sind aus Grundbausteinen zusammengesetzt, ähnlich wie 2D ResNets. Sie sind ein Äquivalent zu den hierarchischen Unterteilungen von Verarbeitungsstufen. Mehrere dieser Bausteine sind in Stufen gruppiert, sodass diese Hierarchie in kleinere Verarbeitungsschritte weiter unterteilt ist.
Das in dieser SlowFast-Implementierung verwendete, modifizierte 3D ResNet nutzt so genannte Bottleneck-Blöcke als kleinste Gruppierung. Jeder Bottleneck-Block besteht aus drei 3D Convolutional Layers, denen jeweils eine 3D-Batch-Normalisierung folgt. Nachdem ein Eingangssignal an einen Bottleneck Block die erste 3D Convolutional Layer und die 3D-Batch-Normalisierung durchlaufen hat, wird es durch eine ReLU-Aktivierung verarbeitet.
Mehrere Bottleneck-Blocks sind miteinander verbunden und bilden gemeinsam eine ResStage. Gemäß Konvention bestehen ResNets stets aus insgesamt fünf Stufen. Die erste Stufe ist immer die Eingangsstufe und die einzige, die nicht aus einem Bottleneck-Block besteht.
Die folgenden vier ResStages des verwendeten 3D ResNet-101 umfassen mehrere Bottleneck Blocks. Nach dem letzten Bottleneck-Block wird das Modell des langsamen Pfades mit jenem des schnellen Pfades fusioniert.
Schneller Pfad
Der schnelle Pfad verläuft parallel zum langsamen Pfad und basiert ebenfalls auf einem Modell, das die zuvor durchgeführten, neurowissenschaftlichen Betrachtungen berücksichtigt. Auch hier wird eine sehr tiefe Architektur mit hierarchischen Unterteilungen gewählt. Um eine feine zeitliche Darstellung zu gewährleisten, wird ein kleiner zeitlicher Schritt mit τ /α gewählt.
Dabei entspricht α > 1 dem Verhältnis zwischen den Frameraten des schnellen zum langsamen Pfad. Da beide Pfade auf demselben Rohdaten-Input arbeiten, tastet der schnelle Pfad α Mal mehr Frames ab als der langsame. Der Wert von α > 1 gewährleistet, dass beide Pfade mit unterschiedlichen zeitlichen Geschwindigkeiten arbeiten und stellt zudem die Spezialisierung von Neuronen in den beiden Pfaden sicher. Insofern handelt es sich hierbei um ein Schlüsselkonzept für SlowFast-Architekturen. Um nicht nur feine zeitliche Darstellungen in der Eingangsschicht zu erhalten, verwendet SlowFast keine zeitlichen Downsampling-Schichten, bis die beiden Ströme in einer Global-Average-Pooling-Layer fusioniert werden. Dies impliziert, dass alle Tensoren aufweisen, bis die Global-Average-Pooling-Layer dieselbe zeitliche Dimension von αT Frames erreicht hat.
Die neurowissenschaftlichen Einblicke haben gezeigt, dass Schichten, die zeitliche Informationen verarbeiten, eine geringere Kanalkapazität aufweisen als Schichten, die räumliche Informationen verarbeiten.
SlowFast versucht, diese Eigenschaft nachzubilden. Dazu wird die Kanalkapazität des schnellen Pfades um einen Faktor von β < 1 reduziert. 1/8 wurde als ein typischer Wert für β ermittelt. Die Rechenleistung in gewöhnlichen Schichten in Bezug auf Gleitkommaoperationen pro Sekunde steigt quadratisch zum Kanalskalierungsverhältnis.
Somit weist der schnelle Pfad eine um etwa 20 % geringere Rechenkomplexität auf als der langsame – ähnlich wie die magnozellularen Schichten des Nucleus geniculatum lateralis (NGL). Diese geringere Kanalkapazität kann mit einer geringeren Darstellungskapazität bei der Modellierung räumlicher Semantiken in Verbindung gebracht werden.
Informationsfluss über Fusionierung
Zwischen den beiden separaten Pfaden müssen Informationen fließen. Nur so kann der eine Pfad »wissen«, welche Darstellung vom jeweils anderen Pfad »erlernt« wird. Dazu werden die beiden Ströme nach spezifischen Schichten des Netzes über so genannte laterale Verbindungen miteinander fusioniert [4]. Mithilfe dieser lateralen Verbindungen ist es gelungen, den Stand der Technik im Bereich der Bewegungserfassung zu überholen. Laterale Verbindungen führen in der Regel Merkmalskarten derselben räumlichen Größe von zwei Pfaden zusammen.
Da die zeitliche Dimensionalität des langsamen Pfades jener des schnellen Pfades der SlowFast-Architektur jedoch nicht entspricht, müssen die lateralen Verbindungen Transformationen durchführen und dadurch sicherstellen, dass die Dimensionalität übereinstimmt. Allerdings wird lediglich der schnelle Pfad mit dem langsamen Pfad verbunden (keine Reziprozität). Schließlich wird der Output jedes Pfades mit der Global-Average-Pooling-Layer fusioniert. Die resultierenden zwei gepoolten Merkmalvektoren werden verkettet, um die Output-Vorhersage zu erstellen.
Die Verbindungen zwischen den beiden Pfaden sind Fusionierungen und die letzten Schichten der beiden Pfade sind RoIHeads [5], gefolgt von einer gemeinsamen linearen Projektion plus sigmoidale Klassifizierungsschicht.
Bewegungserkennung und -erfassung
Die vorgeschlagene Netzarchitektur wurde anschließend implementiert und auf den Kinetics-Datensatz [6] trainiert. Das verteilte Training erfolgte über die synchronisierte, stochastische Mini-Batch-Gradientenabstiegs-Methode gemäß der von Goyal et al. vorgeschlagenen Traininsstrategie. [7] Das Ziel ist es, sehr große Mini-Batches zu verwenden und dabei dennoch ein präzises Training sowie eine präzise Generalisierung sicherzustellen. Ohne ordnungsgemäße Strategie können große Mini-Batches den Erfolg des Trainings beeinträchtigen. Es wird eine abnehmende Trainingrate in Kombination mit einem Halbperioden-Cosinus-Schedule genutzt, um eine schnellere Konvergenz und bessere Generalisierung zu erzielen.
Nachdem das Modell mit den Trainingdaten ausreichend konvergiert hat, wird es zur Interferenz verwendet. In einem Video können Bewegungen erkannt werden, indem zehn Clips aus dem Video entlang der Zeitachse abgetastet werden. Diese Clips werden gegebenenfalls erneut durch Cropping oder Zero Padding aufbereitet. Anschließend werden diese zehn Clips nacheinander durch das Netz weitergeleitet und die Softmax Scores jedes einzelnen Clips werden erfasst und gemittelt. Die Klasse mit dem höchsten Softmax-Mittelwert wird anschließend als finale Vorhersage ausgewählt. Schließlich wird/werden das Label der vorhergesagten Klasse, oder optional die Labels der Top k Klassen, auf dem Video vermerkt.
Nachdem das Modell zunächst hinsichtlich der Erkennung und Erfassung von Bewegungen erfolgreich trainiert und getestet wurde, wird die H.A.R.D. Architektur auf Basis des AVA-Kinetics Validierungsdatensatzes evaluiert. Mit einem Validierungsergebnis von 28,2 mAP ist es H.A.R.D. gelungen, die Performance gemäß früherem Stand der Technik um +7,3 mAP zu übertreffen. Wenn die Architektur vorab mit Kinetics-600 trainiert wurde, konnte sie ihre Performance sogar auf 30,7 mAP verbessern (Version 2.2 des AVA-Kinetics Datensatzes, der konsistentere Annotationen liefert). Tabelle 1 zeigt einen Vergleich verschiedener Modelle. Dabei bezieht sich die Einheit mAP auf den arithmetischen Mittelwert der Präzision, das heißt den Mittelwert des gemäß COCO-Leitlinien korrekten Prozentsatzes.
Die meisten neuen, tiefen Lernmethoden für Bewegungserkennung und -erfassung in Videos sind darauf ausgerichtet, auf Basis populärer Benchmarks eine Präzision nach dem neuesten Stand der Technik zu erzielen. Diese Vorgehensweise zur Evaluierung lässt jedoch Interferenzzeiten, Speicherbedarf und andere Faktoren außer Acht, die bei der Auswahl eines Modells für eine praktische Anwendung von hoher Relevanz sind.
Rückblickend lässt sich feststellen, dass die Modelle mit zunehmender Präzision einen steigenden Ressourcenverbrauch aufweisen – und ein entsprechender Anreiz zur Beschleunigung der Interferenzzeit fehlt. Beim Einsatz neuronaler Netze in praktischen Anwendungen sind die Laufzeitkosten ein entscheidender Faktor. Beim H.A.R.D betragen die Gesamt-Laufzeitkosten pro Interferenzlauf 7020 GFLOPS. Und obwohl das SlowFast-Modell zwei separate 3D ResNet-101 umfasst, hat es immer noch die geringsten Laufzeitkosten in Kombination mit der zweithöchsten Präzision basierend auf Kinetics-600. Die geringe Kanalkapazität des schnellen Pfades ist ein wesentlicher Grund für die geringen Laufzeitkosten von H.A.R.D. Somit ist das Modell in der Lage, Bewegungen zu erfassen, ohne dass eine feinkörnige räumliche Auflösung erforderlich ist.
Neben den Interferenzkosten sind auch Präzision und Durchsatz ausschlaggebende Faktoren für den Einsatz von Modellen in Produktionsumgebungen. Somit ist die Präzision pro Gleitkommaoperation eine sehr wichtige Metrik. Bild 3 zeigt die Präzision pro GFLOPS. Die SlowFast-Implementierung weist eine ansehnliche Performance auf dieser Metrik – mit vergleichsweise hohem Durchsatz aufgrund der geringsten erforderlichen zeitlichen Abtastung – auf.
Tiefe neuronale Netze sind dafür bekannt, bei der Verwendung aller verfügbaren Parameter zur Darstellung der vorgegebenen Trainingsdaten ineffizient zu sein. Optimierungstechniken – wie etwa Weight Pruning (Löschen von Verbindungen), Quantisierung usw. – können die Netzgröße ohne zu große Einbußen in puncto Präzision deutlich schrumpfen lassen. Die Präzision pro Parameter kann somit als ein Indikator für die Effizienz der Darstellungskapazitäten von Netzen angesehen werden. Dichtere Netze benötigen weniger Parameter, um dieselbe Präzision zu erzielen – und da weniger Parameter optimiert werden müssen, ist auch die Trainingszeit dementsprechend kürzer.
Aufgrund der geringeren Anzahl von Parametern sinkt auch die Interferenzzeit – und somit der Energieverbrauch. Da jedoch für die Videoklassifizierung und Erfassung eine zeitliche Abtastung erforderlich ist, haben Netze mit weniger Parametern nicht zwangsläufig kürzere Interferenzzeiten. Die Trainingszeit hängt nicht nur von der Anzahl zu optimierender Parameter ab, sondern auch davon, wie schwierig die Optimierung ist. Dies zeigt sich deutlich bei Residual Networks. Bei Netzen mit ungefähr derselben Anzahl von Parametern, wie etwa Non-Local R101, R(2+1)D-34 und R(2+1)D-34 + optischer Fluss, erzielt SlowFast mit 1,344e −6 die höchste Präzision pro Parameter. Dies zeigt die hervorragenden Lernfähigkeiten des SlowFast-Ansatzes und unterstreicht zugleich die Bedeutung einer speziellen Behandlung der zeitlichen Dimension.
Inspiriert durch die Verarbeitung visueller Bilder im Gehirn von Säugetieren, wo die eintreffenden optischen Informationen in zwei separate Ströme unterteilt sind, erläuterte dieser kurze Artikel die Bedeutung der individuellen Verarbeitung zeitlicher und räumlicher Informationen. Weitere neurowissenschaftliche Untersuchungen haben ebenfalls gezeigt, dass die hierarchische Vorgehensweise bei der Verarbeitung visueller Bilder eine zentrale Rolle spielt. Außerdem ist auch die funktionale Spezialisierung der einzelnen hierarchischen Untergliederungen ein bedeutender Performancefactor.
Es konnte empirisch belegt werden, dass die gewählte H.A.R.D. Architektur über herausragende Eigenschaften im Hinblick auf die Modellierung von räumlichen und zeitlichen Informationen verfügt. Dies wird durch die hohe Parameternutzung des trainierten Modells unterstützt. Geringe Laufzeitkosten, eine hohe Durchsatzrate sowie eine Präzision, die dem neuesten Stand der Technik entspricht, unterstreichen die Darstellungskraft der Architektur. Des weiteren zeigt die methodische Analyse, dass die hierarchische Verarbeitung in H.A.R.D. wesentlich zu dessen Performance beiträgt.
Die beiden Ströme erzielen eine hohe funktionale Spezialisierung für die Aufgaben »Bewegungsmodellierung« und »Formmodellierung« basierend auf denselben zugrundeliegenden Rechenprinzipien. Es hat sich herausgestellt, dass die Kanalkapazität und die zeitliche Auflösung maßgeblich dazu beitragen, die erwähnte funktionale Spezialisierung zu erreichen. Demzufolge gehen wir davon aus, dass die genannten Anpassungen an klassische CNN-Architekturen für Erkennungs- und Erfassungsaufgaben im räumlich-zeitlichen Bereich weitreichende Auswirkungen auf verschiedene Anwendungsfälle und Szenarien haben werden.
Literatur
[1] G. E. Hinton, N. Srivastava, A. Krizhevsky, I. Sutskever, und R. R.
Salakhutdinov, »Improving neural networks by preventing co-adaptation of feature detectors«, 2012.
[2] K. He, X. Zhang, S. Ren, und J. Sun, »Deep residual learning for image recognition«, 2015.
[3] C. Feichtenhofer, H. Fan, J. Malik, und K. He, »Slowfast networks for video recognition«, 2018.
[4] T.-Y. Lin, P. Dollár, R. Girshick, K. He, B. Hariharan, und S. Belongie, »Feature pyramid networks for object detection«, 2016.
[5] S. Ren, K. He, R. Girshick, und J. Sun, »Faster r-cnn: Towards real-time object detection with region proposal networks«, 2015.
[6] J. Carreira und A. Zisserman, »Quo vadis, action recognition? A new model and the kinetics dataset«, 2017.
[7] P. Goyal, P. Dollár, R. Girshick, P. Noordhuis, L. Wesolowski, A. Kyrola, A. Tulloch, Y. Jia, und K. He, »Accurate, large minibatch sgd: Training imagenet in 1 hour«, 2017.
[8] H. Kataoka, T. Wakamiya, K. Hara, und Y. Satoh, »Would mega-scale datasets further enhance spatiotemporal 3d cnns?«, 2020.
Die Autoren
Lucas Mahler ist Artificial Intelligence Engineer bei EDAG Engineering.
Nathalie Klingler ist Software & Artificial Intelligence Engineer bei EDAG Engineering.