Uma introdução suave ao aprendizado de máquina aplicado como um problema de pesquisa

Uma introdução suave ao aprendizado de máquina aplicado como um problema de pesquisa

O aprendizado de máquina aplicado é desafiador porque o projeto de um sistema de aprendizado perfeito para um determinado problema é intratável.

Não existe melhor dado de treinamento ou melhor algoritmo para o seu problema, apenas o melhor que você pode descobrir.

A aplicação de aprendizado de máquina é mais bem pensada como um problema de pesquisa para o melhor mapeamento de entradas para saídas de acordo com o conhecimento e os recursos disponíveis para você para um determinado projeto.

Nesta postagem, você descobrirá a conceituação do aprendizado de máquina aplicado como um problema de pesquisa.

Depois de ler esta postagem, você saberá:

  • Esse aprendizado de máquina aplicado é o problema de aproximar uma função de mapeamento subjacente desconhecida de entradas para saídas.
  • As decisões de design, como a escolha dos dados e do algoritmo, estreitam o escopo das funções de mapeamento possíveis que você pode escolher.
  • Que a conceituação de aprendizado de máquina como uma busca ajuda a racionalizar o uso de conjuntos, a verificação pontual de algoritmos e a compreensão do que está acontecendo quando os algoritmos aprendem.

Vamos começar.

Uma introdução suave ao aprendizado de máquina aplicado como um problema de pesquisa

Uma introdução suave ao aprendizado de máquina aplicado como um problema de pesquisa
Foto de tonko43, alguns direitos reservados.

Visão geral

Este post está dividido em 5 partes; eles estão:

  1. Problema de Aproximação de Função
  2. Aproximação de função como pesquisa
  3. Escolha de dados
  4. Escolha de Algoritmo
  5. Implicações do aprendizado de máquina como pesquisa

Problema de Aproximação de Função

O aprendizado de máquina aplicado é o desenvolvimento de um sistema de aprendizado para tratar de um problema específico de aprendizado.

O problema de aprendizagem é caracterizado por observações compostas de dados de entrada e saída e alguma relação desconhecida, mas coerente entre os dois.

O objetivo do sistema de aprendizagem é aprender um mapeamento generalizado entre os dados de entrada e saída, de modo que predições habilidosas possam ser feitas para novas instâncias retiradas do domínio onde a variável de saída é desconhecida.

No aprendizado estatístico, uma perspectiva estatística do aprendizado de máquina, o problema é enquadrado como o aprendizado de uma função de mapeamento (f) dados de entrada fornecidos (X) e dados de saída associados (y)

Temos uma amostra de X e y e fazer o nosso melhor para criar uma função que se aproxime f, por exemplo fprime, de modo que possamos fazer previsões (yhat) dados novos exemplos (Xhat) no futuro.

Como tal, o aprendizado de máquina aplicado pode ser pensado como o problema de aproximação de funções.

Aprendizado de máquina como o mapeamento de entradas para saídas

Aprendizado de máquina como o mapeamento de entradas para saídas

O mapeamento aprendido será imperfeito.

O problema de projetar e desenvolver um sistema de aprendizado é o problema de aprender uma aproximação útil da função subjacente desconhecida que mapeia as variáveis ​​de entrada para as variáveis ​​de saída.

Não sabemos a forma da função, porque se soubéssemos, não precisaríamos de um sistema de aprendizagem; poderíamos especificar a solução diretamente.

Como não sabemos a verdadeira função subjacente, devemos nos aproximar dela, o que significa que não sabemos e talvez nunca saibamos quão próximo de uma aproximação o sistema de aprendizado está do verdadeiro mapeamento.

Aproximação de função como pesquisa

Devemos buscar uma aproximação da verdadeira função subjacente que seja boa o suficiente para nossos propósitos.

Existem muitas fontes de ruído que introduzem erros no processo de aprendizagem que podem tornar o processo mais desafiador e, por sua vez, resultar em um mapeamento menos útil. Por exemplo:

  • A escolha do enquadramento do problema de aprendizagem.
  • A escolha das observações utilizadas para treinar o sistema.
  • A escolha de como os dados de treinamento são preparados.
  • A escolha da forma representacional para o modelo preditivo.
  • A escolha do algoritmo de aprendizagem para ajustar o modelo aos dados de treinamento.
  • A escolha da medida de desempenho pela qual avaliar a habilidade preditiva.

E muito mais.

Você pode ver que existem muitos pontos de decisão no desenvolvimento de um sistema de aprendizado e nenhuma das respostas é conhecida de antemão.

Você pode pensar em todos os sistemas de aprendizagem possíveis para um problema de aprendizagem como um grande espaço de busca, onde cada ponto de decisão restringe a busca.

Espaço de pesquisa de todas as funções de mapeamento possíveis de entradas a saídas

Espaço de pesquisa de todas as funções de mapeamento possíveis de entradas a saídas

Por exemplo, se o problema de aprendizado era prever as espécies de flores, um dos milhões de sistemas de aprendizado possíveis poderia ser reduzido da seguinte forma:

  • Escolha enquadrar o problema como a previsão de um rótulo de classe de espécie, por exemplo, classificação.
  • Escolha as medidas das flores de uma determinada espécie e suas subespécies associadas.
  • Escolha flores em um viveiro específico para medir a fim de coletar dados de treinamento.
  • Escolha uma representação de modelo de árvore de decisão para que as previsões possam ser explicadas às partes interessadas.
  • Escolha o algoritmo CART para ajustar o modelo da árvore de decisão.
  • Escolha a precisão da classificação para avaliar a habilidade dos modelos.

E assim por diante.

Você também pode ver que pode haver uma hierarquia natural para muitas das decisões envolvidas no desenvolvimento de um sistema de aprendizagem, cada uma das quais restringe ainda mais o espaço de possíveis sistemas de aprendizagem que poderíamos construir.

Esse estreitamento apresenta uma tendência útil que seleciona intencionalmente um subconjunto de sistemas de aprendizagem possíveis em detrimento de outro com o objetivo de nos aproximar de um mapeamento útil que possamos usar na prática. Essa polarização se aplica tanto no nível superior no enquadramento do problema quanto em níveis baixos, como a escolha do algoritmo de aprendizado de máquina ou configuração do algoritmo.

Escolha de dados

O enquadramento escolhido do problema de aprendizagem e os dados usados ​​para treinar o sistema são um grande ponto de alavancagem no desenvolvimento do seu sistema de aprendizagem.

Você não tem acesso a todos os dados: isto é, todos os pares de entradas e saídas. Se você o fizesse, não precisaria de um modelo preditivo para fazer previsões de saída para novas observações de entrada.

Você tem alguns pares históricos de entrada-saída. Do contrário, você não teria nenhum dado para treinar um modelo preditivo.

Mas talvez você tenha muitos dados e precise selecionar apenas alguns deles para treinamento. Ou talvez você tenha a liberdade de gerar dados à vontade e seja desafiado por quais e quantos dados gerar ou coletar.

Os dados que você escolhe para modelar seu sistema de aprendizado devem capturar suficientemente a relação entre os dados de entrada e saída para os dados que você tem disponíveis e os dados que o modelo deverá fazer previsões no futuro.

Escolha de dados de treinamento do universo de todos os dados para um problema

Escolha de dados de treinamento do universo de todos os dados para um problema

Escolha de Algoritmo

Você deve escolher a representação do modelo e o algoritmo usado para ajustar o modelo aos dados de treinamento. Este, novamente, é outro grande ponto de alavancagem no desenvolvimento de seu sistema de aprendizagem.

Escolha de algoritmo do universo de todos os algoritmos para um problema

Escolha de algoritmo do universo de todos os algoritmos para um problema

Muitas vezes, esta decisão é simplificada para a seleção de um algoritmo, embora seja comum para as partes interessadas do projeto impor restrições ao projeto, como o modelo ser capaz de explicar as previsões que, por sua vez, impõe restrições na forma de representação do modelo final e por sua vez, no escopo dos mapeamentos que você pode pesquisar.

Efeito de escolher um mapeamento aproximado de entradas para saídas

Efeito de escolher um mapeamento aproximado de entradas para saídas

Implicações do aprendizado de máquina como pesquisa

Essa conceituação de desenvolvimento de sistemas de aprendizagem como um problema de pesquisa ajuda a esclarecer muitas questões relacionadas ao aprendizado de máquina aplicado.

Esta seção analisa alguns.

Algoritmos que aprendem iterativamente

O algoritmo usado para aprender o mapeamento irá impor outras restrições e, juntamente com a configuração do algoritmo escolhida, controlará como o espaço de possíveis mapeamentos candidatos é navegado conforme o modelo é ajustado (por exemplo, para algoritmos de aprendizado de máquina que aprendem iterativamente).

Aqui, podemos ver que o ato de aprender a partir dos dados de treinamento por um algoritmo de aprendizado de máquina está, na verdade, navegando no espaço de possíveis mapeamentos para o sistema de aprendizado, com sorte passando de mapeamentos ruins para mapeamentos melhores (por exemplo, escalada).

Efeito de um algoritmo de aprendizagem que treina iterativamente nos dados

Efeito de um algoritmo de aprendizagem que treina iterativamente nos dados

Isso fornece uma base lógica conceitual para a função dos algoritmos de otimização no coração dos algoritmos de aprendizado de máquina para obter o máximo da representação do modelo para os dados de treinamento específicos.

Justificativa para conjuntos

Também podemos ver que diferentes representações de modelo ocuparão locais bastante diferentes no espaço de todos os mapeamentos de funções possíveis e, por sua vez, terão um comportamento bastante diferente ao fazer previsões (por exemplo, erros de previsão não correlacionados).

Isso fornece uma base lógica conceitual para o papel dos métodos de conjunto que combinam as previsões de modelos preditivos diferentes, mas hábeis.

Interpretação da combinação de previsões de vários modelos finais

Interpretação da combinação de previsões de vários modelos finais

Justificativa para verificação pontual

Diferentes algoritmos com diferentes representações podem começar em diferentes posições no espaço de possíveis mapeamentos de funções e navegarão no espaço de maneira diferente.

Se o espaço restrito em que esses algoritmos estão navegando for bem especificado por um enquadramento apropriado e bons dados, a maioria dos algoritmos provavelmente descobrirá funções de mapeamento boas e semelhantes.

Também podemos ver como um bom enquadramento e uma seleção cuidadosa dos dados de treinamento podem abrir um espaço de mapeamentos de candidatos que podem ser encontrados por um conjunto de poderosos algoritmos de aprendizado de máquina modernos.

Isso fornece a justificativa para a verificação pontual de um conjunto de algoritmos em um determinado problema de aprendizado de máquina e dobrar aquele que se mostra mais promissor ou selecionar a solução mais parcimoniosa (por exemplo, a navalha de Occam).

Leitura Adicional

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

Resumo

Nesta postagem, você descobriu a conceituação do aprendizado de máquina aplicado como um problema de pesquisa.

Especificamente, você aprendeu:

  • Esse aprendizado de máquina aplicado é o problema de aproximar uma função de mapeamento subjacente desconhecida de entradas para saídas.
  • As decisões de design, como a escolha dos dados e do algoritmo, estreitam o escopo das funções de mapeamento possíveis que você pode escolher.
  • Que a conceituação de aprendizado de máquina como pesquisa ajuda a racionalizar o uso de conjuntos, a verificação pontual de algoritmos e a compreensão do que está acontecendo quando os algoritmos aprendem.

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