AT_Logo

Convolutional Neural Network

Was ist Convolutional Neural Network?

Convolutional Neural Network ist ein Algorithmus, der für Deep-Learning-Computer-Vision-Modelle unverzichtbar ist, die Bilder mit hoher Genauigkeit erkennen, klassifizieren und rekonstruieren können. Dank künstlicher Intelligenz, die mit zunehmender Entwicklungsgeschwindigkeit von Tag zu Tag wächst, nehmen die Funktionen von Maschinen zu. Maschinen, die die menschliche Sprache mit NLP (Natural Language Processing) und Geräusche mit der Spracherkennung nach und nach identifizieren können, können dank Computer Vision Objekte, Gesichter und Bewegungen erkennen, indem sie wie Menschen sehen.

Verwendung in der Bildverarbeitung

Convolutional Neural Network ist ein Deep-Learning-Algorithmus, der allgemein in der Bildverarbeitung verwendet wird und Bilder als Eingabe verwendet. Dieser Algorithmus, der die Merkmale (Merkmale) in den Bildern mit unterschiedlichen Operationen erfasst und klassifiziert, besteht aus verschiedenen Schichten.

Das Visual, das durch diese Schichten, die Convolutional Layer, Pooling und Fully Connected sind, durchläuft, wird verschiedenen Prozessen unterzogen und erreicht die Konsistenz, um in das Deep-Learning-Modell einzutreten. Bei der Erstellung von Convolutional Neural Network – Modellen beschäftigen wir uns im Vergleich zu klassischen maschinellen Lernalgorithmen nicht viel mit der Datenvorverarbeitung, da wir uns mit unstrukturierten (unregelmäßigen) Daten beschäftigen.
Convolutional (Faltungsschicht) ist die erste Schicht, die das Bild in CNN-Algorithmen behandelt.

Bilder sind bekanntlich Matrizen, die aus Pixeln mit bestimmten Werten bestehen. In der Faltungsebene schwebt ein Filter, der kleiner als die ursprüngliche Bildgröße ist, über dem Bild und versucht, bestimmte Merkmale aus diesen Bildern zu erfassen.
Der Schrittwert ist ein Wert, der als Parameter in Convolutional Neural Network – Modellen geändert werden kann. Dieser Wert bestimmt, wie viele Pixel der Filter über das Hauptbild gleitet.

Zum Beispiel ist der Schrittwert in der Faltungsoperation eins. Der Filter tut dies, indem er einfach ein Pixel überspringt. Wenn Stride 2 vorhanden wäre, würde auch die resultierende Feature-Map kleiner, da die Anzahl der übersprungenen Pixel zunehmen würde.

Die Technik des Auffüllens und die ReLu-Funktion

Wenn wir den Filter auf ein Bild anwenden, ist die Ausgabe aufgrund der Abmessungen kleiner als das Originalbild. Die Methode, die wir verwenden können, um dies zu verhindern, ist das Auffüllen. Während des Füllvorgangs werden dem Bild an allen vier Seiten Nullen hinzugefügt, als wäre es ein Rahmen. Diese Null-Additionsschichten können entsprechend der Größe des Filters erhöht werden.

ReLU (Rectified Linear Unit) ist eine nicht lineare Funktion, die als f(x) = max(0,x) arbeitet. Zum Beispiel gibt eine ReLU-Funktion, die den Wert -25 annimmt, 0 aus, und eine Funktion, die den Wert 25 annimmt, gibt 25 aus. ReLU, dessen Hauptzweck darin besteht, negative Werte loszuwerden, hat eine sehr wichtige Position in CNNs.

Nicht lineare Funktionen wie ReLU, Tanh und Sigmoid werden verwendet, um zu verhindern, dass unser Modell negative Werte lernt oder aufgrund dieser negativen Werte einige Merkmale nicht erfassen kann.
Wie die Faltungsschicht zielt auch die Pooling-Schicht darauf ab, die Dimensionalität zu reduzieren. Auf diese Weise wird sowohl die benötigte Rechenleistung reduziert als auch die unnötigen Features, die abgefangen werden, ignoriert und auf wichtigere Features fokussiert.

Es gibt zwei verschiedene Pooling-Techniken, die im Allgemeinen in Convolutional Neural Network – Modellen verwendet werden. Einer davon ist Max (Maximum) und der andere ist Average Pooling.
In der Pooling-Schicht, die wie in der Faltungsschicht einen Kernel (Filter) besitzt, schwebt dieser Kernel wieder über dem Bild. Anstelle der Faltungsoperation wird diesmal jedoch die bestimmte Pooling-Technik angewendet.

Mit anderen Worten, wenn Sie das maximale Pooling anwenden, wird der größte Wert in dem vom Filter abgedeckten Bereich verwendet, und wenn Sie das durchschnittliche Pooling anwenden, wird der Durchschnitt der Werte im Filter verwendet. Dies reduziert die Größe und behält wichtige Funktionen bei.

Data Navigator Newsletter