Ao conversar com clientes de várias empresas, torna-se claro que todos partilhamos os mesmos desafios. Estamos na mesma corrida para a digitalização dos nossos negócios, a tentar transformar o que está estagnado em progressos inovadores, a alavancar dados e a potenciar o machine learning. Contudo, parece haver uma lacuna na compreensão de como os dados são importantes para o sucesso e eficácia do machine learning. Parece haver um foco no uso de dados para criar produtos de dados ou apresentar insights de negócio que possam ser utilizados. A realidade, porém, é que o machine learning não existe sem dados. E se a amostra for demasiado pequena ou a qualidade dos dados deturpar a realidade, então os modelos de machine learning serão inúteis.
Para perceber melhor o machine learning, temos de pensar no processo de aprendizagem humana. O cérebro demora vários anos a alcançar a maturidade. Muito do que aprendemos é ensinado e apreendido através de longos processos de repetição, reconhecimento de padrões e feedback. O conhecimento é construído lentamente. Está demonstrado que usar o que aprendemos e fazer a aplicação prática do conhecimento consolidam os conceitos e fortalecem as nossas capacidades de tomada de decisão. Conforme diversificamos o conhecimento, a experiência e o feedback, aprendemos a tomar decisões diferentes e melhores ao longo do tempo.
O machine learning é muito semelhante à aprendizagem humana, embora a função cognitiva de uma máquina seja menos sofisticada que a do cérebro. As pessoas são forçadas a tomar decisões por instinto ou decisões em que sabemos que temos apenas um entendimento e uma apreciação parciais do problema. Preenchemos essa ausência dos dados com informações de experiências passadas aparentemente semelhantes e fazemos suposições baseadas na nossa tolerância ao risco. As máquinas, por outro lado, não tomam decisões por instinto; todas as decisões são baseadas no treino efetuado e nos dados fornecidos. É por isso que precisamos de ser intencionais com as “máquinas de ensino” (modelos de treino) e fornecer os dados certos para a aprendizagem. Caso contrário, como os seres humanos sem formação adequada, o modelo estará mal preparado para tomar decisões corretas.
Como funciona o Machine Learning
Existem vários tipos de machine learning, mas vamos analisar o modelo mais popular: a aprendizagem supervisionada. Com este tipo de machine learning, treinamos modelos para aceitar um input e responder com um output. Por exemplo, podemos dar-lhes uma imagem como input e construir um modelo que vai calcular a probabilidade dessa imagem conter um dado objeto (por exemplo, uma maçã).
Contudo, há várias formas de, inadvertidamente, treinarmos o modelo para produzir resultados imprecisos. Os dados podem ser demasiado uniformes (não informarmos que existem maçãs de várias cores) ou faltar-lhes variedade (maçãs com distintas formas). O conjunto de dados pode ser incompleto ou conter duplicações. Ou os dados podem estar mal categorizados.
A importância do feedback
Além de identificar corretamente uma determinada imagem (pelo nosso exemplo), o modelo precisa de saber quando é que a previsão que efetuou estava errada. Uma das formas pelas quais aumentamos a probabilidade da previsão é auditando repetidamente os resultados do modelo. Essa é uma das razões pelas quais o treino não é uma atividade que se faz apenas uma vez. Devemos treinar continuamente os modelos com exemplos e o feedback mais recente.
Como pode imaginar, a categorização de dados e o feedback do modelo podem dar trabalho. Felizmente há um número crescente de modelos de machine learning. O AWS Data Exchange torna os conjuntos de dados mais acessíveis. Existem também serviços que permitem fazer crowdsource na conclusão de tarefas, como o Amazon Mechanical Turk que categoriza os dados. Mas, do meu ponto de vista, acho muito interessante a forma como algumas empresas descobriram maneiras inovadoras de fazer com que as pessoas categorizem os dados de forma gratuita. O Google reCAPTCHA fornece o serviço de proteção de um site contra bots, o objetivo secundário é usar pessoas para categorizar dados para machine learning. Já pensou porque é que na verificação do utilizador pedem para escolher os quadrados da imagem que contêm semáforos ou passadeiras? É para melhorar os mapas.
Reunir dados
Ao construir data lakes (depósito que armazena grandes e variados conjuntos de dados brutos no formato original) para negócios, temos de pensar logo em machine learning, além de produtos de dados e ideias de negócios.
Vale a pena realçar que a construção de uma base de dados deste tipo pode constituir um desafio técnico e de política interna. Internamente é desafiador convencer outras pessoas a compartilhar dados quando não há benefícios diretos para o proprietário dos dados. Deve-se também limpar os dados, garantir que eles estejam no nível certo de granularidade, remover duplicações e criar conjuntos de dados ou amostras completas e precisas. Estas etapas podem ser bastante difíceis, daí que ferramentas, como o AWS Lake Formation, limpem e classifiquem os dados com algoritmos de machine learning. Exato, pode-se usar o machine learning para preparar dados para o machine learning!
Limitações atuais
No processo de venda de carros, o estado do veículo é muito importante; pode alterar significativamente o valor do carro e afetar o leque de potenciais compradores. A condição do veículo também é importante para as companhias de seguros ao avaliar os danos após um acidente. Em teoria, usa-se machine learning para aumentar a precisão da avaliação do estado do veículo e da estimativa da reparação. Poderia pensar-se que basta criar-se um modelo que funciona para os dois problemas: tirar fotos do veículo e usar um modelo para determinar o dano em cada imagem e depois mapear o dano face a dados de anteriores reparações para encontrar uma estimativa. Problema resolvido, certo?
Errado. Nos seguros lida-se com acidentes, o que significa que grandes partes do carro estão danificadas. A reparação geral é mais holística, como a substituição de um farol, para-choques ou painel frontal. No entanto, em caso de compra e venda de carros, geralmente lidamos com riscos, chapas amolgadas ou reparações mecânicas. O nível de detalhe necessário para a imagem neste cenário é muito diferente. O que descobrimos é que mesmo algumas das melhores câmaras disponíveis não conseguem tirar fotos com detalhes suficientes, de maneira confiável, permitindo que o olho humano veja uma mossa ou risco particularmente pequeno na imagem, mesmo quando sabemos que ela existe. Embora não seja exatamente assim, se você não pode vê-lo, o modelo também não. Portanto, o que parecia ser um problema fácil de resolver (porque as seguradoras estão a usar machine learning) é realmente difícil de resolver, porque os dados que estão disponíveis não permitem que um modelo preveja um resultado com precisão e consistência… por enquanto.
Assim sendo, é muito importante ter os dados certos para o machine learning. De todos os desafios de aumentar a agilidade dos negócios e inovar a um ritmo mais rápido, o arranque é o mais difícil. Mas o que aprendi é que o sucesso advém de experiências frequentes, minimizando os riscos. Comece com um projeto pequeno e com objetivos específicos: escolha pequenas abordagens verticais para detalhar padrões, aprender rapidamente e entregar valor e progredir a partir daí.