Neural Architecture Search (NAS)
Saiba como a Pesquisa de Arquitetura Neural (NAS) automatiza o design de modelos de deep learning. Descubra os seus mecanismos fundamentais e explore modelos otimizados, como o Ultralytics YOLO26.
A Pesquisa de Arquitetura Neural (NAS) é uma técnica sofisticada no domínio da Aprendizagem Automática (AutoML) que automatiza o design de redes neuronais artificiais. Tradicionalmente, conceber arquiteturas de aprendizagem profunda (DL) de alto desempenho exigia conhecimentos especializados, intuição e um processo demorado de tentativa e erro. A NAS substitui este processo manual por estratégias algorítmicas que exploram sistematicamente uma vasta gama de topologias de redes para descobrir a estrutura ideal para uma tarefa específica. Ao testar várias combinações de camadas e operações, a NAS pode identificar arquiteturas que superam significativamente os modelos concebidos por humanos em termos de precisão, eficiência computacional ou velocidade de inferência.
Mecanismos fundamentais da NAS#
O processo de descoberta de uma arquitetura superior envolve geralmente três dimensões fundamentais que interagem para encontrar a melhor rede neural (NN):
-
Espaço de pesquisa: define o conjunto de todas as arquiteturas possíveis que o algoritmo pode explorar. Funciona como uma biblioteca de blocos de construção, como filtros de convolução, camadas de pooling e várias funções de ativação. Um espaço de pesquisa bem definido limita a complexidade para garantir que a pesquisa se mantém computacionalmente viável, permitindo simultaneamente flexibilidade suficiente para a inovação.
-
Estratégia de pesquisa: em vez de testar todas as possibilidades (força bruta), a NAS utiliza algoritmos inteligentes para navegar eficientemente pelo espaço de pesquisa. As abordagens comuns incluem a aprendizagem por reforço, na qual um agente aprende a gerar arquiteturas melhores ao longo do tempo, e os algoritmos evolutivos, que mutam e combinam os modelos com melhor desempenho para gerar candidatos superiores.
-
Estratégia de estimativa de desempenho: treinar todas as redes candidatas de raiz é proibitivamente lento. Para acelerar este processo, a NAS utiliza técnicas de estimativa — como treinar durante menos épocas, utilizar conjuntos de dados de referência com menor resolução ou recorrer à partilha de pesos — para classificar rapidamente o potencial de uma arquitetura candidata.
Aplicações no mundo real#
A NAS tornou-se fundamental em setores onde as limitações de hardware ou os requisitos de desempenho são rigorosos, expandindo os limites da visão computacional (CV) e de outros domínios de IA.
- Computação eficiente na periferia: implementar IA em dispositivos móveis exige modelos leves e rápidos. A NAS é amplamente utilizada para descobrir arquiteturas como MobileNetV3 e EfficientNet que minimizam a latência de inferência mantendo uma elevada precisão. Isto é essencial para aplicações de IA na periferia, como a análise de vídeo em tempo real em câmaras inteligentes ou drones autónomos.
- Imagiologia médica: na análise de imagens médicas, a precisão é fundamental. A NAS pode adaptar redes para detetar anomalias subtis em radiografias ou exames de RM, encontrando frequentemente novas vias de extração de características que os engenheiros humanos poderiam não detetar. Isto resulta em ferramentas mais fiáveis para identificar condições como tumores cerebrais ou fraturas com maior sensibilidade.
NAS vs. conceitos relacionados#
Para compreender o papel específico da NAS, é útil distingui-la de técnicas de otimização semelhantes:
- NAS vs. ajuste de hiperparâmetros: embora ambos envolvam otimização, o ajuste de hiperparâmetros concentra-se em ajustar definições de configuração, como a taxa de aprendizagem ou o tamanho do lote, para uma arquitetura fixa. Em contrapartida, a NAS altera a estrutura fundamental do próprio modelo, como o número de camadas ou a forma como os neurónios estão ligados.
- NAS vs. aprendizagem por transferência: a aprendizagem por transferência utiliza um modelo existente e pré-treinado e adapta os seus pesos a uma nova tarefa. A NAS cria a arquitetura do modelo de raiz, ou procura uma backbone melhor, antes do início do treino.
Utilização de modelos derivados da NAS#
Embora executar uma pesquisa NAS completa exija recursos computacionais de GPU significativos, os programadores podem utilizar facilmente modelos criados através da NAS. Por exemplo, a arquitetura YOLO-NAS foi descoberta utilizando estes princípios de pesquisa para otimizar tarefas de deteção de objetos.
O exemplo seguinte em Python demonstra como carregar e utilizar um modelo NAS pré-pesquisado através do pacote ultralytics:
from ultralytics import NAS
# Load a pre-trained YOLO-NAS model (architecture found via NAS)
# 'yolo_nas_s.pt' refers to the small version of the model
model = NAS("yolo_nas_s.pt")
# Run inference on an image to detect objects
# This utilizes the optimized architecture for fast detection
results = model("https://ultralytics.com/images/bus.jpg")
# Print the top detected class
print(f"Detected: {results[0].names[int(results[0].boxes.cls[0])]}")Para quem pretende treinar modelos de última geração sem a complexidade da NAS, o Ultralytics YOLO26 oferece uma arquitetura altamente otimizada de origem, incorporando os avanços mais recentes da investigação. Podes gerir facilmente conjuntos de dados, o treino e a implementação destes modelos utilizando a Ultralytics Platform, que simplifica todo o ciclo de vida de MLOps.






