Modelos e plataformas de IA
SEER: Uma Quebra na Visão Computacional Auto-Supervisionada?

Nos últimos dez anos, a Inteligência Artificial (IA) e o Aprendizado de Máquina (AM) têm feito um progresso tremendo. Hoje, eles são mais precisos, eficientes e capazes do que nunca. Os modelos de IA e AM modernos podem reconhecer objetos em imagens ou arquivos de vídeo com precisão e gerar texto e discurso que rivaliza com a inteligência humana.
Os modelos de IA e AM de hoje dependem fortemente do treinamento em conjuntos de dados rotulados que os ensinam a interpretar um bloco de texto, identificar objetos em uma imagem ou quadro de vídeo e realizar várias outras tarefas.
Apesar de suas capacidades, os modelos de IA e AM não são perfeitos, e os cientistas estão trabalhando para construir modelos que possam aprender com as informações que recebem, sem depender de dados rotulados ou anotados. Essa abordagem é conhecida como aprendizado auto-supervisionado, e é um dos métodos mais eficientes para construir modelos de AM e IA que têm o “senso comum” ou conhecimento de fundo para resolver problemas que estão além das capacidades dos modelos de IA atuais.
O aprendizado auto-supervisionado já mostrou seus resultados no Processamento de Linguagem Natural, pois permitiu que os desenvolvedores treinassem modelos grandes que possam trabalhar com uma enorme quantidade de dados, e levou a várias quebras em campos como inferência de linguagem natural, tradução de máquina e resposta a perguntas.
O modelo SEER, desenvolvido pela Facebook (META ) AI, visa maximizar as capacidades do aprendizado auto-supervisionado no campo da visão computacional. O SEER ou SElf SupERvised é um modelo de aprendizado auto-supervisionado de visão computacional que tem mais de um bilhão de parâmetros, e é capaz de encontrar padrões ou aprender mesmo a partir de um grupo aleatório de imagens encontradas na internet sem anotações ou rótulos adequados.
A Necessidade do Aprendizado Auto-Supervisionado na Visão Computacional
A anotação de dados ou rotulagem de dados é uma etapa de pré-processamento no desenvolvimento de modelos de aprendizado de máquina e inteligência artificial. O processo de anotação de dados identifica dados brutos, como imagens ou quadros de vídeo, e adiciona rótulos aos dados para especificar o contexto dos dados para o modelo. Esses rótulos permitem que o modelo faça previsões precisas nos dados.
Um dos maiores obstáculos e desafios que os desenvolvedores enfrentam ao trabalhar com modelos de visão computacional é encontrar dados anotados de alta qualidade. Os modelos de visão computacional atuais dependem desses conjuntos de dados rotulados para aprender os padrões que lhes permitem reconhecer objetos em uma imagem.
A anotação de dados e seu uso nos modelos de visão computacional apresentam os seguintes desafios:
Gerenciamento da Qualidade do Conjunto de Dados
Provavelmente, o maior obstáculo que os desenvolvedores enfrentam é obter acesso a conjuntos de dados de alta qualidade consistentemente, pois conjuntos de dados de alta qualidade com rótulos adequados e imagens claras resultam em modelos mais precisos e eficazes. No entanto, obter conjuntos de dados de alta qualidade consistentemente tem seus próprios desafios.
Gerenciamento da Força de Trabalho
A rotulagem de dados frequentemente vem com problemas de gerenciamento de força de trabalho, principalmente porque um grande número de trabalhadores é necessário para processar e rotular grandes quantidades de dados não estruturados e não rotulados, garantindo a qualidade. Portanto, é essencial para os desenvolvedores encontrar um equilíbrio entre qualidade e quantidade ao rotular os dados.
Restrições Financeiras
Provavelmente, o maior obstáculo é as restrições financeiras que acompanham o processo de rotulagem de dados, e a maioria das vezes, o custo de rotulagem de dados é uma porcentagem significativa do custo total do projeto.
Como você pode ver, a anotação de dados é um grande obstáculo no desenvolvimento de modelos de visão computacional avançados, especialmente quando se trata de desenvolver modelos complexos que lidam com uma grande quantidade de dados de treinamento. É por isso que a indústria de visão computacional precisa de aprendizado auto-supervisionado para desenvolver modelos complexos e avançados que possam lidar com tarefas que estão além do alcance dos modelos atuais.
Com isso dito, já existem muitos modelos de aprendizado auto-supervisionado que têm se saído bem em ambientes controlados, e principalmente no conjunto de dados ImageNet. Embora esses modelos possam estar fazendo um bom trabalho, eles não atendem à condição principal do aprendizado auto-supervisionado em visão computacional: aprender a partir de qualquer conjunto de dados não limitado ou imagem aleatória, e não apenas a partir de um conjunto de dados bem definido. Quando implementado idealmente, o aprendizado auto-supervisionado pode ajudar a desenvolver modelos de visão computacional mais precisos e capazes que sejam eficazes e viáveis.
SEER ou SElf-supERvised Model: Uma Introdução
As tendências recentes na indústria de IA e AM indicam que as abordagens de pré-treinamento de modelo, como semi-supervisionado, supervisionado fraco e auto-supervisionado, podem melhorar significativamente o desempenho da maioria dos modelos de aprendizado profundo para tarefas downstream.
Existem dois fatores principais que contribuíram significativamente para o aumento do desempenho desses modelos de aprendizado profundo.
Pré-Treinamento em Conjuntos de Dados Maciços
O pré-treinamento em conjuntos de dados maciços geralmente resulta em melhor precisão e desempenho, pois expõe o modelo a uma grande variedade de dados. Um conjunto de dados grande permite que os modelos entendam melhor os padrões nos dados e, em última análise, resulta em um desempenho melhor em cenários do mundo real.
Alguns dos modelos de melhor desempenho, como o modelo de linguagem GPT-3 e o modelo de reconhecimento de fala Wav2vec 2.0, são treinados em conjuntos de dados maciços. O modelo de linguagem GPT-3 usa um conjunto de dados de pré-treinamento com mais de 300 bilhões de palavras, enquanto o modelo de reconhecimento de fala Wav2vec 2.0 usa um conjunto de dados com mais de 53 mil horas de dados de áudio.
Modelos com Capacidade Maciça
Modelos com um grande número de parâmetros geralmente produzem resultados precisos, pois um número maior de parâmetros permite que o modelo se concentre apenas nos objetos nos dados que são necessários, em vez de se concentrar no ruído ou interferência nos dados.
Os desenvolvedores no passado fizeram tentativas de treinar modelos de aprendizado auto-supervisionado em dados não rotulados ou não curados, mas com conjuntos de dados menores que continham apenas alguns milhões de imagens. Porém, os modelos de aprendizado auto-supervisionado podem produzir resultados precisos quando treinados em uma grande quantidade de dados não rotulados e não curados? É exatamente a pergunta que o modelo SEER visa responder.
O modelo SEER é uma estrutura de aprendizado profundo que visa registrar imagens disponíveis na internet, independentemente de conjuntos de dados curados ou rotulados. O modelo SEER permite que os desenvolvedores treinem modelos de aprendizado de máquina grandes e complexos em dados aleatórios, sem supervisão, ou seja, o modelo analisa os dados e aprende os padrões ou informações por conta própria, sem qualquer entrada manual adicional.
O objetivo final do modelo SEER é ajudar a desenvolver estratégias para o pré-treinamento que usem dados não curados para entregar um desempenho de ponta em aprendizado de transferência. Além disso, o modelo SEER também visa criar sistemas que possam aprender continuamente a partir de um fluxo contínuo de dados de forma auto-supervisionada.
A estrutura SEER treina modelos de alta capacidade em bilhões de imagens aleatórias e não restritas extraídas da internet. Os modelos treinados nessas imagens não dependem de metadados de imagem ou anotações para treinar o modelo ou filtrar os dados. Recentemente, o aprendizado auto-supervisionado mostrou um grande potencial, pois o treinamento de modelos em dados não curados produziu melhores resultados em comparação com modelos pré-treinados supervisionados para tarefas downstream.
Estrutura SEER e RegNet: Qual é a Conexão?
Para analisar o modelo SEER, ele se concentra na arquitetura RegNet com mais de 700 milhões de parâmetros que se alinham com o objetivo do SEER de aprendizado auto-supervisionado em dados não curados por duas razões principais:
- Eles oferecem um equilíbrio perfeito entre desempenho e eficiência.
- Eles são altamente flexíveis e podem ser escalados para um número de parâmetros.
Estrutura SEER: Trabalho Anterior de Diferentes Áreas
A estrutura SEER visa explorar os limites do treinamento de arquiteturas de modelo grandes em conjuntos de dados não curados ou não rotulados usando aprendizado auto-supervisionado, e o modelo busca inspiração em trabalhos anteriores no campo.
Pré-Treinamento não Supervisionado de Recursos Visuais
O aprendizado auto-supervisionado tem sido implementado em visão computacional por algum tempo, com métodos que usam autoencoders, discriminação de nível de instância ou agrupamento. Recentemente, métodos que usam aprendizado contrastivo indicaram que o pré-treinamento de modelos usando aprendizado não supervisionado para tarefas downstream pode produzir melhores resultados do que uma abordagem de aprendizado supervisionado.
A principal lição aprendida com o aprendizado não supervisionado de recursos visuais é que desde que você esteja treinando em dados filtrados, rótulos supervisionados não são necessários. A estrutura SEER visa explorar se o modelo pode aprender representações precisas quando arquiteturas de modelo grandes são treinadas em uma grande quantidade de imagens aleatórias e não curadas.
Aprendizado de Recursos Visuais em Escala
Modelos anteriores se beneficiaram do pré-treinamento dos modelos em conjuntos de dados grandes e rotulados com aprendizado supervisionado fraco, aprendizado supervisionado e semi-supervisionado em milhões de imagens filtradas. Além disso, a análise do modelo também indicou que o pré-treinamento do modelo em bilhões de imagens geralmente produz melhores resultados em comparação com o treinamento do modelo a partir do zero.
Além disso, o treinamento do modelo em larga escala geralmente depende de etapas de filtragem de dados para tornar as imagens coerentes com os conceitos alvo. Essas etapas de filtragem de dados ou usam previsões de um classificador pré-treinado ou usam hashtags que são frequentemente sinônimos das classes ImageNet. A estrutura SEER funciona de forma diferente, pois visa aprender recursos em qualquer imagem aleatória, e, portanto, os dados de treinamento para a estrutura SEER não são curados para corresponder a um conjunto pré-definido de recursos ou conceitos.
Escalando Arquiteturas para Reconhecimento de Imagens
Os modelos geralmente se beneficiam do treinamento de arquiteturas grandes em dados de melhor qualidade, resultando em recursos visuais melhores. É essencial treinar arquiteturas grandes quando o pré-treinamento em um conjunto de dados grande é importante, pois um modelo com capacidade limitada geralmente subajusta. Isso é ainda mais importante quando o pré-treinamento é feito com aprendizado contrastivo, pois, nesses casos, o modelo precisa aprender a discriminar entre instâncias do conjunto de dados para que possa aprender representações visuais melhores.
No entanto, para o reconhecimento de imagens, a escalada da arquitetura envolve muito mais do que apenas alterar a profundidade e a largura do modelo, e para construir um modelo escalável com maior capacidade, é necessário dedicar uma grande quantidade de literatura. A estrutura SEER mostra os benefícios de usar a família de modelos RegNets para implantar o aprendizado auto-supervisionado em larga escala.
SEER: Métodos e Componentes Usados
A estrutura SEER usa uma variedade de métodos e componentes para pré-treinar o modelo e aprender representações visuais. Alguns dos principais métodos e componentes usados pela estrutura SEER são: RegNet e SwAV. Vamos discutir brevemente os métodos e componentes usados na estrutura SEER.
Pré-Treinamento Auto-Supervisionado com SwAV
A estrutura SEER é pré-treinada com SwAV, uma abordagem de aprendizado auto-supervisionado online. SwAV é um método de agrupamento online usado para treinar frameworks de convnet sem anotações.
Na prática, a estrutura SwAV compara os recursos das diferentes vistas de uma imagem, fazendo uso de suas atribuições de cluster independentes. Se essas atribuições capturam os mesmos ou recursos semelhantes, é possível prever a atribuição de uma imagem usando a representação de recurso de outra vista.
A estrutura SEER considera um conjunto de K clusters, e cada um desses clusters está associado a um vetor d-dimensional aprendível vk. Para um lote de B imagens, cada imagem i é transformada em duas vistas diferentes: xi1 e xi2. As vistas são então featurizadas com a ajuda de um convnet, e isso resulta em dois conjuntos de recursos: (f11, …, fB2) e (f12, …, fB2). Cada conjunto de recursos é então atribuído independentemente a protótipos de cluster com a ajuda de um solucionador de Transporte Ótimo.
O solucionador de Transporte Ótimo garante que os recursos sejam divididos uniformemente entre os clusters, e ajuda a evitar soluções triviais em que todas as representações são mapeadas para um único protótipo. A atribuição resultante é então trocada entre os dois conjuntos: a atribuição de cluster yi1 da vista xi1 precisa ser prevista usando a representação de recurso fi2 da vista xi2, e vice-versa.
Os pesos do protótipo e o convnet são então treinados para minimizar a perda para todos os exemplos. A perda de previsão de cluster l é essencialmente a entropia cruzada entre uma softmax do produto escalar de f e a atribuição de cluster.
RegNetY: Família de Modelos Eficientes em Escala
A escalada da capacidade do modelo e dos dados exige arquiteturas que sejam eficientes não apenas em termos de memória, mas também em termos de tempo de execução e a estrutura RegNets é uma família de modelos projetada especificamente para esse propósito.
A família de arquitetura RegNet é definida por um espaço de projeto de convnets com 4 estágios, onde cada estágio contém uma série de blocos idênticos, garantindo que a estrutura do bloco permaneça fixa, principalmente o bloco de garrafa de resíduo.
A estrutura SEER se concentra na arquitetura RegNetY e adiciona uma Squeeze-and-Excitation à arquitetura RegNets padrão, em uma tentativa de melhorar seu desempenho. Além disso, o modelo RegNetY tem 5 parâmetros que ajudam na busca de boas instâncias com um número fixo de FLOPs que consomem recursos razoáveis. A estrutura SEER visa melhorar seus resultados, implementando a arquitetura RegNetY diretamente em sua tarefa de pré-treinamento auto-supervisionado.
A Arquitetura RegNetY 256GF:
A estrutura SEER se concentra principalmente na arquitetura RegNetY 256GF da família RegNetY, e seus parâmetros usam a regra de escalonamento da arquitetura RegNets. Os parâmetros são descritos a seguir.
Otimização e Treinamento em Escala
A estrutura SEER propõe várias ajustes para treinar métodos auto-supervisionados e adaptá-los a uma grande escala. Esses métodos são:
- Agendamento de Taxa de Aprendizado.
- Reduzindo o Consumo de Memória por GPU.
- Otimizando a Velocidade de Treinamento.
- Pré-Treinamento de Dados em Grande Escala.
Agendamento de Taxa de Aprendizado
A estrutura SEER explora a possibilidade de usar dois agendamentos de taxa de aprendizado: o agendamento de taxa de aprendizado em onda coseno e o agendamento de taxa de aprendizado fixo.
O agendamento de taxa de aprendizado em onda coseno é usado para comparar diferentes modelos de forma justa, pois se adapta ao número de atualizações. No entanto, o agendamento de taxa de aprendizado em onda coseno não se adapta a um treinamento em grande escala, principalmente porque ele pondera as imagens de forma diferente com base em quando elas são vistas durante o treinamento, e também usa atualizações completas para agendamento.
O agendamento de taxa de aprendizado fixo mantém a taxa de aprendizado fixa até que a perda não seja mais decrescente, e então a taxa de aprendizado é dividida por 2. A análise mostra que o agendamento de taxa de aprendizado fixo funciona melhor, pois tem espaço para tornar o treinamento mais flexível. No entanto, como o modelo só treina em 1 bilhão de imagens, ele usa o agendamento de taxa de aprendizado em onda coseno para treinar seu maior modelo, o RegNet 256GF.
Reduzindo o Consumo de Memória por GPU
A estrutura SEER também visa reduzir a quantidade de GPU necessária durante o período de treinamento, fazendo uso de precisão mista e checkpointing de gradiente. A estrutura SEER usa a biblioteca NVIDIA Apex Library’s O1 Optimization level para realizar operações como convoluções e GEMMs em precisão de ponto flutuante de 16 bits. Além disso, a estrutura SEER usa a implementação de checkpointing de gradiente do PyTorch, que troca computação por memória.
Além disso, a estrutura SEER descarta qualquer ativação intermediária feita durante o passo forward, e durante o passo backward, ela recompõe essas ativações.
Otimizando a Velocidade de Treinamento
Usar precisão mista para otimizar o uso de memória tem benefícios adicionais, pois os aceleradores tiram proveito do tamanho reduzido do FP16 em comparação com o FP32. Isso ajuda a acelerar o treinamento, melhorando o gargalo de memória-largura de banda.
A estrutura SEER também sincroniza a camada BatchNorm em GPUs para criar grupos de processos em vez de usar sincronização global, que geralmente leva mais tempo. Finalmente, o carregador de dados usado na estrutura SEER pré-carrega mais lotes de treinamento, o que leva a uma quantidade maior de dados sendo processados em comparação com o carregador de dados do PyTorch.
Pré-Treinamento de Dados em Grande Escala
A estrutura SEER usa mais de 1 bilhão de imagens durante o pré-treinamento e considera um carregador de dados que amostra imagens aleatórias diretamente da internet e do Instagram. Como a estrutura SEER treina essas imagens no mundo e online, ela não aplica nenhum pré-processamento nessas imagens, nem as cura usando processos como deduplicação ou filtragem de hashtags.
É importante notar que o conjunto de dados não é estático, e as imagens no conjunto de dados são atualizadas a cada três meses. No entanto, atualizar o conjunto de dados não afeta o desempenho do modelo.
Implementação do Modelo SEER
A estrutura SEER pré-treina um RegNetY 256GF com SwAV usando seis colheitas por imagem, com cada imagem tendo uma resolução de 2×224 + 4×96. Durante a fase de pré-treinamento, a estrutura SEER usa uma MLP de 3 camadas ou Perceptron Multicamada com cabeças de projeção de dimensões 10444×8192, 8192×8192 e 8192×256.
Em vez de usar camadas BatchNorm na cabeça, a estrutura SEER usa 16 mil protótipos com a temperatura t definida como 0,1. O parâmetro de regularização Sinkhorn é definido como 0,05, e ele executa 10 iterações do algoritmo. A estrutura SEER também sincroniza as estatísticas BatchNorm entre as GPUs e cria vários grupos de processos com tamanho 64 para sincronização.
Além disso, a estrutura SEER usa um otimizador LARS ou Escalonamento Adaptativo de Taxa de Aprendizado por Camada, um decaimento de peso de 10-5, checkpointing de ativação e otimização de precisão mista O1. A estrutura SEER é então treinada com gradiente estocástico descendente usando um tamanho de lote com 8192 imagens aleatórias distribuídas em 512 GPUs NVIDIA, resultando em 16 imagens por GPU.
A taxa de aprendizado é aumentada linearmente de 0,15 para 9,6 para as primeiras 8 mil atualizações de treinamento. Após o aquecimento, a estrutura SEER segue um agendamento de taxa de aprendizado em onda coseno que decai para um valor final de 0,0096. No geral, a estrutura SEER treina mais de 1 bilhão de imagens em 122 mil iterações.
Resultados da Estrutura SEER
A qualidade dos recursos gerados pela abordagem de pré-treinamento auto-supervisionado é estudada e analisada em uma variedade de benchmarks e tarefas downstream. A estrutura SEER também considera um cenário de baixo disparo que concede acesso limitado às imagens e rótulos para tarefas downstream.
Ajuste Fino de Modelos Pré-Treinados Grandes
Isso mede a qualidade dos modelos pré-treinados em dados aleatórios, transferindo-os para o benchmark ImageNet para classificação de objetos. Os resultados do ajuste fino de modelos pré-treinados grandes são determinados com base nos seguintes parâmetros.
Configurações Experimentais
A estrutura SEER pré-treina 6 arquiteturas RegNet com diferentes capacidades, nomeadamente RegNetY- {8,16,32,64,128,256}GF, em mais de 1 bilhão de imagens aleatórias e públicas do Instagram com SwAV. Os modelos são então ajustados para classificação de imagens no ImageNet, que usa mais de 1,28 milhão de imagens de treinamento padrão com rótulos, e tem um conjunto de validação padrão com mais de 50 mil imagens para avaliação.
A estrutura SEER aplica as mesmas técnicas de aumento de dados usadas no SwAV e ajusta durante 35 épocas com um otimizador SGD ou Gradiente Estocástico Descendente com um tamanho de lote de 256 e uma taxa de aprendizado de 0,0125, que é reduzida por um fator de 10 após 30 épocas, momento de 0,9 e decaimento de peso de 10-4. A estrutura SEER relata a precisão top-1 no conjunto de validação usando a colheita central de 224×224.
Comparação com Outras Abordagens de Pré-Treinamento Auto-Supervisionado
Na tabela a seguir, o modelo pré-treinado mais grande da estrutura SEER, RegNetY-256GF, é comparado com modelos pré-treinados existentes que usam a abordagem de aprendizado auto-supervisionado.
Como você pode ver, a estrutura SEER retorna uma precisão top-1 de 84,2% no ImageNet, e supera o SimCLRv2, o melhor modelo pré-treinado existente, em 1%.
Além disso, a figura a seguir compara a estrutura SEER com modelos de diferentes capacidades. Como você pode ver, independentemente da capacidade do modelo, combinar a estrutura RegNet com SwAV produz resultados precisos durante o pré-treinamento.
Impacto da Capacidade do Modelo
A capacidade do modelo tem um impacto significativo no desempenho do modelo durante o pré-treinamento, e a figura a seguir compara isso com o impacto quando treinado a partir do zero.
Aprendizado de Baixo Disparo
Aprendizado de baixo disparo refere-se à avaliação do desempenho da estrutura SEER em um cenário de baixo disparo, ou seja, usando apenas uma fração dos dados totais ao realizar tarefas downstream.
Configurações Experimentais
A estrutura SEER usa dois conjuntos de dados para aprendizado de baixo disparo, nomeadamente Places205 e ImageNet. Além disso, a estrutura SEER supõe que tem acesso limitado ao conjunto de dados durante o aprendizado de transferência, tanto em termos de imagens quanto de rótulos. Esse cenário de acesso limitado é diferente do cenário padrão usado para aprendizado auto-supervisionado, onde o modelo tem acesso ao conjunto de dados completo e apenas o acesso aos rótulos de imagem é limitado.
Resultados no Conjunto de Dados Places205
A figura a seguir mostra o impacto do pré-treinamento do modelo em diferentes porções do conjunto de dados Places205.
A abordagem usada é comparada ao pré-treinamento do modelo no conjunto de dados ImageNet sob supervisão com a mesma arquitetura RegNetY-128 GF. Os resultados da comparação são surpreendentes, pois é possível observar que há um ganho estável de cerca de 2,5% na precisão top-1, independentemente da porção de dados de treinamento disponíveis para ajuste fino no conjunto de dados Places205.
Resultados no ImageNet
A tabela a seguir compara a abordagem da estrutura SEER com abordagens de pré-treinamento auto-supervisionado e semi-supervisionado em aprendizado de baixo disparo.
É importante notar que todos esses métodos usam todas as 1,2 milhão de imagens no conjunto de dados ImageNet para pré-treinamento e apenas restringem o acesso aos rótulos. Por outro lado, a abordagem usada na estrutura SEER permite que ela veja apenas 1 a 10% das imagens no conjunto de dados.
Impacto da Capacidade do Modelo
A figura a seguir discute o impacto da capacidade do modelo no aprendizado de baixo disparo: em 1%, 10% e 100% do conjunto de dados ImageNet.
Transferência para Outros Benchmarks
Para avaliar a estrutura SEER mais a fundo e analisar seu desempenho, os recursos pré-treinados são transferidos para outras tarefas downstream.
Avaliação Linear de Classificação de Imagens
A tabela a seguir compara os recursos do modelo pré-treinado RegNetY-256GF da estrutura SEER e o RegNetY128-GF pré-treinado no conjunto de dados ImageNet com a mesma arquitetura com e sem supervisão.
Deteção e Segmentação
A figura a seguir compara os recursos pré-treinados em detecção e segmentação e os avalia.
Comparação com o Pré-Treinamento Supervisionado Fraco
A maioria das imagens disponíveis na internet geralmente tem uma descrição de metadados ou um texto alternativo, ou descrições ou geolocalizações que podem fornecer vantagem durante o pré-treinamento. Trabalhos anteriores indicaram que prever um conjunto curado ou rotulado de hashtags pode melhorar a qualidade da previsão dos recursos visuais resultantes.
A figura a seguir compara o pré-treinamento de uma arquitetura ResNetXt101-32dx8d treinada em imagens aleatórias com a mesma arquitetura sendo treinada em imagens rotuladas com hashtags e metadados e relata a precisão top-1 para ambos.
Estudos de Ablação
Um estudo de ablação é realizado para analisar o impacto de um componente específico no desempenho geral do modelo. Um estudo de ablação é feito removendo o componente do modelo e entendendo como o modelo se sai. Isso fornece aos desenvolvedores uma visão geral do impacto daquele componente específico no desempenho do modelo.
Impacto da Arquitetura do Modelo
A arquitetura do modelo tem um impacto significativo no desempenho do modelo, especialmente quando o modelo é escalado ou as especificações dos dados de pré-treinamento são modificadas.
A figura a seguir discute o impacto de como a alteração da arquitetura afeta a qualidade dos recursos pré-treinados, avaliando o conjunto de dados ImageNet linearmente. Os recursos pré-treinados podem ser investigados diretamente neste caso, pois a avaliação não favorece o modelo que retorna alta precisão quando treinado a partir do zero no conjunto de dados ImageNet.
Escalando os Dados de Pré-Treinamento
Existem duas razões principais pelas quais treinar um modelo em um conjunto de dados maior pode melhorar a qualidade geral dos recursos visuais que o modelo aprende: mais imagens únicas e mais parâmetros. Vamos dar uma olhada breve em como essas razões afetam o desempenho do modelo.
Aumentando o Número de Imagens Únicas
A figura a seguir compara duas arquiteturas diferentes, RegNet8 e RegNet16, que têm o mesmo número de parâmetros, mas são treinadas em diferentes números de imagens únicas.
Mais Parâmetros
A figura a seguir indica o desempenho do modelo à medida que é treinado em 1 bilhão de imagens usando a arquitetura RegNet-128GF. É possível observar que o desempenho do modelo aumenta constantemente à medida que o número de parâmetros aumenta.
Visão Computacional Auto-Supervisionada no Mundo Real
Até agora, discutimos como o aprendizado auto-supervisionado e o modelo SEER para visão computacional funcionam na teoria. Agora, vamos dar uma olhada em como a visão computacional auto-supervisionada funciona em cenários do mundo real e por que o SEER é o futuro da visão computacional auto-supervisionada.
O modelo SEER rivaliza o trabalho realizado na indústria de Processamento de Linguagem Natural, onde modelos de ponta usam trilhões de conjuntos de dados e parâmetros, juntamente com trilhões de palavras de texto durante o pré-treinamento do modelo. O desempenho em tarefas downstream geralmente aumenta com o aumento do número de dados de entrada para treinamento do modelo, e o mesmo é verdadeiro para tarefas de visão computacional.
No entanto, usar técnicas de aprendizado auto-supervisionado para Processamento de Linguagem Natural é diferente de usar aprendizado auto-supervisionado para visão computacional. É porque, ao lidar com textos, os conceitos semânticos são geralmente quebrados em palavras discretas, mas, ao lidar com imagens, o modelo precisa decidir a qual conceito pertence cada pixel.
Além disso, diferentes imagens têm diferentes vistas, e, embora várias imagens possam ter o mesmo objeto, o conceito pode variar significativamente. Por exemplo, considere um conjunto de dados com imagens de um gato. Embora o objeto principal, o gato, seja comum a todas as imagens, o conceito pode variar significativamente, pois o gato pode estar parado em uma imagem, enquanto está brincando com uma bola na próxima, e assim por diante. Como as imagens frequentemente têm conceitos variados, é essencial que o modelo veja uma grande quantidade de imagens para entender as diferenças em torno do mesmo conceito.
Escalonar um modelo com sucesso para que funcione de forma eficiente com dados de imagem de alta dimensionalidade e complexidade requer dois componentes:
- Uma rede neural convolucional ou CNN que seja grande o suficiente para capturar e aprender os conceitos visuais de um conjunto de dados de imagem muito grande.
- Um algoritmo que possa aprender padrões a partir de uma grande quantidade de imagens sem rótulos, anotações ou metadados.
A estrutura SEER visa aplicar os componentes acima ao campo da visão computacional. A estrutura SEER visa explorar os avanços feitos pelo SwAV, uma estrutura de aprendizado auto-supervisionado que usa agrupamento online para agrupar ou emparelhar imagens com conceitos visuais paralelos e aproveitar essas semelhanças para identificar padrões melhor.
Com a arquitetura SwAV, a estrutura SEER é capaz de tornar o uso do aprendizado auto-supervisionado em visão computacional muito mais eficaz e reduzir o tempo de treinamento em até 6 vezes.
Além disso, treinar modelos em grande escala, nessa escala, mais de 1 bilhão de imagens, exige uma arquitetura de modelo que seja eficiente não apenas em termos de tempo de execução e memória, mas também em precisão. É aqui que os modelos RegNets entram em jogo, pois são modelos de convnet que podem escalar trilhões de parâmetros e podem ser otimizados de acordo com as necessidades para cumprir com as limitações de memória e regulamentações de tempo de execução.
Conclusão: Um Futuro Auto-Supervisionado
O aprendizado auto-supervisionado tem sido um tópico importante na indústria de IA e AM por um tempo, pois permite que os modelos de IA aprendam informações diretamente a partir de uma grande quantidade de dados disponíveis aleatoriamente na internet, em vez de depender de conjuntos de dados cuidadosamente curados e rotulados que têm o único propósito de treinar modelos de IA.
O aprendizado auto-supervisionado é um conceito vital para o futuro da IA e do AM, pois tem o potencial de permitir que os desenvolvedores criem modelos de IA que se adaptem bem a cenários do mundo real e tenham vários casos de uso, em vez de ter um propósito específico, e o SEER é um marco na implementação do aprendizado auto-supervisionado na indústria de visão computacional.
A estrutura SEER dá o primeiro passo na transformação da indústria de visão computacional e na redução de nossa dependência de conjuntos de dados rotulados. A estrutura SEER visa eliminar a necessidade de anotar os dados, o que permitirá que os desenvolvedores trabalhem com uma grande quantidade de dados diversificados e amplos. A implementação da estrutura SEER é especialmente útil para desenvolvedores que trabalham em modelos que lidam com áreas que têm imagens ou metadados limitados, como a indústria médica.
Além disso, eliminar anotações humanas permitirá que os desenvolvedores desenvolvam e implantem o modelo mais rapidamente, o que permitirá que eles respondam a situações em evolução rápida mais rapidamente e com mais precisão.












