Question

J'essaie de comprendre comment il faut beaucoup de poids et des biais pour CNN.

Dire que j'ai un (3, 32, 32) -image et que vous souhaitez appliquer un (32, 5, 5) -filter. Pour chaque fonction carte Je 5x5 poids, donc je devrais avoir 3 x (5x5) x 32 paramètres. Maintenant, je dois ajouter le biais. Je crois que je ne (3 x (5x5) + 1) x 32 paramètres, est donc le biais même dans toutes les couleurs (RVB)?

Est-ce exact? Est-ce que je garde le même biais pour chaque image dans sa profondeur (dans ce cas 3) alors que j'utilise des poids différents? Pourquoi?

Était-ce utile?

La solution

Bias fonctionne par neurone virtuel, donc il n'y a pas de valeur en ayant de multiples entrées de polarisation où il y a une seule sortie. - qui serait équivalente à seulement l'addition des poids différents de polarisation dans une seule polarisation

Dans les cartes de caractéristiques qui sont la sortie de la première couche cachée, les couleurs ne sont plus conservés * séparés. En effet chaque carte de caractéristiques est un « canal » dans la couche suivante, même si elles sont habituellement visualisés séparément lorsque l'entrée est visualisé avec des canaux combinés. Une autre façon de penser à ce sujet est que les canaux RVB séparés dans l'image originale sont 3 « fonction cartes » dans l'entrée.

Peu importe combien de canaux ou caractéristiques sont dans une couche précédente, la sortie à chaque carte de fonction dans la couche suivante est une valeur unique dans cette carte. Un correspond à valeur de sortie à un seul neurone virtuel, ayant besoin d'une masse de polarisation.

Dans un CNN, comme vous expliquer la question, les mêmes poids (y compris le poids de polarisation) sont partagés à chaque point de la carte de fonction de sortie. Donc, chaque carte de fonction a son propre poids de polarisation ainsi que des poids de connexion previous_layer_num_features x kernel_width x kernel_height.

Alors oui, votre exemple résultant en poids de (3 x (5x5) + 1) x 32 totale pour la première couche est correcte pour une CNN première couche cachée de traitement d'entrée RVB en 32 cartes de caractéristiques distinctes.


* Vous pouvez vous sentir désorienté voir la visualisation de CNN poids qui peuvent être séparés dans les canaux de couleur qu'ils fonctionnent sur.

Autres conseils

Il est la propriété de CNNs qu'ils utilisent des poids partagés et les partis pris (même poids et biais pour tous les neurones cachés dans une couche) afin de détecter la même caractéristique. Cela conduit à un apprentissage plus profond par rapport aux réseaux de neurones simples. Vous pouvez lire ceci comme une référence:

http://deeplearning.net/tutorial/lenet.html
http://neuralnetworksanddeeplearning.com/chap6.html#introducing_convolutional_networks

Licencié sous: CC-BY-SA avec attribution
scroll top