Puisqu'il n'y a pas de réponse détaillée et marquée, je ferai de mon mieux.
Voyons d'abord d'où vient la motivation pour de telles couches: par exemple un autoencodeur convolutionnel. Vous pouvez utiliser un autoencodeur convolutif pour extraire des traits d'images tout en entraînant l'autoencodeur pour reconstruire l'image d'origine. (Il s'agit d'une méthode non supervisée.)
Un tel auto-encodeur a deux parties: l'encodeur qui extrait les caractéristiques de l'image et le décodeur qui reconstruit l'image originale à partir de ces caractéristiques. L'architecture de l'encodeur et du décodeur est généralement reflétée.
Dans un autoencodeur convolutionnel, l'encodeur fonctionne avec des couches de convolution et de mise en commun. Je suppose que vous savez comment cela fonctionne. Le décodeur essaie de refléter l'encodeur, mais au lieu de "tout réduire", il a pour objectif de "rendre tout plus grand" pour correspondre à la taille d'origine de l'image.
L'opposé des couches convolutives sont les couches de convolution transposées (également connues sous le nom de déconvolution , mais correctement, mathématiquement parlant, c'est quelque chose de différent). Ils fonctionnent avec des filtres, des noyaux, des foulées tout comme les couches de convolution mais au lieu de mapper, par exemple, des pixels d'entrée 3x3 à 1 sortie, ils sont mappés de 1 pixel d'entrée à 3x3 pixels. Bien sûr, la rétropropagation fonctionne également un peu différemment.
L'opposé des couches de mise en commun sont les couches de suréchantillonnage qui, dans leur forme la plus pure, ne redimensionnent l'image (ou copient le pixel autant de fois que nécessaire). Une technique plus avancée est le désengagement qui rétablit le maximum de covoiturage en se souvenant de l'emplacement des maxima dans les couches de maximum de covoiturage et dans les couches de non-covoiturage copiez la valeur exactement à cet emplacement. Pour citer ce document ( https://arxiv.org/pdf/1311.2901v3.pdf ):
Dans le convnet, l'opération de regroupement maximale n'est pas inversible, mais nous pouvons obtenir une inverse approximative en enregistrant les emplacements des maxima dans chaque région de regroupement dans un ensemble de variables de commutation. Dans le déconvnet, l'opération de désengagement utilise ces commutateurs pour placer les reconstructions de la couche au-dessus dans des emplacements appropriés, en préservant la structure du stimulus.
Pour plus d'informations techniques et contextuelles, jetez un œil à cette très bonne explication, démonstrative et approfondie: http://deeplearning.net/software/theano/tutorial/conv_arithmetic.html
Et jetez un œil à https://www.quora.com/What-is-the-difference-between-Deconvolution-Upsampling-Unpool-and-Convolutional-Sparse-Coding