AI 101
O que é o aprendizado de poucos tiros?
O aprendizado rápido refere-se a uma variedade de algoritmos e técnicas usadas para desenvolver um modelo de IA usando uma quantidade muito pequena de dados de treinamento. O aprendizado rápido se esforça para permitir que um modelo de IA reconheça e classifique novos dados após ser exposto a comparativamente poucas instâncias de treinamento. O treinamento de poucas tentativas contrasta com os métodos tradicionais de treinamento de modelos de aprendizado de máquina, onde normalmente é usada uma grande quantidade de dados de treinamento. O aprendizado rápido é usado principalmente em visão computacional.
Para desenvolver uma intuição melhor para o aprendizado de poucos tiros, vamos examinar o conceito com mais detalhes. Examinaremos as motivações e os conceitos por trás do aprendizado de poucos tiros, exploraremos vários tipos de aprendizado de poucos tiros e cobriremos alguns modelos usados no aprendizado de poucos tiros em alto nível. Por fim, examinaremos algumas aplicações para aprendizado de poucos disparos.
O que é aprendizagem de poucos tiros?
“Aprendizado em poucos tiros” descreve a prática de treinar um modelo de aprendizado de máquina com uma quantidade mínima de dados. Normalmente, os modelos de aprendizado de máquina são treinados em grandes volumes de dados, quanto maior, melhor. No entanto, o aprendizado de poucos tiros é um importante conceito de aprendizado de máquina por alguns motivos diferentes.
Uma razão para usar o aprendizado de poucos tiros é que ele pode reduzir drasticamente a quantidade de dados necessários para treinar um modelo de aprendizado de máquina, o que reduz o tempo necessário para rotular grandes conjuntos de dados. Da mesma forma, o aprendizado de poucos disparos reduz a necessidade de adicionar recursos específicos para várias tarefas ao usar um conjunto de dados comum para criar amostras diferentes. O aprendizado de poucos disparos pode idealmente tornar os modelos mais robustos e capazes de reconhecer objetos com base em menos dados, criando modelos mais gerais em oposição aos modelos altamente especializados que são a norma.
O aprendizado rápido é mais comumente usado no campo da visão computacional, pois a natureza dos problemas de visão computacional exige grandes volumes de dados ou um modelo flexível.
Subcategorias
A frase aprendizado de “alguns tiros” é, na verdade, apenas um tipo de aprendizado usando poucos exemplos de treinamento. Como você está usando apenas “alguns” exemplos de treinamento, existem subcategorias de aprendizado de poucos tiros que também envolvem treinamento com uma quantidade mínima de dados. O aprendizado “one-shot” é outro tipo de treinamento de modelo que envolve ensinar um modelo a reconhecer um objeto depois de ver apenas uma imagem desse objeto. As táticas gerais usadas no aprendizado one-shot e no aprendizado de poucos tiros são as mesmas. Esteja ciente de que o termo aprendizado de “alguns disparos” pode ser usado como um termo abrangente para descrever qualquer situação em que um modelo está sendo treinado com poucos dados.
Abordagens para o aprendizado de poucos tiros
A maioria das abordagens de aprendizado de poucos tiros pode se encaixar em uma das três categorias: abordagens de nível de dados, abordagens de nível de parâmetro e abordagens baseadas em métricas.
Abordagens em nível de dados
Abordagens em nível de dados para aprendizado de poucos tiros são muito simples em conceito. Para treinar um modelo quando você não tem dados de treinamento suficientes, basta obter mais dados de treinamento. Existem várias técnicas que um cientista de dados pode usar para aumentar a quantidade de dados de treinamento que eles possuem.
Dados de treinamento semelhantes podem fazer backup dos dados de destino exatos nos quais você está treinando um classificador. Por exemplo, se você está treinando um classificador para reconhecer tipos específicos de cães, mas faltam muitas imagens da espécie específica que você está tentando classificar, você pode incluir muitas imagens de cães que ajudariam o classificador a determinar as características gerais que compõem um cão. .
O aumento de dados pode criar mais dados de treinamento para um classificador. Isso normalmente envolve a aplicação de transformações aos dados de treinamento existentes, como girar imagens existentes para que o classificador examine as imagens de diferentes ângulos. As GANs também podem ser usadas para gerar novos exemplos de treinamento com base no que aprenderam com os poucos exemplos autênticos de dados de treinamento que você possui.
Abordagens em nível de parâmetro
Meta-aprendizagem
Uma abordagem de nível de parâmetro para aprendizado de poucos tiros envolve o uso de uma técnica chamada “meta-aprendizagem”. Meta-aprendizagem envolve ensinando um modelo a aprender quais recursos são importantes em uma tarefa de aprendizado de máquina. Isso pode ser feito criando um método para regular como o espaço de parâmetros de um modelo é explorado.
A meta-aprendizagem faz uso de dois modelos diferentes: um modelo de professor e um modelo de aluno. O modelo “professor” e o modelo “estudante”. O modelo do professor aprende como encapsular o espaço de parâmetros, enquanto o algoritmo do aluno aprende como reconhecer e classificar os itens reais no conjunto de dados. Em outras palavras, o modelo de professor aprende como otimizar um modelo, enquanto o modelo de aluno aprende como classificar. As saídas do modelo do professor são usadas para treinar o modelo do aluno, mostrando ao modelo do aluno como negociar o grande espaço de parâmetros resultante de poucos dados de treinamento. Daí o “meta” em meta-aprendizagem.
Um dos principais problemas com os modelos de aprendizado de poucos disparos é que eles podem facilmente superajustar os dados de treinamento, pois frequentemente possuem espaços de alta dimensão. Limitar o espaço de parâmetros de um modelo resolve esse problema e, embora possa ser realizado aplicando técnicas de regularização e selecionando as funções de perda apropriadas, o uso de um algoritmo de professor pode melhorar drasticamente o desempenho de um modelo de poucos disparos.
Um modelo de classificador de aprendizado de poucos tiros (o modelo do aluno) se esforçará para generalizar com base na pequena quantidade de dados de treinamento fornecidos, e sua precisão pode melhorar com um modelo de professor para direcioná-lo através do espaço de parâmetros de alta dimensão. Essa arquitetura geral é chamada de meta-aprendiz “baseada em gradiente”.
O processo completo de treinamento de um meta aprendiz baseado em gradiente é o seguinte:
- Crie o modelo básico de aluno (professor)
- Treine o modelo básico do aluno no conjunto de suporte
- Faça com que o aprendiz de base retorne previsões para o conjunto de consultas
- Treine o meta-aluno (estudante) sobre a perda derivada do erro de classificação
Variações sobre meta-aprendizagem
Meta-aprendizado independente de modelo é um método usado para aumentar a técnica básica de meta-aprendizagem baseada em gradiente que abordamos acima.
Como abordamos acima, um meta-aluno baseado em gradiente usa a experiência anterior adquirida por um modelo de professor para se ajustar e fornecer previsões mais precisas para uma pequena quantidade de dados de treinamento. No entanto, começar com parâmetros inicializados aleatoriamente significa que o modelo ainda pode potencialmente sobreajustar os dados. Para evitar isso, um meta-aluno “agnóstico de modelo” é criado limitando a influência do modelo/modelo de base do professor. Em vez de treinar o modelo do aluno diretamente na perda das previsões feitas pelo modelo do professor, o modelo do aluno é treinado na perda de suas próprias previsões.
Para cada episódio de treinamento de um meta-aluno agnóstico de modelo:
- Uma cópia do modelo de meta-aluno atual é criada.
- A cópia é treinada com a ajuda do modelo base/modelo de professor.
- A cópia retorna previsões para os dados de treinamento.
- A perda computada é usada para atualizar o meta-aluno.
Métrica-Aprendizado
Abordagens de aprendizado métrico para projetar um modelo de aprendizado de poucos tiros normalmente envolvem da uso de métricas básicas de distância para fazer comparações entre amostras em um conjunto de dados. Algoritmos de aprendizado de métrica, como distância de cosseno, são usados para classificar amostras de consulta com base em sua semelhança com as amostras de suporte. Para um classificador de imagens, isso significaria apenas classificar imagens com base na semelhança de características superficiais. Após selecionar um conjunto de imagens de suporte e transformá-lo em um vetor de embedding, o mesmo é feito com o conjunto de consulta e então os valores dos dois vetores são comparados, com o classificador selecionando a classe que possui os valores mais próximos do conjunto de consulta vetorizado .
Uma solução baseada em métricas mais avançada é o “rede prototípica”. Redes prototípicas agrupam pontos de dados combinando modelos de agrupamento com a classificação baseada em métrica descrita acima. Como no agrupamento K-means, os centróides para agrupamentos são calculados para as classes nos conjuntos de suporte e consulta. Uma métrica de distância euclidiana é então aplicada para determinar a diferença entre os conjuntos de consulta e os centróides do conjunto de suporte, atribuindo o conjunto de consulta a quaisquer classes de conjuntos de suporte que estejam mais próximas.
A maioria das outras abordagens de aprendizado de poucos tiros são apenas variações das técnicas básicas abordadas acima.
Aplicações para aprendizagem de poucos tiros
O aprendizado rápido tem aplicações em diversos subcampos da ciência de dados, como visão computacional, processamento de linguagem natural, robótica, saúde e processamento de sinais.
Aplicações para aprendizado de poucos tiros no espaço de visão computacional incluem reconhecimento eficiente de caracteres, classificação de imagens, reconhecimento de objetos, rastreamento de objetos, previsão de movimento e localização de ações. Os aplicativos de processamento de linguagem natural para aprendizado de poucos cliques incluem tradução, conclusão de sentença, classificação de intenção do usuário, análise de sentimento e classificação de texto com vários rótulos. O aprendizado de poucos tiros pode ser usado no campo da robótica para ajudar os robôs a aprender sobre tarefas com apenas algumas demonstrações, permitindo que os robôs aprendam como realizar ações, mover e navegar no mundo ao seu redor. A descoberta de medicamentos com poucas doses é uma área emergente da IA na área da saúde. Por fim, o aprendizado de poucos disparos tem aplicações para processamento de sinal acústico, que é o processo de análise de dados de som, permitindo que os sistemas de IA clonem vozes com base em apenas algumas amostras do usuário ou conversão de voz de um usuário para outro.










