UNIR Revista
Este tipo de red neuronal artificial imita al ojo humano para identificar diferentes características y objetos, principalmente en el tema de imágenes. Se utilizan en el ámbito de la salud, la seguridad o las redes sociales.
Una red neuronal convolucional, también conocida como CNN (convolutional neural network) o ConvNet, es una clase de red neuronal diseñada para procesar datos utilizando un sistema que imita al ojo humano.
Son las más empleadas para el reconocimiento de imágenes (debido a sus características), pero también pueden usarse para clasificar datos procedentes de audio, señales o series temporales. Estas redes contienen una serie de píxeles dispuestos en forma de cuadrícula, cada uno con unos valores que indican el brillo y el color de cada punto de la imagen (píxel).
Las redes neuronales convolucionales están detrás de múltiples aplicaciones con las que interactuamos diariamente y forman parte de la inteligencia artificial (IA), como es el caso del reconocimiento de personas en redes sociales para etiquetarlas, en cámaras de seguridad o de las matrícula de los vehículos para acceder a un parking.
¿Cómo funcionan las redes convolucionales?
El cerebro humano procesa una gran cantidad de información en el momento en el que ve una imagen. Cada neurona trabaja en su propio campo receptivo y está conectada con otras neuronas, de manera que cubren todo el campo visual. Así como en el sistema de visión biológico cada neurona responde a estímulos solo en la región restringida del campo visual llamada campo receptivo, en una red neuronal convolucional sucede lo mismo.
Las neuronas en una CNN funcionan de forma similar al cerebro humano. Se agrupan en capas para ir comprendiendo los diferentes niveles de abstracción. Primero se detectan los patrones más simples (líneas, curvas, etc.) y a continuación los más complejos (caras, objetos, etc.).
Cada capa de neuronas de la red neuronal convolucional aprende a detectar las diferentes características de una imagen de entrada. Se aplica un filtro o núcleo (kernel) a cada imagen para producir una salida, que se vuelve progresivamente mejor y más detallada después de cada capa. Los filtros iniciales son generalmente funciones simples.
En cada capa sucesiva los filtros son más complejos para verificar e identificar características que representan de forma única el objeto que representa la imagen de entrada a la ConvNet. Por lo tanto, la salida de cada imagen convolucionada (la imagen parcialmente reconocida después de cada capa) se convierte en la entrada para la siguiente capa. En la última capa, la CNN reconoce la imagen o el objeto que representa.
Así pues, con la convolución, la imagen de entrada pasa por un conjunto de filtros. A medida que cada filtro activa ciertas características de la imagen, hace su trabajo y pasa su salida al filtro de la siguiente capa. Cada capa aprende a identificar diferentes características y las operaciones terminan repitiéndose durante decenas, cientos o incluso miles de capas. Finalmente, todos los datos de la imagen que avanzan a través de las múltiples capas de la CNN le permiten a la red neuronal convolucional identificar el objeto completo.
Tipos de capas de una ConvNet
Los distintos tipos de capas de una ConvNet son:
Convolucional
La mayoría de los cálculos se realizan en esta capa, que es el componente central de una CNN. Una segunda capa convolucional puede seguir a la capa convolucional inicial. El proceso de convolución implica que un núcleo o filtro (kernel) dentro de esta capa se mueve a través de los campos receptivos de la imagen, verificando si una característica está presente en la imagen.
Durante múltiples iteraciones, el kernel recorre toda la imagen. Después de cada iteración, se calcula un producto escalar entre los píxeles de entrada y el filtro. El resultado final de la serie de puntos se conoce como mapa de características o característica convolucionada. En última instancia, la imagen se convierte en valores numéricos en esta capa, lo que permite a la CNN interpretar la imagen y extraer patrones relevantes de ella.
Reducción o muestreo
Al igual que la capa convolucional, esta también barre un núcleo o filtro a través de la imagen de entrada, pero se diferencia en que reduce la cantidad de parámetros en la entrada y también cierta información. Como dato positivo señalar que esta capa reduce la complejidad y mejora la eficiencia de la CNN.
Completamente conectada
En esta capa es donde ocurre la clasificación de imágenes en función de las características extraídas en las anteriores. Aquí, completamente conectado significa que todas las entradas o nodos de una capa están conectados a cada unidad de activación o nodo de la siguiente capa.
¿Para qué sirven las redes neuronales convolucionales?
Las redes neuronales convolucionales se utilizan en múltiples aplicaciones de reconocimiento de imágenes en visión computacional o artificial, pero también en el procesamiento de audios, detección de objetos o generación de datos sintéticos.
Las aplicaciones más comunes de las CNNs son:
- Salud: detectar anomalías en imágenes de los pacientes, como por ejemplo la presencia de células cancerígenas.
- Automoción: las redes neuronales convolucionales ayudan a la detección de objetos en tiempo real.
- Redes sociales: identificar a personas en fotografías y etiquetarlas.
- eCommerce: las plataformas de comercio electrónico que incorporan búsqueda visual permiten a las marcas recomendar artículos que probablemente atraigan a un comprador.
- Reconocimiento facial: uso en los Cuerpos y Fuerzas de Seguridad del Estado para reconocer a personas en grabaciones o imágenes de cámaras de seguridad.
- Procesamiento de audio para asistentes virtuales como Siri, Alexa, etc. Las CNN en los asistentes virtuales aprenden y detectan palabras clave pronunciadas por el usuario y procesan la entrada para guiar sus acciones y responder al usuario.
Las redes neuronales convolucionales están detrás de múltiples aplicaciones con las que interactuamos diariamente y forman parte de la tan extendida Inteligencia Artificial, presente cada vez más en nuestras vidas.
En el Máster en Inteligencia Artificial online de UNIR se capacita y forma a los estudiantes en el diseño, construcción y aplicación de modelos y algoritmos de Inteligencia Artificial para múltiples propósitos, entre los que se encuentran los basados en redes neuronales convolucionales.