andlima.github.io

Table of Contents

Por André Lima, em 2020-02-01

Princípios de Modelagem Preditiva

Este material apresenta um conjunto de princípios que entendo que ajudam a direcionar a construção de um modelo preditivo para problemas reais. É fruto da minha experiência fazendo ciência de dados (principalmente machine learning), trabalhando em consultoria para diferentes indústrias, então naturalmente carrega um pouco dessa perspectiva.

Na primeira seção estão os princípios mais gerais; em seguida, outros que segmentei pelas etapas do CRISP-DM. A ideia aqui não é propor uma metodologia ou plano de trabalho. Apenas me baseei no propósito principal de cada etapa para organizar os pontos.

Cada princípio é apresentado de maneira direta, como uma recomendação. Em seguida, vem uma fundamentação sucinta da sua importância. Tive inspiração na concepção de princípios do Ray Dalio e no estilo do livro Effective C++.

Geral

“Todos os modelos são errados; alguns são úteis”

Tenha clareza sobre as premissas do modelo

Considere o trade-off acurácia vs interpretabilidade

Não misture dados de treino e teste

Entenda como o modelo associa o input à previsão

Combine diferentes modelos usando técnicas de ensemble

Etapas do Processo CRISP-DM

Business Understanding (entendimento do negócio)

Comece pela pergunta de negócio

Estabeleça uma métrica de desempenho adequada

Avalie granularidade e periodicidade adequadas para o problema

Entenda e comunique o que é viável conseguir de acurácia

Entenda qual é a acurácia mínima para que o modelo traga valor

Estebeleça quão importante é a explicabilidade do modelo

Entenda a estabilidade do fenômeno a ser previsto

Levante hipóteses de negócio

Data Understanding (entendimento dos dados)

Organize os metadados dos dados crus em um documento dinâmico

Entenda se o volume de dados é suficiente para o problema

Questione a qualidade dos dados

Confirme o entendimento do negócio através dos dados

Data Preparation (preparação dos dados)

Automatize o tratamento dos dados

Automatize uma validação técnica do dados

Valide o dataset final com visão de negócio

Organize os metadados do dataset final em um documento dinâmico

Modeling (modelagem)

Estabeleça uma boa variável-resposta

Defina o tamanho dos dados de teste com critério

Dados de teste devem seguir a distribuição de produção

Foque em uma métrica única para calibração do modelo

Comece com um modelo simplificado e evolua com critério

Refine o modelo de maneira estratégica

Evaluation (validação de negócio)

Evolua analiticamente a modelagem

Valide os resultados do modelo com visão de negócio

Deployment (implantação ou entrega)

Automatize uma validação técnica da saída do modelo

Faça log do processo de predição em produção

Armazene o input utilizado para predição em produção

Versione o modelo disponível em produção

Obrigado!

Espero que o documento seja proveitoso para outros entusiastas de ciência de dados, especialmente para quem está começando. Vou tentar evoluir o material no futuro. Comentários e sugestões são bem-vindos e podem ser feitos neste gist.

Aproveito para agradecer ao Diego Miro pela contribuição geral que deu nos pontos apresentados.