Yolo Vision Shenzhen
Shenzhen
Junte-se agora

O que é destilação de conjuntos de dados? Uma rápida visão geral

Abirami Vina

Leitura de 5 minutos

12 de dezembro de 2025

Saiba como a destilação de conjuntos de dados acelera o treinamento de modelos e reduz os custos de computação, substituindo grandes conjuntos de dados por um conjunto pequeno e otimizado de amostras sintéticas.

Os modelos de treino podem parecer a parte mais demorada do trabalho de um cientista de dados. Mas a maior parte do seu tempo, muitas vezes 60% a 80%, é realmente dedicada à preparação dos dados: recolhê-los, limpá-los e organizá-los para modelagem. À medida que os conjuntos de dados crescem, esse tempo de preparação também aumenta, retardando as experiências e dificultando a iteração.

Para resolver isso, os investigadores passaram anos à procura de maneiras de otimizar o treinamento. Abordagens como dados sintéticos, compressão de conjuntos de dados e melhores métodos de otimização têm como objetivo reduzir o custo e o atrito do trabalho com conjuntos de dados em grande escala e acelerar os fluxos de trabalho de aprendizagem automática.

Uma questão fundamental que isso levanta é se podemos reduzir drasticamente um conjunto de dados e ainda assim obter o mesmo desempenho que o treinamento de um modelo com os dados completos. A destilação de conjuntos de dados é uma resposta promissora. 

Ele cria uma versão compacta de um grande conjunto de dados de treino, preservando os padrões essenciais que o modelo precisa aprender de forma eficaz. Ele fornece um caminho para um treino mais rápido, menores necessidades de computação e experimentação mais eficiente. Pode pensar nisso como uma folha de cola para o modelo, um pequeno conjunto de exemplos de dados sintéticos projetados para ensinar os mesmos padrões básicos que o conjunto de dados completo.

Neste artigo, exploraremos como funciona a destilação de conjuntos de dados e como ela oferece suporte ao aprendizado de máquina escalável e ao aprendizado profundo em aplicações do mundo real. Vamos começar!

Compreender a destilação de conjuntos de dados

A destilação de conjuntos de dados é um processo em que um grande conjunto de dados de treino é condensado num conjunto muito menor de dados que ainda ensina a um modelo quase as mesmas informações que o conjunto de dados original. Muitos investigadores também se referem a esse processo como condensação de conjuntos de dados, pois o objetivo é capturar os padrões essenciais que aparecem em todo o conjunto de dados. 

Um conjunto de dados destilado é diferente de dados sintéticos gerados aleatoriamente ou simplesmente selecionar um subconjunto menor de imagens reais. Não é um conjunto de dados falso aleatório ou uma cópia reduzida do original. 

Em vez disso, é deliberadamente otimizado para capturar os padrões mais importantes. Durante esse processo, cada pixel e recurso é ajustado e otimizado para que uma rede neural treinada nos dados destilados aprenda quase como se tivesse sido treinada em todo o conjunto de dados.

Essa ideia surgiu pela primeira vez num artigo publicado em 2018 no arXiv por Tongzhou Wang, Jun-Yan Zhu, Antonio Torralba e Alexei A. Efros. Os primeiros testes utilizaram conjuntos de dados simples, como o MNIST e CIFAR-10, o que facilitou demonstrar que algumas amostras destiladas podiam substituir milhares de imagens reais. 

Fig. 1. Utilização da destilação de conjuntos de dados para dados de imagem (Fonte)

Desde então, trabalhos subsequentes aprofundaram ainda mais a destilação de conjuntos de dados, incluindo métodos publicados na ICML e na ICLR que tornam a condensação mais eficiente e escalável.

A importância da destilação de conjuntos de dados

A destilação de conjuntos de dados melhora a eficiência do treinamento e torna os ciclos de desenvolvimento mais rápidos. Ao reduzir a quantidade de dados que um modelo precisa aprender, ela diminui os requisitos computacionais. 

Isso é especialmente útil para aprendizagem contínua, em que os modelos são atualizados ao longo do tempo, pesquisa de arquitetura neural, em que muitos projetos de modelos são testados, e treinamento de ponta, em que os modelos são executados em pequenos dispositivos com memória e energia limitadas. No geral, esses benefícios tornam a destilação de conjuntos de dados uma ótima opção para inicialização rápida, ajuste fino rápido e construção de protótipos iniciais em muitos fluxos de trabalho de aprendizagem automática.

Uma visão geral de como funciona a destilação de conjuntos de dados

A destilação de conjuntos de dados cria amostras de treino sintéticas, ou geradas artificialmente. Essas amostras ajudam um modelo a aprender de uma forma que se assemelha muito ao treino com dados reais. Funciona através do acompanhamento de três fatores-chave durante o treino normal. 

Primeiro, a função de perda, que é a pontuação de erro do modelo, mostrando o quão erradas são as suas previsões. Segundo, os parâmetros do modelo, que são os pesos internos da rede que são atualizados à medida que ela aprende. 

Em terceiro lugar, está a trajetória de treino, que descreve como o erro e os pesos mudam passo a passo ao longo do tempo. As amostras sintéticas são então otimizadas para que, quando um modelo é treinado com elas, o seu erro diminua e os seus pesos sejam atualizados da mesma forma que fariam com o conjunto de dados completo.

Uma análise passo a passo da destilação de conjuntos de dados

Veja mais detalhadamente como funciona o processo de destilação do conjunto de dados: 

  • Passo 1 - Inicializar pixels sintéticos: O processo começa com imagens sintéticas que atuam como entradas aprendíveis. No início, essas imagens têm pouca estrutura e parecem telas em branco. Com o tempo, elas são otimizadas e transformadas em exemplos informativos.
  • Passo 2 - Otimizar com correspondência de gradiente e retropropagação: À medida que o modelo é treinado com essas imagens sintéticas, ele produz gradientes que indicam como cada pixel deve mudar para melhor corresponder ao comportamento de treino dos dados reais. A retropropagação é o método que a rede usa para aprender com os erros. Ela envia o erro de volta ao modelo para descobrir quais pixels e pesos o causaram e, em seguida, atualiza-os ligeiramente. Usando esses gradientes, a retropropagação ajusta as imagens sintéticas passo a passo para que se tornem mais informativas para o treino.
  • Passo 3 - Combinando o comportamento entre as etapas de treino: O método também combina trajetórias de treino, ou seja, as mudanças passo a passo pelas quais o modelo passa durante a aprendizagem. Isso garante que o conjunto de dados destilado guie o modelo por um caminho de aprendizagem semelhante ao que ele seguiria com o conjunto de dados completo.
  • Passo 4 - Validação e generalização: Por fim, o conjunto de dados destilado é avaliado em dados de validação reais para verificar o desempenho do modelo treinado em novos exemplos. Isso verifica se os dados sintéticos ensinam padrões amplos e funcionais, em vez de fazer com que o modelo memorize amostras específicas.
Fig. 2. Uma visão geral da destilação de conjuntos de dados (Fonte)

Principais metodologias de destilação de conjuntos de dados 

Todos os métodos de destilação de conjuntos de dados são construídos com base na mesma ideia central, mesmo que utilizem algoritmos diferentes para chegar lá. A maioria das abordagens se enquadra em três categorias: correspondência de desempenho, correspondência de distribuição e correspondência de parâmetros.

A seguir, vamos analisar cada um deles e ver como funcionam.

Correspondência de desempenho

A correspondência de desempenho na destilação de conjuntos de dados concentra-se na criação de um conjunto de treino pequeno e otimizado que permite que um modelo alcance quase a mesma precisão que se tivesse sido treinado no conjunto de dados original completo. Em vez de escolher um subconjunto aleatório, as amostras destiladas são otimizadas para que um modelo treinado com elas termine com previsões semelhantes, comportamento de perda semelhante durante o treino ou precisão final semelhante a um modelo treinado no conjunto de dados original. 

A metaaprendizagem é um método comum utilizado para melhorar este processo. O conjunto de dados destilado é atualizado através de episódios de treino repetidos, tornando-se eficaz em muitas situações possíveis. 

Durante esses episódios, o método simula como um modelo aluno aprende com as amostras destiladas atuais, verifica o desempenho desse aluno em dados reais e, em seguida, ajusta as amostras destiladas para que sejam melhores professores. Com o tempo, o conjunto destilado aprende a apoiar uma aprendizagem rápida e uma generalização forte, mesmo quando o modelo aluno começa com pesos iniciais diferentes ou usa uma arquitetura diferente. Isso torna o conjunto de dados destilado mais confiável e não vinculado a uma única execução de treino.

Fig. 3. O processo de metaaprendizagem (Fonte)

Técnicas de correspondência de distribuição

Enquanto isso, a correspondência de distribuição gera dados sintéticos que correspondem aos padrões estatísticos do conjunto de dados real. Em vez de se concentrar apenas na precisão final de um modelo, essa abordagem se concentra nas características internas que uma rede neural gera durante o aprendizado.

A seguir, vamos dar uma olhada nas duas técnicas que impulsionam a correspondência de distribuição.

Correspondência de distribuição de camada única

A correspondência de distribuição de camada única concentra-se numa única camada de uma rede neural e compara as características que ela produz para dados reais versus sintéticos. Essas características, também chamadas de ativações, capturam o que o modelo aprendeu naquele ponto da rede. 

Ao fazer com que os dados sintéticos produzam ativações semelhantes, o método incentiva o conjunto de dados destilado a refletir os mesmos padrões importantes do conjunto de dados original. Na prática, as amostras sintéticas são atualizadas repetidamente até que as ativações na camada escolhida correspondam às das imagens reais. 

Essa abordagem é relativamente simples, pois alinha apenas um nível de representação por vez. Ela pode funcionar especialmente bem em conjuntos de dados menores ou tarefas em que não é necessário combinar hierarquias de recursos profundas e em várias etapas. Ao alinhar claramente um espaço de recursos, a correspondência de camada única fornece um sinal estável e significativo para o aprendizado com o conjunto de dados destilado.

Correspondência de distribuição multicamadas

A correspondência de distribuição multicamadas baseia-se na ideia de comparar dados reais e sintéticos, fazendo isso em várias camadas de uma rede neural, em vez de apenas uma. Camadas diferentes capturam diferentes tipos de informação, desde bordas e texturas simples nas camadas iniciais até formas e padrões mais complexos nas camadas mais profundas. 

Ao combinar características entre essas camadas, o conjunto de dados destilado é impulsionado para refletir o que o modelo aprende em vários níveis. Como alinha características em toda a rede, essa abordagem ajuda os dados sintéticos a preservar sinais mais ricos nos quais o modelo se baseia para distinguir as classes. 

Isso é especialmente útil na visão computacional, ou seja, tarefas em que os modelos aprendem a compreender imagens e vídeos, porque os padrões úteis estão espalhados por várias camadas. Quando as distribuições de características correspondem bem em várias profundidades, o conjunto de dados destilado atua como um substituto mais forte e confiável para os dados de treino originais.

Métodos de correspondência de parâmetros

Outra categoria importante na destilação de conjuntos de dados é a correspondência de parâmetros. Em vez de corresponder a precisão ou distribuições de características, ela corresponde à forma como os pesos de um modelo mudam durante o treino. Ao fazer com que o treino no conjunto de dados destilado produza atualizações de parâmetros semelhantes ao treino com dados reais, o modelo segue um caminho de aprendizagem quase idêntico. 

A seguir, abordaremos os dois principais métodos de correspondência de parâmetros.

Correspondência em uma única etapa

A correspondência de etapa única compara o que acontece com os pesos de um modelo após apenas uma etapa de treino em dados reais. O conjunto de dados destilado é então ajustado para que um modelo treinado nele por uma etapa produza uma atualização de peso muito semelhante. Como se concentra apenas nessa única atualização, o método é simples e rápido de executar.

A desvantagem é que uma única etapa não reflete todo o processo de aprendizagem, especialmente para tarefas mais difíceis, nas quais o modelo precisa de muitas atualizações para criar recursos mais ricos. Por isso, a correspondência de etapa única tende a funcionar melhor em problemas mais simples ou conjuntos de dados menores, nos quais padrões úteis podem ser identificados rapidamente.

Correspondência de parâmetros em várias etapas

Em contrapartida, a correspondência de parâmetros em várias etapas analisa como os pesos de um modelo mudam ao longo de várias etapas de treino, e não apenas uma. Essa sequência de atualizações é a trajetória de treino do modelo. 

O conjunto de dados destilados é construído de forma que, quando um modelo é treinado com amostras sintéticas, a sua trajetória acompanha de perto a que seguiria com dados reais. Ao corresponder a um período mais longo de aprendizagem, o conjunto destilado captura mais da estrutura do processo de treinamento original.

Como reflete como a aprendizagem se desenvolve ao longo do tempo, a correspondência em várias etapas geralmente funciona melhor para conjuntos de dados maiores ou mais complexos, nos quais os modelos precisam de muitas atualizações para identificar padrões úteis. Ela exige mais computação, pois precisa track etapas, mas geralmente produz conjuntos de dados refinados que generalizam melhor e oferecem melhor desempenho do que a correspondência em uma única etapa.

Como funciona a geração e otimização de conjuntos de dados sintéticos

Com uma melhor compreensão das principais abordagens de destilação, podemos agora analisar como os dados sintéticos são criados. Na destilação de conjuntos de dados, as amostras sintéticas são otimizadas para capturar o sinal de aprendizagem mais importante, de modo que um pequeno conjunto pode substituir um conjunto de dados muito maior. 

A seguir, veremos como esses dados destilados são gerados e avaliados.

Criação e avaliação de imagens destiladas

Durante a destilação do conjunto de dados, os pixels sintéticos são atualizados ao longo de várias etapas de treino. A rede neural aprende com as imagens sintéticas atuais e envia feedback baseado em gradientes, que mostra como cada pixel deve mudar para corresponder melhor aos padrões do conjunto de dados real. 

Isso funciona porque o processo é diferenciável (o que significa que cada etapa é suave e tem gradientes bem definidos, de modo que pequenas alterações nos pixels levam a alterações previsíveis na perda), permitindo que o modelo ajuste suavemente os dados sintéticos durante o gradiente descendente.

À medida que a otimização continua, as imagens sintéticas começam a formar uma estrutura significativa, incluindo formas e texturas que o modelo reconhece. Essas imagens sintéticas refinadas são frequentemente utilizadas para tarefas de classificação de imagens, pois capturam as principais pistas visuais que um classificador precisa aprender.

Os conjuntos de dados destilados são avaliados através do treino de modelos com base neles e da comparação dos resultados com modelos treinados com dados reais. Os investigadores medem a precisão da validação e verificam se o conjunto sintético preserva as características discriminatórias (os padrões ou sinais em que o modelo se baseia para distinguir uma classe de outra) necessárias para separar as classes. Também testam a estabilidade e a generalização em diferentes execuções ou configurações de modelos para garantir que os dados destilados não levam ao sobreajuste.

Aplicações reais da destilação de dados

A seguir, vamos examinar mais de perto exemplos que mostram como conjuntos de dados destilados aceleram o treinamento e reduzem os custos de computação, mantendo um forte desempenho, mesmo quando os dados são limitados ou altamente especializados.

Utilização da destilação de conjuntos de dados para aplicações de visão computacional

Quando se trata de visão computacional, o objetivo é treinar modelos para compreender dados visuais, como imagens e vídeos. Esses modelos aprendem padrões como bordas, texturas, formas e objetos e, em seguida, usam esses padrões para tarefas como classificação de imagens, deteção de objetos ou segmentação. Como os problemas de visão geralmente apresentam uma grande variação em termos de iluminação, fundos e pontos de vista, os sistemas de visão computacional geralmente precisam de grandes conjuntos de dados para generalizar bem, o que torna o treinamento caro e lento.

Fig. 4. Um exemplo de destilação de conjunto de dados (Fonte)

Quando se trata de casos de uso de classificação de imagens, como exames médicos, monitoramento da vida selvagem ou detecção de defeitos em fábricas, os modelos muitas vezes enfrentam um difícil compromisso entre precisão e custo de treinamento. Essas tarefas geralmente envolvem conjuntos de dados massivos.

A destilação de conjuntos de dados pode comprimir o conjunto de treino original em um pequeno número de imagens sintéticas que ainda contêm as pistas visuais mais importantes para o classificador. Em grandes benchmarks como ImageNet, conjuntos destilados usando apenas cerca de 4,2% das imagens originais demonstraram manter uma forte precisão de classificação. Isso significa que um pequeno proxy sintético pode substituir milhões de amostras reais com muito menos computação.

Pesquisa de arquitetura neural 

A pesquisa de arquitetura neural, ou NAS, é uma técnica que explora automaticamente muitos projetos possíveis de redes neurais para encontrar aquele que funciona melhor para uma tarefa. Como a NAS precisa treinar e avaliar um grande número de modelos candidatos, executá-la em conjuntos de dados completos pode ser lento e exigir muitos recursos computacionais. 

A destilação do conjunto de dados ajuda a criar um pequeno conjunto de treino sintético que ainda contém o principal sinal de aprendizagem dos dados originais, para que cada arquitetura candidata possa ser testada muito mais rapidamente. Isso permite que o NAS compare projetos de forma eficiente, mantendo as classificações de arquiteturas boas e ruins razoavelmente confiáveis, reduzindo o custo da pesquisa sem sacrificar muito a qualidade do modelo final.

Aprendizagem contínua e implementação de ponta

Os sistemas de aprendizagem contínua, ou seja, modelos que se atualizam à medida que novos dados chegam, em vez de serem treinados uma única vez, precisam de atualizações rápidas e eficientes em termos de memória. Dispositivos de ponta, como câmaras, telefones e sensores, enfrentam limitações semelhantes, pois têm recursos computacionais e de armazenamento restritos. 

A destilação de conjuntos de dados ajuda em ambos os casos, comprimindo um grande conjunto de treino num pequeno conjunto sintético, para que os modelos possam se adaptar ou ser retreinados usando um pequeno conjunto de repetições, em vez do conjunto de dados completo. Por exemplo, um trabalho de metaaprendizagem baseado em kernel mostrou que apenas 10 amostras destiladas podem atingir mais de 64% de precisão no CIFAR-10, um benchmark padrão de classificação de imagens. Como o conjunto de repetições é tão compacto, as atualizações tornam-se muito mais rápidas e práticas, especialmente quando os modelos precisam ser atualizados com frequência.

A destilação de conjuntos de dados também pode funcionar em conjunto com a destilação de conhecimento para grandes modelos de linguagem. Um pequeno conjunto de dados destilado pode manter os sinais de tarefa mais importantes do modelo professor, para que um modelo aluno comprimido possa ser treinado ou atualizado de forma mais eficiente, sem perder muito desempenho. Como esses conjuntos de dados são pequenos, eles são especialmente úteis para uso em dispositivos periféricos ou locais, onde o armazenamento e a computação são limitados, mas você ainda deseja que o modelo permaneça preciso após as atualizações.

Prós e contras da destilação de dados

Aqui estão alguns benefícios de usar a destilação de conjuntos de dados:

  • Ótimo para experiências rápidas. Pode testar novas arquiteturas, perdas ou hiperparâmetros sem precisar treinar novamente em um enorme conjunto de dados todas as vezes.
  • Potencial vantagem em termos de privacidade. Partilhar amostras sintéticas destiladas pode ser mais seguro do que partilhar pontos de dados reais dos utilizadores, uma vez que os exemplos brutos não são expostos diretamente.
  • Muitas vezes mais forte do que a simples seleção de subconjuntos. Em vez de apenas selecionar exemplos, a destilação otimiza-os ativamente para que sejam o mais informativos possível.

Embora a destilação de conjuntos de dados ofereça várias vantagens, aqui estão algumas limitações a ter em conta:

  • Sobreajuste: Os dados destilados geralmente funcionam melhor para a arquitetura usada durante a destilação e podem ser mal transferidos para modelos muito diferentes.
  • Sensível a hiperparâmetros. Os resultados podem depender muito de fatores como taxa de aprendizagem, inicialização ou número de etapas de destilação.
  • Mais difícil de escalar para a complexidade do mundo real. Métodos que funcionam bem em benchmarks podem perder precisão em conjuntos de dados grandes, confusos ou de alta resolução.

Principais conclusões

A destilação de conjuntos de dados permite que um pequeno conjunto de amostras sintéticas ensine um modelo quase tão eficazmente quanto um conjunto de dados completo. Isso torna o aprendizado de máquina mais rápido, mais eficiente e mais fácil de escalar. À medida que os modelos crescem e exigem mais dados, os conjuntos de dados destilados oferecem uma maneira prática de reduzir os custos de computação sem sacrificar a precisão. 

Junte-se à nossa comunidade e confira o nosso repositório GitHub para descobrir mais sobre IA. Se pretende criar o seu próprio projeto de IA de visão, confira as nossas opções de licenciamento. Explore mais sobre aplicações como IA na área da saúde e IA de visão no retalho visitando as nossas páginas de soluções.

Vamos construir o futuro
da IA juntos!

Comece sua jornada com o futuro do aprendizado de máquina

Comece gratuitamente