DEV Community

Gustavo Ramos
Gustavo Ramos

Posted on

O que é machine learning?

Em uma publicação passada, foi discutido sobre o que é Inteligência Artificial (se você ainda não leu clique aqui), mas agora vamos falar de uma sub-área da mesma, que é de machine learning (ou aprendizado de máquina)

Sobre a área, ela tem por objetivo

  • Campo de estudo que dá aos computadores a habilidade de aprender sem ser explicitamente programado
  • Aplicação de técnicas computacionais na busca de padrões que porventura estejam ocultos em um conjunto de dados
  • Conjunto de ferramentas estatísticos que permitem a automatização da construção de uma função de predição a partir de um conjunto de observações

Logo, machine learning pega um conjunto de dados, treina para reconhecer algum tipo de padrão e a partir disso, nos permite fazer uma análise ou fazer alguma previsão.

Para ficar mais claro, vamos supor que estamos criando um modelo que identifique spams, tradicionalmente, tentaremos identificar alguns padrões e tentar organizar em código para tentar automatizar, conforme no esquema abaixo.

abordagem tradicional

O problema desta abordagem é quem garante que observamos todos os padrões possíveis, deve ter algum ter que deixemos passar (ainda mais em um cenário que se tem uma grande quantidade de dados) e para atualizar demandaria muito tempo para fazer isso manualmente.

machine learning

Mas usando a abordagem de machine learning, pegamos vários exemplos de dados dos quais tem spam e não tem e treinar o modelo para ele reconhecer os padrões para identificar para classificar melhor, avaliamos qual o modelo teve a melhor performance, se não for caso se esperava analisaríamos os erros tenta melhorar o modelo, dai se estiver conforme um desempenho esperado, o colocamos em produção.

Mas a partir de colocamos o modelo de produção, com o tempo ele pode perder a performance com a vinda de novos dados, então podemos automatizar o treinamento do modelo com novos dados para então evitar com a redução de performance.

Atualizando dados

E também com modelo podemos entender como o modelo identifica o que é spam e o que não é e assim trazer insights para o negócio e a partir disso, por exemplo passar orientações para os usuários os cuidados que tem que ter para identificar e-mails suspeitos.

insigths

A partir do exemplo que foi explicitado acima, esse modelo é do tipo supervisionado, que tem um conjunto de atributos e saída, na qual com o treinamento do modelo, ele busca predizer qual o conjunto de saída dado os atributos, ou seja dado um texto, o modelo é treinado para identificar se é spam ou não.

Mas machine learning não se resume somente a isso, mas temos outros tipos de algoritmos de machine learning:

  • Não-supervisionado: Os dados não tem rotulo, então modelo vai identificar algum padrão nos dados e fazer algum agrupamento
  • Semi-supervisionado: Dados parcialmente rotulados, sendo uma combinação de algoritmos supervisionados e não supervisionados
  • Por reforço: O sistema de aprendizado, chamado de agente, observa o ambiente, selecionar e executar ações e obter recompensas em troca – ou penalidades, caso contrário.

Podemos ver que a área é um campo muito grande e que há vários tipos de modelos que podem ser implementados dado algum problema, por isso é importante conhecer muito bem o problema para saber qual tipo de solução de machine learning será possível utilizar

Top comments (0)