Einführung in Faltungsneuralnetze

Convolutional Neural Networks, auch bekannt als CNN oder ConvNet, fallen unter die Kategorie der künstlichen neuronalen Netze, die für die Bildverarbeitung und -visualisierung verwendet werden. Künstliche Intelligenz verwendet tiefes Lernen, um die Aufgabe auszuführen. Neuronale Netze sind entweder Hardware oder Software, die als Neuronen im menschlichen Gehirn programmiert sind. Das traditionelle neuronale Netz nimmt nur Bilder mit verringerter Auflösung als Eingaben auf. CNN löst dieses Problem, indem es seine Neuronen als Frontallappen des menschlichen Gehirns anordnet. Die Vorverarbeitung auf CNN ist im Vergleich zu anderen Algorithmen sehr viel geringer. Faltung, eine lineare mathematische Operation wird auf CNN angewendet. Es verwendet Faltung anstelle der allgemeinen Matrixmultiplikation in einer seiner Schichten.

Schichten in Faltungs-Neuronalen Netzen

Nachfolgend sind die Schichten der neuronalen Faltungsnetze aufgeführt:

1. Bildeingabeebene

Die Eingabeebene gibt Eingaben (meist Bilder) und die Normalisierung wird durchgeführt. Die Eingangsgröße muss hier angegeben werden.

2. Faltungsschicht

In dieser Ebene wird eine Faltung durchgeführt, und das Bild wird in Perzeptrone (Algorithmus) unterteilt. Es werden lokale Felder erstellt, die zur Komprimierung von Perzeptronen führen, um Karten als Matrix mit der Größe mx n zu kennzeichnen.

3. Nichtlinearitätsschicht

Hier werden Feature-Maps als Eingabe und Aktivierungs-Maps als Ausgabe mit Hilfe der Aktivierungsfunktion ausgegeben. Die Aktivierungsfunktion wird im Allgemeinen als Sigmoid- oder Hyperbeltangensfunktion implementiert.

4. Gleichrichtungsschicht

Diese Schicht ist die entscheidende Komponente von CNN und führt das Training schneller durch, ohne die Genauigkeit zu beeinträchtigen. Es führt eine elementweise Absolutwertoperation auf Aktivierungskarten durch.

5. Gleichgerichtete Lineareinheiten (ReLU)

ReLU kombiniert nichtlineare Schichten und Gleichrichtungsschichten auf CNN. Dies führt die Schwellenwertoperation aus, bei der negative Werte in Null umgewandelt werden. ReLU ändert jedoch nicht die Größe der Eingabe.

6. Pooling-Schicht

Die Pooling-Schicht wird auch als Downsampling-Schicht bezeichnet, da dies für die Reduzierung der Größe von Aktivierungskarten verantwortlich ist. Ein Filter und ein Schritt gleicher Länge werden auf die Eingangslautstärke angewendet. Weniger signifikante Daten werden von dieser Schicht ignoriert, daher erfolgt die Bilderkennung in einer kleineren Darstellung. Diese Schicht reduziert die Überanpassung. Da die Menge der Parameter unter Verwendung der Pooling-Schicht verringert wird, werden auch die Kosten verringert. Die Eingabe wird in rechteckige Pooling-Bereiche unterteilt und entweder Maximum oder Durchschnitt berechnet, was folglich Maximum oder Durchschnitt ergibt. Max Pooling ist sehr beliebt.

7. Dropout-Ebene

Diese Ebene setzt die Eingabeebene mit einer bestimmten Wahrscheinlichkeit zufällig auf Null. Weitere Ergebnisse in verschiedenen Elementen werden nach dieser Operation gelöscht. Diese Schicht hilft auch, Überanpassung zu reduzieren. Dadurch wird das Netzwerk redundant. In dieser Ebene findet kein Lernen statt. Diese Operation wird nur während des Trainings durchgeführt.

8. Vollständig verbundene Schicht

Aktivierungskarten, die die Ausgabe vorheriger Ebenen sind, werden in dieser Ebene in eine Klassenwahrscheinlichkeitsverteilung umgewandelt. Die FC-Schicht multipliziert die Eingabe mit einer Gewichtungsmatrix und addiert den Vorspannungsvektor.

9. Ausgabeebene

Auf die FC-Schicht folgen die Softmax- und die Klassifizierungsschicht. Die Softmax-Funktion wird auf den Eingang angewendet. Die Klassifizierungsschicht berechnet die Kreuzentropie- und Verlustfunktion für Klassifizierungsprobleme.

10. Regressionsschicht

In dieser Schicht wird der halbe mittlere Fehlerquadrat berechnet. Diese Schicht sollte der FC-Schicht folgen.

Architektur des neuronalen Faltungsnetzwerks

Nachfolgend finden Sie die Architektur faltungsbezogener neuronaler Netze:

1. LeNet

LeNet wurde 1998 für die optische Erkennung und Zeichenerkennung in Dokumenten eingeführt. Es ist klein und perfekt für den Betrieb in der CPU. LeNet ist klein und leicht zu erfassen. Dies basiert auf drei Hauptideen: lokale Empfangsfelder, die Gewichtungen teilen, und räumliche Unterabtastung. Das Netzwerk zeigt die beste interne Darstellung von Rohbildern. Es verfügt über drei Faltungsschichten, zwei Pool-Schichten, eine vollständig verbundene Schicht und eine Ausgangsschicht. Einer Faltungsschicht folgte unmittelbar die Poolschicht. Alle Schichten sind oben erklärt.

2. AlexNet

AlexNet wurde 2012 entwickelt. Diese Architektur hat CNN in der Bildverarbeitung populär gemacht. Es verfügt über fünf Faltungsschichten und drei vollständig verbundene Schichten, auf die ReLU nach jeder Schicht angewendet wird. Es nutzt die Vorteile beider Schichten, da eine Faltungsschicht nur wenige Parameter und eine lange Berechnungsdauer aufweist, und es ist das Gegenteil für eine vollständig verbundene Schicht. Die Überanpassung wurde durch Datenerweiterung und Datenausfall erheblich reduziert. AlexNet war tiefer, größer und Faltungsschichten sind im Vergleich zu LeNet nicht durch Pooling-Schichten getrennt.

3. ZF Net

ZF Net wurde 2013 als modifizierte Version von AlexNet entwickelt. Die Größe der mittleren Faltungsschicht wurde erweitert und der Schritt und die Filtergröße der ersten Faltungsschicht wurden kleiner gemacht. Es hat gerade die Mängel von AlexNet erkannt und eine überlegene entwickelt. Alle Ebenen sind mit AlexNet identisch. ZF Net passt die Layer-Parameter wie Filtergröße oder Schrittweite des AlexNet an, wodurch die Fehlerraten reduziert werden.

4. GoogLeNet

Diese Architektur wurde 2014 entwickelt. Die Inception-Schicht ist das Kernkonzept. Diese Ebene bedeckt den größeren Bereich, merkt sich jedoch kleine Informationen des Bildes. Um die Leistung zu verbessern, werden in GoogLeNet neun Inception-Module verwendet. Da die Anfangsschicht anfällig für Überanpassung ist, werden hier mehr Nichtlinearitäten und weniger Parameter verwendet. Max Pooling Layer wird verwendet, um die Ausgabe des vorherigen Layers zu verketten. Diese Architektur hat 22 Schichten und die Parameter sind 12x weniger. Dies ist genauer als AlexNet, auch schneller. Die Fehlerquote ist vergleichsweise geringer. Die durchschnittliche Pooling-Schicht wird am Ende anstelle einer vollständig verbundenen Schicht verwendet. Die Berechnung wird reduziert, Tiefe und Breite werden erhöht. Viele Inception-Module sind miteinander verbunden, um einen tieferen Einblick in die Architektur zu erhalten. GoogLeNet hat alle anderen Architekturen, die bis 2014 entwickelt wurden, übertroffen. Für diese Architektur sind mehrere Folgeversionen verfügbar.

5. VGG Net

Dies war eine Verbesserung gegenüber ZFNet und anschließend gegenüber AlexNet. Es verfügt über 16 Schichten mit 3 × 3 Faltungsschichten, 2 × 2 Poolschichten und vollständig verbundenen Schichten. Diese Architektur nimmt die einfachste Netzwerkstruktur an, verfügt jedoch über die meisten Parameter.

6. ResNet

Die Residual Network-Architektur wurde 2015 entwickelt. Sie verwendet die Batch-Normalisierung und verzichtet auf die Verwendung von FC-Layern. Diese Architektur verwendet 152 Ebenen und verwendet Sprungverbindungen. ResNet wird derzeit hauptsächlich in allen Deep-Learning-Algorithmen verwendet.

Fazit

Facebook verwendet CNN für die Bildkennzeichnung, Amazon für Produktempfehlungen und Google für die Suche zwischen Benutzerfotos. All dies erfolgt mit größerer Genauigkeit und Effizienz. Der Fortschritt im Deep Learning erreichte ein Stadium, in dem CNN entwickelt wurde und in vielerlei Hinsicht hilft. Wenn das CNN kompliziert wird, hilft es bei der Verbesserung der Effizienz.

Empfohlener Artikel

Dies ist ein Leitfaden für Faltungs-Neuronale Netze. Hier diskutieren wir die Einführung in Faltungs-Neuronale Netze und ihre Schichten zusammen mit der Architektur. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -

  1. Klassifikation des neuronalen Netzes
  2. Maschinelles Lernen vs Neuronales Netz
  3. Überblick über neuronale Netzwerkalgorithmen
  4. Wiederkehrende Neuronale Netze (RNN)
  5. Implementierung neuronaler Netze
  6. Top 6 Vergleiche zwischen CNN und RNN

Kategorie: