Entre em contato

O que Ă© o aprendizado de poucos tiros?

AI 101

O que Ă© o aprendizado de poucos tiros?

mm

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:

  1. Crie o modelo bĂĄsico de aluno (professor)
  2. Treine o modelo bĂĄsico do aluno no conjunto de suporte
  3. Faça com que o aprendiz de base retorne previsÔes para o conjunto de consultas
  4. 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:

  1. Uma cĂłpia do modelo de meta-aluno atual Ă© criada.
  2. A cĂłpia Ă© treinada com a ajuda do modelo base/modelo de professor.
  3. A cópia retorna previsÔes para os dados de treinamento.
  4. 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.

Blogueiro e programador com especialidades em Machine Learning e Deep Learning tópicos. Daniel espera ajudar outras pessoas a usar o poder da IA ​​para o bem social.