2016-05-26 2 views
2

Beim Erzeugen eines konvolutionellen neuronalen Netzwerks (CNN) (z.B. wie in https://cs231n.github.io/convolutional-networks/ beschrieben) ist die Eingabeschicht mit einem oder mehreren Filtern verbunden, die jeweils eine Merkmalskarte darstellen. Hier ist jedes Neuron in einer Filterschicht mit nur wenigen Neuronen der Eingangsschicht verbunden. Im einfachsten Fall hat jeder meiner n Filter die gleiche Dimensionalität und verwendet den gleichen Schritt.Unterschied der Filter in konvolutionellem neuralem Netzwerk

My (eng gestrickt) Fragen sind:

  1. Wie gewährleistet ist, dass die Filter unterschiedliche Eigenschaften erfahren, obwohl sie mit dem gleichen Patches ausgebildet werden?
  2. "Hängt" die gelernte Eigenschaft eines Filters auf den zufällig zugewiesenen Werten (für Gewichte und Voreingenommenheiten) ab, wenn das Netz begonnen wird?
+0

1. es ist nicht "sichergestellt". empirisch passiert es 2. ja, schlechte Initialisierung Werte können zu einem lokalen Minimum konvergieren – user2717954

Antwort

1

Ich bin kein Experte, aber ich kann ein wenig auf Ihre Fragen sprechen. Um ehrlich zu sein, hört sich an, als ob Sie bereits die richtige Idee haben: Es ist speziell die anfängliche Randomisierung von Gewichten/Verzerrungen in den Filtern, die ihre Tendenzen zum Erlernen verschiedener Merkmale fördert (obwohl ich Zufälligkeit in den von höheren Schichten des Netzwerks zurückversetzten Fehler glaube) spielen auch eine Rolle).

Wie bei @ user2717954 angegeben, gibt es keine Garantie, dass die Filter einzigartige Funktionen lernen werden. Jedes Mal, wenn der Fehler einer Trainingsprobe oder -charge auf eine gegebene Faltungsschicht rückpropagiert wird, werden jedoch die Gewichte und Vorspannungen jedes Filters leicht modifiziert, um die Gesamtgenauigkeit des Netzwerks zu verbessern. Da die Anfangsgewichte und -vorspannungen in jedem Filter alle unterschiedlich sind, ist es möglich (und wahrscheinlich bei einem geeigneten Modell), dass sich die meisten Filter schließlich auf Werte stabilisieren, die einen robusten Satz einzigartiger Merkmale repräsentieren.

Neben der richtigen Randomisierung der Gewichte zeigt dies auch, warum es wichtig ist, Faltungsschichten mit einer angemessenen Anzahl von Filtern zu verwenden. Ohne genügend Filter ist das Netzwerk grundsätzlich so begrenzt, dass es auf der gegebenen Abstraktionsebene wichtige, nützliche Muster gibt, die vom Netzwerk einfach nicht dargestellt werden können.

+0

Dank für die Bestätigung meiner Überzeugung. :-) Aber wo ist zufällig im backpropagated Fehler neben der zufälligen Gewichte (und Eingabedaten) von der Feed-Forward-Stufe? – Stefan

Verwandte Themen