Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Ajuda com modelo de previsão para quantidade de transações por dia

Olá, boa noite.

Estou tendo dificuldade em realizar uma previsão precisa para quantidade de transações por dia.

Meus dados são datas e quantidade de transações por dia que transformo em um DataFrame mais complexo, validando as datas como dia útil, final de semana, dia da semana, mes, ano, etc.

Tentei vários tipos de regressões lineares (XGBRegressor, LGBMRegressor, LinearRegression), e todos não resultam em previsões satisfatórias, sendo algumas conseguem atingir 85% de precisão no máximo.

Existe alguma forma mais eficiente de prever esse tipo de dado, como alguma outra técinca de Machine Learning mais eficiente usando Time Series?

No aguardo, valeu galera!

4 respostas

85% se refere ao R²? já seria muito bom inclusive. Lembre-se que isso depende muito das variáveis do modelo e que o custo para se conseguir algo mais preciso pode ser muito alto. Sua variável é só a data e suas particularidades? como separou os dados de treino e de teste?

Fala Francisco, beleza? Cara, eu criei umas 31 varáveis com a data e quantidade de transações por dia. Como exemplo de algumas, dia da semana, fds ou não, feriado ou não, inicio do mês ou não, dia de grande movimento ou não, dia10 ou próximo dia útil, etc. E quanto aos dados de treino e teste, vario entre 15 a 25% para os dados de treino, mais que 25% já não começa a ter muita diferença nos valores, pelo menos dos que eu testei rsrs.

De fato a criação de mais variáveis ajudaram a aumentar o R², mas ainda preciso de algo mais próximo de realidade, pois algumas previsões ainda estão entre 10% acima ou abaixo de um numero esperado. Eu entendo que talvez não seja possível chegar a mais que isso, mas quero tentar!

Dei uma leve pesquisada em previsão de time series e li algo sobre algoritmo ARIMA, mas ainda não apliquei para validar se pode atender as minhas expectativas (na verdade é minha chefe que pensa assim xD).

Bem, se alguém tiver alguma boa dica eu aceito de bom grado, estou tentado de tudo para ver o que se encaixa melhor.

De toda forma, obrigado pela força! ;)

solução!

Ramon,

Quando você seleciona mais que 25% das amostras já não consegue ter diferença, pode significar que seu data set esta relativamente pequeno, e pois isso o algoritmo esta conseguindo prever bem, isso pode ser ruim a longo prazo.

Como o Francisco falou 85% é um valor muito bom, pense que existe outras variáveis que você não controla ou não possui os dados, sempre vamos nos deparar com esse tipo de situação.

Cuidado também com overfitting, a busca pelo modelo ideal acaba sofrendo muito com isso, e muitas vezes não notamos.

Dei uma boa alterada no meu modelo de dados e tenho conseguido melhorar as previsões!

Obrigado pelas dicas senhores. ;)