En las redes neuronales artificiales , una capa convolucional es un tipo de capa de red que aplica una operación de convolución a la entrada. Las capas convolucionales son algunos de los componentes básicos de las redes neuronales convolucionales (CNN), una clase de red neuronal que se aplica con mayor frecuencia a imágenes, vídeo, audio y otros datos que poseen la propiedad de simetría traslacional uniforme . [ 1 ]
La operación de convolución en una capa convolucional consiste en deslizar una pequeña ventana (llamada núcleo o filtro) a través de los datos de entrada y calcular el producto escalar entre los valores del núcleo y la entrada en cada posición. Este proceso crea un mapa de características que representa las características detectadas en la entrada. [ 2 ]
Conceptos
Núcleo
Los kernels , también conocidos como filtros , son pequeñas matrices de pesos que se aprenden durante el proceso de entrenamiento. Cada kernel se encarga de detectar una característica específica en los datos de entrada. El tamaño del kernel es un hiperparámetro que afecta al comportamiento de la red.
Circunvolución
Para una entrada 2Dy un núcleo 2DLa operación de convolución 2D se puede expresar como:dóndeyson la altura y el ancho del núcleo, respectivamente.
Esto se generaliza inmediatamente a las convoluciones nD. Las convoluciones más utilizadas son las unidimensionales (para audio y texto), las bidimensionales (para imágenes) y las tridimensionales (para objetos espaciales y vídeos).
Paso
El paso determina cómo se mueve el núcleo a través de los datos de entrada. Un paso de 1 significa que el núcleo se desplaza un píxel a la vez, mientras que un paso mayor (por ejemplo, 2 o 3) produce una menor superposición entre las convoluciones y genera mapas de características de salida más pequeños.
Relleno
El relleno consiste en añadir píxeles adicionales alrededor de los bordes de los datos de entrada. Cumple dos propósitos principales:
- Preservación de las dimensiones espaciales: Sin relleno, cada convolución reduce el tamaño del mapa de características.
- Manejo de píxeles de borde: El relleno garantiza que los píxeles de borde reciban la misma importancia en el proceso de convolución.
Las estrategias de relleno más comunes incluyen:
- Sin relleno/relleno válido. Esta estrategia suele provocar que la salida se reduzca.
- Relleno idéntico: Cualquier método que garantice que el tamaño de salida sea el mismo que el de entrada es una estrategia de relleno idéntico.
- Relleno completo: Cualquier método que garantice que cada entrada se convolucione el mismo número de veces es una estrategia de relleno completo.
Los algoritmos de relleno comunes incluyen:
- Relleno de ceros: Añade entradas de cero a los bordes del campo de entrada.
- Relleno simétrico/reflejo/espejo: Refleja la matriz de entrada en el borde.
- Relleno circular: Recorre el array de entrada hasta el borde opuesto, como un toroide.
The exact numbers used in convolutions is complicated, for which we refer to (Dumoulin and Visin, 2018)[3] for details.
Variants
Standard
The basic form of convolution as described above, where each kernel is applied to the entire input volume.
Depthwise separable
Depthwise separable convolution separates the standard convolution into two steps: depthwise convolution and pointwise convolution. The depthwise separable convolution decomposes a single standard convolution into two convolutions: a depthwise convolution that filters each input channel independently and a pointwise convolution ( convolution) that combines the outputs of the depthwise convolution. This factorization significantly reduces computational cost.[4]
It was first developed by Laurent Sifre during an internship at Google Brain in 2013 as an architectural variation on AlexNet to improve convergence speed and model size.[4]
Dilated
Dilated convolution, or atrous convolution, introduces gaps between kernel elements, allowing the network to capture a larger receptive field without increasing the kernel size.[5][6]
Transposed
Transposed convolution, also known as deconvolution, fractionally strided convolution, and upsampling convolution, is a convolution where the output tensor is larger than its input tensor. It's often used in encoder-decoder architectures for upsampling. It's used in image generation, semantic segmentation, and super-resolution tasks.
History
The concept of convolution in neural networks was inspired by the visual cortex in biological brains. Early work by Hubel and Wiesel in the 1960s on the cat's visual system laid the groundwork for artificial convolution networks.[7]
An early convolution neural network was developed by Kunihiko Fukushima in 1969. It had mostly hand-designed kernels inspired by convolutions in mammalian vision.[8] In 1979 he improved it to the Neocognitron, which learns all convolutional kernels by unsupervised learning (in his terminology, "self-organized by 'learning without a teacher'").[9][10]
Durante el período de 1988 a 1998, Yann LeCun et al. introdujeron una serie de CNN , culminando con LeNet-5 en 1998. Fue una de las primeras arquitecturas de CNN influyentes para el reconocimiento de dígitos escritos a mano, entrenada con el conjunto de datos MNIST , y se utilizó en ATM . [ 11 ]
( Olshausen y Field, 1996) [ 12 ] descubrieron que las células simples en la corteza visual primaria de los mamíferos implementan campos receptivos localizados, orientados y de paso de banda, que podrían recrearse ajustando códigos lineales dispersos para escenas naturales. Posteriormente se descubrió que esto también ocurre en los núcleos de nivel más bajo de las CNN entrenadas. [ 13 ] : Fig. 3
El campo experimentó un resurgimiento en la década de 2010 con el desarrollo de arquitecturas más profundas y la disponibilidad de grandes conjuntos de datos y potentes GPU. AlexNet , desarrollado por Alex Krizhevsky et al. en 2012, fue un evento catalizador en el aprendizaje profundo moderno . [ 13 ] [ 14 ] En la competición ImageNet de ese año , el modelo AlexNet logró una tasa de error top-5 del 16 %, superando significativamente a la siguiente mejor entrada, que tuvo una tasa de error del 26 %. La red utilizó ocho capas entrenables, aproximadamente 650 000 neuronas y alrededor de 60 millones de parámetros, lo que destaca el impacto de las arquitecturas más profundas y la aceleración por GPU en el rendimiento del reconocimiento de imágenes . [ 14 ]
A partir de la competición ImageNet de 2013, la mayoría de las propuestas adoptaron redes neuronales convolucionales profundas, basándose en el éxito de AlexNet. En los años siguientes, el rendimiento mejoró progresivamente, y la tasa de error de los cinco primeros puestos disminuyó del 16 % en 2012 y del 12 % en 2013 a menos del 3 % en 2017, a medida que las redes se volvían cada vez más profundas. [ 14 ]
Véase también
Referencias
- ↑ Goodfellow, Ian; Bengio, Yoshua; Courville, Aaron (2016). Aprendizaje profundo . Cambridge, MA: MIT Press. págs. 326–366 . ISBN 978-0262035613.
- ↑ Zhang, Aston; Lipton, Zachary; Li, Mu; Smola, Alexander J. (2024). "7.2. Convoluciones para imágenes" . Sumérgete en el aprendizaje profundo . Cambridge, Nueva York, Puerto Rico, Melbourne, Nueva Delhi, Singapur: Cambridge University Press. ISBN 978-1-009-38943-3.
- ↑ Dumoulin, Vincent; Visin, Francesco (2016). "Una guía para la aritmética de convolución para el aprendizaje profundo". arXiv : 1603.07285 [ stat.ML ].
- 1 2 Chollet, François (2017). "Xception: Deep Learning with Depthwise Separable Convolutions" . 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) . pp. 1800–1807 . arXiv : 1610.02357 . doi : 10.1109/CVPR.2017.195 . ISBN 978-1-5386-0457-1.
- ↑ Yu, Fisher; Koltun, Vladlen (2016). "Agregación de contexto multiescala mediante convoluciones dilatadas". Iclr 2016 . arXiv : 1511.07122 .
- ↑ Chen, Liang-Chieh; Papandreou, George; Kokkinos, Iasonas; Murphy, Kevin; Yuille, Alan L. (2018-04-01). "DeepLab: Segmentación semántica de imágenes con redes neuronales convolucionales profundas, convolución atrous y CRF totalmente conectados". IEEE Transactions on Pattern Analysis and Machine Intelligence . 40 (4): 834– 848. arXiv : 1606.00915 . Bibcode : 2018ITPAM..40..834C . doi : 10.1109/TPAMI.2017.2699184 . ISSN 0162-8828 . PMID 28463186 .
- ↑ Hubel, DH; Wiesel, TN (1968). "Campos receptivos y arquitectura funcional de la corteza estriada del mono" . The Journal of Physiology . 195 (1): 215– 243. doi : 10.1113/jphysiol.1968.sp008455 . PMC 1557912. PMID 4966457 .
- ↑ Fukushima, Kunihiko (1969). "Extracción de características visuales mediante una red multicapa de elementos de umbral analógicos". IEEE Transactions on Systems Science and Cybernetics . 5 (4): 322– 333. doi : 10.1109/TSSC.1969.300225 . ISSN 0536-1567 .
- ^ Fukushima, Kunihiko (octubre de 1979). "位置ずれに影響されないパターン認識機構の神経回路のモデル --- ネオコグニトロン ---" [ Modelo de red neuronal para un mecanismo de reconocimiento de patrones que no se ve afectado por el cambio de posición - Neocognitron - ] . Trans. IECE (en japonés). J62-A (10): 658–665 .
- ↑ Fukushima, Kunihiko (1980). "Neocognitron: Un modelo de red neuronal autoorganizada para un mecanismo de reconocimiento de patrones que no se ve afectado por el cambio de posición" . Cibernética Biológica . 36 (4): 193–202 . doi : 10.1007/BF00344251 . PMID 7370364 .
- ↑ LeCun, Yann; Bottou, Léon; Bengio, Yoshua; Haffner, Patrick (1998). "Aprendizaje basado en gradientes aplicado al reconocimiento de documentos". Actas del IEEE . 86 (11): 2278– 2324. doi : 10.1109/5.726791 .
- ↑ Olshausen, Bruno A.; Field, David J. (junio de 1996). "Surgimiento de propiedades de campo receptivo de células simples mediante el aprendizaje de un código disperso para imágenes naturales" . Nature . 381 (6583): 607– 609. Bibcode : 1996Natur.381..607O . doi : 10.1038/381607a0 . ISSN 1476-4687 . PMID 8637596 .
- 1 2 Krizhevsky, Alex; Sutskever, Ilya; Hinton, Geoffrey E (2012). "Clasificación de ImageNet con redes neuronales convolucionales profundas" . Avances en sistemas de procesamiento de información neuronal . 25. Curran Associates, Inc.
- 1 2 3 "Cómo las computadoras se volvieron sorprendentemente buenas en el reconocimiento de imágenes" . Ars Technica . 18 de diciembre de 2018. Consultado el 21 de marzo de 2025 .
- Redes neuronales artificiales
- visión por computadora
- Aprendizaje profundo