As duas principais etapas em aplicações de Machine Learning

Alex Barros
3 min readMay 21, 2021

--

A etapa de treinamento e inferência em si são as duas etapas mais importantes

O primeiro estágio de uma aplicação de Machine Learning é a relacionada ao treinamento dos modelos com exemplo. Na programação tradicional, os sistemas aprendem através da programação explícita de regras. No aprendizado de máquina os sistemas aprendem com os exemplos, através dos dados. Os dados e especialmente os exemplos(labels) utilizados no aprendizado supervisionado são essenciais para o sucesso do modelo.

Programas tradicionais e programas de Machine Learning

Quando nos referimos aos dados em projetos de Machine Learning, estamos nos referindo tanto aos exemplos de input quanto aos exemplos de output (labels ou rótulos de classes), para o caso do aprendizado supervisionado.

Por exemplo, vamos imaginar que nós queremos treinar um modelo de Machine Learning para olhar uma imagem e identificar o seu conteúdo. A resposta verdadeira é o rótulo de cada imagem, seria o exemplo de output. A imagem em si, com os seus pixels e valores de intensidade seria a entrada para o modelo. O modelo em si é um conjunto de funções matemáticas que podem ser aplicados a uma variedade de problemas. Existem muitas funções matemáticas diferentes que podem ser utilizadas nos modelos e os modelos em si possuem uma grande quantidade de parâmetros.

Durante o treinamento, o modelo ajusta os seus parâmetros de modo que ao receber uma nova imagem de entrada, ele tenta prever corretamente a qual classe/label aquela imagem nova pertence, tudo isso graças a análise de diversas imagens de exemplo. Quanto maior o número de imagens de exemplo e melhor a sua variabilidade (qualidade), melhor o modelo ficará e será capaz de generalizar o problema.

Etapa de Treinamento

Após termos o modelo treinado, podemos utilizá-lo para inferência do rótulo/classe de imagens nunca vistas anteriormente. Nessa etapa entraremos com novas imagens e o modelo que já foi treinado será capaz de distinguir se a imagem é de um gato, cão, carro ou maçã, por exemplo.

Por definição, esse modelo deve ser capaz de diferenciar e classificar novas imagens, isto é, imagens que não foram utilizadas durante o treinamento. A classificação funcionará bem se o modelo conseguir generalizar quais as características dos gatos, carros e etc. O problema ocorrerá se o modelo apenas "decorar" cada uma das imagens utilizadas durante a fase de treinamento. A esse problema chamamos de overfitting.

Modelo treinado

O principal fato para construir um modelo de Machine Learning com boa capacidade de generalização é alimentá-lo no treinamento com uma grande quantidade de dados.

Conclusão

Os modelos de Machine Learning passam por duas etapas, a de treinamento e a de inferência. Há alguma discussão entre autores que utilizam o termo previsão ou predição. Será que no caso de classificação de imagens estão prevendo o "futuro" ao dizer que determinada imagem é de um gato ou cão?

Acho que não, estamos apenas inferindo que aquela imagem é de determinado objeto.

Muita gente foca na parte de desenvolver o modelo mas pouco analisa a sua performance em produção ou como colocá-lo em produção utilizando serviços como o AWS, Azure ou Google Cloud. É necessário estudar projetos de Machine Learning fim a fim, desde a concepção até colocar o modelo em produção na nuvem.

Para mais conteúdo, nos acompanhe nas redes sociais @aprendadatascience

--

--

Alex Barros
Alex Barros

Written by Alex Barros

Engenheiro da Computação. Mestre e Doutorando em Computação Aplicada. Coordenador do Escritório de Projetos e Processos no TRT8.

No responses yet