Roger Sampaio
Tiro de Escopeta: Aprendizado de Máquina
Atualizado: 24 de ago. de 2020

Fala meus guerreiros. Certamente você já ouviu nos termos Machine Learning, ML ou simplesmente, Aprendizado de Máquina, afinal está em alta e tem sido referenciado constantemente pelos jornais, redes sociais, cursos online seja para quem é da área de tecnologia da informação ou não. Aprendizado de Máquina é como um tiro de escopeta: muito poderoso para empresas independente do ramo de atuação. Nesse artigo exploraremos o conceito, os tipos e citaremos algumas aplicações sem entrar em termos muitos técnicos que poderiam tornar a leitura entediante. Vamos então se divertir, meu guerreiro.
1. Deixe-me contar uma história ...
Estamos vivendo a época da Tempestade Perfeita, isto é, a união de 3 elementos: Big Data + Machine Learning + Capacidade Computacional. Big Data conforme o próprio nome sugere, são muitos dados, derivados de diversas fontes, sendo produzidos em uma velocidade muito alta. Hoje o que não falta são dados no mundo. Os cliques em 'curtir' no Facebook, a escolha de um filme na Netflix, a compra em algum site de varejo, a pesquisa por alguma receita de bolo no Google, o cadastro de funcionário em um sistema de empresa ... tudo isso gera uma montanha de dados e o verdadeiro e maior desafio é transformá-los em insights valiosos pra o negócio. Machine Learning consiste em uma série de algoritmos capazes de fazer o computador aprender algo (e convenhamos: uma vez que ele aprende, ele é extremamente rápido de processar o resultado comparado a um ser-humano). Capacidade computacional significa que estamos com computadores cada vez mais robustos em termos de processamento e armazenamento. Para você ter ideia há algumas décadas falávamos em disquetes (com capacidade de 1.44 Mb) com meio de armazenamento para arquivos, hoje temos os hds externos (com capacidade na ordem de terabytes, 1 Tb = 1000000 Mb).
Veja:

2. Algoritmos de Aprendizado
O ramo de aplicações de aprendizado de máquina é vasto, transitando em diversas áreas de negócio, veja:

Existem três categorias conforme mostra a figura abaixo:

2.1 Supervisionado
Vamos pensar como uma criança aprende algo durante seus primeiros anos na escola. O professor apresenta, por exemplo, muitas fotografias de carros e diz isso é um carro. Ele explica para a criança algumas características que independente de qual carro seja, todos têm em comum: quatro rodas, dois faróis na frente e duas lanternas na traseira, um capô com motor interno, duas ou quatro portas com vidros ... Posteriormente quando a criança se deparar com uma imagem com essas características, associará com um carro. É notável que alguns erros serão cometidos como, por exemplo: ela associar um caminhão com um carro. Nesse momento o professor instruirá a criança e explicará a diferença entre ambos mesmo que haja semelhanças. É assim que o ser-humano aprende boa parte das coisas: observando as características e associando aos respectivos objetos. Bem, se você compreendeu guerreiro, parabéns, você acaba de aprender o tipo de algoritmo supervisionado, porque é exatamente assim que ele trabalha. Os algoritmos de aprendizado de máquina foram projetados semelhante ao processo de aprendizado de ser-humano: o humano tem um cérebro, enquanto a máquina um processador e conta com as áreas de Estatística e Matemática para aprender. Veja:

Retomando ao exemplo do carro, na fase 'dados de treino' fornecemos uma série de carros para o computador. Dizemos os dados de entrada (chamamos de variáveis preditoras), ou seja, todas as características que identificam que um objeto é um carro, e esperamos após o processamento receber uma saída (chamamos de variável 'target'; exemplo: o que é um carro e o que não é). A próxima etapa são os 'algoritmos de Machine Learning' que irão cruzar todas os dados de entrada e entender o relacionamento entre cada variável. O modelo preditivo é um modelo matemático que cruzou e relacionou as variáveis de entrada e usamos para efetuar as previsões, nesse caso, dadas informações sobre um objeto, ele dirá se é um carro ou não.
2.2. Não Supervisionado

Semelhante ao anterior, com algumas diferenças. Primeiramente, não fornecemos o que esperar na saída (a variável 'target'), apenas os dados de entrada (variáveis preditoras). O algoritmo cruza e relaciona as informações de entrada e ao final ao invés de previsões, temos agrupamentos chamados também de 'clusters'. Um exemplo prático é dadas informações sobre clientes de um banco, o algoritmos organiza em três categorias: clientes de renda baixo, renda média e alta renda considerando não apenas o critério de salário.

2.3. Por Reforço
Nem todos os problemas podem ser resolvidos com as duas abordagens anteriores. Imagina que, por exemplo, você deseje ensinar uma criança a andar de bicicleta. Você pode até passar algumas instruções breves como, por exemplo, o jeito de pegar no guidão, a posição dos pés nos pedais, porém não há outra maneira melhor para aprender a não ser pedalando (caindo e levantando até aprender). É exatamente dessa maneira que trabalha os algoritmos dessa categoria: recompensa e punição. Podemos, por exemplo, ensinar o computador a jogar 'Super Mário' como se fosse um ser-humano, veja:
3. Ferramentas
Existem várias no mercado que possibilitam a construção de algoritmos de Machine Learning, veja algumas na figura abaixo. E o profissional que irá construir os modelos de aprendizados de máquinas são os cientistas de dados.
