Conteúdo

O porquê disto?

Nesta série de posts, que logo se transformarão em vídeos, ebooks, cursos e muito mais, de forma gratuita, resolvemos criar um material bastante sólido e, ao mesmo tempo, simples sobre aprendizado de máquina.

Nossa filosofia é que “Se o Homer Simpson não conseguir entender, precisamos refazer…

Assim sendo, não importa de onde você vem, para aonde quer ir ou até mesmo o que sabe ou não sabe: você vai sair daqui melhor do que quando chegou. Teremos conteúdo técnico, teórico e prático por tudo que já se falou sobre Machine Learning dentro e fora do Brasil. Somos pretensiosos.

“O aprendizado de máquina é ministrado por acadêmicos, para acadêmicos. É por isso que a maior parte do material é tão denso em matemática. Os desenvolvedores precisam saber o que funciona e como aplicar. Precisamos de menos matemática e mais tutoriais com código funcional.”

Jason Brownlee(PHD) sobre o início dos estudos na área.

Se algum dia você já leu algo sobre Machine learning por ai, sabe que existem 2 tipos de informação disponíveis:

O PRIMEIRO TIPO: artigos complexos com fórmulas, cálculos e teoremas elencando todos conhecimentos e conceitos matemáticos que você precisa pra iniciar na área.

O SEGUNDO TIPO: contos de fadas sobre como I.A trabalha, a dominação dos robôs, os salários milionários, entre outras. Diga-se de passagem, fazer muito dinheiro no Brasil com programação não é assim tão raro, faltando especialistas em todas as áreas existentes, incluindo Data Science. As aplicações possíveis com dados e I.A realmente são incontáveis, mas mesmo assim, ainda há muito hype sobre tudo que é possível pois muitos sequer imagin am como tudo acontece nos bastidores e você, carx leitorx, sairá daqui entendendo de forma técnica, teoria e prática.

Apresentaremos a você problemas, soluções e possibilidades do mundo real, sem teoremas ou fórmulas complexas. Você sendo, ou não, uma pessoa que programa, vai absorver com êxito tudo isso. Vamos começar?!

Por quê ensinar máquinas e não humanos?

Pra melhorar explicar alguns conceitos, utilizaremos Homer Simpson como figura principal por aqui.

Homer quer comprar um carro e, para isso, tenta calcular quanto precisa economizar mensalmente. Ele listou diversas ofertas da OLX e Mercado Livre, descobrindo que os carrros novos, do modelo que ele busca, custa em torno de R$30.000,00. Os semi-novos, R$20.000 e aqueles “praticamente novos”, com apenas 2 anos de uso, custam R$18.000,00.

Homer quer comprar um novo carro e percebe padrões nos preços: o ano de fabricação!

Homer percebe que o preço de um carro depende bastante de seu ano de fabricação e o preço tende a cair para cada ano a mais de idade no carro, mas nunca abaixo de R$18.000,00. Homer não quer participar de leilões e também não acredita em ofertas muito atrativas da OLX, afinal, já levou alguns golpes em sua vida.

O preço do carro que Homer busca diminui a medida que o carro aumenta em idade, mas jamais preço inferior a R$18.000,00.

Falando em Machine Learning, Homer Simpson acaba de utilizar a REGRESSÃO LINEAR: um algoritmo para prever um valor/preço baseado em dados históricos conhecidos. Nós humanos utilizamos este algoritmo com bastante frequência, principalmente ao calcular o gasto de combustível de um carro conforme dados anteriores de kilometragem rodada/litros gastos.

Você também deve saber que, na maioria das vezes, não é apenas 1 fator que influencia no valor que estamos prevendo. E se houver opcionais no carro que Homer visa comprar? E se o carro daquele mesmo ano, modelo possuirem preços diferentes, conforme o número de portas, se possui ar condicionado ou não. Para nosso exemplo anterior, calculando o gasto de combustível por kilometro rodado, poderiamos possuir também alterações conforme o peso que o carro carrega, se o carro está na estrada ou cidade.

As pessoas em geral tendem a preguiça e isso não é culpa sua, é uma forma do cérebro economizar energia prevendo escassez de alimentos. Por este mesmo motivo, você usa um computador, celular, veículos, Tinder… Por este motivo, assuntos como “PRODUTIVIDADE” crescem exponencialmente ao passar dos anos.

Tendemos a preguiça e as grandes corporações sabem disso…! Fazer o quê?

Assim sendo, vamos ensinar à maquina tudo isto e pedir que ela encontre todos os padrões relacionados ao preço. Apostaria que ela se sairá muito bem. Agora, por quê? bem, ela é ótima em repetições e buscas de padrão.

E assim nasceu o MACHINE LEARNING…

Agora que você entendeu o porquê de tendermos a preguiça, a nossa paixão por produtividade e ainda, deve imaginar, que empresas se beneficiarão muito com estas predições.

Ingredientes para o aprendizado de máquina:

Por mais bizarro que possa parecer, as proporções acima listadas fazem sentido. Basicamente, o único objetivo do aprendizado de máquina é prever os resultados com base nos dados recebidos.

Quanto mais dados, maior a variedade e possibilidade de encontrarmos padrões relevantes.

1. Dados

Quer prever se um email é spam? obtenha amostras de emails com spam e sem spam. Quer prever as vendas em seu ecommerce? obtenha amostras de vendas e acessos em seu site. Quer prever o crescimento populacional? obtenha dados do censo.

Quanto mais diversificados os dados, melhor tende ser o seu resultado. Milhares de amostras já é alguma coisa para iniciarmos.

Existem, basicamente, 2 formas de se conseguir dados: manual e automática.

A maneira automática é a mais simples e barata: você junta tudo e começa. Algumas corporações usam seus próprios clientes para gerar estes dados. O Recaptcha, da Google, faz você marcar fotos de determinados objetos para treinar algoritmos gratuitamente. Assim como quando você marcava pessoas nas fotos do Facebook.

Chamamos os conjuntos de dados de DATASETS. Os dados são valiosíssimos e por isto você facilmente encontra algoritmos de grandes corporações expostos por elas mesmas, mas jamais os dados destas empresas como os de clientes.

2. Variáveis/Features/Recursos

Existem diversos nomes para o memso significado, mas em suma, são as colunas no excel, contendo informações dos dados como NOME DA PESSOA, CPF, DATA DE NASCIMENTO… Estas são features, variáveis, recursos, parâmetros…

Saiba que há muitos tipos de dados e nem sempre virão em formato de colunas do excel. As vezes você os receberá em formato de aúdio, video, imagens, textos e muito mais.

Por este motivo, selecionar os parâmetros certos leva tanto tempo. Geralmente 80% do tempo gasto em um projeto deste tipo é empregado na seleção, alteração dos parâmetros. Muitas vezes não faz sentido manter alguns dados no formato que estão e você precisará remove-los ou alterar como são demonstrados.

Existem também discussões bastante calorosas sobre a escolha dos parâmetros para predições. Muitas vezes você pode ensinar a máquina a ser preconceituosa, treinando-a com dados como raça, religião, entre outros dados sensíveis, mas este é um assunto para outro momento.

Features/Variáveis/Recursos/Parâmetros… basicamente as colunas que nomeiam os dados de um dataset.

3. Algoritmos

Sem dúvida alguma, a parte mais óbvia e esperada. A escolha do algoritmo influencia, e muito, o desempenho, velocidade e precisão de seu modelo preditivo final. Saiba que se você obtiver dados ruins, seu modelo fará predições ruins.

O que são dados ruins? bem, poderiamos fazer uma lista gigantesca, mas em suma, dados ruins são aqueles que não possibilitam à máquina generalizações relevantes. Exemplo: você quer prever as vendas de um ano inteiro de um ecommerece, mas para isto obtém apenas dados da última black friday onde os acessos e vendas foram bastante volumosos. Ou quer prever a temperatura de Florianópolis obtendo apenas dados de temperatura do inverno no Alasca. Sim, isso acontece muito.

“Entra lixo, sao lixo…!”

Learning, machine

Uma das frases mais comuns ao terminarmos um modelo preditivo é: “vamos tentar melhorar a precisão conseguindo mais dados.”

DADOS + FEATURES + ALGORITMOS = MACHINE LEARNING!

APRENDIZAGEM vs. INTELIGÊNCIA

Cuidado com o que você lê por aí: a maioria dos sites que escrevem notícias sobre I.A e suas aplicações tendem a apresenta-las como uma possível Skynet. Para melhor entendimento, vamos separar alguns conceitos.

Inteligência artificial é o nome de todo um campo de conhecimento, semelhante à biologia ou à química.

Aprendizado de Máquina é uma parte da inteligência artificial. Uma parte importante, mas não a única.

Redes neurais são um dos tipos de Machine Learning. Um tipo muito popular, mas existem outras ótimas abordagens nessa classe.

Deep Learning é um método moderno de construção, treinamento e uso de redes neurais. Basicamente, é uma nova arquitetura. Hoje em dia, na prática, ninguém separa deep learning das “redes mais comuns”. Nós até usamos as mesmas bibliotecas para elas.

Caso seja de seu interesse, indicamos a leitura do artigo “MACHINE LEARNING E SUAS 6 ÁREAS” para que você entenda de uma vez por todas as divisões possíveis. Ah, temos aplicações práticas por lá também(contanto que você programe em Python).

Apenas para nos certificarmos que, até o momento, conseguimos explicar alguns conceitos:

Maquinas podem:

Máquinas não podem

Outro ponto bastante importante é que não existem balas de prata ou soluções únicas para determinado problema. Não à toa, essa profissão é intitulada de “CIÊNCIA DE DADOS”, afinal, testar hipóteses é usada sem moderação. Existem diversos algoritmos e possibilidades para um mesmo problema.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

10 − 8 =