Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation


Credit_Score_ML

Classificação de Score de Crédito com Machine Learning

A Data Girls Finance é uma fintech focada em tornar o processo de análise de crédito mais eficiente, escalável e orientado por dados.

Nesta fase atual, foi construido um modelo preditivo capaz de classificar o score de crédito de clientes com base em informações financeiras, histórico de pagamentos, perfil de crédito e comportamento financeiro, buscando reduzir a dependência de análises manuais e, consequentemente, lentidão e inconsistências.

Este projeto propõe a implementação de um modelo de Machine Learning para classificação automatizada do score de crédito, otimizando a esteira de aprovação.

Ponto de atenção: Sistemas de decisão de crédito são classificados como de alto risco (High-Risk AI Systems) devido impacto direto em direitos fundamentais e o acesso equitativo a serviços financeiros. A implementação deste modelo busca seguir princípios de governança para mitigar riscos de opacidade e dados enviesados:

  • Conformidade Regulatória: Foco no alinhamento com a LGPD (Brasil). Busca-se também considerar diretrizes globais, como:
    • GDPR (Europa), garantindo a minimização de dados e o direito à explicação de decisões automatizadas;
    • GLBA (Gramm-Leach-Bliley Act) no escopo de privacidade financeira e
    • PCI DSS para a proteção rigorosa de dados de pagamento, assegurando que variáveis sensíveis sejam tratadas em ambientes seguros.
  • Mitigação de Viés e Opacidade: O pipeline prevê monitoramento de fairness (paridade demográfica e equalized odds) para evitar que minorias sejam penalizadas no cálculo do score. Aplica-se a premissa de supervisão humana (Human-in-the-loop), permitindo que analistas revisem casos limítrofes e atuem sobre os resultados.

Como trabalhamos:

  • Colaboração: A construção deste sistema exigiu comunicação transparente e constante entre as áreas técnica e de negócios.
  • Autonomia e Capacitação: Buscando combater a Síndrome da Impostora, a equipe adotou uma cultura de validação cruzada por pares e feedbacks frequentes, garantindo que as análises técnicas prevalecessem sobre inseguranças individuais, e que as limitações do modelo fossem comunicadas de forma honesta às partes interessadas.

Ferramentas e Tecnologias Utilizadas

O desenvolvimento deste sistema de classificação de score de crédito foi estruturado utilizando o seguinte ecossistema tecnológico:

  • Linguagem e Ambiente de Desenvolvimento: Python e Jupyter Notebook.
  • Manipulação e Tratamento de Dados: Pandas e NumPy (limpeza de dados, tratamento de valores nulos e inconsistentes, e feature engineering).
  • Análise Exploratória e Visualização (EDA): Matplotlib e Seaborn (análise de distribuição de classes, detecção de outliers e matrizes de correlação).
  • Modelagem Preditiva (Machine Learning): Scikit-Learn (construção, treinamento e avaliação de modelos baseados em árvores, como Random Forest e Gradient Boosting; otimização de hiperparâmetros com validação cruzada).
  • Interpretabilidade de Modelos (XAI): SHAP e LIME (ferramentas para explicar o impacto local e global das variáveis nas predições, garantindo transparência para a área de negócios).
  • Versionamento e Portfólio: Git, GitHub e Kaggle (fonte de extração do dataset).
  • Governança, Observabilidade e MLOps (Escopo de Produção): Práticas desenhadas considerando ferramentas de rastreamento de experimentos (como MLflow), monitoramento contínuo de Data Drift e Fairness (como Evidently AI) e implantação em nuvem (GCP Vertex AI ou AWS SageMaker).

O desenvolvimento seguiu as etapas do ciclo de vida de um projeto de Data Science:

  1. Coleta e Limpeza de Dados: Tratamento de valores ausentes (imputação por mediana para numéricas e moda para categóricas), remoção de duplicatas e descarte de variáveis identificadoras para evitar ruído.
  2. Análise Exploratória de Dados (EDA): Análise da distribuição da variável alvo (Score de Crédito) para compreensão do balanceamento das classes.
  3. Engenharia de Features: Transformação de variáveis categóricas utilizando Label Encoding para otimização de memória e adequação aos algoritmos baseados em árvore.
  4. Modelagem Preditiva: Treinamento e comparação de modelos (Random Forest e Gradient Boosting). Utilização de divisão estratificada de dados (train-test split) e ajuste de hiperparâmetros via validação cruzada (RandomizedSearchCV) para evitar overfitting e garantir capacidade de generalização.
  5. Interpretabilidade (XAI): Aplicação da biblioteca SHAP (SHapley Additive exPlanations) para identificar o peso de cada variável na decisão final, garantindo que o modelo seja explicável para as áreas de negócio e conformidade.

Resultados e Insights

  • Performance dos Modelos: O modelo Random Forest apresentou o melhor desempenho geral, alcançando um F1-Score de 72% na classificação da classe de risco "Poor" (ruim) e mantendo um bom equilíbrio de acertos entre as demais classes, superando o Gradient Boosting.
  • Análise de Erros e Inclusão Financeira: O modelo foi otimizado buscando um bom equilíbrio entre Falsos Positivos e Falsos Negativos. Sabemos que, em sistemas de decisão de crédito, negar limite a um bom pagador é considerado um erro grave de exclusão financeira e perda de mercado. O desempenho alcançado garante que a instituição se proteja da inadimplência (minimizando a aprovação de maus pagadores) sem penalizar injustamente os bons clientes.
  • Principais Variáveis Preditivas: Através da análise de explicabilidade global (SHAP), identificou-se que as variáveis de maior impacto para a tomada de decisão do modelo foram, em ordem de importância: Age (Idade), Occupation (Ocupação/Profissão) e Month (Mês).
  • Impacto de Negócio: A automatização tem uma estimativa de mercado de reduzir o tempo de análise manual em cerca de 80% e padroniza os critérios iniciais de aprovação, diminuindo a margem para viés humano não intencional na triagem.
  • Governança e IA Responsável (Disclaimer): Sabendo que modelos de Machine Learning podem reproduzir vieses históricos presentes nos dados de treino, a implementação deste modelo em produção deve ser acompanhada de uma arquitetura Human-In-The-Loop (HITL). A auditoria humana para casos limítrofes e o monitoramento contínuo de métricas de fairness (justiça) garantem a mitigação de vieses algorítmicos e o cumprimento de legislações vigentes (direito à explicação e contestação).

Recomendações Práticas e Próximos Passos (Deploy)

  1. Implementação de Supervisão Humana: Casos classificados com probabilidade limítrofe (ex: entre 45% e 55% de chance de ser score "Poor") devem ser encaminhados para revisão manual de analistas de crédito.
  2. Implantação e Observabilidade: Recomenda-se o deploy do modelo em um endpoint (API) em nuvem (ex: Vertex AI ou SageMaker). É imperativo implementar ferramentas como Evidently AI para monitoramento contínuo de Data Drift (mudanças no perfil financeiro dos clientes) e degradação da performance.
  3. Atualização do Model Card: Criação de um documento formal detalhando as limitações do modelo e o cronograma de retreino periódico para garantir conformidade regulatória contínua.

Como Executar o Projeto

  1. Clone este repositório: git clone https://github.com/Nanda-Lopes/Credit_Score_ML.git
  2. Instale as dependências caso execute localmente: pip install pandas numpy matplotlib seaborn scikit-learn shap lime
  3. Faça o upload do arquivo .csv base (disponível no Kaggle em https://www.kaggle.com/datasets/parisrohan/credit-score-classification) e do arquivo DG_Credit_Score_FL2026.ipynb no Google Colab e execute as células sequencialmente.

About

Classificação de Score de Crédito com Machine Learning

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages