Leitfaden für CNN Deep Learning

Veröffentlicht: 2022-10-14

Die Fähigkeit der künstlichen Intelligenz, die Lücke zwischen menschlichen und maschinellen Fähigkeiten zu schließen, hat dramatisch zugenommen. Sowohl Profis als auch Amateure konzentrieren sich auf viele Facetten des Feldes, um großartige Ergebnisse zu erzielen. Das Gebiet der Computer Vision ist eine von mehreren solcher Disziplinen.

Inhaltsverzeichnis

Unsere KI- und ML-Programme in den USA

Master of Science in Machine Learning & AI von LJMU und IIITB Executive PG-Programm für maschinelles Lernen und künstliche Intelligenz vom IIITB
Um alle unsere Kurse zu erkunden, besuchen Sie unsere Seite unten.
Kurse zum maschinellen Lernen

Das Feld zielt darauf ab, Computern die Fähigkeit zu geben, die Welt wie Menschen zu sehen und zu verstehen und dieses Verständnis für verschiedene Aufgaben zu nutzen, darunter Bild- und Videoerkennung, Bildanalyse und -kategorisierung, Medienwiederherstellung, Empfehlungssysteme, Verarbeitung natürlicher Sprache usw. Convolutional Neural Network ist der primäre Algorithmus, der zur Entwicklung und Verfeinerung der Deep Learning-Verbesserungen in der Computer Vision im Laufe der Zeit verwendet wird. Lassen Sie uns mehr über den Deep-Learning-Algorithmus herausfinden!

Holen Sie sich die Zertifizierung für maschinelles Lernen von den besten Universitäten der Welt. Erwerben Sie Master-, Executive PGP- oder Advanced Certificate-Programme, um Ihre Karriere zu beschleunigen.

Was ist Convolution Neural Network?

Ein Convolutional Neural Network oder CNN ist eine Deep-Learning-Methode, die ein Eingabebild aufnehmen, verschiedenen Elementen und Objekten im Bild Bedeutung verleihen kann, wie z. B. lernbaren Gewichtungen und Verzerrungen, und zwischen ihnen unterscheiden kann. Im Vergleich dazu erfordert ein CNN wesentlich weniger Vorverarbeitung als andere Klassifizierungstechniken. CNN hat die Fähigkeit, diese Filter und Eigenschaften zu lernen, während Filter in primitiven Techniken von Hand entwickelt werden.

Die Architektur eines CNN wird davon beeinflusst, wie der visuelle Kortex organisiert ist, und ähnelt dem Konnektivitätsnetzwerk von Neuronen im menschlichen Gehirn. Einzelne Neuronen reagieren auf Reize nur in diesem eingeschränkten Gesichtsfeldbereich, der als rezeptives Feld bekannt ist. Eine Reihe solcher Überlappungen decken das gesamte Gesichtsfeld ab.

Die Architektur des Convolution Neural Network

Die Architektur von Convolutional Neural Networks unterscheidet sich von der herkömmlicher Neural Networks. Ein reguläres neuronales Netzwerk wandelt eine Eingabe um und leitet sie durch mehrere verborgene Schichten. Jede Schicht besteht aus einer Reihe von Neuronen, die mit allen Neuronen in der darunter liegenden Schicht verbunden sind. In der letzten vollständig verbundenen Ausgabeschicht werden die Vorhersagen dargestellt.

Convolutional Neural Networks sind etwas anders aufgebaut. Die Schichten werden zunächst in drei Dimensionen angeordnet: Breite, Höhe und Tiefe. Außerdem ist nur ein Teil der Neuronen in der folgenden Schicht mit denen in der darunter liegenden Schicht verbunden. Die Ausgabe wird dann zu einem einzigen Wahrscheinlichkeitsbewertungsvektor verdichtet und zusammen mit der Faltungsschicht gruppiert.

CNN besteht aus zwei Teilen:

Die Extraktion von Merkmalen aus verborgenen Schichten

Das Netzwerk führt in diesem Abschnitt eine Reihe von Faltungs- und Pooling-Operationen durch, um die Merkmale zu erkennen. Hier würde das Netzwerk die Streifen eines Tigers, zwei Ohren und vier Beine identifizieren, wenn Sie ein Bild von einem hätten.

Abschnittsklassifizierung

Zusätzlich zu diesen abgerufenen Merkmalen fungieren die Faltungsschichten in diesem Fall als Klassifikator. Sie geben die Wahrscheinlichkeit an, dass das Objekt des Bildes mit der Vorhersage des Algorithmus übereinstimmt.

Extraktion von Merkmalen

Eine der Schlüsselkomponenten von CNN ist die Faltung. Die mathematische Verknüpfung zweier Funktionen zu einer dritten Funktion wird als Faltung bezeichnet. Es kombiniert zwei Datensätze. Eine Merkmalskarte wird durch Ausführen einer Faltung der Eingabedaten im Fall eines CNN unter Verwendung eines Filters oder Kernels erstellt. Die Faltung erfolgt durch Bewegen des Filters über den Eingang. Jeder Standort führt eine Matrixmultiplikation durch und summiert die Ausgabe auf der Merkmalskarte.

Wir führen mehrere Faltungen an der Eingabe durch und verwenden für jede Operation einen anderen Filter. Als Ergebnis werden verschiedene Merkmalskarten erzeugt. Die Ausgabe der Faltungsschicht wird schließlich unter Verwendung all dieser Merkmalskarten zusammengesetzt.

Wie jedes andere neuronale Netzwerk verwenden wir einen Aktivierungsprozess, um unsere Ausgabe nichtlinear zu machen, wobei die Aktivierungsfunktion verwendet wird, um die Ausgabe der Faltung in einem neuronalen Faltungsnetzwerk zu senden.

Arten von Convolution Neural Networks

Faltungsschicht:

Die grundlegende Komponente von CNN ist die Faltungsschicht. Es trägt den Großteil der Rechenlast im Netzwerk. Diese Schicht bildet ein Skalarprodukt zwischen zwei Matrizen, von denen eine der Kernel ist, eine Sammlung lernbarer Parameter, und die andere der eingeschränkte Bereich des rezeptiven Felds ist. Im Vergleich zu einem Bild ist der Kern räumlich kleiner, aber tiefer. Dies zeigt an, dass die Breite und Höhe des Kerns räumlich klein sein werden, wenn das Bild aus drei Kanälen besteht; Die Tiefe wird jedoch auf allen drei Kanälen ansteigen.

Der Kernel bewegt sich während des Vorwärtsdurchgangs über die Höhe und Breite des Bildes und erzeugt eine Bilddarstellung dieser rezeptiven Region. Als Ergebnis wird eine zweidimensionale Darstellung des Bildes erstellt, die als Aktivierungskarte bezeichnet wird und die Reaktion des Kernels an jeder Stelle im Bild zeigt. Ein Stride ist ein Name für die verschiebbare Größe des Kernels.

Pooling-Schicht:

Diese Schicht reduziert nur die Rechenleistung, die zur Verarbeitung der Daten benötigt wird. Dies wird erreicht, indem die Abmessungen der hervorgehobenen Matrix weiter reduziert werden. Wir versuchen, die dominierenden Merkmale aus einem kleinen Teil der Nachbarschaft in dieser Schicht zu extrahieren.

Average-Pooling und Max-Pooling sind zwei verschiedene Arten von Pooling-Strategien.

Im Gegensatz zum Max-Pooling, das einfach den höchsten Wert unter allen Werten innerhalb des Pooling-Bereichs nimmt, mittelt Average-Pooling alle Werte innerhalb des Pooling-Bereichs.

Wir haben jetzt eine Matrix mit den Schlüsselelementen des Bildes nach dem Poolen der Ebenen, und diese Matrix hat noch kleinere Abmessungen, was in der folgenden Phase sehr hilfreich sein wird.

Vollständig verbundene Schicht:

Ein kostengünstiges Verfahren zum Lernen nichtlinearer Permutationen der High-Level-Eigenschaften, die von der Ausgabe der Faltungsschicht bereitgestellt werden, besteht darin, eine vollständig verbundene Schicht hinzuzufügen. In diesem Bereich lernt die Fully-Connected-Schicht jetzt eine Funktion, die möglicherweise nicht linear ist.

Nachdem wir es in ein für unser mehrstufiges Perzeptron geeignetes Format konvertiert haben, werden wir das Eingabebild in einen Spaltenvektor abflachen. Ein neuronales Feed-Forward-Netzwerk empfängt die abgeflachte Ausgabe, und für jede Trainingsiteration wird Backpropagation verwendet. Das Modell kann Bilder mithilfe der Softmax-Klassifizierungsmethode kategorisieren, indem es dominante und spezifische Low-Level-Merkmale über viele Epochen hinweg identifiziert.

Nichtlinearitätsschichten:

Nichtlinearitätsschichten werden häufig direkt nach der Faltungsschicht eingefügt, um der Aktivierungskarte Nichtlinearität hinzuzufügen, da Faltung eine lineare Operation ist und Bilder alles andere als linear sind.

Nichtlineare Operationen gibt es in einer Vielzahl von Formen, die häufigsten sind:

Sigma

Die mathematische Formel für die Sigmoid-Nichtlinearität lautet () = 1/(1+e ). Es zerlegt eine reelle Zahl in den Bereich zwischen 0 und 1. Der Gradient eines Sigmoids wird fast null, wenn die Aktivierung entweder am Schwanz liegt, was ein sehr ungünstiges Sigmoid-Merkmal ist. Backpropagation zerstört den Gradienten effektiv, wenn der lokale Gradient zu klein wird. Nehmen Sie außerdem an, dass die Eingabe in das Neuron ausschließlich positiv ist. In diesem Fall ist die Sigmoid-Ausgabe entweder ausschließlich positiv oder ausschließlich negativ, was zu einer Zickzack-Dynamik von Gradientenaktualisierungen für das Gewicht führt.

Tanh

Tanh komprimiert eine reelle Zahl auf den Bereich [-1, 1]. Wie bei sigmoidalen Neuronen ist die Aktivierung gesättigt, aber im Gegensatz zu ihnen ist ihre Ausgabe nullzentriert.

ReLU

Die Rectified Linear Unit (ReLU) hat in letzter Zeit viel Popularität erlangt. Es führt die Berechnung der Funktion ()=max (0,) durch. Anders ausgedrückt, die Aktivierung existiert nur bei Nullschwellen. ReLU beschleunigt die Konvergenz um das Sechsfache und ist zuverlässiger als Sigmoid und Tanh.

Leider kann ReLU während des Trainings spröde werden, was ein Nachteil ist. Ein starker Gradient kann es aktualisieren, indem verhindert wird, dass das Neuron weiter aktualisiert wird. Wir können dies jedoch durch die Wahl einer geeigneten Lernrate zum Laufen bringen.

Beliebte Blogs zu maschinellem Lernen und künstlicher Intelligenz

IoT: Geschichte, Gegenwart und Zukunft Lernprogramm für maschinelles Lernen: Lernen Sie ML Was ist Algorithmus? Einfach & leicht
Gehalt als Robotikingenieur in Indien: Alle Rollen Ein Tag im Leben eines Machine Learning Engineers: Was machen sie? Was ist IoT (Internet der Dinge)
Permutation vs. Kombination: Unterschied zwischen Permutation und Kombination Top 7 Trends in künstlicher Intelligenz und maschinellem Lernen Maschinelles Lernen mit R: Alles, was Sie wissen müssen

Beginnen Sie Ihren Leitfaden für CNN Deep Learning mit UpGrad

Melden Sie sich für den Master of Science in Machine Learning and Artificial Intelligence bei UpGrad in Zusammenarbeit mit der LJMU an.

Das Zertifikatsprogramm bereitet die Studierenden mit branchenrelevanten Themen auf die aktuellen und zukünftigen technischen Aufgaben vor. Echte Projekte, mehrere Fallstudien und internationale Akademiker, die von Fachexperten angeboten werden, werden im Programm ebenfalls stark betont.

Durch die Anmeldung können Sie die exklusiven Funktionen von UpGrad wie Netzwerküberwachung, Lernsitzungen und 360-Grad-Lernunterstützung nutzen.

Was ist der Deep-Learning-Algorithmus von CNN?

Die Arbeitsweise von CNN besteht darin, ein Bild zu erhalten, ihm je nach den verschiedenen Elementen im Bild eine Gewichtung zuzuweisen und sie dann voneinander zu trennen. Im Vergleich zu anderen Deep-Learning-Algorithmen erfordert CNN extrem wenig Vorverarbeitung der Daten.

Was unterscheidet CNN von Deep Learning?

Deep Learning wird im Marketing häufiger eingesetzt, um professioneller zu klingen, als es ist. Es gibt zahlreiche Arten von Deep Neural Networks, einschließlich CNN. CNNs sind aufgrund ihrer zahlreichen vorteilhaften Verwendungen bei der Bildidentifikation sehr beliebt.

Warum ist CNN vollständig vernetzt überlegen?

Faltungen haben keine dichten Verbindungen, und nicht alle Eingangsknoten wirken sich auf jeden Ausgangsknoten aus. Dadurch können Faltungsschichten jetzt flexibler lernen. Außerdem gibt es weniger Gewichte pro Schicht, was hochdimensionalen Eingaben wie Bilddaten zugute kommt.

Wird CNN nur für Bilder verwendet?

Ja. Jedes 2D- und 3D-Array von Daten kann mit CNN verarbeitet werden.