Heim  >  Artikel  >  Backend-Entwicklung  >  Warum behält die dichte Keras-Schicht die Dimensionalität bei?

Warum behält die dichte Keras-Schicht die Dimensionalität bei?

DDD
DDDOriginal
2024-10-21 07:52:02451Durchsuche

Why Does the Keras Dense Layer Preserve Dimensionality?

Keras Dense Layer Input Shape Conundrum

Diese Frage untersucht einen offensichtlichen Widerspruch zwischen der Keras-Dokumentation und dem Verhalten seiner Dense Layer. In der Dokumentation heißt es, dass die Dense-Schicht ihre Eingabe flacht, bevor sie das Skalarprodukt mit ihrem Kernel anwendet. Wie das bereitgestellte Code-Snippet zeigt, scheint die Ausgabeform der dichten Ebene jedoch nicht abgeflacht zu sein.

Verstehen des Verhaltens

Der Schlüssel zur Lösung dieser Diskrepanz liegt im Verständnis, wie die dichte Schicht in Keras angewendet wird. Im Gegensatz zur Dokumentation arbeitet die Dense-Schicht tatsächlich auf der letzten Achse des Eingabetensors. Daher wird im Beispielcodeausschnitt die dichte Ebene auf jede Spalte des (2,3)-Eingabetensors angewendet, was zu einer Ausgabeform von (2, 4) führt.

Implikationen und Seite Hinweise

Dieses Verhalten hat erhebliche Auswirkungen:

  • TimeDistributed(Dense(...)) und Dense(...) Equivalence: TimeDistributed (Dense(...)) und Dense(...) sind jetzt gleichwertig, da beide die dichte Ebene auf die letzte Achse des Eingabetensors anwenden.
  • Gemeinsamer Gewichtungseffekt: Jede Einheit in der dichten Ebene ist mit jedem Element in der letzten Dimension der Eingabe mit denselben Gewichtungen verbunden, was zu einer geringeren Anzahl von Parametern im Vergleich zur Reduzierung führt.

Visuelle Darstellung

Die folgende visuelle Abbildung verdeutlicht das Verhalten der dichten Ebene:

[Bild eines Tensors mit (2,3)-Form und einer dichten Ebene mit 4 Einheiten, die auf die letzte Achse angewendet werden]

Jede Einheit in der dichten Schicht ist mit jedem Element in einer Spalte des Eingabetensors mit demselben Gewichtungssatz verbunden. Das Ergebnis ist ein Ausgabetensor mit der Form (2, 4).

Das obige ist der detaillierte Inhalt vonWarum behält die dichte Keras-Schicht die Dimensionalität bei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn