Redes Neurais na Avaliação de Risco de Crédito: Modelagem e Aplicações

1 Bancos e Modelos Estatísticos

Os bancos desempenham um papel crucial na economia global, fornecendo serviços financeiros essenciais que vão desde contas correntes e poupanças até empréstimos e investimentos complexos. No entanto, a eficácia dessas instituições depende cada vez mais da capacidade de analisar e interpretar grandes volumes de dados. Nesse contexto, os modelos estatísticos emergem como ferramentas indispensáveis, permitindo aos bancos tomar decisões informadas e otimizar suas operações.

Dentre as diversas frentes de atuação que os modelos estatísticos são desenvolvidos, 4 destaques foram listados

  • Previsão de Demanda e Gestão de Liquidez
    • Aplicação essencial dos modelos estatísticos no setor bancário é a previsão de demanda e a gestão de liquidez. A previsão de demanda envolve a utilização de técnicas de séries temporais e modelos preditivos para estimar as futuras necessidades de caixa e recursos financeiros dos clientes. Isso permite aos bancos planejar adequadamente suas reservas e garantir que terão liquidez suficiente para atender às obrigações de curto e longo prazo. Por outro lado, a gestão de liquidez se beneficia desses modelos ao otimizar a alocação de ativos e passivos, garantindo que a instituição mantenha um equilíbrio saudável entre a disponibilidade de recursos e a rentabilidade. A integração dessas abordagens melhora a estabilidade financeira do banco e sua capacidade de responder a flutuações do mercado.
    • Dentre essa frente, os modelos de séries temporais são destaques, onde há grande utilização dos modelos ARIMA e suas variações (Sazonal, Com Covariáveis e etc) e o modelos que comportam o fenômeno de heterocedadsticidade como os GARCH e Redes Neurais
  • Marketing e Segmentação de Clientes
    • A segmentação de clientes é fundamental para o desenvolvimento de estratégias de marketing e a personalização de serviços bancários. Através de modelos de segmentação, como análise de agrupamentos e modelos de mistura, os bancos podem categorizar seus clientes com base em comportamentos e preferências, oferecendo produtos e serviços mais alinhados às necessidades individuais.
    • Dentre essa frente os modelos de aprendizado não supervisionado são os mais utilizados, como os já citados modelos de agrupamentos(K-Means, Fuzzy, Misturas e etc) e Redes Neurais
  • Detecção de Fraudes
    • A detecção de fraudes, onde os modelos estatísticos são usados para identificar padrões suspeitos em transações financeiras. Técnicas como análise de cluster e algoritmos de aprendizado supervisionado ajudam a diferenciar atividades legítimas de comportamentos potencialmente fraudulentos, protegendo tanto as instituições quanto os clientes.
  • Avaliação de Risco de Crédito
    • A análise de risco de crédito, que visa prever a probabilidade de inadimplência de clientes e, assim, determinar condições de empréstimo adequadas. Modelos como regressão logística e redes neurais são amplamente utilizados para este fim, permitindo uma avaliação mais precisa do risco associado a cada tomador de crédito.

2 Modelos de Aprendizado Supervisionado

Os modelos de aprendizado supervisionado são uma categoria de algoritmos de aprendizado de máquina que utilizam um conjunto de dados rotulados para treinar um modelo. Esse modelo aprende a partir desses dados e é capaz de fazer previsões ou classificações quando apresentado a novos dados.

  • Classificação vs. Regressão

    • Classificação: Utilizada quando o objetivo é prever uma categoria ou classe. Exemplos incluem a detecção de spam em e-mails, reconhecimento de dígitos escritos à mão, e classificação de tipos de flores.
    • Regressão: Utilizada quando o objetivo é prever um valor contínuo. Exemplos incluem prever o preço de uma casa, a temperatura em um determinado dia, ou o valor das vendas futuras de uma empresa.
  • Modelos de Classificação

    • Regressão Logística: A regressão logística é utilizada para problemas de classificação binária (dois resultados possíveis). Ela usa a função sigmoide para transformar as previsões de qualquer valor real em um valor entre 0 e 1, representando a probabilidade de pertencimento a uma classe específica. Por exemplo, em um problema de detecção de spam, a regressão logística pode prever a probabilidade de um e-mail ser spam (classe 1) ou não spam (classe 0).
    • Árvores de Decisão: Árvores de decisão podem ser usadas tanto para classificação quanto para regressão. Para classificação, a árvore é construída dividindo o conjunto de dados em subconjuntos baseados em uma característica que resulta em maior ganho de informação ou maior redução de impureza. Por exemplo, em um problema de classificação de tipos de flores, a árvore de decisão pode utilizar características como o comprimento e a largura das pétalas para determinar a classe da flor (por exemplo, setosa, versicolor ou virginica).
  • Modelos de Regressão

  • Regressão Linear: A regressão linear é utilizada para prever um valor contínuo. Ela assume uma relação linear entre a variável dependente e uma ou mais variáveis independentes. Por exemplo, em um problema de previsão de preços de casas, a regressão linear pode utilizar características como tamanho da casa, número de quartos e localização para prever o preço da casa.

  • Árvores de Decisão: Para problemas de regressão, as árvores de decisão dividem os dados em subconjuntos baseados em divisões que minimizam a soma dos quadrados dos resíduos (diferença entre o valor observado e o valor previsto) dentro de cada subconjunto. Por exemplo, em um problema de previsão de temperatura, a árvore de decisão pode utilizar características como a hora do dia e a umidade para prever a temperatura.

  • Redes Neurais em Ambos os Contextos

    • As redes neurais são modelos muito versáteis e podem ser utilizados tanto para classificação quanto para regressão.
    • Redes neurais para classificação geralmente usam uma função de ativação como a função softmax na camada de saída para transformar os logits em probabilidades de cada classe. Por exemplo, uma rede neural pode ser treinada para reconhecer dígitos escritos à mão utilizando o conjunto de dados MNIST, onde a camada de saída tem 10 neurônios (um para cada dígito de 0 a 9) e a função softmax transforma os valores de saída em probabilidades de cada dígito.
    • Redes neurais para regressão utilizam funções de ativação lineares na camada de saída para prever valores contínuos. Por exemplo, uma rede neural pode ser treinada para prever o preço de uma casa com base em várias características. A camada de saída teria um único neurônio que prevê o valor contínuo do preço.
    • As redes neurais são capazes de capturar padrões complexos e não lineares nos dados, tornando-as uma escolha poderosa para uma ampla variedade de problemas de aprendizado supervisionado.

3 Redes Neurais

As redes Neurais podem possuir diversas arquiteturas, cada uma possuindo seu nicho específico e seu próprio nível de complexidade

São elas:

3.1 FFNN - Feed-Forward Networks

Uma Feed-Forward Neural Network (FFNN), ou Rede Neural de Propagação Direta, é um tipo de rede neural artificial onde as informações movem-se em uma única direção, da entrada para a saída, sem ciclos ou loops. Cada camada de neurônios é conectada à próxima, e não há conexões de volta.

Por serem redes relativamente simples e diretas, FFNNs são frequentemente utilizadas como ponto de partida para resolver problemas de aprendizado supervisionado antes de recorrer a arquiteturas mais complexas, como redes neurais convolucionais (CNNs) ou redes neurais recorrentes (RNNs).

Um tipo de FFNN foi utilizado no trabalho, o chamado SLP (Single Layer Perceptron), sendo um FFNN com apenas uma camada oculta

3.2 RNN - Recurrent Neural Networks

Uma Recurrent Neural Network (RNN), ou Rede Neural Recorrente, é um tipo de rede neural artificial projetada para processar dados sequenciais. Ao contrário das redes feed-forward, as RNNs possuem conexões cíclicas, permitindo que a saída de um neurônio em uma camada seja alimentada de volta como entrada para o mesmo neurônio na próxima etapa temporal. Isso permite que as RNNs mantenham uma “memória” de informações anteriores na sequência, tornando-as especialmente úteis para tarefas onde o contexto temporal é importante.

As RNNs são poderosas para capturar dependências temporais nos dados, mas podem sofrer de problemas como o gradiente desvanescente. Para mitigar esses problemas, variantes como Long Short-Term Memory (LSTM) e Gated Recurrent Units (GRU) foram desenvolvidas, melhorando a capacidade das RNNs de aprender dependências de longo prazo.

3.3 LSTM - Long Short-Term Memory

Uma Long Short-Term Memory (LSTM) é um tipo especializado de Rede Neural Recorrente (RNN) projetado para melhorar a capacidade das RNNs de aprender e reter informações por longos períodos. As LSTMs superam problemas comuns em RNNs tradicionais, como o desvanecimento e o estouro do gradiente, através de um design mais complexo de suas unidades recorrentes.

As LSTMs são particularmente valiosas quando é necessário lembrar informações críticas ao longo de longas sequências, o que torna esse tipo de rede neural uma escolha preferida para muitos problemas de aprendizado de máquina baseados em dados sequenciais.

3.4 Arquitetura FFNN

4 O Problema: Avaliação do Risco de Crédito

Usualmente, os bancos definem a avaliação do risco de crédito em 4 etapas

Este trabalho teve como objetivo analisar e modelar o passo em destaque. O passo 3 é utilizado como base para o passo 4, onde maiores riscos na concessão de crédito podem resultar em valores menores de crédito para os clientes ou, em casos mais extremos, na recusa do crédito por parte do banco.

Treinar modelos para a análise de risco de crédito é uma tarefa complexa devido a várias características intrínsecas dos dados. Primeiramente, há um alto grau de desbalanceamento nos dados, pois a maioria dos clientes normalmente não apresenta problemas com crédito, enquanto uma minoria representa um risco significativo. Esse desbalanceamento torna a modelagem desafiadora, uma vez que os modelos tendem a ser tendenciosos para a classe majoritária, prejudicando a capacidade de identificar corretamente os casos de alto risco.

Além disso, muitas relações entre as variáveis nos dados de crédito são não lineares. Isso significa que métodos tradicionais de modelagem linear podem não capturar adequadamente as complexidades das interações entre as variáveis. A não linearidade nos dados requer modelos mais sofisticados que possam identificar e aprender essas complexidades de maneira eficaz.

Outro desafio é o número crescente de variáveis. À medida que mais dados são coletados, o número de variáveis pode aumentar rapidamente, tornando a modelagem mais difícil e exigindo técnicas capazes de lidar com essa alta dimensionalidade de maneira eficiente.

Redes Neurais Artificiais (ANN) como Alternativa As Redes Neurais Artificiais (ANNs) surgem como uma excelente alternativa para enfrentar esses desafios. ANNs são particularmente eficazes em lidar com dados desbalanceados, pois podem ser ajustadas e treinadas para reconhecer padrões em classes minoritárias através de técnicas como a amostragem, penalização de erros ou utilização de arquiteturas especializadas.

Além disso, as ANNs são intrinsicamente capazes de modelar relações não lineares devido à sua arquitetura de múltiplas camadas e funções de ativação não lineares. Isso permite que as redes neurais capturem e aprendam padrões complexos e interações entre variáveis que os métodos lineares tradicionais não conseguiriam.

Por fim, as ANNs são escaláveis e podem manejar um grande número de variáveis, utilizando técnicas como regularização, seleção de características e camadas ocultas profundas para aprender representações eficientes dos dados de alta dimensionalidade. Isso as torna particularmente adequadas para contextos onde o número de variáveis é grande e continua a crescer.

4.1 Dados Utilizados

Para o treinamento e teste do modelo o conjunto de dados Credit Card Approval Prediction, possuindo 36456 observações e 17 variáveis

As 17 variáveis são distribuídas em

  • 6 binárias
    • Se o candidato possui: carro, casa, celular, celular de trabalho, e-mail e telefone fixo
  • 6 categóricas
    • Grau de educação, emprego, estado civil, origem de renda, sexo e tipo de casa
  • 5 numéricas
    • Dias empregados, idade em anos número total de filhos, total de familiares em casa, renda mensal da família

4.2 Análise Exploratória

4.3 Processo de Modelagem

4.3.1 Passo 1 - Split Inicial dos Dados

Os dados utilizados para modelar risco de crédito geralmente são altamente desbalanceados. Na maioria dos conjuntos de dados, a proporção de clientes que representam um risco de crédito é muito menor em comparação com aqueles que têm um histórico de crédito saudável. Esse desbalanceamento pode levar os modelos de aprendizado de máquina a serem tendenciosos para a classe majoritária, resultando em uma performance insatisfatória na identificação de clientes de alto risco.

Tal fenômeno se mostrou presente no conjunto de dados utilizados nesse trabalho, onde 36198 indivíduos eram classificados como diplentes e 258 inadiplentes, representando uma proporção de 0.992923% para 0.007077024%

Em problemas de classificação com alto nível de desbalanceamento dos dados, o processo de modelagem passo por 2 passos essenciais

  • Passo 1 - Ajuste dos desbalanceamento nos próprios dados
    • As duas técnica mais conhecidas são: Oversampling e Undersampling

    • Undersampling se baseia na redução do número de exemplos da classe majoritária para equilibrar a proporção entre as classes. Embora isso possa ajudar a equilibrar o conjunto de dados, pode resultar na perda de informações valiosas da classe majoritária, o que pode afetar a performance do modelo.

    • Oversampling envolve a criação de cópias adicionais dos exemplos da classe minoritária para aumentar sua representatividade no conjunto de dados. Isso pode ajudar a treinar o modelo de maneira mais equilibrada, mas por conta de se utilizar um bootstrap para criação de novas amostras, também pode levar a problemas de overfitting, onde o modelo se ajusta demais aos dados de treinamento e não generaliza bem para novos dados.

  • Passo 2 - Construção do modelo adequado para desbalanceamento
    • Como já citado anteriormente, um SPL possui ótimo desempenho em dados desbalanceados e por issso foi utilizado

Uma abordagem mais sofisticada para lidar com dados desbalanceados em redes neurais é o online sampling. Nesta técnica, a cada epoch (iteração de treinamento), os batches são amostrados de maneira estratificada, garantindo que cada batch tenha uma representação balanceada das classes. Durante o treinamento, os dados são continuamente amostrados de forma que cada batch contenha uma proporção equilibrada de exemplos das classes majoritária e minoritária. Isso permite que o modelo aprenda de maneira mais eficaz, mantendo uma representação equilibrada das classes em todas as etapas do treinamento. Essa abordagem ajuda a evitar o overfitting e melhora a capacidade do modelo de generalizar para novos dados.

Assim, o split de dados utilizado foi: divisão treino(75%) e teste(25%) e utilização do online sampling para o treinamento do modelo

4.3.2 Passo 2 - Feature Engineering

Feature Engineering é o processo de transformar dados brutos em características (features) que melhor representem os padrões subjacentes, facilitando o aprendizado e a performance dos modelos de machine learning.

4 transformações foram aplicadas ao dados para satisfazer as demandas do modelo utilizado * Criação de variáveis dummy - O conjunto de dados possui 5 variáveis categóricas que foram transformadas em variáveis dummys resultando em 29 features

  • Transformação de binárias em numéricas

  • Normalização e Padronização

  • Remoção de variáveis com variância 0

O conjunto de dados originais possuia a seguinte disposição

Enquanto aquele utilizado para modelagem teve a seguinte forma

4.3.3 Passo 3 - Hiperparâmetros

Para o modelo SLP deve se especificar seus parâmetros e sua função de ativação

Para a função de ativação, a rectified linear unit popularmente chamada por sua abreviação ReLU foi escolhida. Isso se dá por conta dessa função ter a capacidade de introduzir não linearidade a rede, sendo esse um fenômeno importantíssimo para o problema em estudo

A função introduz não-linearidade em redes neurais através de sua fórmula simples: \[f(x) = max(0,x)\] A ReLU transforma a entrada linear em duas regiões distintas:

  • Para valores de entrada negativos, a saída é sempre zero.

  • Para valores de entrada positivos, a saída é igual ao valor da entrada.

Essa segmentação cria uma não-linearidade na transformação da entrada, pois a relação entre a entrada e a saída não é mais linear em todo o espaço. A não-linearidade permite que a rede neural aprenda e modele funções complexas e não-lineares. Em camadas subsequentes, essas transformações não-lineares podem ser compostas, permitindo que a rede capture padrões e interações complexas nos dados.

Para os hiperparâmetros, como será explicitado na próxima seção, o processo de otimização, também chamado de tunagem é extremamente custoso computacionalmente e portanto apenas alguns hiperparâmetros passaram por tal processo, os demais foram fixados

Os hiperparâmetros fixados foram: o número de epochs e o número de observações amostradas a cada batch durante o processo de online sampling, onde 100 epochs foram utilizadas com 200 observações por batch no online sampling

Já os hiperparâmetros tunados foram a taxa de aprendizado (learning rate) e o número de percetrons na unica camada oculta da rede, chamados de hidden units

4.3.4 Passo 4 - Tunagem dos Hiperparâmetros

A tunagem de hiperparâmetros é o processo de ajustar os hiperparâmetros de um modelo de aprendizado de máquina para otimizar seu desempenho. Hiperparâmetros são configurações definidas antes do treinamento do modelo, que não são aprendidas a partir dos dados. Exemplos incluem a taxa de aprendizado, o número de neurônios em cada camada de uma rede neural, o número de árvores em uma floresta aleatória, entre outros.

O processo se divide em 2 etapas

  • Definição do intervalo de busco do valor ótimo
    • Determinar o intervalo ou conjunto de valores possíveis para cada hiperparâmetro. Isso leva em conta tanto o intervalo em si como a granularidade de desse intervalo, tendo incrementos de por exemplo, 0.0001, 0.001, 0.01.
  • Definir uma função de custo
    • A otimização leva em conta o mínimo de uma função de custo, por exemplo, o valor no qual se atinge o mínimo do erro quadrático médio. Assim, deve-se definir uma função de custo. Dado um problema de classificação, a métrica utilizada foi a recall, métrica essa que dá um maior peso a capacidade do modela classficar verdadeiros positivos, ou seja, aquele modelo que melhor classifica corretamente clientes inadiplentes
  • Execução do processo de tunagem
    • Após a definição do grid de valores e uma função de custo, o processo de tunagem é iniciado.

    • Ao final desse ciclo, o valor que miniza a função de custo é retornada

Embora essa prática seja essencial para melhorar a performance do modelo, é notoriamente demorada e intensiva em termos de recursos computacionais.

Para este projeto, foi definido 10 níveis para a tunagem de cada hiperparâmetro. Isso significou explorar um espaço de busca bastante amplo, resultando em um total de 100 redes neurais estimadas. Cada uma dessas redes foi treinada e validada para determinar a melhor combinação de hiperparâmetros.

Apesar dos benefícios claros, o processo de hypertuning demandou um tempo significativo. No total, a tunagem levou aproximadamente 2 hora(tirando da conta as demeis tentativas em diferentes definições de grid). Esse investimento de tempo é justificado pela melhora substancial na performance do modelo, mas ilustra bem a necessidade de equilibrar a busca pela melhor configuração com a eficiência operacional

Após a apliação do processo de tunning nos hiperparâmetros, o seguinte comportamento foi observado

Os valores ótimos para cada parâmetro foram: 3 hidden units e 0.01 de learning rate

4.3.5 Passo 5 Avaliação do Modelo Final

Com todos os hiperparâmetros do modelo definidos, o modelo final foi ajustado. Por conta de ser uma rede neural, os pesos e vieses estimados para cada perceptron não possuem uma interpretação tão simples e direta como os coeficientes \(\beta\) de uma regressão linear e portanto tal etapa foi pulada. Além disso, o foco de modelos preditivos não está em sua interpretação, mas sim na capacidade de apresentar um baixíssimo erro de classificação.

Assim 2 métricas foram utilizadas para mensurar o grau de qualidade do modelo, também chamadas de métricas de avaliação. Dada a etapa final do trabalho, tais métricas foram calculadas no conjunto de dados de teste

  • AUC
    • Area Under the Curve é uma métrica que pondera da mesma maneira a sensibilidade e especificidade do modelo. É calculada a partir da curva ROC e se refere a área sob essa curva. Seu intervalo vai de 0 a 1, onde 1 indica um modelo com classificação 100% correta
  • Recall
    • Possui a seguinte forma: \(\frac{VP}{VP+FP}\). Dada sua forma, essa métrica retorna maiores valores para aqueles modelos que classificação corretamente verdadeiros positivos e minizam falsos positivos. Dado o objetivo principal do modelo que é classificar indivíduos inadiplentes, há um maior custo de erro associado a falsos negativos, onde tal métrica possui seu nicho de aplicação

set

AUC

Recall

Treino

0.85

0.82

Teste

0.79

0.77

5 Conclusão

Durante a desenvolvimento do estudo, diversos pontos positivos e negativos foram observados pelo autor, tais pontos foram listados a seguir

5.1 Prós

  • Desempenho do Online Sampling
    • 0 método de Online Sampling apresentou um desempenho notável na abordagem do problema de desbalanceamento dos dados. Ao amostrar os batches de maneira estratificada em cada época, o modelo conseguiu equilibrar as classes de forma mais eficiente, melhorando a acurácia e a robustez das previsões.
  • Captação de Relações Não Lineares com ReLU
    • A função de ativação ReLU (Rectified Linear Unit) demonstrou ser eficaz na captura de relações não lineares presentes nos dados. Esta função de ativação permite que a rede neural modele complexas interações entre as variáveis, resultando em uma maior capacidade de generalização e desempenho.
  • Desempenho com Variáveis Categóricas
    • A rede neural mostrou um excelente desempenho ao lidar com um grande número de variáveis categóricas. A flexibilidade das redes neurais em aprender representações e interações entre variáveis categóricas contribuiu para a construção de um modelo mais preciso e abrangente.
  • Alto Poder Preditivo do Modelo
    • O modelo final apresentou um alto poder preditivo, evidenciado pelas métricas de desempenho obtidas. A capacidade de prever com precisão os resultados desejados indica que a combinação de técnicas e ajustes realizados durante o processo de modelagem foi eficaz, resultando em um modelo confiável e robusto para a tarefa proposta. Em resumo, a aplicação de Online Sampling, o uso da função de ativação ReLU, a boa gestão de variáveis categóricas e o elevado poder preditivo do modelo foram os principais pontos fortes identificados neste estudo.

5.2 Contras

  • Tunagem de Hiperparâmetros
    • Tunagem de hiperparâmetros é uma tarefa demorada, mesmo para redes neurais mais simples. O processo de buscar a melhor combinação de hiperparâmetros pode ser extremamente intensivo em termos de tempo e recursos computacionais, tornando-o um desafio considerável para a implementação eficiente.
  • Demanda de Tempo para Feature Engineering
    • O processo de feature engineering para redes neurais exige mais tempo e esforço comparado a modelos mais simples. A preparação e transformação adequada dos dados são cruciais para o desempenho do modelo, mas essa etapa pode ser bastante laboriosa e complexa.
  • Baixo Grau de Interpretabilidade
    • As redes neurais apresentam um baixíssimo grau de interpretabilidade. A complexidade inerente das suas arquiteturas dificulta a compreensão e a explicação dos processos internos do modelo, tornando complicado entender como as decisões são tomadas. Isso pode ser uma desvantagem significativa em áreas onde a interpretabilidade é fundamental.
  • Desafios no Uso de Redes Neurais no R:
    • A implementação de redes neurais ainda enfrenta desafios consideráveis no R. Embora existam pacotes e bibliotecas disponíveis, o suporte e a flexibilidade oferecidos por outras plataformas, como Python com TensorFlow e PyTorch, ainda não são totalmente equiparados no R. Isso pode limitar a eficiência e a facilidade de uso para os desenvolvedores que preferem trabalhar nesta linguagem.

Em suma, embora as redes neurais ofereçam um grande potencial preditivo, o tempo e os recursos necessários para tunagem de hiperparâmetros e feature engineering, juntamente com a baixa interpretabilidade e os desafios específicos do R, são pontos negativos importantes a serem considerados.

6 Referências

Silveira, A. M., & Kleina, M. (n.d.). Redes neurais artificiais para classificação de risco de crédito / Artificial neural networks for credit risk classification. Universidade Federal do Paraná (UFPR).

AMARAL JÚNIOR, João Bosco; TÁVORA JÚNIOR, José Lamartine. Uma análise do uso de redes neurais para a avaliação do risco de crédito de empresas. Dez. 2010.

Classification models using a neural network. Disponível em: https://www.tidymodels.org/learn/models/parsnip-nnet/


Footer Image