July 17, 2025
Seleção evolutiva de recursos: uma nova arquitetura de seleção de recursos do Wrapper baseada em estratégias evolutivas
O EFS adapta características como cromossomos, usando cruzamento e mutação para otimizar modelos, inspirados na evolução da natureza.

A ideia por trás do EFS
O EFS foi elaborado a partir da ideia da evolução das criaturas no meio ambiente. Como as criaturas celulares mais simples podem se transformar em organismos multicelulares complexos ao passar por um ciclo de evolução. Sobrevivendo e se adaptando às piores condições de sobrevivência que lhes são oferecidas. Nós nos inspiramos nisso e trabalhamos em um algoritmo que cresce do zero. Aqui, pegamos os conjuntos de recursos como cromossomos e desenvolvemos esses conjuntos de recursos para encontrar os melhores mínimos ideais para o problema em questão. Esses conjuntos passaram por diferentes gerações e precisam se adaptar para sobreviver nessa geração e passar para as gerações futuras. Algumas criaturas {conjuntos de características} sofrem mutações, enquanto outras realizam cruzamentos entre conjuntos diferentes para se adaptar e evoluir a provação fornecida. Essas etapas ajudam as criaturas a explorar e explorar o espaço de busca com mais eficiência.
O que é seleção de recursos?
Antes de nos aprofundarmos no EFS, vamos entender o que é a seleção de recursos. A seleção de recursos é um processo crucial no aprendizado de máquina que visa identificar e selecionar os recursos mais relevantes de um conjunto maior de recursos potenciais.
“A seleção de recursos é uma abordagem para selecionar o melhor conjunto de recursos de um pool de recursos. Seu objetivo é aumentar o desempenho do modelo de aprendizado de máquina fornecendo informações suficientes e evitando recursos redundantes ou irrelevantes.”
Ao escolher os recursos certos, podemos melhorar o desempenho do modelo, reduzir o sobreajuste e acelerar os tempos de treinamento.
Como o EFS utiliza a seleção de recursos
- Cromossomos como conjuntos de recursos: No EFS, cada solução potencial (um subconjunto de características) é representada como um cromossomo. Esses cromossomos são cadeias de bits em que cada bit corresponde a um recurso - 1 indica que o recurso está selecionado e 0 indica que não está.
- Crescimento evolutivo: O EFS começa com soluções simples (cromossomos com poucas características ativas) e aumenta gradualmente a complexidade ao longo das gerações. Isso imita como a vida evoluiu de organismos simples para complexos.
- Adaptação geracional: Em cada geração, os cromossomos (conjuntos de características) devem se “adaptar” para sobreviver. Essa adaptação é medida pelo desempenho dos recursos selecionados em um modelo de aprendizado de máquina. Por exemplo, pontuação F1, pontuação roc_auc, etc.
- Operações impulsionadas pelo caos: O EFS aplica a teoria do caos, especificamente uma função de mapa logístico, para introduzir aleatoriedade controlada na geração de novos cromossomos e na orientação das operações de mutação.
- Cruzamento e mutação:
- Crossover: O EFS combina recursos de diferentes cromossomos bem-sucedidos para criar novos conjuntos de recursos.

- Mutação: alguns cromossomos sofrem mudanças aleatórias em sua seleção de características.

- Seleção natural: Somente os conjuntos de recursos com melhor desempenho (aqueles que levam à maior precisão do modelo) sobrevivem até a próxima geração.
- Exploração versus exploração: O algoritmo equilibra a exploração de novas combinações de recursos com a exploração de boas soluções conhecidas, permitindo que ele pesquise minuciosamente o espaço de recursos.
- Estratégias de evolução: A principal estratégia para a arquitetura proposta é aumentar o número de genes ativos, o que permite que o método proposto alcance uma solução ótima. O número de características ativas nos cromossomos aumenta a cada geração, permitindo que o algoritmo encontre o conjunto mínimo de características que produzem o melhor desempenho.
Essa abordagem permite que o EFS navegue com eficiência pelo vasto espaço de combinações possíveis de recursos, aprimorando gradualmente um subconjunto ideal de recursos para o problema em questão.
O algoritmo EFS
O EFS funciona evoluindo os conjuntos de recursos para encontrar a solução ideal para um determinado problema. Veja como ele funciona:
- Inicialização: comece com conjuntos de recursos simples (cromossomos).
- Crescimento geracional: aumente a complexidade ao longo das gerações.
- Adaptação: os conjuntos de recursos devem se adaptar para sobreviver a cada geração.
- Mutação e cruzamento: alguns conjuntos de características sofrem mutações aleatórias, enquanto outros se combinam por meio de cruzamentos.
- Seleção: Somente os conjuntos com melhor desempenho sobrevivem até a próxima geração.
Como os criadores descrevem: “Esses conjuntos passam por gerações diferentes e precisam se adaptar para sobreviver nessa geração e passar para as gerações futuras. Algumas criaturas (conjuntos de características) sofrem mutações, outras realizam cruzamentos entre diferentes conjuntos para se adaptar e evoluir à provação proporcionada.”
Essa abordagem evolutiva permite que o EFS explore e explore com eficiência o espaço de busca, imitando a seleção natural para encontrar combinações ideais de recursos.
Seleção evolutiva de recursos (EFS): configuração passo a passo
Etapa 1: Inicialização
- Crie um conjunto de cromossomos e adicione-os a uma “Lista local”
- Os cromossomos são cadeias de bits de tamanho SF (número de características)
Etapa 2: Criação de máscara
- Para cada cromossomo, crie uma máscara, um valor θ e uma solução
- Inicialize máscaras aleatoriamente e codifique usando o código Gray
- Use máscaras para determinar genes ativos em cruzamento e mutação
Etapa 3: Configuração de crescimento geracional
- Defina o máximo de gerações (mg) < Número de características (SF)
- Configure o número de genes ativos para aumentar a cada geração
Etapa 4: Configuração de crossover
- Implemente um cruzamento uniforme: use a máscara do primeiro passo
- Implemente um cruzamento simples: combine a primeira metade de um dos pais com a segunda metade do outro
Etapa 5: Configuração de mutação
- Implementar mutação com máscara: OU operação entre o cromossomo e sua máscara
- Implemente uma mutação simples: inverta aleatoriamente bits em genes selecionados
Etapa 6: Configuração da estratégia Evolution
- Configure o sistema para aumentar o número de genes ativos em cada geração
- Configurar mecanismo para combinar os vencedores da geração anterior com a geração atual
- Prepare o cruzamento entre bons e maus desempenhos para manter a diversidade
Etapa 7: Configuração de avaliação
- Use o classificador K-Nearest Neighbor (KNN) como função de condicionamento físico
- Defina K = 3 com distância absoluta média
Etapa 8: Critérios de res
- Defina o número de gerações para (Número de recursos - 1)
- Prepare-se para produzir o cromossomo com o maior valor de aptidão da lista global
Etapa 9: Loop principal
- Para cada geração: a. Gere novos cromossomos b. Avalie os cromossomos c. Realizar a seleção d. Aplicar cruzamento e mutação e. Atualizar a lista global
Etapa 10: Saída final
- Retorne o cromossomo de melhor desempenho (subconjunto de recursos) e suas métricas de desempenho
Confira o código-fonte aberto disponibilizado pelos engenheiros da CW aqui.
Confira o artigo completo de Aaryan Dubey, Alexandre Hoppe Inoue, Pedro Terra Fernandes Birmann, Sammuel Ramos da Silva aqui.
Explore our content
Get to know and learn more about Cloudwalk below.





![[Sessões do clube de papel] LIMO: Menos é mais para raciocinar](https://cdn.prod.website-files.com/6654b3697a9d140e0ca14e14/68c29fab9171604aaae334a4_ChatGPT%20Image%2011%20de%20set.%20de%202025.png)
