Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

Algoritmos Evolucionários

Explore como os algoritmos evolutivos utilizam a seleção natural para resolver problemas de IA. Aprenda a otimizar os hiperparâmetros Ultralytics e melhorar o desempenho do modelo.

Os Algoritmos Evolucionários (AEs) são uma poderosa família de algoritmos de otimização que emulam os princípios biológicos da seleção natural e da genética para resolver problemas computacionais complexos. Ao contrário das técnicas matemáticas tradicionais que dependem de derivadas baseadas em cálculo, como o gradiente descendente estocástico (SGD), os AEs são projetados para navegar em espaços de pesquisa vastos, acidentados ou pouco compreendidos. Eles operam mantendo uma população de soluções potenciais que competem, se reproduzem e sofrem mutações ao longo do tempo. Essa abordagem os torna particularmente eficazes para tarefas em inteligência artificial (IA), onde a "melhor" solução é difícil de determinar analiticamente, permitindo que os sistemas evoluam iterativamente em direção a um resultado ideal.

Inspiração biológica e mecanismos fundamentais

A funcionalidade de um Algoritmo Evolutivo baseia-se no conceito de sobrevivência do mais apto. O processo passa por um ciclo de operadores projetados para imitar a evolução genética natural, refinando gradualmente as soluções candidatas:

  1. Inicialização: O sistema gera uma população inicial de candidatos aleatórios. No contexto da aprendizagem automática (ML), esses candidatos podem representar diferentes conjuntos de parâmetros do modelo.
  2. Avaliação de adequação: Cada candidato é testado em relação a um objetivo específico, conhecido como função de adequação. Para um modelo de visão computacional (CV), essa função geralmente avalia métricas como precisão ou precisão média (mAP).
  3. Seleção: Os candidatos com pontuações de aptidão mais altas são selecionados probabilisticamente para atuarem como pais, garantindo que as características bem-sucedidas sejam preservadas para a próxima geração.
  4. Reprodução e variação: novas soluções são criadas por meio do cruzamento (recombinação de características de dois progenitores) e mutação (introdução de alterações aleatórias). Essa introdução de diversidade genética é fundamental, pois evita que o algoritmo fique estagnado em um ótimo local, ajudando-o a explorar o espaço de pesquisa para o máximo global .

Aplicações do mundo real em IA

Os algoritmos evolutivos são versáteis e têm sido aplicados com sucesso em vários domínios dentro do aprendizado profundo (DL) e da engenharia.

Ajuste automatizado de hiperparâmetros

Uma das aplicações mais práticas das EAs é Ajuste de hiperparâmetros. As redes neurais modernas exigem a configuração de dezenas de parâmetros — como taxa de aprendizagem, decaimento de peso e momentum — que afetam significativamente o desempenho. Os EAs podem automatizar esse tedioso processo de tentativa e erro, evoluindo as definições de configuração. Por exemplo, o tune() O método na Ultralytics usa um algoritmo genético para descobrir os melhores hiperparâmetros de treino para YOLO26 modelos em conjuntos de dados personalizados .

Neural Architecture Search (NAS)

Os EAs são a pedra angular da Pesquisa de Arquitetura Neural (NAS). Em vez de engenheiros humanos projetarem manualmente a estrutura de uma rede neural (NN), um algoritmo evolutivo pode "desenvolver" a arquitetura. Ele testa diferentes combinações de camadas, neurónios e conexões, desenvolvendo estruturas eficientes que equilibram velocidade e precisão. Essa técnica levou à criação de backbones altamente eficientes, como o EfficientNet, que são otimizados para restrições específicas de hardware.

Algoritmos evolutivos vs. Inteligência coletiva

Embora ambas sejam estratégias de otimização inspiradas na natureza, é útil distinguir as EAs da Inteligência Coletiva (SI).

  • Algoritmos Evolucionários: Baseiam-se na mudança geracional. Os indivíduos (soluções) vivem, reproduzem-se com base na aptidão e morrem, sendo substituídos pelos seus descendentes. Os principais impulsionadores são operadores genéticos como mutação e cruzamento.
  • Inteligência coletiva: imita a interação social dentro de um grupo, como um bando de pássaros ou um cardume de peixes. Algoritmos como a Otimização por Enxame de Partículas (PSO) envolvem uma população de agentes que se movem pelo espaço de pesquisa e ajustam as suas posições com base na sua própria experiência e no sucesso dos seus vizinhos, sem substituição geracional.

Implementando otimização com Ultralytics

Os profissionais podem aproveitar os algoritmos genéticos diretamente para otimizar os seus modelos de deteção de objetos. O Ultralytics tune O método executa um processo evolutivo para mutar hiperparâmetros ao longo de várias gerações, identificando automaticamente as configurações que produzem o melhor desempenho nos seus dados de validação.

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 refinamento automatizado permite que os programadores vão além das suposições manuais. Para equipas que estão a expandir as suas operações, gerir essas experiências e acompanhar a evolução do desempenho do modelo pode ser simplificado usando a Ultralytics , que visualiza métricas de treino e facilita a implantação do modelo.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora