Skip to content

Repositório referente ao projeto Equilibrando Classes, iniciado no segundo semestre de 2025

Notifications You must be signed in to change notification settings

hype-usp/Equilibrando_Classes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 

Repository files navigation

Introdução

Esse projeto tem como objetivo estudar técnicas de reamostragem em um dataset desbalanceado em relação à variável alvo e seus impactos no desempenho de modelos de Aprendizado de Máquina. Em uma aplicação, frequentemente, a previsão da classe minoritária é de extrema importância, por exemplo na detecção de doenças raras, e ao não se tratar o desbalanceamento, pode-se observar uma tendência do modelo à classe majoritária. Por isso, deve-se também ajustar as métricas a se levar em consideração na avaliação de desempenho, com o fito de verificar a competência do modelo nesses casos mais raros.

A realização do projeto foi feita por 2 grupos de estudantes de Sistemas de Informação da EACH-USP no segundo semestre de 2025.

Tecnologias Usadas:

Etapas do Projeto

1

A primeira etapa consistiu em realizar a análise exploratória das colunas presentes no dataset, aplicar diferentes métodos de aprendizado de máquina para predizer a classe alvo e registrar as métricas obtidas.

Métricas utilizadas:

  • Acurácia;
  • Precisão;
  • Recall;
  • F1-Score;
  • ROC-AUC.

Os modelos de AM utilizados foram os seguintes:

2

A segunda etapa consistiu em utilizar técnicas de reamostragem na base de dados desbalanceada, aplicar os mesmos modelos e registrar as métricas obtidas.

Técnicas de Reamostragem utilizadas:

3

A terceira etapa consistiu em refletir sobre os resultados obtidos ao fim do projeto e condensar as três etapas em um relatório final. Esse relatório pode ser encontrado na pasta do respectivo grupo.

Grupo 1

Membros:

Dataset: Credit Card Fraud Detection

Link para Notebook 1 e para Notebook 2. Link para Relatório Final.

notebook-1.ipynb => Neste foram usados os métodos SMOTE, ENN e SMOTE-ENN;
notebook-2.ipynb => Neste foram usados os métodos SMOTE, Random Oversampling e Random Undersampling.

Tecnologias adicionais

  • Openpyxl => criação da planilha com as métricas;
  • OS => criação de pastas.

Métricas adicionias

  • Curva de Precisão-Recall

Gráficos são salvos em suas devidas pastas. Além das métricas serem anotadas no aqruivo resultados.xlsx.

/projeto
│
├── modelos
│     ├── <model>
│     │   ├── matriz-confusao-<model>-Desbalanceado.png
│     │   ├── auc-roc-<model>-Desbalanceado.png
│     │   ├── precision-recall-<model>-Desbalanceado.png
│     │   ├── matriz-confusao-<model>-SMOTE.png
│     │   ├── auc-roc-<model>-SMOTE.png
│     │   ├── precision-recall-<model>-SMOTE.png
|     |   ├── matriz-confusao-<model>-ENN.png
│     │   ├── auc-roc-<model>-ENN.png
│     │   ├── precision-recall-<model>-ENN.png
|     |   ├── matriz-confusao-<model>-SOMTE-ENN.png
│     │   ├── auc-roc-<model>-SMOTE-ENN.png
│     │   └── precision-recall-<model>-SMOTE-ENN.png
│     └── ...
│   └── ...
|   └── auc-roc-curve-<metodo>.png
│   └── ...
|   └── pr-recall-curve-<metodo>.png
│   └── ...
│   └── auc-roc-curve-notebook-2.png
│   └── pr-recall-curve-notebook-2.png
│
├── graphics
│   ├── countplot.png
│   └── heatmap-corr.png
│
|
├── resultados.xlsx
│
├── notebook-1.ipynb
└── notebook-2.ipynb

Grupo 2

Membros:

Dataset: Telco Customer Churn

A variável alvo desse dataset foi 'Churn' que indica se o cliente cancelou ou não serviço com a empresa. 74% das linhas do dataset apontavam essa classe como falsa, caracterizando o desbalanceamento.

Link para Notebook Link para Relatório Final

(Referências podem ser encontradas no relatório final)

About

Repositório referente ao projeto Equilibrando Classes, iniciado no segundo semestre de 2025

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •