Yolo Vision Shenzhen
Shenzhen
Únete ahora
Glosario

Algoritmos Evolutivos

Explore how evolutionary algorithms use natural selection to optimize AI. Learn to automate [hyperparameter tuning](https://www.ultralytics.com/glossary/hyperparameter-tuning) for [YOLO26](https://docs.ultralytics.com/models/yolo26/) to boost model performance.

Los algoritmos evolutivos (EA) son una potente familia de algoritmos de optimización que emulan los principios biológicos de la selección natural y la genética para resolver problemas computacionales complejos. A diferencia de las técnicas matemáticas tradicionales que se basan en derivadas calculadas, como el descenso estocástico de gradientes (SGD), los EA están diseñados para navegar por espacios de búsqueda vastos, accidentados o poco conocidos. Funcionan manteniendo una población de soluciones potenciales que compiten, se reproducen y mutan con el tiempo. Este enfoque los hace especialmente eficaces para tareas de inteligencia artificial (IA) en las que la «mejor» solución es difícil de determinar analíticamente, lo que permite a los sistemas evolucionar iterativamente hacia un resultado óptimo.

Inspiración biológica y mecanismos fundamentales

La funcionalidad de un algoritmo evolutivo se basa en el concepto de supervivencia del más apto. El proceso avanza a través de un ciclo de operadores diseñados para imitar la evolución genética natural, refinando gradualmente las soluciones candidatas:

  1. Inicialización: El sistema genera una población inicial de candidatos aleatorios. En el contexto del aprendizaje automático (ML), estos candidatos pueden representar diferentes conjuntos de parámetros del modelo.
  2. Evaluación de aptitud: cada candidato se somete a una prueba con un objetivo específico, conocido como función de aptitud. Para un modelo de visión artificial (CV), esta función suele evaluar métricas como la precisión o la precisión media promedio (mAP).
  3. Selección: Los candidatos con puntuaciones de aptitud más altas son seleccionados de forma probabilística para actuar como padres, lo que garantiza que los rasgos exitosos se conserven para la siguiente generación.
  4. Reproduction and Variation: New solutions are created through crossover (recombining traits from two parents) and mutation (introducing random changes). This introduction of genetic diversity is critical, as it prevents the algorithm from stagnating in a local optimum, helping it explore the search space for the global maximum.

Aplicaciones reales de la IA

Los algoritmos evolutivos son versátiles y se han aplicado con éxito a diversos ámbitos dentro del aprendizaje profundo (DL) y la ingeniería.

Ajuste automatizado de hiperparámetros

Una de las aplicaciones más prácticas de los EA es ajuste de hiperparámetros. Las redes neuronales modernas requieren la configuración de docenas de parámetros —como la tasa de aprendizaje, la disminución del peso y el impulso— que afectan significativamente al rendimiento. Los EA pueden automatizar este tedioso proceso de prueba y error mediante la evolución de los ajustes de configuración. Por ejemplo, el tune() El método de la Ultralytics utiliza un algoritmo genético para descubrir los mejores hiperparámetros de entrenamiento para YOLO26 modelos en conjuntos de datos personalizados .

Búsqueda de Arquitectura Neuronal (NAS)

Los EA son una piedra angular de la búsqueda de arquitectura neuronal (NAS). En lugar de que los ingenieros humanos diseñen manualmente la estructura de una red neuronal (NN), un algoritmo evolutivo puede «hacer crecer» la arquitectura. Prueba diferentes combinaciones de capas, neuronas y conexiones, desarrollando estructuras eficientes que equilibran la velocidad y la precisión. Esta técnica ha llevado a la creación de backbones altamente eficientes, como EfficientNet, que están optimizados para restricciones de hardware específicas.

Algoritmos evolutivos frente a inteligencia colectiva

Aunque ambas son estrategias de optimización inspiradas en la naturaleza, es útil distinguir los EA de la inteligencia de enjambre (SI).

  • Algoritmos evolutivos: se basan en el cambio generacional. Los individuos (soluciones) viven, se reproducen en función de su aptitud y mueren, siendo sustituidos por sus descendientes. Los principales impulsores son operadores genéticos como la mutación y el cruce.
  • Inteligencia de enjambre: imita la interacción social dentro de un grupo, como una bandada de pájaros o un banco de peces. Algoritmos como la optimización por enjambre de partículas (PSO) implican una población de agentes que se mueven por el espacio de búsqueda y ajustan sus posiciones basándose en su propia experiencia y en el éxito de sus vecinos, sin sustitución generacional.

Implementación de la optimización con Ultralytics

Los profesionales pueden aprovechar los algoritmos genéticos directamente para optimizar sus modelos de detección de objetos. Ultralytics tune El método ejecuta un proceso evolutivo para mutar hiperparámetros a lo largo de varias generaciones, identificando automáticamente los ajustes que producen el mayor rendimiento en sus datos de validación.

from ultralytics import YOLO

# Load the standard YOLO26 model
model = YOLO("yolo26n.pt")

# Run hyperparameter tuning using a genetic algorithm approach
# The tuner evolves parameters (lr, momentum, etc.) over 30 generations
model.tune(data="coco8.yaml", epochs=10, iterations=30, plots=False)

Este refinamiento automatizado permite a los desarrolladores ir más allá de las conjeturas manuales. Para los equipos que amplían sus operaciones, la gestión de estos experimentos y el seguimiento de la evolución del rendimiento de los modelos se pueden optimizar utilizando Ultralytics , que visualiza las métricas de entrenamiento y facilita la implementación de los modelos.

Únase a la comunidad Ultralytics

Únete al futuro de la IA. Conecta, colabora y crece con innovadores de todo el mundo

Únete ahora