Contexte dintroduction
Dans un réseau de neurones convolutifs, nous avons généralement une structure / un flux général qui ressemble à ceci:
- image dentrée (cest-à-dire un vecteur 2D
x
)
(1ère couche convolutive (Conv1) commence ici …)
- convolve un ensemble de filtres (
w1
) le long de limage 2D (cest-à-dire faire lez1 = w1*x + b1
multiplications par produit scalaire), oùz1
est la 3D etb1
les biais. - appliquer une fonction dactivation (par exemple ReLu) pour rendre
z1
non linéaire (par exemplea1 = ReLu(z1)
), oùa1
est en 3D.
(La deuxième couche convolutionnelle (Conv2) commence ici …)
- convolve un ensemble de filtres le long des activations nouvellement calculées (cest-à-dire effectuez les
z2 = w2*a1 + b2
multiplications de produit scalaire), oùz2
est 3D, etb2
est un biais. - appliquer une fonction dactivation (par exemple ReLu) pour rendre
z2
non linéaire (par exemplea2 = ReLu(z2)
), oùa2
est 3D .
La question
La définition du terme » feature map » semble varier dune littérature à lautre. Concrètement:
- Pour la 1ère couche convolutive, la » feature map » correspond au vecteur dentrée
x
, ou le produit scalaire de sortiez1
, ou les activations de sortiea1
, ou le » process » conversion dex
ena1
, ou autre chose? - De même, pour la deuxième couche convolutive, » feature map » correspond à les activations dentrée
a1
, ou le produit scalaire de sortiez2
, ou lactivation de sortiea2
, ou le » processus » conversion dea1
ena2
, ou autre chose?
De plus, est-il vrai que le terme » feat ure map » est exactement identique à » carte dactivation « ? (ou signifient-ils en fait deux choses différentes?)
Références supplémentaires:
Extraits de Réseaux de neurones et apprentissage profond – Chapitre 6 :
* La nomenclature est utilisée ici de manière vague. En particulier, jutilise » feature map » pour signifier non pas la fonction calculée par la couche convolutive, mais plutôt lactivation du neurones cachés sortant de la couche. Ce type dabus léger de nomenclature est assez courant dans la littérature scientifique.
Extraits de Visualisation et compréhension des réseaux convolutifs par Matt Zeiler :
Dans cet article, nous présentons une technique de visualisation qui révèle les stimuli dentrée qui excitent les cartes de caractéristiques individuelles à nimporte quelle couche du modèle. […] Notre approche, en revanche, fournit une vue non paramétrique de linvariance, montrant quels modèles de lensemble dapprentissage activent la carte de caractéristiques. [. ..] une opération de contraste local qui normalise les réponses sur les cartes dentités. […] Pour examiner une activation convnet donnée, nous définissons toutes les autres activations de la couche sur zéro et passons la carte dentités s comme entrée de la couche deconvnet attachée. […] Le convnet utilise des non-linéarités relu, qui rectifient les cartes de caractéristiques garantissant ainsi que les cartes de caractéristiques sont toujours positives. […] Le convnet utilise des filtres appris pour convoluer les cartes dentités de la couche précédente. […] Fig. 6, ces visualisations sont des représentations précises du modèle dentrée qui stimule la carte de caractéristiques donnée dans le modèle […] lorsque les parties de limage dentrée dorigine correspondant au modèle sont occluses, nous voyons un baisse dactivité distincte dans la carte des caractéristiques. […]
Remarques: introduit également le terme » carte des caractéristiques » et » carte des caractéristiques rectifiée » sur la figure 1.
Extraits de code extrait du Chapitre Stanford CS231n sur CNN :
[…] Un écueil dangereux qui peut être facilement remarqué avec cette visualisation est que certaines cartes dactivation peuvent être toutes nulles pour de nombreuses entrées différentes, ce qui peut indiquer des filtres morts et peut être un symptôme de taux dapprentissage élevés […] Activations daspect typique sur la première couche CONV (à gauche) et la 5e couche CONV (à droite) dun AlexNet entraîné regardant une image dun chat. Chaque boîte montre une carte dactivation correspondant à un filtre. Notez que les activations sont rares (la plupart des valeurs sont nulles, dans cette visualisation montrée en noir) et principalement locales.
Extraits de Guide-du-débutant-pour-comprendre-les-réseaux-neuronaux-convolutionnels
[…] Chaque emplacement unique sur le volume dentrée produit un nombre. Après avoir fait glisser le filtre sur tous les emplacements, vous découvrirez quil vous reste un tableau de nombres 28 x 28 x 1, que nous appelons une carte dactivation ou une carte des caractéristiques.
Réponse
Une carte des caractéristiques, ou carte dactivation, sont les activations de sortie pour un filtre donné (a1 dans votre cas) et la définition est la même quelle que soit la couche sur laquelle vous vous trouvez.
Carte des caractéristiques et carte dactivation signifient exactement la même chose. Cest appelé une carte dactivation car cest une cartographie qui correspond à lactivation de différentes parties de limage, et aussi une carte de caractéristiques car cest aussi une cartographie de lendroit où un certain type de caractéristique se trouve dans limage. Une activation élevée signifie quune certaine fonctionnalité a été trouvée.
Une « carte des caractéristiques rectifiée » est juste une carte des caractéristiques qui a été créée à laide de Relu. Vous pourriez peut-être voir le terme «carte des caractéristiques» utilisé pour le résultat des produits scalaires (z1) parce que cest aussi vraiment une carte de lendroit où certaines caractéristiques sont dans limage, mais ce nest pas courant à voir.
Commentaires
Réponse
Dans la terminologie CNN, la matrice 3 × 3 est appelée «filtre» ou «noyau» ou «détecteur de caractéristiques» et la matrice formée en faisant glisser le filtre sur limage et en calculant le produit scalaire est appelée la Entité convoluée ou Carte dactivation ou la Carte dentités. Il est important de noter que les filtres agissent comme des détecteurs de caractéristiques à partir de limage dentrée dorigine.
source: https://ujjwalkarn.me/2016/08/11/intuitive-explanation-convnets/
Répondez
avant de parler de ce que signifie la carte dentités, définissons simplement le terme de vecteur dentités.
Le vecteur de caractéristiques est une représentation vectorielle des objets. Par exemple, une voiture peut être représentée par [nombre de roues, porte. windows, age ..etc].
feature map est une fonction qui prend des vecteurs de caractéristiques dans un espace et les transforme en vecteurs de caractéristiques dans un autre. Par exemple, étant donné un vecteur de caractéristiques [volume, poids, hauteur, largeur], il peut renvoyer [1, volume / poids, hauteur * largeur] ou [hauteur * largeur] ou même simplement [volume]
a1
,a2
, etc.). Dans Conv2, je suppose que jappelleraisa1
la carte dactivation dentrée, eta2
la carte dactivation de sortie. Dans Conv1, jex
limage dentrée eta1
la carte dactivation de sortie.