ImageNet: Computer lernen sehen

Inhalte

Intro

Geschrieben von Matthias Karlbauer

Bei te.ma veröffentlicht 04.04.2023

te.ma DOI 10.57964/mpes-6h72

Geschrieben von Matthias Karlbauer
Bei te.ma veröffentlicht 04.04.2023
te.ma DOI 10.57964/mpes-6h72

Objekte auf Bildern erkennen – für Menschen eine Kleinigkeit. Computern dagegen konnte das Sehen erst vor zehn Jahren beigebracht werden. Dafür sorgte der gebürtige Ukrainer Alex Krizhevsky, der 2012 als Doktorand in Kanada die Bildverarbeitung revolutionierte. Er setzte dabei auf die Lernfähigkeit künstlicher neuronaler Netze und übertraf die Treffsicherheit vorheriger Ansätze um phänomenale 20 Prozent.

Zu Beginn ein kleines Spiel: Ich zeige euch ein Bild und ihr sagt mir jeweils in einem Wort, was darauf abgebildet ist. Bereit? Also los. Was zeigen die folgenden vier Bilder?

Beispiele aus dem ImageNet Datensatz zum Training von Bildklassifizierern. Quelle: ImageNet Classification with Deep Convolutional Neural Networks

Hier die Auflösung (von links nach rechts): Milbe, Containerschiff, Motorroller, Leopard.

In der Fachsprache der Bildverarbeitung heißt dieses Spiel Bildklassifizierung. Es wird exzessiv gespielt, um Algorithmen das Sehen beizubringen. Eine Aufgabe, deren Komplexität in der Forschung zur künstlichen Intelligenz seit jeher unterschätzt wurde.

Die Bildklassifizierung galt in der Informatik über lange Zeit als heiliger Gral. So wundert es nicht, für welchen Wirbel die Arbeit von drei Computer-Vision-Forschenden an der Universität von Toronto im Dezember 2012 sorgte. Doch eigentlich basierte der Durchbruch auf 23, wenn nicht sogar 32 Jahre alten Erkenntnissen. Aber eins nach dem anderen.

Bei der Bildverarbeitung suchten die Forschenden zunächst Inspiration im Aufbau und in der Funktionsweise des menschlichen Gehirns. Der Fokus lag dabei auf dem hierarchisch organisierten visuellen Kortex, der alleine rund die Hälfte des Gehirns ausmacht. In Anlehnung an die verschiedenen Schichten des visuellen Kortex definierten die Experten sogenannte Filter. Einfache Filter können etwa Kanten in Bildern detektieren. Ein solcher Filter zeigt also, ob beispielsweise eine horizontale Kante in einem Bildbereich vorhanden ist. Die Kombination solcher einfachen Kantendetektoren ermöglicht dann schon die Erkennung einer Ecke. Je mehr dieser Filter miteinander kombiniert werden, desto komplexer die möglichen Repräsentationen.

Traditionelle Ansätze zur Bildklassifizierung basierten also auf Detektoren, die von Experten entwickelt wurden. Sie reagierten auf verschiedene Merkmale in Bildern, wie Linien, Farben oder Kreise. Auf Basis dieser Detektoren wurden anschließend künstliche neuronale Netze trainiert. Dabei sollte der Algorithmus lernen, die Aktivierungsmuster der verschiedenen Detektoren zu kombinieren und dem korrekten Objekt zuzuordnen. Als Beispiel: Das Aktivierungsmuster bestehend aus einer Vielzahl von schwarz-braunen Kreisdetektoren sollte dem Wort „Leopard“ zugeordnet werden. Die Fortschritte in der Bildklassifizierung auf Basis der händisch erstellten Filterkaskaden stagnierten jedoch. Das lag an den nahezu unendlichen Möglichkeiten, verschiedene Filter miteinander zu kombinieren – ein Fass ohne Boden. Alex Krizhevsky lagerte die Suche nach den besten Filtern und deren Kombinationen aus, indem er 2012 einem künstlichen neuronalen Netz (AlexNet) die Aufgabe stellte, die benötigten Detektoren selbst zu erstellen.

AlexNet erlernte kurzerhand eine Vielzahl von Kanten-, Farb- und Kreisdetektoren in unterschiedlichsten Variationen (abgebildet in der folgenden Grafik). Es lernte, diese beliebig zu kombinieren, bis zuletzt immer komplexere und alltagsnähere Gegenstandsdetektoren herausgebildet wurden.

Quellen: ImageNet Classification with Deep Convolutional Neural Networks (links), Convolutional Deep Belief Networks for Scalable Unsupervised Learning of Hierarchical Representation (mittig, rechts)

In der Grafik stellt jedes schwarz eingerahmte Panel einen von dem künstlichen neuronalen Netzwerk selbst erlernten Filter dar. Der Filter in der Ecke links oben sucht beispielsweise in jedem Bild nach Kanten, die von links unten nach rechts oben verlaufen. Die bunten Filter sprechen hingegen auf entsprechend farbige Bereiche im Bild an. Durch die Kombination eines Kantenfilters mit einem Farbfilter kann etwa eine grüne Kante in der entsprechenden Orientierung detektiert werden. Die Bildergruppe in der Mitte zeigt bereits selbst erlernte Kombinationen der Filter im linken Bild. Darauf lassen sich mit etwas Fantasie schon Augen-, Nasen-, oder Reifendetektoren erkennen. Die Panele des rechten Bildes zeigen schließlich die abstraktesten Filter. Diese hat das Netzwerk wieder durch Kombination vieler vorheriger Filter gelernt. Je nach Aufgabe des künstlichen neuronalen Netzwerks lernt es unterschiedliche Bilder. In diesem Fall wurde das Netz vermutlich darauf trainiert, Autos, Flugzeuge und Gesichter zu erkennen.

Während 2012 der bis dahin beste Ansatz zur Bildklassifizierung in 52,9 Prozent der Fälle richtig lag, erzielte AlexNet eine Trefferquote von 62,5 Prozent. Ein Quantensprung für die damaligen Verhältnisse. Zum Vergleich: Ein Mensch erkannte das richtige Objekt mit einer Quote von 94.9 Prozent1, während heutige Algorithmen auf 91.0 Prozent kommen2. Beeindruckender Weise bildete AlexNet Detektoren aus, die bereits vor mehr als 60 Jahren im visuellen System von Katzen nachgewiesen wurden.3 Möglicherweise basieren also AlexNet und der visuelle Kortex von Katzen und Menschen auf demselben Grundprinzip.

Der revolutionäre Ansatz von Alex Krizhevsky beruhte auf dem Prinzip des convolutional neural network (CNN), das bereits 19794 und 19895 vorgestellt wurde. Eine besondere Eigenschaft des CNN liegt dabei in seinem Potential, parallel berechnet zu werden. Anstatt eine lange Rechenliste also sequentiell abzufertigen, kann jeder Filter des CNNs auf jedem Bereich des Bildes gleichzeitig ausgerechnet werden. Dieses Potential schöpfte Alex Krizhevsky mit moderner Hardware aus. Damit gelang es ihm, ein deutlich größeres Modell als damals üblich mit geringerem Zeitaufwand zu trainieren. So setzte AlexNet in der Bildklassifizierung neue Maßstäbe. 

AlexNets Antworten auf vier Bildeingaben. Die Balken repräsentieren, wie sicher sich das Modell bei der entsprechenden Antwort ist. Quelle: ImageNet Classification with Deep Convolutional Neural Networks

Die scheinbar banale Fähigkeit, Objekte auf Bildern zu erkennen, hat die Wissenschaft wesentlich länger beschäftigt, als ursprünglich erwartet. Für den Durchbruch sorgte schließlich die effiziente Implementierung eines Algorithmus aus dem 20. Jahrhundert auf moderner Hardware. Die Hürden, Computern das Sehen beizubringen, waren also praktischer und weniger konzeptueller Natur. Heute ist das Prinzip des CNN und der parallelen Berechnung von selbsterlernten Detektoren tief in sämtlichen Algorithmen zur Bildverarbeitung verwurzelt und kommt auch in mobilen Endgeräten zur alltäglichen Anwendung.

Fußnoten
5

Olga Russakovsky et al.: ImageNet Large Scale Visual Recognition Challenge. In: International Journal of Computer Vision. Nr. 115, 2015, S. 211–252.

Xiangning Chen et al.: Symbolic Discovery of Optimization Algorithms. arXiv e-prints, 2023.

David H. Hubel, Torsten N. Wiesel: Receptive fields of single neurones in the cat’s striate cortex. In: The Journal of Physiology. Nr. 148, 1959, S. 574.

Kunihiko Fukushima: Neogocognitron: A self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in position. In: Biological cybernetics. Nr. 36, 1980, S. 193–202.

Yann LeCun et al.: Backpropagation applied to handwritten zip code recognition. In: Neural computation. Nr. 1, 1989, S. 541–551.

Re-Paper

Offener Zugang
Offener Zugang bedeutet, dass das Material öffentlich zugänglich ist.
Related Articles

Convolutional neural networks (Faltungsnetzwerke) bilden Filter aus, um Muster zu erkennen, beispielsweise Gegenstände in Bildern. Jeder Filter detektiert die Präsenz charakteristischer Muster in der Eingabe.

Das Gehirnareal der visuellen Informationsverarbeitung. Hier werden die Sinnesreize der Augen zusammengeführt und prozessiert.

Mit Repräsentation ist alles gemeint, was ein Algorithmus intern darstellen kann. In der Bildverarbeitung spricht man dabei typischerweise von den Objekten (sowie von deren Bestandteilen), die der Algorithmus erkennen kann. Im weiteren Sinn und je nach Aufgabe können künstliche neuronale Netze auch abstrakte Begriffe repräsentieren.

Künstliche neuronale Netze (KNN) sind mathematische Funktionen, die durch die Funktionsweise von Nerven in unserem Gehirn inspiriert sind. Hierbei wird die Signalverarbeitung zwischen einzelnen „künstlichen Neuronen" simuliert. Jedes KNN besteht aus mehreren Schichten dieser Neuronen. Eingehende Signale, wie Beispielsweise Pixel in einem Bild, werden von Schicht zu Schicht weitergeleitet, bis sie in der finalen Schicht eine Ausgabe – 1 oder 0, Katze oder Hund – produzieren. Mehrere Schichten können sich hierbei komplexeren Funktionen annähern.

Das künstliche neuronale Netz findet breite Anwendung in der Bildverarbeitung, um Objekte auf Bildern zu erkennen. Auch Zeitserien, also Daten mit zeitlicher Dimension, können mit künstlichen neuronalen Netzwerken verarbeitet werden, um sie zu vervollständigen oder fortzusetzen. So basieren auch Algorithmen zur Sprachverarbeitung oder zur Wettervorhersage auf künstlichen neuronalen Netzen. Eine großartige Erklärungsreihe zu künstlichen neuronalen Netzen ist auf YouTube zu finden, unter https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi 

Diskussionen
0 Kommentare
There are new comments!

Neuer Kommentar

Der Ort für deinen Diskussionsbeitrag. Du kannst taggen, linken und Text formatieren. Bitte beachte unsere Community Guidelines.

Du antwortest auf den Beitrag: "ImageNet: Computer lernen sehen".

Noch keine Kommentare

te.ma sammelt keine Cookies. Um mit der Allgemeinen Datenschutzgrundverordnung (DSGVO) übereinzustimmen, müssen wir dich aber informieren, dass von uns eingebundene externe Medien (z.B. von YouTube) möglicherweise Cookies sammeln. Mehr dazu in unserer Datenschutzerklärung.