Los términos "muestreo ascendente" y "convolución de transposición" se usan cuando se está haciendo "deconvolución" (<- no es un buen término, pero déjenme usarlo aquí). Originalmente, pensé que significaban lo mismo, pero me parece que son diferentes después de leer estos artículos. alguien puede por favor aclarar?
Transvolución de convolución : parece que podemos usarla cuando propongamos la pérdida a través de la red neuronal convolutonal.
https://github.com/vdumoulin/conv_arithmetic
https://arxiv.org/pdf/1312.6034v2.pdf , sección 4 "Para la capa convolucional ..."
Upsampling : parece que lo usamos cuando queremos aumentar la muestra de una entrada más pequeña a una entrada más grande en la estructura convnet-decovnet.
https://www.youtube.com/watch?v=ByjaPdWXKJ4&feature=youtu.be&t=22m
Respuestas:
Como no hay una respuesta detallada y marcada, haré lo mejor que pueda.
Primero comprendamos de dónde proviene la motivación para tales capas: por ejemplo, un autoencoder convolucional. Puede usar un autoencoder convolucional para extraer características de imágenes mientras entrena al autoencoder para reconstruir la imagen original. (Es un método no supervisado).
Tal codificador automático tiene dos partes: el codificador que extrae las características de la imagen y el decodificador que reconstruye la imagen original a partir de estas características. La arquitectura del codificador y el decodificador generalmente se reflejan.
En un autoencoder convolucional, el codificador funciona con capas de convolución y agrupación. Supongo que sabes cómo funcionan. El decodificador intenta reflejar el codificador pero en lugar de "hacer que todo sea más pequeño" tiene el objetivo de "hacer que todo sea más grande" para que coincida con el tamaño original de la imagen.
Lo opuesto a las capas convolucionales son las capas de convolución transpuestas (también conocidas como deconvolución , pero matemáticamente hablando correctamente, esto es algo diferente). Trabajan con filtros, núcleos, zancadas al igual que las capas de convolución, pero en lugar de mapear, por ejemplo, de 3x3 píxeles de entrada a 1 salida, mapean de 1 píxel de entrada a 3x3 píxeles. Por supuesto, también la retropropagación funciona un poco diferente.
Lo opuesto a las capas de agrupación son las capas de muestreo ascendente que en su forma más pura solo cambian el tamaño de la imagen (o copian el píxel tantas veces como sea necesario). Una técnica más avanzada es la eliminación de la agrupación, que revierte la agrupación máxima al recordar la ubicación de los máximos en las capas de agrupación máxima y en las capas de la agrupación, copie el valor exactamente en esta ubicación. Para citar este documento ( https://arxiv.org/pdf/1311.2901v3.pdf ):
Para obtener más información técnica y contexto, eche un vistazo a esta explicación realmente buena, demostrativa y profunda: http://deeplearning.net/software/theano/tutorial/conv_arithmetic.html
Y eche un vistazo a https://www.quora.com/What-is-the-difference-between-Deconvolution-Upsampling-Unpooling-and-Convolutional-Sparse-Coding
fuente
Puede depender del paquete que esté utilizando.
En keras son diferentes. El muestreo ascendente se define aquí https://github.com/fchollet/keras/blob/master/keras/layers/convolutional.py Siempre que use el backend de tensorflow, lo que realmente sucede es que Keras llama a la función resize_images de tensorflow , que esencialmente es una interpolación y no entrenable
La convolución transpuesta está más involucrada. Se define en la misma secuencia de comandos de Python enumerada anteriormente. Llama a la función tensorflow conv2d_transpose y tiene el núcleo y es entrenable.
Espero que esto ayude.
fuente
Desconvolución en el contexto de redes neuronales convolucionales es sinónimo de transposición de convolución. La desconvolución puede tener otros significados en otros campos.
La convolución de transposición es una estrategia entre otras para realizar el muestreo ascendente.
fuente
Aquí hay una buena ilustración de la diferencia entre 1) transposición de convolución y 2) muestreo superior + convolución. https://distill.pub/2016/deconv-checkerboard/
Si bien la convolución de transposición es más eficiente, el artículo aboga por el muestreo ascendente + convolución ya que no sufre el artefacto del tablero de ajedrez.
fuente