How cabral-e/previsao-demanda-hidrica-horaria works
Este repositório implementa um estudo reprodutível de previsão horária do nível de um reservatório e comparação entre erro preditivo e custo computacional. O fluxo principal parte da planilha de origem, prepara e divide temporalmente a série, constrói atributos, executa modelos por horizonte e registra previsões e custos; análises estatísticas e de Pareto consolidam os resultados para relatórios e figuras. O README documenta também EDA, seleção de defasagens e preparação para publicação. Relações entre módulos não amostrados foram incluídas apenas quando sustentadas pelo SOURCE INDEX ou pelo README.
Main entry points: runner.py Executor de experimentos · registry.py Registro de experimentos · load.py Carga da base · metrics_report.py Métricas e Diebold–Mariano
Components 34
Dados e preparação
- Carga da base
src/data/load.py - Inspeção
src/data/inspection.py - Filtro temporal
src/data/temporal_filter.py - Tratamento
src/data/treatment.py - Análise exploratória
src/data/eda.py - Divisão temporal
src/data/split.py
Atributos e modelos
- Seleção de defasagens
src/features/lag_evaluation.py - Construção de atributos
src/features/build.py - Baselines
src/models/baseline.py - SARIMA
src/models/sarima.py - SVR
src/models/svr.py - LightGBM direto e recursivo
src/models/lightgbm_model.py - Previsor direto
src/models/ml_direct.py - Previsor recursivo
src/models/ml_recursive.py
Execução e avaliação
- Protocolo de avaliação
src/evaluation/protocol.py - Executor de experimentos
src/evaluation/runner.py - Medição de custo
src/evaluation/cost.py - Métricas
src/evaluation/metrics.py - Registro de experimentos
src/evaluation/registry.py - Remedição de custos
src/evaluation/cost_batch.py - Consolidação de custos
src/evaluation/cost_report.py - Métricas e Diebold–Mariano
src/evaluation/metrics_report.py - Verificação de estratégia
src/evaluation/strategy_check.py - Score composto
src/evaluation/composite.py - Fronteira de Pareto
src/evaluation/pareto.py - Tabela final
src/evaluation/consolidate.py
Resultados e visualização
- Previsões persistidas
src/evaluation/runner.py - Geração de figuras
src/visualization/make_figures.py - Gráficos
src/visualization/plots.py - Estilo visual
src/visualization/style.py
Suporte interno
- Caminhos e configuração
src/utils/paths.py - Persistência auditável
src/utils/persistence.py
Other components
- Pesquisador
- Planilha Sanepar
Connections 48
- Pesquisador → Carga da base: inicia etapas
- Planilha Sanepar → Carga da base: fornece base
- Carga da base → Inspeção: carrega dados
src/data/inspection.py - Inspeção → Filtro temporal: apoia filtro
src/data/temporal_filter.py - Inspeção → Tratamento: apoia tratamento
src/data/treatment.py - Carga da base → Filtro temporal: lê base
src/data/temporal_filter.py - Carga da base → Tratamento: lê base
src/data/treatment.py - Carga da base → Divisão temporal: carrega série
src/data/split.py - Carga da base → Análise exploratória: fornece série
src/data/eda.py - Divisão temporal → Análise exploratória: fornece divisão
src/data/eda.py - Carga da base → Seleção de defasagens: fornece dados
src/features/lag_evaluation.py - Divisão temporal → Seleção de defasagens: fornece divisão
src/features/lag_evaluation.py - Construção de atributos → Seleção de defasagens: constrói atributos
src/features/lag_evaluation.py - Construção de atributos → Previsor direto: gera atributos
src/models/ml_direct.py - Construção de atributos → Previsor recursivo: gera atributos
src/models/ml_recursive.py - Previsor direto → Previsor recursivo: apoia previsão
src/models/ml_recursive.py - Previsor direto → LightGBM direto e recursivo: implementa estratégia
src/models/lightgbm_model.py - Previsor recursivo → LightGBM direto e recursivo: implementa variante
src/models/lightgbm_model.py - Protocolo de avaliação → Executor de experimentos: define avaliação
src/evaluation/runner.py - Baselines → Executor de experimentos: executa experimento
src/models/baseline.py - SARIMA → Executor de experimentos: executa experimento
src/models/sarima.py - SVR → Executor de experimentos: executa experimento
src/models/svr.py - LightGBM direto e recursivo → Executor de experimentos: executa experimento
src/models/lightgbm_model.py - Executor de experimentos → Protocolo de avaliação: obtém origens
src/evaluation/runner.py - Executor de experimentos → Medição de custo: mede execução
src/evaluation/runner.py - Executor de experimentos → Métricas: calcula métricas
src/evaluation/runner.py - Executor de experimentos → Registro de experimentos: registra experimento
src/evaluation/runner.py - Executor de experimentos → Previsões persistidas: grava previsões
src/evaluation/runner.py - Remedição de custos → Baselines: remede modelos
src/evaluation/cost_batch.py - Remedição de custos → SARIMA: remede modelos
src/evaluation/cost_batch.py - Remedição de custos → SVR: remede modelos
src/evaluation/cost_batch.py - Remedição de custos → LightGBM direto e recursivo: remede modelos
src/evaluation/cost_batch.py - Registro de experimentos → Consolidação de custos: fornece registros
src/evaluation/cost_report.py - Métricas e Diebold–Mariano → Consolidação de custos: compara métricas
src/evaluation/cost_report.py - Registro de experimentos → Métricas e Diebold–Mariano: fornece experimentos
src/evaluation/metrics_report.py - Métricas → Métricas e Diebold–Mariano: calcula medidas
src/evaluation/metrics_report.py - Registro de experimentos → Verificação de estratégia: fornece registros
src/evaluation/strategy_check.py - Registro de experimentos → Score composto: fornece experimentos
src/evaluation/composite.py - Métricas e Diebold–Mariano → Score composto: fornece métricas
src/evaluation/composite.py - Consolidação de custos → Score composto: fornece custos
src/evaluation/composite.py - Registro de experimentos → Fronteira de Pareto: fornece experimentos
src/evaluation/pareto.py - Consolidação de custos → Fronteira de Pareto: fornece custos
src/evaluation/pareto.py - Métricas e Diebold–Mariano → Fronteira de Pareto: fornece métricas
src/evaluation/pareto.py - Registro de experimentos → Tabela final: fornece experimentos
src/evaluation/consolidate.py - Métricas e Diebold–Mariano → Tabela final: fornece métricas
src/evaluation/consolidate.py - Registro de experimentos → Geração de figuras: fornece resultados
src/visualization/make_figures.py - Métricas e Diebold–Mariano → Geração de figuras: fornece métricas
src/visualization/make_figures.py - Geração de figuras → Gráficos: gera gráficos
src/visualization/make_figures.py