Glosario

Convolución

Aprende cómo la convolución potencia la IA en la visión por ordenador, permitiendo tareas como la detección de objetos, el reconocimiento de imágenes y la obtención de imágenes médicas con precisión.

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

La convolución es una operación matemática fundamental muy utilizada en inteligencia artificial, especialmente en el campo de la visión por ordenador (VC). Sirve como bloque de construcción crucial para las Redes Neuronales Convolucionales (CNN), facultando a estas redes para aprender automáticamente patrones complejos y jerárquicos directamente a partir de datos en forma de cuadrícula, como imágenes o vídeos. El proceso consiste en aplicar un pequeño filtro, conocido como núcleo, a una señal o imagen de entrada. Esta operación genera una salida llamada mapa de características, que resalta patrones específicos (como bordes, texturas o formas) que el núcleo está diseñado para detectar.

Cómo funciona la convolución

Piensa en el proceso de convolución como si deslizaras una pequeña lupa (el núcleo o filtro) sobre una imagen mayor (los datos de entrada). En cada posición, el núcleo se centra en una pequeña porción de los datos de entrada. A continuación, la operación de convolución calcula una suma ponderada de los valores de los píxeles de ese fragmento, utilizando los pesos definidos en el núcleo. Este valor calculado se convierte en un único píxel en el mapa de características de salida resultante. El núcleo se desplaza sistemáticamente por toda la imagen de entrada, paso a paso, con un tamaño de paso determinado por un parámetro llamado"paso". A veces, se utiliza"relleno"(añadir píxeles de borde adicionales) alrededor de la imagen de entrada para controlar el tamaño de la salida. Al aplicar múltiples núcleos dentro de una única capa convolucional, una CNN puede extraer simultáneamente un conjunto diverso de características de la entrada. Las explicaciones visuales, como las que se encuentran en los apuntes del curso CS231n de Stanford, pueden proporcionar una mayor intuición.

Componentes clave de la convolución

Varios parámetros definen una operación de convolución:

  • Núcleo/Filtro: Una pequeña matriz que contiene pesos(pesos de filtro) que detectan características específicas. El tamaño del núcleo determina el área local procesada en cada paso.
  • Paso: El número de píxeles que el núcleo desplaza sobre la imagen de entrada en cada paso. Una zancada mayor da como resultado un mapa de características de salida más pequeño.
  • Relleno: Añadir píxeles (normalmente de valor cero) alrededor del borde de la imagen de entrada. Esto ayuda a controlar las dimensiones espaciales de la salida y permite a los núcleos procesar más eficazmente los píxeles de los bordes.
  • Función de activación: Normalmente, la salida de la operación de convolución se pasa a través de una función de activación no lineal, como la ReLU (Unidad Lineal Rectificada), para introducir la no linealidad en el modelo, permitiéndole aprender patrones más complejos.

Convolución frente a operaciones relacionadas

La convolución se utiliza a menudo junto a otras operaciones dentro de las CNN, pero tiene una finalidad distinta:

  • Agrupación: Operaciones como la agrupación máxima o la agrupación media se utilizan para reducir las dimensiones espaciales (anchura y altura) de los mapas de características, haciendo que el modelo sea más eficiente desde el punto de vista computacional y más robusto frente a las variaciones en la ubicación de las características. A diferencia de la convolución, que extrae rasgos, la agrupación resume los rasgos dentro de una región. Puedes encontrar una visión general de los métodos de pooling para más detalles.
  • Capas totalmente conectadas: Mientras que las capas convolucionales procesan regiones locales utilizando pesos compartidos(compartición de parámetros) basados en el campo receptivo, una capa totalmente conectada conecta cada neurona de su entrada con cada neurona de su salida. Se suelen utilizar al final de una CNN en una estructura de Red Neuronal (NN ) estándar para tareas finales de clasificación o regresión.

Aplicaciones de la convolución

Las capas convolucionales son indispensables en numerosas aplicaciones modernas de IA:

1. Detección de objetos

En la detección de objetos, las CNN emplean capas convolucionales para extraer características de las imágenes, lo que les permite identificar objetos y determinar su ubicación mediante cuadros delimitadores. Los modelos más avanzados, como Ultralytics YOLOincluyendo versiones como YOLO11dependen en gran medida de las convoluciones para analizar las características a varias escalas y conseguir una detección eficaz y precisa. Esto es vital para la IA en aplicaciones de Automoción, como permitir que los coches autoconducidos(véase la tecnología de Waymo) perciban a los peatones, los vehículos y las señales de tráfico para una navegación segura, lo que a menudo requiere una inferencia en tiempo real.

2. Análisis de imágenes médicas

La convolución desempeña un papel importante en el análisis de imágenes médicas, ayudando a los profesionales sanitarios a interpretar exploraciones como radiografías, tomografías computarizadas y resonancias magnéticas. Los modelos de IA construidos con CNN pueden detectar patrones sutiles indicativos de enfermedades, como tumores o fracturas, superando a veces la velocidad y precisión humanas(Radiología: Inteligencia Artificial). Por ejemplo, los modelos pueden entrenarse para tareas específicas, como el uso de YOLO11 para la detección de tumores. Más información sobre la IA en las soluciones sanitarias.

Además, la convolución es fundamental para otras tareas de visión, como el reconocimiento y la segmentación de imágenes.

Importancia en el Aprendizaje Profundo

La convolución es una piedra angular del aprendizaje profundo (AD) moderno, sobre todo para tareas que implican datos en forma de cuadrícula. Su capacidad para explotar la localidad espacial (suponiendo que los píxeles cercanos están relacionados) y compartir parámetros entre distintas ubicaciones hace que las CNN sean muy eficientes y eficaces en el aprendizaje de jerarquías visuales, en comparación con las redes totalmente conectadas tradicionales.

Herramientas y formación

Varios marcos de aprendizaje profundo facilitan la implementación y el entrenamiento de modelos que utilizan la convolución. Bibliotecas como PyTorchPyTorch sitio oficialPyTorch ) y TensorFlow(sitio oficialTensorFlow ) proporcionan herramientas robustas para construir CNN. Plataformas como Ultralytics HUB agilizan el proceso de entrenamiento de modelos, permitiendo a los usuarios aprovechar arquitecturas preconstruidas que incorporan convoluciones o entrenar modelos personalizados para aplicaciones específicas. Las API de alto nivel como Keras simplifican aún más el desarrollo.

Leer todo