Quand la couche dense Keras aplatit-elle l'entrée ?

DDD
Libérer: 2024-10-21 07:54:02
original
729 Les gens l'ont consulté

When Does the Keras Dense Layer Flatten Input?

L'énigme de la forme de sortie de la couche dense Keras

Dans Keras, la couche dense a longtemps été documentée pour aplatir son entrée avant d'appliquer le produit scalaire avec le noyau. Cependant, un comportement récent suggère le contraire.

Problème :

Comme illustré dans le code de test ci-dessous, la sortie de la couche Dense conserve le dernier axe du tenseur d'entrée :

input1 = layers.Input((2,3))
output = layers.Dense(4)(input1)
print(output)
Copier après la connexion

Sortie :

<tf.Tensor 'dense_2/add:0' shape=(?, 2, 4) dtype=float32>
Copier après la connexion

Réponse :

Contrairement à la documentation, la couche Dense n'aplatit pas l'entrée. Au lieu de cela, il applique son fonctionnement indépendamment le long du dernier axe. Ainsi, étant donné une entrée de forme (n_dim1, n_dim2, ..., n_dimk), la forme de sortie devient (n_dim1, n_dim2, ..., m), où m est le nombre d'unités dans la couche dense.

Implications :

Ce comportement rend TimeDistributed(Dense(...)) et Dense(...) fonctionnellement équivalents. De plus, étant donné que les poids sont partagés sur le dernier axe, la couche Dense avec la forme d'entrée (n_dim1, n_dim2, ..., n_dimk) n'a que m * n_dimk m (paramètres de biais par unité) paramètres entraînables.

Illustration visuelle :

[Image d'un réseau neuronal avec une couche dense appliquée à une entrée à plusieurs dimensions]

Cette illustration montre comment le fonctionnement de la couche dense est appliqué indépendamment le long du dernier axe du tenseur d'entrée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!