Existem algumas manhas de desenvolvimento de modelos de Machine Learning que só se pegam com o tempo. É tanta coisa para testar, resolver e aprender que muitas vezes focamos apenas no conseguir rodar um modelo com AUC > 0.7. E assim muitos detalhes acabam sendo deixados de lado.
O problema é que um erro no início do projeto, como na divisão dos conjuntos de treino e teste, pode fazer você perder muito tempo. Você acabaria desperdiçando horas fazendo experimentos, análises e desenvolvendo modelos com um conjunto de dados enviesado. Isso se chama data-leakage e afeta todos os cientistas de dados pelo menos uma vez na vida (quer eles saibam ou não).
O data-leakage pode causar uma falsa sensação de sucesso, levando a modelos com desempenhos superestimados, que falham ao lidar com dados reais. Mas não precisa ser assim.
A seguir vão alguns insights sobre gerenciamento de dados para o desenvolvimento de modelos que teriam me poupado muito tempo se eu soubesse deles antes:
- Divisões Baseadas em Tempo: se há um aspecto temporal em seus dados, divida-os por tempo em conjuntos de treino/validação/teste, ao invés de fazer isso aleatoriamente, para refletir melhor os cenários do mundo real.
- Oversampling Pós-Divisão: realize o oversampling dos dados após a divisão do conjunto de dados para evitar a introdução de viés no seu modelo.
- Escalonamento & Normalização: escale e normalize seus dados após a divisão para evitar o data-leakage.
- Exploração Apenas da Divisão de Treino: explore, visualize e gere estatísticas para imputação de valores ausentes apenas com o conjunto de treino.
- Conhecimento da Geração de Dados: entenda como seus dados são gerados, coletados e processados. Envolva especialistas no assunto, se necessário.
- Linhagem de Dados: mantenha o controle da linhagem de seus dados (de onde vieram, o que acontece com eles e para onde são enviados) para garantir transparência e reprodutibilidade.
- Importância dos Atributos: reconheça a importância e o significado de cada atributo no seu modelo para otimizar seu desempenho.
- Atributos Generalizáveis: use atributos que generalizem bem em diferentes cenários para tornar seu modelo mais robusto.
- Remover Features Não Utilizadas: revise e remova regularmente features que não contribuem mais para o desempenho do seu modelo.
- Validação Cruzada: sempre que possível, utilize a validação cruzada (k-fold cross-validation) para garantir uma avaliação mais precisa e confiável do desempenho do seu modelo em diferentes subconjuntos de dados.

Nosso blog é um canal para você acessar diversos conteúdos de qualidade sobre temas como: ciência de dados, machine learning, tendências e inovações do mercado. E se você quer ficar por dentro dos melhores conteúdos sobre Inteligência Artificial do momento, basta clicar no link ou assinar a Newsletter.

Cientista de dados