Was meinen die Leute, wenn sie über neuronale Netze sprechen, wenn sie "Kernelgröße" sagen? Kernel sind Ähnlichkeitsfunktionen, aber was sagt das über die Kernelgröße aus?
12
Was meinen die Leute, wenn sie über neuronale Netze sprechen, wenn sie "Kernelgröße" sagen? Kernel sind Ähnlichkeitsfunktionen, aber was sagt das über die Kernelgröße aus?
Antworten:
Tiefe neuronale Netze, konkret gefaltete neuronale Netze (CNN), sind im Grunde genommen ein Stapel von Schichten, die durch die Wirkung einer Reihe von Filtern auf den Eingang definiert werden. Diese Filter werden normalerweise als Kernel bezeichnet.
Beispielsweise sind die Kernel in der Faltungsschicht die Faltungsfilter. Eigentlich wird keine Faltung durchgeführt, sondern eine Kreuzkorrelation. Die Kernelgröße bezieht sich hier auf die Breite x Höhe der Filtermaske.
Die Max-Pooling-Ebene gibt beispielsweise das Pixel mit dem Maximalwert aus einer Reihe von Pixeln innerhalb einer Maske (Kernel) zurück. Dieser Kernel wird über die Eingabe gewobbelt und unterabgetastet.
Also nichts mit dem Konzept von Kerneln in Support-Vektor-Maschinen oder Regularisierungsnetzwerken zu tun. Sie können sie sich als Feature-Extraktoren vorstellen.
quelle
Wie Sie oben sehen können, ist der Kernel, auch als Kernelmatrix bekannt, die Funktion dazwischen und seine Größe, hier 3, ist die Kernelgröße (wobei die Kernelbreite gleich der Kernelhöhe ist).
Beachten Sie, dass der Kernel nicht unbedingt symmetrisch sein muss, und wir können dies überprüfen, indem wir diesen Text aus dem Dokument von Conv2D in Tensorflow zitieren :
Aber normalerweise machen wir nur die Breite und Höhe gleich, und wenn nicht, sollte die Kernelgröße ein Tupel von 2 sein. Und die Kernelgröße kann mehr als 2 Zahlen betragen , zum Beispiel (4, 4, 3) im Beispiel unten Conv3D ::
Die tollen Gifs kommen von hier und hier .
quelle