Os algoritmos aprendem sozinhos? A verdade sobre dados, features e Machine Learning
Duas equipes utilizam exatamente o mesmo algoritmo. A primeira alcança uma AUC de 0,78. A segunda chega a 0,91. O que explica essa diferença? Na maioria das vezes, não é o algoritmo. São os dados e, principalmente, as features.
Dados: a matéria-prima da Inteligência Artificial
Até aqui vimos na primeira parte do artigo que um projeto de Machine Learning começa muito antes da escolha de um algoritmo. Primeiro entendemos o problema de negócio, definimos os objetivos e traduzimos essa necessidade em um problema analítico.
A próxima etapa consiste em responder uma pergunta fundamental:
Existe informação suficiente para resolver esse problema?
Essa pergunta parece simples, mas ela determina o sucesso ou o fracasso de praticamente qualquer iniciativa de Inteligência Artificial.
Nenhum algoritmo cria conhecimento do zero
Existe uma ideia bastante difundida de que algoritmos de Inteligência Artificial são capazes de descobrir qualquer padrão sozinhos.
Na prática, isso não acontece.
Os algoritmos não possuem conhecimento próprio, intuição ou experiência. Eles apenas identificam relações existentes nos dados utilizados durante o treinamento.
Em outras palavras, a qualidade das previsões nunca será superior à qualidade das informações disponíveis.
Imagine que uma instituição financeira deseja prever quais clientes irão atrasar o pagamento das próximas parcelas.
Se o histórico disponível contém informações como renda, idade, histórico de pagamentos, utilização do limite, quantidade de contratos anteriores e comportamento financeiro, existe uma boa chance de o modelo encontrar padrões úteis.
Agora imagine que todas essas informações estejam ausentes.
Nesse cenário, mesmo utilizando os algoritmos mais sofisticados do mercado, dificilmente será possível construir um modelo confiável.
O problema não está no algoritmo.
O problema está na ausência de informação.
Dados são a matéria-prima do Machine Learning
Uma analogia bastante útil é pensar em uma indústria.
Nenhuma fábrica consegue produzir um produto de qualidade utilizando matéria-prima inadequada. O mesmo acontece na Ciência de Dados.
Os dados representam a matéria-prima utilizada para construir conhecimento.
Quanto mais representativos, completos, consistentes e relevantes forem esses dados, maior será a capacidade do modelo de aprender padrões úteis.
Essa relação costuma ser resumida pela expressão conhecida na área:
Garbage In, Garbage Out (GIGO).
Ou seja, se informações incorretas entram no modelo, previsões incorretas serão produzidas.
Embora seja um conceito simples, ele continua sendo um dos maiores responsáveis pelo fracasso de projetos de Inteligência Artificial.
Dados não são apenas números
Quando pensamos em dados, muitas pessoas imaginam apenas tabelas compostas por linhas e colunas.
Na realidade, praticamente qualquer informação pode ser utilizada como fonte de aprendizado.
Entre elas:
- Dados cadastrais;
- Histórico de transações;
- Comportamento de navegação;
- Localização geográfica;
- Imagens;
- Documentos;
- Áudios;
- Vídeos;
- Séries temporais;
- Sensores industriais;
- Registros médicos;
- Textos produzidos pelos clientes.
Independentemente do formato, o objetivo continua sendo o mesmo: representar algum aspecto da realidade que ajude o algoritmo a compreender o fenômeno estudado.
Mais dados nem sempre significam melhores modelos
Outro equívoco bastante comum é acreditar que aumentar a quantidade de dados sempre melhora o desempenho de um modelo.
Na prática, volume e qualidade são conceitos diferentes.
Uma base com milhões de registros inconsistentes pode produzir resultados inferiores a uma base menor, porém cuidadosamente construída.
Além disso, muitas variáveis carregam pouca ou nenhuma informação relevante para o problema.
Em alguns casos, elas apenas introduzem ruído, dificultando o aprendizado do algoritmo e aumentando o risco de overfitting.
Por esse motivo, o trabalho do Cientista de Dados não consiste apenas em coletar grandes volumes de informação.
Seu papel é identificar quais dados realmente ajudam a explicar o comportamento que deseja prever.
O desafio dos dados no mundo corporativo
Nos exemplos acadêmicos, normalmente os dados já estão organizados e prontos para utilização.
Nas empresas, a realidade costuma ser bastante diferente.
É comum encontrar situações como:
- Informações distribuídas entre diversos sistemas;
- Diferentes definições para a mesma variável;
- Registros duplicados;
- Dados ausentes;
- Inconsistências cadastrais;
- Mudanças históricas nas regras de negócio;
- Diferentes granularidades temporais;
- Problemas de atualização e sincronização.
Grande parte do esforço de um projeto de Ciência de Dados consiste justamente em transformar essas informações dispersas em uma base analítica confiável.
Somente após essa etapa os algoritmos começam a fazer sentido.
Engenharia de Features: onde nasce a inteligência do modelo
Existe uma frase bastante conhecida na comunidade de Ciência de Dados:
Os modelos aprendem a partir das features, não dos dados brutos.
Embora pareça um detalhe técnico, essa afirmação explica por que projetos aparentemente semelhantes podem produzir resultados completamente diferentes.
A qualidade das variáveis utilizadas costuma exercer muito mais influência no desempenho do modelo do que a escolha do algoritmo.
O que são features?
Uma feature é qualquer informação utilizada pelo algoritmo para realizar uma previsão.
Algumas delas já existem na base original.
Por exemplo:
- Idade;
- Renda;
- Tempo de relacionamento;
- Quantidade de compras;
- Saldo da conta.
Entretanto, as features mais valiosas raramente estão prontas.
Elas normalmente precisam ser construídas a partir da combinação de diversas informações existentes.
É justamente esse processo que recebe o nome de Engenharia de Features.
Transformando dados em conhecimento
Imagine um modelo de crédito.
A variável “renda” possui informação importante. Mas ela talvez não explique completamente a capacidade financeira do cliente.
Agora imagine criar uma nova variável chamada:
Comprometimento da renda = Valor das parcelas / Renda mensal
Essa nova feature provavelmente representa muito melhor a capacidade de pagamento do cliente do que cada variável isoladamente.
O algoritmo não criou esse conhecimento.
Foi o Cientista de Dados quem traduziu conhecimento de negócio em informação estatística.
É exatamente por isso que Engenharia de Features costuma ser considerada uma das atividades mais importantes de toda a Ciência de Dados.
Feature Engineering é conhecimento de negócio transformado em dados
Esse talvez seja o ponto mais importante de todo o processo.
Construir features não significa apenas realizar operações matemáticas. Significa transformar conhecimento do domínio em variáveis capazes de representar comportamentos reais.
- No varejo, podemos criar indicadores de frequência de compra.
- Na área financeira, indicadores de utilização do limite de crédito.
- Na indústria, indicadores de eficiência operacional.
- No marketing, indicadores de engajamento.
Cada setor possui sinais diferentes que ajudam a explicar seus respectivos problemas.
Quanto melhor esses sinais forem representados, maior tende a ser a capacidade preditiva do modelo.
A inteligência normalmente nasce antes do algoritmo
É comum atribuir todo o mérito de um modelo ao algoritmo utilizado. Na realidade, boa parte da inteligência está presente nas features.
Considere dois Cientistas de Dados utilizando exatamente o mesmo algoritmo.
O primeiro utiliza apenas variáveis originais. O segundo dedica semanas para construir centenas de indicadores comportamentais, temporais, estatísticos e de negócio.
Muito provavelmente, o segundo modelo apresentará desempenho superior.
Não porque o algoritmo seja diferente. Mas porque recebeu informações muito mais ricas para aprender.
Feature Engineering também reduz complexidade
Além de aumentar a capacidade preditiva, boas features ajudam a simplificar problemas complexos.
Ao sintetizar grandes volumes de informação em poucos indicadores representativos, reduzimos ruído, melhoramos interpretabilidade e facilitamos a generalização do modelo.
Esse processo também contribui para tornar modelos mais estáveis ao longo do tempo, reduzindo impactos provocados por mudanças naturais no comportamento dos dados.
O que realmente é Machine Learning
Depois de compreender a importância do negócio, dos dados e da Engenharia de Features, finalmente chegamos ao Machine Learning.
Curiosamente, esta costuma ser a primeira etapa ensinada na maioria dos cursos.
Na prática, ela é apenas uma consequência de tudo o que foi construído anteriormente.
Machine Learning pode ser entendido como um conjunto de técnicas capazes de identificar padrões existentes nos dados e utilizá-los para realizar previsões ou apoiar decisões futuras.
Observe que a palavra mais importante dessa definição é aprender.
Diferentemente de sistemas tradicionais, que seguem regras previamente programadas, modelos de Machine Learning constroem essas regras automaticamente a partir de exemplos históricos.
Em vez de dizer explicitamente como resolver um problema, fornecemos exemplos de situações passadas para que o algoritmo descubra, por conta própria, quais padrões são úteis.
Por exemplo, em um modelo de detecção de fraude, não é necessário escrever manualmente todas as combinações possíveis de comportamento fraudulento. O algoritmo analisa milhares ou milhões de transações históricas e aprende quais características costumam estar associadas a operações legítimas e quais indicam maior probabilidade de fraude.
Em essência, Machine Learning transforma dados históricos em modelos capazes de generalizar esse conhecimento para novas situações. O aprendizado ocorre porque o algoritmo ajusta seus parâmetros até encontrar relações que expliquem o comportamento observado e que possam ser aplicadas a dados nunca vistos anteriormente.
É justamente essa capacidade de aprender com a experiência que diferencia o Machine Learning dos sistemas baseados exclusivamente em regras fixas.
Aprendizado Supervisionado
O Aprendizado Supervisionado é a categoria mais utilizada em aplicações corporativas.
Nesse tipo de abordagem, o algoritmo aprende a partir de exemplos históricos que já possuem a resposta correta.
Durante o treinamento, fornecemos tanto as variáveis explicativas quanto o resultado esperado. O objetivo é identificar padrões que permitam prever esse mesmo resultado para novos casos.
Na prática, é semelhante ao processo de aprendizagem humana: primeiro observamos exemplos resolvidos e, depois, aplicamos esse conhecimento em situações inéditas.
Os problemas supervisionados podem ser divididos em duas grandes categorias.
Classificação
Na classificação, o objetivo é prever categorias ou classes previamente definidas.
Alguns exemplos incluem:
- Aprovar ou negar um crédito;
- Detectar uma fraude;
- Identificar se um e-mail é spam;
- Prever o cancelamento de um cliente;
- Classificar um exame como normal ou alterado.
O resultado esperado pertence a um conjunto finito de possibilidades, como “sim” ou “não”, ou múltiplas categorias.
Grande parte dos modelos utilizados por bancos, seguradoras, fintechs e empresas de varejo pertence a essa categoria.
Regressão
Na regressão, o objetivo é estimar um valor numérico contínuo.
Entre os exemplos mais comuns estão:
- Previsão de preços de imóveis;
- Estimativa de demanda;
- Previsão de vendas;
- Consumo de energia;
- Previsão de receitas;
- Estimativa de tempo de entrega.
Em vez de responder “qual classe?”, buscamos responder “quanto?”.
Apesar da diferença, ambos utilizam o mesmo princípio: aprender padrões existentes nos dados históricos.
Casos reais de negócio
Independentemente do algoritmo escolhido, modelos supervisionados costumam estar presentes em praticamente todos os setores da economia.
- No setor financeiro, são utilizados para prever inadimplência, estimar risco de crédito e identificar transações suspeitas.
- No varejo, ajudam a prever demanda, personalizar ofertas e antecipar cancelamentos.
- Na indústria, estimam falhas em equipamentos antes que ocorram.
- Na saúde, auxiliam médicos na identificação precoce de doenças.
Em todos esses cenários, o algoritmo não substitui a decisão humana, mas oferece uma estimativa baseada em padrões históricos, tornando o processo mais rápido, consistente e escalável.
Aprendizado Não Supervisionado
Nem todo problema possui uma resposta conhecida. Em muitas situações, o objetivo não é prever um resultado, mas descobrir padrões ocultos existentes nos próprios dados.
É exatamente esse o papel do Aprendizado Não Supervisionado.
Nesse tipo de abordagem, o algoritmo recebe apenas os dados de entrada, sem qualquer indicação sobre qual seria a resposta correta.
Seu desafio é encontrar estruturas, agrupamentos ou relações naturalmente presentes nas informações.
Clustering
O clustering busca identificar grupos de elementos semelhantes entre si.
Clientes com comportamentos parecidos tendem a ser agrupados automaticamente, mesmo que nunca tenham sido classificados previamente.
Essa técnica é amplamente utilizada para explorar dados e compreender diferentes perfis existentes dentro de uma população.
Segmentação de clientes
Uma das aplicações mais conhecidas do clustering é a segmentação de clientes.
Em vez de tratar todos os consumidores da mesma forma, a empresa pode identificar grupos com características semelhantes, como:
- Clientes de alto valor;
- Consumidores ocasionais;
- Usuários em risco de cancelamento;
- Compradores altamente recorrentes.
Esses grupos permitem estratégias comerciais muito mais direcionadas.
Sistemas de recomendação
Outra aplicação importante consiste na recomendação de produtos, conteúdos ou serviços.
Plataformas de streaming, marketplaces e e-commerces utilizam padrões de comportamento para identificar usuários semelhantes e sugerir itens potencialmente relevantes.
Embora existam diversas abordagens para recomendação, muitas delas exploram conceitos relacionados à similaridade entre usuários ou entre produtos.
Redução de dimensionalidade
À medida que o número de variáveis cresce, torna-se mais difícil compreender os dados e construir modelos eficientes.
Técnicas de redução de dimensionalidade procuram representar um grande conjunto de informações utilizando menos dimensões, preservando a maior parte da informação relevante.
Além de facilitar visualizações e análises exploratórias, essas técnicas podem reduzir ruído, acelerar algoritmos e simplificar modelos mais complexos.
Aprendizado por Reforço
Enquanto o Aprendizado Supervisionado aprende a partir de exemplos e o Não Supervisionado busca padrões ocultos, o Aprendizado por Reforço segue uma lógica diferente.
Nessa abordagem, um agente aprende por tentativa e erro, interagindo continuamente com um ambiente.
Cada ação realizada produz uma consequência, representada por uma recompensa ou penalização.
Ao longo do tempo, o objetivo é descobrir quais decisões maximizam a recompensa acumulada.
Esse paradigma tornou-se conhecido por aplicações como robótica, veículos autônomos e jogos estratégicos, nos quais agentes são capazes de desenvolver estratégias extremamente sofisticadas após milhões de interações.
Embora seja uma área de intensa pesquisa e apresente resultados impressionantes em problemas específicos, seu uso ainda é menos frequente em projetos corporativos tradicionais quando comparado ao Aprendizado Supervisionado.
Ainda assim, o conceito reforça uma característica comum a todas as abordagens de Machine Learning: aprender continuamente a partir da experiência para tomar decisões cada vez melhores.
Até aqui vimos como os modelos aprendem. Mas uma empresa raramente utiliza apenas um modelo isolado. Na prática, soluções de Machine Learning funcionam como um ecossistema integrado. É isso que veremos na última parte da série.
