Marketing

Como funciona o Machine Learning

8 de February de 2023
Como funciona o Machine Learning<

Certamente, alguma vez você já ouviu o termo “Machine Learning”. Em alguns momentos, isso pode parecer algo muito fora da realidade, como uma novidade vinda de um filme de ficção científica.

Porém, neste artigo, vamos ver de forma simplificada o que machine learning e como é possível as máquinas aprenderem.

O que é Machine Learning?

Machine learning ou Aprendizado de Máquina trata-se da aplicação da Inteligência Artificial (AI) de modo a permitir que máquinas possam aprender. Dessa forma, podemos obter certos resultados sem precisar programar um sistema manualmente.

Onde podemos usar Machine Learning?

Todo sistema que precisa tomar alguma decisão pode-se beneficiar do machine learning, principalmente quando temos que fazer escolhas baseadas em imensas quantidades de dados, como em uma empresa de porta de enrolar aço galvanizado preço.

O exemplo mais comum são os carros autônomos. Outro exemplo popular é o catálogo de filmes e séries da Netflix, que indica para você algo que provavelmente gostará ao comparar seu perfil com o de outros usuários parecidos. Também podemos citar:

  • Movimentações bancárias para identificar fraudes;
  • Fazer revisões meteorológicas;
  • Fazer uma análise do mercado financeiro;
  • Realizar diagnósticos médicos, entre outros.

São cada vez mais diversificadas as formas de implantação dessa tecnologia no nosso dia a dia. Desse modo, conheça um pouco mais sobre os tipos de aprendizagem contidos nela. 

Tipos de aprendizagem

Existem 3 principais categorias de aprendizagem: Supervisionada, não supervisionada e por reforço. Dessa maneira, continue a leitura e entenda um pouco mais sobre cada uma delas.

Aprendizagem supervisionada

Pense em um programa que utilize machine learning para identificar fotos de cachorro. São usados dois dados de entrada para treiná-lo. 

O primeiro é a imagem, como fotos variadas, algumas de cachorro e outras não, e o segundo é um boolean que indica se a foto é ou não de um cachorro.

O treinamento acontece quando o programa vê uma imagem junto com sua resposta, identificando se é um cachorro ou não.

Com isso se repetindo para milhares de imagens diferentes, chega um momento em que o programa identifica as características que fazem uma imagem ser de um cachorro.

Assim, sua empresa de curso de primeiros socorros saberá o que é a aprendizagem supervisionada. Dessa forma, dizemos ao computador o que é cada entrada (o label) e ela aprende quais as características delas que fazem elas serem o que são.

Ao analisar o tipo de resultado do algoritmo, podemos classificá-lo entre o de classificação ou o de regressão. O exemplo que damos é de um algoritmo de classificação, em que classificamos uma entrada em dois tipos possíveis: cachorro ou não-cachorro.

A regressão ocorre quando o resultado é numérico, como por exemplo, um programa que calcula o valor de uma casa com base em características, como número de quartos, ano de construção e localização.

Um serviço de regularização de imóveis, com base em exemplos de casas similares, têm isso no seu computador, aprendendo a precificar novas casas.

Aprendizagem não supervisionada

Em todos os 3 tipos de aprendizagem, existe a semelhança que o computador aprende a inferir algo com base em suas experiências passadas.

A diferença da aprendizagem não supervisionada para a supervisionada, é que aqui a na segunda ocorre sem que os dados sejam rotulados, de forma que não dizemos ao computador o que é aquela entrada.

Um exemplo, imagine uma distribuidora que quer classificar seus clientes em categorias diversas. Então, cria-se um programa que usa a aprendizagem não supervisionada para fazer essa tarefa.

A distribuidora vai ensinar o computador a separar os dados em grupos semelhantes, sem dizer o que são eles. Um possível resultado é um conjunto de clientes que compra produtos frescos e outros que compram coisas industrializadas, por exemplo.

O mesmo ocorre com a classificação de imagens: temos um modelo que aprendeu a classificar imagens entre dois grupos distintos.

Ao receber uma nova imagem de sua empresa de segurança do trabalho, com base em seus atributos, o programa identifica a qual grupo ela pertence, sem necessariamente saber o que é aquele grupo.

Aprendizagem por reforço

A aprendizagem por reforço é a terceira classificação. Imagine-se desenvolvendo um programa responsável por dirigir um veículo autônomo. Ele precisa aprender a dirigir pelas ruas e transportar seus passageiros e existem diversas formas de otimizar essa tarefa.

Uma forma é ter uma diretriz de como chegar ao destino no menor tempo possível e não causar nenhum acidente. 

Queremos que o carro saiba o que fazer conforme a realidade em sua volta e preferimos que ele demore um pouco mais do que cause um acidente, por exemplo.

A aprendizagem por reforço é uma forma de ensinar ao computador qual ação deve priorizar em cada situação determinada. 

Você poderá vincular recompensas e punições aos diferentes possíveis resultados. Ponderando-os de uma forma assertiva, ensinando o nível de prioridade de cada meta.

Nesse exemplo, para sua empresa de assessoria aduaneira, podemos atribuir uma punição muito maior no caso de um acidente em comparação com se atrasar alguns minutos. Dessa forma, é possível ensinar quais ações o computador deve priorizar.

Programação Comum vs Machine Learning

Quem desenvolve softwares sabe que para programar é preciso duas coisas: as regras (o código escrito e os dados (conjunto de valores fornecidos pelo usuário). Contando com esses itens, o programa entrega uma resposta.

Imagine que você quer criar um programa que indica se uma cor é clara ou escura. Para isso, devemos criar uma lógica para saber essa diferença para finalmente escrevermos o código.

Depois, o programa deve receber as cores para poder fornecer uma resposta, indicando se ela é clara ou escura. Assim como sua empresa fabricante de lona plástica sabe, no machine learning se muda um pouco o fluxo.

Ao querer que um programa nos diga se uma cor é clara ou escura, nós indicaremos alguns dados (cores) e será falado se determinada cor é clara ou escura (resposta).

Assim nós recebemos a regra, que a máquina irá usar para responder a outras cores que ela não conhece ainda.

Dessa forma, temos um programa que faz o que queremos, sem a necessidade de nos preocuparmos em criar uma lógica e passar isso para o código com uma linguagem de programação.

Isso pode parecer bobo, uma vez que podemos descobrir se uma cor é clara ou escura com uma simples fórmula encontrada na internet escrita em poucas linhas de código.

Porém, imagine que ao invés disso, voltemos ao exemplo do carro que tem que obedecer sinalizações, leis, evitar obstáculos, etc.

É preciso considerar o tanto de possibilidades incomuns que podem acontecer, que obrigatoriamente necessita que o carro tome uma decisão que não esteja em sua programação.

Sua empresa de elaboração de pgr sabe que é totalmente inviável escrever manualmente um código assim, sendo muito mais simples ensinar o sistema o que se deve fazer em cada ocasião.

Assim, ele aprenderá com os erros e acertos, até chegar ao ponto de poder tomar suas próprias decisões em futuros eventos para o qual ele não foi programado.

Mas como as máquinas tomam decisões?

Existem diversos tipos de algoritmos utilizados para o aprendizado de máquina, como o Naïve Bayes, SVM, K-means, entre outros. Ao estudarmos machine learning, aprendemos os principais para poder escolher qual é o melhor para cada situação.

Você não precisa saber programar esses algoritmos, pois normalmente utilizará bibliotecas que já possuam funções que os implementam.

Agora, imagine em um cenário hipotético que pegamos os códigos de algumas cores e jogamos dentro do plano cartesiano, somente para ter uma ideia visual do que acontece.

Os pontos vermelhos indicam as cores claras e os azuis indicam as escuras. Nisso, somos nós que indicamos quais são elas ao computador. Isso é o treinamento, etapa em que ensinamos a máquina e devemos assegurar que não haja dados incorretos.

Depois do treinamento, imagine que a máquina acabou de receber uma cor que nunca viu antes, como um ponto verde. O algoritmo do KNN verifica quem são os vizinhos mais próximos para indicar se essa cor é clara ou escura.

No caso de sua empresa de afugentamento de fauna ter 2 pontos vermelhos e um azul, o computador classificaria essa nova cor como clara.

Considerações finais

Machine learning significa possibilitar que sistemas possam aprender a tomar decisões a partir de certos algoritmos que fazem a análise de dados e que devem estar bem formatados e organizados para evitar passar informações erradas na fase de treinamento.

Os lugares onde essa tecnologia pode ser aplicada, são inúmeros, nos possibilitando desenvolver sistemas cada vez mais inteligentes para nossas vidas.

A maior parte do sucesso de um modelo certamente vem da qualidade dos dados. Dê a devida atenção para essa parte do processo.

No mundo real, os dados provavelmente precisarão ser tratados antes de treinar um algoritmo de machine learning. Nesse caso, existe toda uma ciência específica para fazer isso.

Esse texto foi originalmente desenvolvido pela equipe do blog Guia de Investimento, onde você pode encontrar centenas de conteúdos informativos sobre diversos segmentos.