Manual de reprodutibilidade técnica do projecto DriftSense-PM. Este repositório agrega o código, os dados processados e os artefactos necessários para reproduzir o pipeline completo de extração de características, treino de modelos, avaliação factorial, análise estatística e geração de gráficos.
- Eduarda Pereira
- Gonçalo Ferreira
- Gonçalo Magalhães
- Sistema operativo Linux (Ubuntu 20.04+ recomendado) ou Raspberry Pi OS.
- Python 3.10 ou superior.
gitpara obter o código-fonte.condaouvirtualenvpara isolamento do ambiente.dockerapenas se pretender usar o fluxo de contentorização.
O projecto disponibiliza dependências em env/environment.yml e em
env/requirements.txt.
Conda:
conda env create -f env/environment.yml
conda activate driftsense-pmpip + virtualenv:
python3 -m venv .venv
source .venv/bin/activate
pip install -r env/requirements.txtO ficheiro central é configs/config.yaml. Confirme, pelo menos, os seguintes
parâmetros antes de executar a solução:
paths.raw_data_dir: origem dos CSV raw.paths.processed_dir: destino dos ficheiros de features.paths.models_dir: destino dos modelos treinados.paths.results_dir: destino de métricas, relatórios e figuras.system.sampling_rate_hz: frequência de amostragem usada no processamento.feature_engineering.window_sizeefeature_engineering.step_size.
- Ativar o ambiente criado na secção anterior.
- Mudar para a pasta dos scripts:
cd scripts- Executar a extracção de features:
python3 feature_engineering.py- Treinar o modelo baseline:
python3 train_baseline_full.py- Executar a avaliação factorial completa:
python3 master_script.py- Gerar análise estatística e tabelas finais:
python3 statistical_analysis.py- Gerar as figuras finais:
python3 generate_thesis_plots.py- Modelos:
models/baseline_model.pklemodels/scaler.pkl. - Métricas:
results/metrics/. - Figuras:
results/figures/. - Dados processados:
data/processed/.
- REPRODUCIBILITY.md contém a reprodução técnica.
- RUN.md contém os comandos exactos de execução.