Convolutional Neural Networks cheatsheet Star (Deutsch)

möchten Sie zu sehen, diese Spickzettel in Ihrer Muttersprache? Sie können uns helfen, es auf GitHub zu übersetzen!,br>

Convolutional Neural Networks
Recurrent Neural Networks
Tips and tricks

Von Afshine Amidi und Shervine Amidi

Übersicht

Architektur eines traditionellen CNN Convolutional neural networks, auch bekannt als CNNs, sind eine bestimmte Art von neuronalen Netzwerken, die im Allgemeinen aus den folgenden Schichten zusammengesetzt sind:

Die Faltungsschicht und die Poolingschicht können in Bezug auf Hyperparameter, die in den nächsten Abschnitten beschrieben werden, fein abgestimmt werden.,

Schichttypen

Faltungsschicht (CONV) Die Faltungsschicht (CONV) verwendet Filter, die Faltungsoperationen ausführen, während sie die Eingabe $I$ in Bezug auf ihre Abmessungen scannt. Seine Hyperparameter umfassen die Filtergröße $F$ und stride $S$. Die resultierende Ausgabe $O$ wird Feature Map oder Activation Map genannt.

Anmerkung: Der Faltungsschritt kann auch auf die 1D-und 3D-Fälle verallgemeinert werden.,

Pooling (POOL) Die Pooling-Schicht (POOL) ist eine Downsampling-Operation, die typischerweise nach einer Faltungsschicht angewendet wird, die eine gewisse räumliche Invarianz ausführt. Insbesondere sind Max – und Average-Pooling spezielle Arten von Pooling, bei denen der Maximal – bzw.,ion wählt den Maximalwert der aktuellen Ansicht

Jeder Pooling-Vorgang Mittelwerte der Werte der aktuellen Ansicht Illustration • Bewahrt erkannte Funktionen
• Am häufigsten verwendete • Downsamples Feature map
• Wird in LeNet verwendet

Fully Connected (FC) Die vollständig verbundene Schicht (FC) arbeitet an einem abgeflachten Eingang, an dem jeder Eingang mit allen Neuronen verbunden ist., Wenn vorhanden, werden FC-Schichten normalerweise gegen Ende von CNN-Architekturen gefunden und können verwendet werden, um Ziele wie Klassenergebnisse zu optimieren.

Filter Hyperparameter

Die Faltungsschicht enthält Filter, für die es wichtig ist, die Bedeutung hinter ihren Hyperparametern zu kennen.,

Abmessungen eines Filters Ein Filter der Größe $F\mal F$, der auf eine Eingabe angewendet wird, die $C$ – Kanäle enthält, ist ein$ F \mal F \mal C $ – Volumen, das Windungen an einer Eingabe der Größe $I \mal I \mal C$ ausführt und eine Ausgabe-Feature-Map (auch Aktivierungszuordnung genannt) der Größe $O \mal O \mal 1$erzeugt.

Bemerkung: Die Anwendung von $K$ Filtern der Größe $F\times F$ führt zu einer Ausgabe-Feature-Map der Größe $O \times O \times K$.,

Schritt Für eine Faltungsoperation oder einen Pooling-Vorgang bezeichnet der Schritt $S$ die Anzahl der Pixel, um die sich das Fenster nach jeder Operation bewegt.

Zero-padding Zero-padding bezeichnet den Prozess der Zugabe von $P$ Nullen an jeder Seite der Grenzen des Eingabe.,led unten:

Tuning Hyperparameter

Parameterkompatibilität in der Faltungsschicht Durch Notieren von $I$ die Länge der Eingabevolumengröße, $F$ die Länge des Filters, $P$ die Menge der Nullauffüllung, $S$ der Schritt, dann die Ausgabegröße $O$ der Feature-Map entlang dieser Dimension wird angegeben durch:

\

Die Komplexität des Modells verstehen Um die Komplexität eines Modells zu beurteilen, ist es oft nützlich, die Anzahl der Parameter zu bestimmen, die seine Architektur haben wird., In einer gegebenen Schicht eines faltungsneuronalen Netzwerks geschieht dies wie folgt:

\

Im folgenden Beispiel haben wir $F_1 = F_2 = 3$ und $S_1 = S_2 = 1$, was $R_2 = 1 + 2\cdot 1 + 2\cdot 1 = 5$ergibt.

Häufig verwendete Aktivierungsfunktionen

Rektifizierte lineare Einheit Die rektifizierte lineare Einheitenschicht (ReLU) ist eine Aktivierungsfunktion $g$, die für alle Elemente des Volumes verwendet wird. Es zielt darauf ab, Nichtlinearitäten in das Netzwerk einzuführen., Seine Varianten sind in der folgenden Tabelle zusammengefasst:

Softmax Der softmax-Schritt kann als verallgemeinerte logistische Funktion angesehen werden, die als Eingabe einen Vektor der Punktzahlen $x\in\mathbb{R}^n$ verwendet und einen Vektor der Ausgabewahrscheinlichkeit $p\in\mathbb{R}^n$ über eine Softmax-Funktion am Ende der Architektur ausgibt. Es ist wie folgt definiert:

\

Objekterkennung

Modelltypen Es gibt 3 Haupttypen von Objekterkennungsalgorithmen, für die die Art der Vorhersage unterschiedlich ist., They are described in the table below:

Image classification Classification w., objekt • Erkennt ein Objekt in einem Bild
• Prognostiziert Wahrscheinlichkeit des Objekts und wo es sich befindet
• Erkennt bis zu mehreren Objekten in einem Bild
• Prognostiziert Wahrscheinlichkeiten von Objekten und wo sie sich befinden
NN OLO, R-CNN YOLO, R-CNN

Erkennung Im Rahmen der Objekterkennung werden unterschiedliche Methoden verwendet, je nachdem, ob wir nur das Objekt lokalisieren oder eine komplexere Form im Bild erkennen möchten., Die beiden wichtigsten sind in der folgenden Tabelle zusammengefasst:

Schnittpunkt über Union Schnittpunkt über Union, auch bekannt als $ \ textrm{IoU}$, ist eine Funktion, die quantifiziert, wie richtig positioniert ein vorhergesagter Begrenzungsrahmen $B_p$ ist über dem tatsächlichen Begrenzungsrahmen $B_a$. Es ist definiert als:

\

Ankerboxen Ankerboxen ist eine Technik zur Vorhersage überlappender Begrenzungsrahmen., In der Praxis darf das Netzwerk mehr als eine Box gleichzeitig vorhersagen, wobei jede Boxvorhersage auf einen bestimmten Satz geometrischer Eigenschaften beschränkt ist. Zum Beispiel kann die erste Vorhersage möglicherweise eine rechteckige Box einer bestimmten Form sein, während die zweite eine andere rechteckige Box einer anderen geometrischen Form sein wird.

Nicht-Max-Unterdrückung Die Nicht-Max-Unterdrückungstechnik zielt darauf ab, doppelte überlappende Begrenzungsrahmen eines gleichen Objekts zu entfernen, indem die repräsentativsten ausgewählt werden. Nachdem alle Felder mit einer Wahrscheinlichkeitsprognose niedriger als 0 entfernt wurden.,6 werden die folgenden Schritte wiederholt, solange noch Kästchen übrig sind:

Für eine bestimmte Klasse,
* Schritt 1: Wählen Sie das Kästchen mit der größten Vorhersagewahrscheinlichkeit aus.
• Schritt 2: Verwerfen Sie jedes Feld mit einem $ \ textrm{IoU}\geqslant0.5$ mit dem vorherigen Feld.

YOLO You Only Look Once (YOLO) ist ein Objekterkennungsalgorithmus, der die folgenden Schritte ausführt:

• Schritt 1: Teilen Sie das Eingabebild in ein $G\times G$ – Raster.,
• Schritt 2: Führen Sie für jede Gitterzelle einen CNN aus, der $y$ der folgenden Form vorhersagt:

\^T\in\mathbb{R}^{G\mal G\mal k\mal (5+p)}}\]

wobei $p_c$ die Wahrscheinlichkeit ist, ein Objekt zu erkennen, $b_x, b_y,b_h, b_w$ sind die Eigenschaften der erkannten Box, $c_1,…,c_p$ ist eine One-Hot-Darstellung, welche der $p$ – Klassen erkannt wurde, und $k$ ist die Anzahl der Ankerfelder.
* Schritt 3: Führen Sie den Non-Max-Unterdrückungsalgorithmus aus, um mögliche doppelte überlappende Begrenzungsfelder zu entfernen.,

R-CNN Region mit Convolutional Neural Networks (R-CNN) ist ein Objekt-Erkennung-Algorithmus, den ersten Segmente das Bild zu finden, potenziellen bounding Box und führen Sie die Erkennung Algorithmus zu finden wahrscheinlichste Objekte in diesen Begrenzungsrahmen.,

Bemerkung: Obwohl der ursprüngliche Algorithmus rechenintensiv und langsam ist, ermöglichten neuere Architekturen eine schnellere Ausführung des Algorithmus, z. B. schnelles R-CNN und schnelleres R-CNN.

Gesicht überprüfung und anerkennung

Arten von modellen Zwei wichtigsten arten von modell sind summiert in tabelle unten:

Gesicht überprüfung Gesicht anerkennung
• Ist das die richtige Person?,
* Eins-zu-Eins-Suche
• Ist dies eine der $K$ Personen in der Datenbank?
• Eins-zu-viele-Suche

One Shot Learning One Shot Learning ist ein Gesichtsverifizierungsalgorithmus, der einen begrenzten Trainingssatz verwendet, um eine Ähnlichkeitsfunktion zu lernen, die quantifiziert, wie unterschiedlich zwei gegebene Bilder sind. Die Ähnlichkeitsfunktion, die auf zwei Bilder angewendet wird, wird häufig als $d(\textrm{image 1}, \textrm{image 2}).,$

\

Neural style transfer

Motivation Das Ziel der neuronale Stilübertragung besteht darin, ein Bild $G$ basierend auf einem bestimmten Inhalt $C$ und einem bestimmten Stil $S$zu generieren.,

Aktivierung In einer gegebenen Schicht $l$ wird die Aktivierung $a^{}$ notiert und hat die Dimensionen $n_H\times n_w\times n_c$

\(C)}-a^{(G)}||^2}\]

\}=\sum_{i=1}^{n_H^{}}\sum_{j=1}^{n_w^{}}a_{ijk}^{}a_{ijk“}^{}}\]

Anmerkung: Die Stilmatrix für das Stilbild und das generierte Bild sind $G^{(S)}$ und $G^{(G)}$.,

\}(S,G)=\frac{1}{(2n_Hn_wn_c)^2}||G^{(S)}-G^{(G)}||_F^2=\frac{1}{(2n_Hn_wn_c)^2}\sum_{k,k“=1}^{n_c}\Big(G_{kk“}^{(S)}-G_{kk“}^{(G)}\Big)^2}\]

Gesamtkostenfunktion Die Gesamtkostenfunktion ist definiert als eine Kombination der Inhalts – und Stilkostenfunktionen, gewichtet nach den Parametern $ \ alpha,\beta$, wie folgt:

\

Bemerkung: Ein höherer Wert von $\alpha$ sorgt dafür, dass sich das Modell mehr um den Inhalt kümmert, während ein höherer Wert von $\beta$ mehr um den Stil kümmert.,

Architekturen mit Rechentricks

Generatives gegnerisches Netzwerk Generatives gegnerisches Netzwerk Netzwerke, auch GANs genannt, bestehen aus einem generativen und einem diskriminierenden Modell, bei dem das generative Modell darauf abzielt, die wahrheitsgetreuste Ausgabe zu erzeugen, die in das Discriminative eingespeist wird, um das generierte und wahre Bild zu differenzieren.

Anmerkung: Anwendungsfälle mit Varianten von GANs umfassen Text zu Bild, Musikgenerierung und Synthese.,

ResNet Die Restnetzarchitektur (auch ResNet genannt) verwendet Restblöcke mit einer hohen Anzahl von Ebenen, die den Trainingsfehler verringern sollen. Der Restblock hat die folgende charakterisierende Gleichung:

\}=g (a^{}+z^{})}\]

Inception Network Diese Architektur verwendet Inception-Module und zielt darauf ab, verschiedene Windungen auszuprobieren, um ihre Leistung durch Funktionsdiversifizierung zu steigern. Insbesondere verwendet es den $1\times1$ convolution Trick, um die Rechenlast zu begrenzen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.