Ponieważ nie ma szczegółowej i oznaczonej odpowiedzi, postaram się jak najlepiej.
Najpierw zrozumiemy, skąd bierze się motywacja do takich warstw: np. Autoencoder splotowy. Za pomocą splotowego autokodera można wyodrębnić elementy obrazów podczas szkolenia autokodera w zakresie rekonstrukcji oryginalnego obrazu. (Jest to metoda bez nadzoru.)
Taki autoencoder składa się z dwóch części: kodera, który wydobywa cechy z obrazu oraz dekodera, który rekonstruuje oryginalny obraz z tych funkcji. Architektura enkodera i dekodera jest zwykle dublowana.
W autokoderze splotowym koder działa z warstwami splotu i puli. Zakładam, że wiesz, jak one działają. Dekoder próbuje wykonać kopię lustrzaną kodera, ale zamiast „zmniejszać wszystko” ma na celu „powiększanie wszystkiego”, tak aby pasował do oryginalnego rozmiaru obrazu.
Przeciwieństwem warstw splotowych są transponowane warstwy splotowe (znane również jako dekonwolucja , ale poprawnie mówiąc matematycznie jest to coś innego). Działają z filtrami, jądrami, krokami tak jak warstwy splotu, ale zamiast mapować np. Z pikseli wejściowych 3x3 na 1 wyjście, mapują od 1 piksela wejściowego do 3x3 pikseli. Oczywiście również propagacja wsteczna działa nieco inaczej.
Przeciwieństwem warstw pulujących są warstwy próbkowania w górę, które w najczystszej postaci zmieniają rozmiar obrazu (lub kopiują piksel tyle razy, ile potrzeba). Bardziej zaawansowaną techniką jest odsprzęganie, które odwraca maxpooling, zapamiętując położenie maksimów w warstwach maxpooling i w warstwach unpooling kopiuje wartość do dokładnie tego miejsca. Cytat z tego ( https://arxiv.org/pdf/1311.2901v3.pdf ) referatu:
W sieci konwergentnej maksymalna operacja pulowania jest nieodwracalna, jednak możemy uzyskać przybliżoną odwrotność, rejestrując lokalizacje maksimów w każdym regionie puli w zestawie zmiennych przełączających. W dekonwnetrze operacja odpulowania wykorzystuje te przełączniki do umieszczania rekonstrukcji z warstwy powyżej w odpowiednich lokalizacjach, zachowując strukturę bodźca.
Aby uzyskać więcej informacji technicznych i kontekst, zapoznaj się z tym naprawdę dobrym, demonstracyjnym i szczegółowym wyjaśnieniem: http://deeplearning.net/software/theano/tutorial/conv_arithmetic.html
I spójrz na https://www.quora.com/What-is-the-difference-between-Deconvolution-Upsampling-Unpooling-and-Convolutional-Sparse-Coding