Comprendre les valeurs de summary () (Output Shape, Param #)?
Je vérifie la sortie de la summaryfonction et je ne comprends pas toutes les valeurs imprimées.
Par exemple, regardez ce code simple:
x = [1, 2, 3, 4, 5]
y = [1.2, 1.8, 3.5, 3.7, 5.3]
model = Sequential()
model.add(Dense(10, input_dim=1, activation='relu'))
model.add(Dense(30, input_dim=1, activation='relu'))
model.add(Dense(10, input_dim=1, activation='relu'))
model.add(Dense(1))
model.summary()
Le résultat:
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
dense (Dense) (None, 10) 20
_________________________________________________________________
dense_1 (Dense) (None, 30) 330
_________________________________________________________________
dense_2 (Dense) (None, 10) 310
_________________________________________________________________
dense_3 (Dense) (None, 1) 11
=================================================================
Total params: 671
Trainable params: 671
Non-trainable params: 0
_________________________________________________________________
- Pourquoi la signification de Aucune valeur, sous la colonne
Output Shape? que signifie le Aucun ici? - Quel réseau n'affichera aucun dans le résumé?
- Pourquoi le sens de la
Params #colonne? Comment cette valeur est-elle calculée?
Réponses
Aucun n'est qu'un espace réservé indiquant que le réseau peut entrer plus d'un échantillon à la fois. Aucun signifie que cette dimension est variable. La première dimension dans un modèle keras est toujours la taille du lot. ... C'est pourquoi cette dimension est souvent ignorée lorsque vous définissez votre modèle. Par exemple, lorsque vous définissez input_shape = (100,200), vous ignorez en fait la taille du lot et définissez la forme de "chaque échantillon".
Nonene s'affiche pas si vous définissez un lot fixe. Par exemple, si vous enverriez un lot de 10 images, votre forme serait (10, 64, 64, 3) et si vous la changiez en 25, vous auriez (25, 64, 64, 3)Pour la couche dense_1st , le nombre de paramètres est 20. Ceci est obtenu comme suit : 10 (valeurs d'entrée) + 10 (valeurs de biais)
Pour la couche dense_2nd , le nombre de paramètres est de 330. Ceci est obtenu comme suit : 10 (valeurs d'entrée) * 30 (neurones de la deuxième couche) + 30 (valeurs de biais pour les neurones de la deuxième couche)
Pour la couche dense_3rd , le nombre de paramètres est de 310. Ceci est obtenu comme suit : 30 (valeurs d'entrée) * 10 (neurones de la troisième couche) + 10 (valeurs de biais pour les neurones de la troisième couche)
Pour la couche finale , le nombre de paramètres est 11. Ceci est obtenu comme suit: 10 (valeurs d'entrée) * 1 (neurones de la deuxième couche) + 1 (valeurs de biais pour les neurones de la couche finale)
total des paramètres = 20 + 330 + 310 + 11 = 671