Por que os algoritmos de aprendizado de máquina funcionam com novos dados?

Por que os algoritmos de aprendizado de máquina funcionam com novos dados?

O superpoder do aprendizado de máquina é a generalização.

Recentemente, recebi a pergunta:

“Como um modelo de aprendizado de máquina pode fazer previsões precisas sobre dados que não viu antes?”

A resposta é generalização, e esse é o recurso que buscamos quando aplicamos o aprendizado de máquina a problemas desafiadores.

Nesta postagem, você descobrirá a generalização, a superpotência do aprendizado de máquina

Depois de ler esta postagem, você saberá:

  • Todos os algoritmos de aprendizado de máquina buscam aprender um mapeamento de entradas para saídas.
  • Esses modelos de aprendizado de máquina mais simples e habilidosos são mais fáceis de entender e mais robustos.
  • Esse aprendizado de máquina só é adequado quando o problema requer generalização.

Vamos começar.

Por que os algoritmos de aprendizado de máquina funcionam em dados que não viram?

Por que os algoritmos de aprendizado de máquina funcionam em dados que não viram?
Foto de gnuckx, alguns direitos reservados.

O que os algoritmos de aprendizado de máquina fazem?

Quando ajustamos um algoritmo de aprendizado de máquina, exigimos um conjunto de dados de treinamento.

Este conjunto de dados de treinamento inclui um conjunto de padrões de entrada e os padrões de saída correspondentes. O objetivo do algoritmo de aprendizado de máquina é aprender uma aproximação razoável do mapeamento de padrões de entrada para padrões de saída.

Aqui estão alguns exemplos para tornar isso concreto:

  • Mapeamento de e-mails para se eles são spam ou não para classificação de spam de e-mail.
  • Mapeamento dos detalhes da casa ao preço de venda da casa para a regressão do preço de venda da casa.
  • Mapeamento de fotografia para texto para descrever a foto na geração da legenda da foto.

A lista poderia continuar.

Podemos resumir esse mapeamento que os algoritmos de aprendizado de máquina aprendem como uma função (f) que prevê a saída (y) dada a entrada (X), ou reformulada:

Nosso objetivo ao ajustar os algoritmos de aprendizado de máquina é obter o melhor f () possível para nossos propósitos.

Estamos treinando o modelo para fazer previsões no futuro com dados de entrada para os casos em que não temos os resultados. Onde as saídas são desconhecidas. Isso requer que o algoritmo aprenda em geral como tirar observações do domínio e fazer uma previsão, não apenas as especificações dos dados de treinamento.

Isso é chamado de generalização.

A generalização é difícil, mas poderosa

Um algoritmo de aprendizado de máquina deve generalizar a partir dos dados de treinamento para todo o domínio de todas as observações invisíveis no domínio para que ele possa fazer previsões precisas quando você usar o modelo.

Isso é muito difícil.

Essa abordagem de generalização requer que os dados que usamos para treinar o modelo (X) sejam uma amostra boa e confiável das observações no mapeamento que queremos que o algoritmo aprenda. Quanto maior a qualidade e mais representativa, mais fácil será para o modelo aprender o mapeamento “verdadeiro” desconhecido e subjacente que existe das entradas para as saídas.

Generalizar significa ir de algo específico para algo amplo.

É a maneira como os humanos aprendemos.

  • Não memorizamos estradas específicas quando aprendemos a dirigir; aprendemos a dirigir em geral para que possamos dirigir em qualquer estrada ou conjunto de condições.
  • Não memorizamos programas de computador específicos quando aprendemos a codificar; aprendemos maneiras gerais de resolver problemas com código para qualquer caso de negócio que possa surgir.
  • Não memorizamos a ordem específica das palavras na linguagem natural; aprendemos significados gerais para palavras e os colocamos juntos em novas sequências conforme necessário.

A lista poderia continuar.

Algoritmos de aprendizado de máquina são procedimentos para generalizar automaticamente a partir de observações históricas. E eles podem generalizar em mais dados do que um ser humano poderia considerar, mais rápido do que um ser humano poderia considerar.

É a velocidade e a escala com que essas máquinas de generalização automatizadas operam o que é tão interessante no campo do aprendizado de máquina.

Preferimos modelos mais simples

O modelo de aprendizado de máquina é o resultado do procedimento automatizado de generalização denominado algoritmo de aprendizado de máquina.

O modelo pode ser considerado uma generalização do mapeamento de entradas de treinamento para saídas de treinamento.

Pode haver muitas maneiras de mapear entradas em saídas para um problema específico e podemos navegar por essas maneiras testando diferentes algoritmos, diferentes configurações de algoritmo, diferentes dados de treinamento e assim por diante.

Não podemos saber qual abordagem resultará no modelo mais hábil de antemão, portanto, devemos testar um conjunto de abordagens, configurações e enquadramentos do problema para descobrir o que funciona e quais são os limites de aprendizagem do problema antes de selecionar um modelo final para usar.

A habilidade do modelo em fazer previsões determina a qualidade da generalização e pode ajudar como um guia durante o processo de seleção do modelo.

Dentre os milhões de mapeamentos possíveis, preferimos mapeamentos mais simples em vez de mapeamentos complexos. Dito de outra forma, preferimos a hipótese mais simples possível que explica os dados. Essa é uma forma de escolher os modelos e vem da navalha de Occam.

O modelo mais simples é frequentemente (mas nem sempre) mais fácil de entender e manter e é mais robusto. Na prática, você pode escolher o modelo mais simples de melhor desempenho.

O aprendizado de máquina não é para todos os problemas

A capacidade de aprender automaticamente por generalização é poderosa, mas não é adequada para todos os problemas.

  • Alguns problemas exigem uma solução precisa, como a aritmética do saldo de uma conta bancária.
  • Alguns problemas podem ser resolvidos por generalização, mas existem soluções mais simples, como calcular a raiz quadrada de números positivos.
  • Alguns problemas parecem que poderiam ser resolvidos por generalização, mas não existe um relacionamento subjacente estruturado para generalizar a partir dos dados, ou tal função é muito complexa, como prever preços de títulos.

A chave para o uso eficaz do aprendizado de máquina é o aprendizado onde ele pode e não pode (ou não deve) ser usado.

Às vezes, isso é óbvio, mas muitas vezes não é. Novamente, você deve usar a experiência e a experimentação para ajudar a descobrir se um problema é adequado para ser resolvido por generalização.

Leitura Adicional

Esta seção fornece mais recursos sobre o tópico se você deseja se aprofundar.

Resumo

Nesta postagem, você descobriu a generalização, os principais recursos subjacentes a todos os algoritmos de aprendizado de máquina supervisionados.

Especificamente, você aprendeu:

  • Todos os algoritmos de aprendizado de máquina buscam aprender um mapeamento de entradas para saídas.
  • Esses modelos de aprendizado de máquina mais simples e habilidosos são mais fáceis de entender e mais robustos.
  • Esse aprendizado de máquina só é adequado quando o problema requer generalização.

Você tem alguma pergunta?
Tire suas dúvidas nos comentários abaixo e farei o possível para responder.

Você também pode estar interessado em