Ultralytics YOLO27:
Guias

O que é EfficientNet? Uma visão geral rápida

Compreenda a arquitetura EfficientNet e a sua magia de escalabilidade composta! Explore EfficientNet B0-B7 para obter eficiência de alto nível na classificação e segmentação de imagens.

ABAbirami Vina9 min read
Uma visão geral da arquitetura EfficientNet

Em 2019, investigadores da Google AI apresentaram o EfficientNet, um modelo de visão computacional de última geração criado para reconhecer objetos e padrões em imagens. Foi concebido principalmente para a classificação de imagens, que consiste em atribuir uma imagem a uma de várias categorias predefinidas. No entanto, atualmente, o EfficientNet também serve como backbone para tarefas mais complexas, como deteção de objetos, segmentação e aprendizagem por transferência.

Antes do EfficientNet, estes modelos de aprendizagem automática e de IA para visão tentavam melhorar a precisão adicionando mais camadas ou aumentando o tamanho dessas camadas. As camadas são as etapas de um modelo de rede neuronal (um tipo de modelo de aprendizagem profunda inspirado no cérebro humano) que processam dados para aprender padrões e melhorar a precisão.

Estas alterações criaram um compromisso, tornando os modelos de IA tradicionais maiores e mais lentos, enquanto o aumento adicional da precisão era frequentemente mínimo em comparação com o aumento significativo do poder computacional necessário.

O EfficientNet adotou uma abordagem diferente. Aumentou simultaneamente a profundidade (número de camadas), a largura (número de unidades em cada camada) e a resolução da imagem (nível de detalhe das imagens de entrada) de forma equilibrada. Este método, denominado escalabilidade composta, utiliza de forma fiável todo o poder de processamento disponível. O resultado final é um modelo menor e mais rápido, capaz de superar modelos mais antigos como o ResNet ou o DenseNet.

Atualmente, modelos de visão computacional mais recentes, como o Ultralytics YOLO11, oferecem maior precisão, velocidade e eficiência. Ainda assim, o EfficientNet continua a ser um marco importante que influenciou o design de muitas arquiteturas avançadas.

Neste artigo, vamos explicar o EfficientNet em cinco minutos, abordando o seu funcionamento, o que o torna único e por que continua a ser relevante na visão computacional. Vamos começar!

O que é o EfficientNet?#

Antes de o EfficientNet ser concebido, a maioria dos modelos de reconhecimento de imagens melhorava a precisão ajustando as suas camadas ou aumentando o tamanho da imagem de entrada para captar mais detalhes. Embora estas estratégias melhorassem os resultados, também tornavam os modelos mais pesados e exigentes. Isto significava que precisavam de mais memória e de hardware melhor.

Em vez de alterar camadas individuais, o EfficientNet aumenta a profundidade, a largura e a resolução da imagem em conjunto, utilizando um método denominado escalabilidade composta. Esta abordagem permite que o modelo cresça de forma eficiente sem sobrecarregar nenhum aspeto individual.

A arquitetura do EfficientNet processa as imagens através de uma série de blocos, cada um construído a partir de módulos mais pequenos. O número de módulos em cada bloco depende do tamanho do modelo.

Os blocos de construção do EfficientNet

Fig. 1. Os blocos de construção do EfficientNet. (Fonte)

As versões mais pequenas utilizam menos módulos, enquanto as versões maiores repetem os módulos com mais frequência. Este design flexível permite ao EfficientNet oferecer elevada precisão e eficiência numa vasta gama de aplicações, desde dispositivos móveis a sistemas de grande escala.

Como funciona a escalabilidade composta#

O método de escalabilidade composta expande a profundidade, a largura e a resolução da imagem de um modelo, mas mantém-nas equilibradas. Isto permite utilizar o poder computacional de forma eficiente. A série começa com um modelo base mais pequeno denominado EfficientNet-B0, que serve de fundação para todas as outras versões.

A partir do B0, os modelos aumentam de escala para variantes maiores denominadas EfficientNet-B1 a EfficientNet-B7. A cada passo, a rede ganha camadas adicionais, aumenta o número de canais (unidades utilizadas para o processamento) e processa imagens de entrada de resolução mais elevada. A quantidade de crescimento em cada passo é determinada por um parâmetro denominado coeficiente composto, que garante que a profundidade, a largura e a resolução aumentam em proporções fixas, em vez de independentemente.

A escalabilidade composta aumenta a largura, a profundidade e a resolução da imagem de um modelo

Fig. 2. A escalabilidade composta aumenta a largura, a profundidade e a resolução da imagem de um modelo. (Fonte)

Arquitetura do EfficientNet#

De seguida, vamos analisar a arquitetura do EfficientNet.

Baseia-se no MobileNetV2, um modelo leve de visão computacional otimizado para dispositivos móveis e incorporados. No seu núcleo encontra-se o bloco de convolução de gargalo invertido móvel (MBConv), uma camada especial que processa dados de imagem como uma convolução padrão, mas com menos cálculos. Este bloco torna o modelo rápido e mais eficiente em termos de memória.

Dentro de cada bloco MBConv encontra-se um módulo de compressão e excitação (SE). Este módulo ajusta a intensidade de diferentes canais da rede. Reforça a intensidade dos canais essenciais e reduz a intensidade dos outros. O módulo ajuda a rede a concentrar-se nas características mais importantes de uma imagem, ignorando o restante. O modelo EfficientNet também utiliza uma função de ativação Swish (uma função matemática que ajuda a rede a aprender padrões), o que lhe permite identificar padrões em imagens melhor do que os métodos mais antigos.

Além disso, utiliza DropConnect, em que algumas ligações dentro da rede são desligadas aleatoriamente durante o treino. Este método de regularização estocástica (uma técnica de aleatorização que impede o modelo de memorizar os dados de treino em vez de generalizar) reduz o sobreajuste ao obrigar a rede a aprender representações de características mais robustas (padrões mais fortes e gerais nos dados), que são transferidas melhor para dados não observados.

Arquitetura do EfficientNet-B0

Fig. 3. Arquitetura do EfficientNet-B0 (Fonte)

Uma breve visão geral das variantes do modelo EfficientNet#

Agora que compreendemos melhor como funcionam os modelos EfficientNet, vamos abordar as diferentes variantes de modelo.

Os modelos EfficientNet variam de B0 a B7, começando pelo B0 como base que equilibra velocidade e precisão. Cada versão aumenta a profundidade, a largura e a resolução da imagem, melhorando a precisão. No entanto, também exige mais poder computacional, desde o B1 e o B2 até aos B6 e B7 de elevado desempenho.

Embora os modelos EfficientNet-B3 e EfficientNet-B4 proporcionem um equilíbrio para imagens maiores, o B5 é frequentemente escolhido para conjuntos de dados complexos que exigem precisão. Para além destes modelos, o modelo mais recente, EfficientNet V2, pode melhorar a velocidade de treino, lidar melhor com conjuntos de dados pequenos e está otimizado para hardware moderno.

Aplicações do EfficientNet#

O EfficientNet consegue produzir resultados precisos utilizando menos memória e poder de processamento do que muitos outros modelos. Isto torna-o útil em muitos campos, desde a investigação científica até aos produtos que as pessoas utilizam diariamente.

Análise de imagens médicas#

As imagens médicas, como as tomografias computadorizadas dos pulmões, contêm frequentemente detalhes subtis que são fundamentais para um diagnóstico preciso. Os modelos de IA podem ajudar a analisar estas imagens para revelar padrões que podem ser difíceis de detetar pelos seres humanos. Uma adaptação do EfficientNet para este fim é o MONAI (Rede Médica Aberta para IA) EfficientNet, especificamente concebido para a análise de imagens médicas.

Com base na arquitetura do EfficientNet, os investigadores desenvolveram também o Lung-EffNet, um modelo que classifica tomografias computadorizadas dos pulmões para detetar tumores. Consegue categorizar os tumores como benignos, malignos ou normais, alcançando uma precisão registada superior a 99% em contextos experimentais.

Classificação de imagens de tumores utilizando o Lung-EffNet

Fig. 4. Classificação de imagens de tumores utilizando o Lung-EffNet. (Fonte)

Deteção de objetos em tempo real#

A deteção de objetos é o processo de encontrar objetos numa imagem e determinar as suas localizações. É uma componente essencial de aplicações como sistemas de segurança, veículos autónomos e drones.

O EfficientNet tornou-se importante nesta área porque oferecia uma forma muito eficiente de extrair características de imagens. O seu método de aumentar a profundidade, a largura e a resolução mostrou como os modelos podiam ser precisos sem serem demasiado pesados ou lentos. É por isso que muitos sistemas de deteção, como o EfficientDet, utilizam o EfficientNet como backbone.

Os modelos mais recentes, como o Ultralytics YOLO11, partilham o mesmo objetivo de combinar velocidade e precisão. Esta tendência para modelos eficientes foi fortemente influenciada por ideias de arquiteturas como o EfficientNet.

Vantagens e desvantagens do EfficientNet#

Eis alguns benefícios da utilização do EfficientNet em projetos de visão computacional:

  • Elevada precisão com menos parâmetros: O EfficientNet consegue oferecer uma precisão semelhante ou superior à de modelos mais antigos, como o ResNet ou o DenseNet. No entanto, utiliza menos parâmetros, o que o torna mais rápido de treinar e mais fácil de implementar.
  • Família de modelos escalável: Com versões que vão de B0 a B7, podes escolher uma versão que corresponda ao teu hardware e aos teus requisitos de precisão sem alterar a rede base.
  • Adequado para aprendizagem por transferência: O EfficientNet consegue oferecer um desempenho fiável em aprendizagem por transferência, um processo de retreino de um modelo pré-treinado para uma tarefa personalizada. Pode funcionar como backbone para uma variedade de tarefas de visão computacional. Também demonstrou bons resultados quando sujeito a ajuste fino. Por exemplo, alcançou uma precisão de última geração no CIFAR-100, um conjunto de dados de classificação de imagens amplamente utilizado, com significativamente menos parâmetros do que os modelos anteriores.

Embora existam muitos benefícios associados à utilização do EfficientNet, estas são algumas das suas limitações que deves ter em conta:

  • Requer mais memória: Versões como o EfficientNet-B6 e o EfficientNet-B7 exigem muita memória GPU.
  • Escalabilidade ajustada para o ImageNet: As definições de escalabilidade foram concebidas para o conjunto de dados ImageNet, pelo que o desempenho pode diminuir em conjuntos de dados muito diferentes sem ajuste fino. Isto é especialmente válido para conjuntos de dados pequenos, uma vez que a arquitetura e a escalabilidade do EfficientNet foram concebidas para um conjunto de dados grande e diversificado como o ImageNet, que fornece dados suficientes para justificar a sua profundidade e largura.
  • Mais lento em algum hardware: O EfficientNet utiliza camadas denominadas MBConv, concebidas para proporcionar eficiência em hardware moderno. Em GPUs ou CPUs mais antigas, estas camadas podem ser executadas mais lentamente.

Principais conclusões#

O EfficientNet mudou a forma como os modelos de visão computacional crescem, mantendo a profundidade, a largura e a resolução da imagem em equilíbrio. Continua a ser um modelo importante e também influenciou arquiteturas mais recentes. Em particular, ocupa um lugar relevante na história da visão computacional.

Junta-te à nossa comunidade e ao nosso repositório do GitHub para explorares mais sobre IA. Consulta as nossas páginas de soluções para saberes mais sobre IA na área da saúde e visão computacional no setor automóvel. Descobre as nossas opções de licenciamento e começa hoje a desenvolver com visão computacional!

Explore solutions

Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em insights em tempo real para agricultura, aquicultura, monitoramento ambiental, conservação e análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Leva a IA de visão para o monitoramento aéreo com os modelos do Ultralytics YOLO. Potencializa drones, fluxos de trabalho aeroespaciais, conservação ambiental e indústrias geoespaciais com soluções de visão computacional.
Saiba mais

Protege cada local com os modelos do Ultralytics YOLO. A IA de visão alimenta monitoramento de perímetro, detecção de ameaças, reconhecimento de placas e segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Dê mais inteligência às suas máquinas com os modelos Ultralytics YOLO. A IA de visão na robótica permite a navegação autónoma, a perceção, o rastreamento de objetos e o controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Simplifique a logística com os modelos Ultralytics YOLO. A IA de visão permite a inspeção de encomendas, a triagem, o rastreamento de veículos e a monitorização da segurança dos armazéns em tempo real.
Saiba mais
Visão computacional no retalho

Visão computacional no retalho

Reinvente o retalho com os modelos Ultralytics YOLO. A IA de visão permite o rastreamento do inventário, a monitorização de prateleiras, a gestão de filas e informações mais inteligentes sobre os clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Cria soluções de saúde com modelos Ultralytics YOLO. A Vision AI na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitorização de pacientes.
Saiba mais
Visão computacional na produção

Visão computacional na produção

Otimiza a produção com modelos Ultralytics YOLO. A Vision AI impulsiona o controlo de qualidade, a deteção de defeitos, a conformidade com EPI e a automatização das linhas de montagem.
Saiba mais
Visão computacional no setor automóvel

Visão computacional no setor automóvel

Aplique visão computacional no setor automóvel com modelos Ultralytics YOLO. A IA de visão melhora a segurança rodoviária, a assistência ao condutor e a automatização de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão para a agricultura inteligente com modelos Ultralytics YOLO. Potencie a monitorização das culturas, o acompanhamento do gado e a agricultura de precisão para obter colheitas maiores e mais inteligentes.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em insights em tempo real para agricultura, aquicultura, monitoramento ambiental, conservação e análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Leva a IA de visão para o monitoramento aéreo com os modelos do Ultralytics YOLO. Potencializa drones, fluxos de trabalho aeroespaciais, conservação ambiental e indústrias geoespaciais com soluções de visão computacional.
Saiba mais

Protege cada local com os modelos do Ultralytics YOLO. A IA de visão alimenta monitoramento de perímetro, detecção de ameaças, reconhecimento de placas e segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Dê mais inteligência às suas máquinas com os modelos Ultralytics YOLO. A IA de visão na robótica permite a navegação autónoma, a perceção, o rastreamento de objetos e o controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Simplifique a logística com os modelos Ultralytics YOLO. A IA de visão permite a inspeção de encomendas, a triagem, o rastreamento de veículos e a monitorização da segurança dos armazéns em tempo real.
Saiba mais
Visão computacional no retalho

Visão computacional no retalho

Reinvente o retalho com os modelos Ultralytics YOLO. A IA de visão permite o rastreamento do inventário, a monitorização de prateleiras, a gestão de filas e informações mais inteligentes sobre os clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Cria soluções de saúde com modelos Ultralytics YOLO. A Vision AI na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitorização de pacientes.
Saiba mais
Visão computacional na produção

Visão computacional na produção

Otimiza a produção com modelos Ultralytics YOLO. A Vision AI impulsiona o controlo de qualidade, a deteção de defeitos, a conformidade com EPI e a automatização das linhas de montagem.
Saiba mais
Visão computacional no setor automóvel

Visão computacional no setor automóvel

Aplique visão computacional no setor automóvel com modelos Ultralytics YOLO. A IA de visão melhora a segurança rodoviária, a assistência ao condutor e a automatização de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão para a agricultura inteligente com modelos Ultralytics YOLO. Potencie a monitorização das culturas, o acompanhamento do gado e a agricultura de precisão para obter colheitas maiores e mais inteligentes.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em insights em tempo real para agricultura, aquicultura, monitoramento ambiental, conservação e análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Leva a IA de visão para o monitoramento aéreo com os modelos do Ultralytics YOLO. Potencializa drones, fluxos de trabalho aeroespaciais, conservação ambiental e indústrias geoespaciais com soluções de visão computacional.
Saiba mais

Protege cada local com os modelos do Ultralytics YOLO. A IA de visão alimenta monitoramento de perímetro, detecção de ameaças, reconhecimento de placas e segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Dê mais inteligência às suas máquinas com os modelos Ultralytics YOLO. A IA de visão na robótica permite a navegação autónoma, a perceção, o rastreamento de objetos e o controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Simplifique a logística com os modelos Ultralytics YOLO. A IA de visão permite a inspeção de encomendas, a triagem, o rastreamento de veículos e a monitorização da segurança dos armazéns em tempo real.
Saiba mais
Visão computacional no retalho

Visão computacional no retalho

Reinvente o retalho com os modelos Ultralytics YOLO. A IA de visão permite o rastreamento do inventário, a monitorização de prateleiras, a gestão de filas e informações mais inteligentes sobre os clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Cria soluções de saúde com modelos Ultralytics YOLO. A Vision AI na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitorização de pacientes.
Saiba mais
Visão computacional na produção

Visão computacional na produção

Otimiza a produção com modelos Ultralytics YOLO. A Vision AI impulsiona o controlo de qualidade, a deteção de defeitos, a conformidade com EPI e a automatização das linhas de montagem.
Saiba mais
Visão computacional no setor automóvel

Visão computacional no setor automóvel

Aplique visão computacional no setor automóvel com modelos Ultralytics YOLO. A IA de visão melhora a segurança rodoviária, a assistência ao condutor e a automatização de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão para a agricultura inteligente com modelos Ultralytics YOLO. Potencie a monitorização das culturas, o acompanhamento do gado e a agricultura de precisão para obter colheitas maiores e mais inteligentes.
Saiba mais

Vamos construir juntos o futuro da IA!

Começa a tua jornada com o futuro da aprendizagem automática