Catalog PyPI
PACKAGE EXPLORERView in registry

AdaptiveFoldTS

PyPI

Validação Cruzada Adaptativa para Séries Temporais com Priorização Inteligente de Folds

Versions collected1
Direct dependencies3From release 1.0.1
Last observed20 Oct, 19:06 UTC

README

Version 1.0.1 documentation

AdaptiveFoldTS

Validação Cruzada Adaptativa para Séries Temporais com Priorização Inteligente de Folds

AdaptiveFoldTS é uma biblioteca Python inovadora projetada para realizar validação cruzada em séries temporais utilizando uma abordagem adaptativa e priorizada. Utilizando estruturas de heap, a biblioteca organiza janelas de treino e teste com base em critérios dinâmicos — como variância, erro preditivo ou outras métricas customizáveis — permitindo que o processo de validação foque nos segmentos mais críticos ou desafiadores da série temporal.

Durante o processo, as prioridades dos folds são atualizadas iterativamente conforme as métricas dos modelos são calculadas. Isso significa que folds com maiores erros ou maior variabilidade recebem maior atenção, sendo reavaliados, o que possibilita uma melhor identificação do modelo que entrega o melhor desempenho global.


Principais características

  • Priorização adaptativa das janelas de validação via heap para maximizar eficiência e insight.
  • Atualização dinâmica das prioridades baseada nas métricas de erro dos modelos, para foco em folds mais relevantes.
  • Suporte a múltiplas estratégias de janelamento para treino e teste (rolling window, expanding window, etc).
  • Integração simples com modelos sklearn-like ou customizados.
  • Avaliação simultânea de múltiplos modelos com métricas configuráveis e ranking automático.
  • Ferramentas para análise detalhada do desempenho por fold e geração de relatórios.

Instalação

pip install adaptivefoldts

Exemplo básico de uso

import numpy as np
import pandas as pd
from sklearn.linear_model import LinearRegression
from sklearn.dummy import DummyRegressor

from adaptivefoldts import AdaptiveFoldTS

np.random.seed(42)
series = pd.Series(np.sin(np.linspace(0, 20, 100)) + np.random.normal(0, 0.5, 100))

models = {
    "linear_regression": LinearRegression(),
    "dummy_mean": DummyRegressor(strategy="mean"),
}

af = AdaptiveFoldTS(
    series=series,
    window_size=30,
    test_size=0.2,
    step_size=5,
    strategy="rolling",
    metric="mse",
    verbose=True,
    max_folds=None,
)

results = af.evaluate_models(models=models, max_iterations_per_fold=1)

print("Resultados agregados por modelo:")
for model_name, score in results.items():
    print(f"{model_name}: {score:.4f}")

Funcionalidades Futuras

  • Implementação de grid search e otimização automatizada de hiperparâmetros integrada ao processo adaptativo.
  • Suporte a mais métricas customizáveis, incluindo métricas específicas para séries temporais (ex: MASE, SMAPE).
  • Inclusão de outras estratégias de janelamento adaptativo, como janelas expansivas e segmentações baseadas em eventos.
  • Visualização interativa dos folds, métricas e prioridades ao longo do processo de validação.
  • Paralelização do processo de avaliação para acelerar experimentos em grandes conjuntos de dados e múltiplos modelos.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
1.0.19 Aug 20253

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
allanfenelon/adaptivefoldts

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 19:06 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:c42bdf656b109ab78887dc7ce3c1546ec2da7282a6212bfdda4ddfd041bcf698