Skip to content

Latest commit

 

History

History
236 lines (160 loc) · 6.83 KB

File metadata and controls

236 lines (160 loc) · 6.83 KB

🎓 Preditor de Evasão Escolar no Ensino Médio

Sistema preditivo de evasão escolar desenvolvido com Machine Learning, utilizando dados públicos do INEP e IBGE.

Screenshot de demonstração do dashboard

📋 Sobre o Projeto

Este projeto visa desenvolver um sistema capaz de identificar escolas com alto risco de evasão escolar no Ensino Médio, utilizando técnicas de Machine Learning e dados públicos brasileiros.

Objetivos

  • Desenvolver um modelo preditivo de evasão escolar
  • Criar um dashboard interativo para visualização e predição
  • Implementar um chat interativo com NLP básico

🚀 Tecnologias Utilizadas

  • Python: linguagem de programação principal
  • Pandas: para manipulação de dados
  • Scikit-learn: Machine Learning (Gradient Boosting Classifier)
  • Dash: para criação do dashboard interativo
  • Plotly: para criação de gráficos e visualização de dados interativos
  • Joblib: persistência de modelos

📊 Dados Utilizados

Fontes de Dados

  1. INEP - Censo Escolar 2023

    • Dados por escola e município (Ensino Médio)
    • Taxas de aprovação históricas (2017, 2019, 2021, 2023)
    • Notas SAEB (Matemática e Português)
    • Indicadores de rendimento
  2. INEP - IDEB 2023

    • Índice de Desenvolvimento da Educação Básica
  3. IBGE

    • Dados geográficos municipais
    • Renda média municipal (2010)
    • Taxa de desemprego local (2010)

Dataset Final

  • Total de registros: 21.592 escolas
  • Features utilizadas: 40 features numéricas
  • Variável alvo: Taxa de evasão escolar em 2023 (binarizada: Alta ≥20%, Baixa <20%)

Screenshot demonstração mapa por risco de evasão

📈 Resultados do Modelo

Métricas de Desempenho

Métrica Valor
Acurácia 87.98%
Precisão 82.22%
Recall 61.44%
F1-Score 70.33%

Matriz de Confusão

Valor Predito
Baixa Evasão Alta Evasão
Valor Real Baixa Evasão 2655 105
Alta Evasão 308 492

Top 5 Features Mais Importantes

  1. Taxa de Aprovação 2021 (Série 1) - 22.74%
  2. Tipo de Rede - 11.91%
  3. Taxa de Aprovação 2019 (Série 1) - 11.50%
  4. Taxa de Evasão 2019 - 9.14%
  5. Microrregião ID - 7.62%

Screenshot demonstração ranking de fatores mais influentes na predição de evasão

🛠️ Instalação e Configuração

Pré-requisitos

  • Python 3.11 ou superior
  • pip

Instalação

  1. Clone o repositório:
git clone https://github.com/PHCavalcante/AI-Project.git
cd AI-Project
  1. Crie um ambiente virtual:
python3 -m venv .venv
source .venv/bin/activate  # Linux/Mac
# ou
.venv\Scripts\activate  # Windows
  1. Instale as dependências:
pip install -r requirements.txt

🎯 Como Usar

1. Coleta de Dados

Execute o script de coleta de dados:

python3 projeto/src/data_collection.py

Isso irá:

  • Processar os arquivos Excel do INEP
  • Coletar dados do IBGE
  • Processar dados de desemprego e renda
  • Salvar os dados brutos em projeto/data/raw/

2. Processamento de Dados

Execute o script de processamento:

python3 projeto/src/data_processing.py

Isso irá:

  • Limpar e padronizar os dados
  • Criar features derivadas (taxas de evasão)
  • Integrar dados socioeconômicos
  • Salvar os dados processados em projeto/data/processed/

3. Treinamento do Modelo

Execute o pipeline de Machine Learning:

python3 projeto/src/ml_pipeline.py

Isso irá:

  • Treinar o modelo Gradient Boosting Classifier
  • Avaliar o desempenho
  • Salvar o modelo em projeto/models/

4. Dashboard Interativo

Execute o dashboard:

python3 projeto/src/dashboard.py

Acesse o dashboard em: http://127.0.0.1:8050/

O dashboard permite:

  • Visualizar gráficos interativos
  • Filtrar dados por estado, rede e taxa de evasão
  • Fazer predições em tempo real
  • Interagir com chat NLP básico

📊 Análise Exploratória

Execute o notebook Jupyter para análise exploratória:

jupyter notebook projeto/notebooks/eda.ipynb

📝 Relatório

O relatório completo de predição está disponível em: projeto/reports/prediction_report.pdf

🔍 Features do Dashboard

Visualizações Interativas

  • Histograma: Distribuição da taxa de evasão
  • Boxplot: Taxa de evasão por tipo de rede
  • Scatter Plot: IDEB vs Taxa de Evasão
  • Gráfico de Barras: Evolução histórica da evasão

Predição em Tempo Real

  • Interface para inserir valores de features
  • Predição instantânea de risco de evasão
  • Exibição de probabilidades

Chat Interativo

  • Processamento de linguagem natural básico
  • Respostas sobre estatísticas de evasão
  • Análise por estado, rede, IDEB, etc.

📚 Referências

APIs e Fontes de Dados

⚠️ Limitações

  1. Dados de 2010: As features socioeconômicas (renda e desemprego) são de 2010, podendo estar desatualizadas.

  2. Dados históricos: O modelo depende fortemente de dados históricos de aprovação e evasão.

  3. Contexto local: Fatores locais específicos não são capturados pelo modelo.

  4. Dados inválidos da rede privada: A falha na disponibilização de dados do IDEB para a rede privada acabou inviabilizando o mapeamento das taxas de evasão para escolas privadas e a sua consequente predição.

📄 Licença

Este projeto é de código aberto e está disponível para uso educacional e de pesquisa, e está sob a licença MIT.

ℹ️ Informações Adicionais

Este projeto foi desenvolvido como requisito avaliativo da segunda etapa da disciplina de Inteligência Artificial.

Equipe: José Klesley P. Feitosa, Pedro Henrique C. dos Santos e Vinícius Alves F. dos Santos.
Docente: Ronierison Maciel


Centro Universitário do Rio São Francisco (UniRios)
VI Período do Bacharelado em Sistemas de Informação