Generalizare stivuită (stivuire a modelului de învățare automată) + predicție conformală pentru prognoză în avans :: MLF

URMĂREȘTE-NE
16,065FaniÎmi place
1,142CititoriConectați-vă

În această postare, voi arăta cum să folosesc ahead::mlfo funcție din pachetul R care are previziuni conformizate. ahead::mlf Utilizează modele de aplecare a mașinilor (oricare dintre ele), iar seriile de timp au întârziat într -un mod autoregresiv, ca cai de lucru pentru prognoza univariate a seriilor de timp probabilistice.

Această funcție diferă de ahead::dynrmf Prin faptul că nu selectează automat întârzierea seriei de timp și prin disponibilitatea unei simple funcționalități de generalizare stivuite. Am discutat pentru prima dată despre o metodă de generalizare stivuită pentru prognoză în acest document din 2018, la pagina 79.

În contextul ahead::mlfalgoritmul descris în https://www.researchgate.net/publication/379643443_CONFORMALIZED_PREDICTIVE_SIMULARE_FOR_UNIVARIATE_TIME_SERIES PENTRU SERIA TIMPULUI Predicția conformală este îmbogățită: Previziunile obținute pe setul de calibrare sunt utilizate ca covariate pentru predicțiile setului de teste. Este important să alegeți un model care să nu se înalțeze prea mult aici, deoarece există deja o mulțime de informații furnizate pentru calibrarea setată de acest algoritm. Aleg plasa elastică.

Ce vom acoperi

  1. Instalarea pachetului
  2. Rulați exemplele
options(repos = c(
                techtonique = "https://r-packages.techtonique.net",
                CRAN = "https://cloud.r-project.org"
            ))            

install.packages("ahead")
install.packages("glmnet")

În această etapă, merită să încerci alte implementări net elastice (de exemplu, doar glmnet::glmnet), în special pentru că, din cauza glmnet::cv.glmnetimplementarea, validarea mea încrucișată este un fel de Căutând înapoi. Ei bine, utilizați o validare încrucișată a seriei de timp pentru a reduce volatilitatea prognozei.

(res1 <- ahead::mlf(AirPassengers, h=25L, lags=20L, fit_func=glmnet::cv.glmnet, stack=FALSE))
(res2 <- ahead::mlf(AirPassengers, h=25L, lags=20L, fit_func=glmnet::cv.glmnet, stack=TRUE))
(res3 <- ahead::mlf(USAccDeaths, h=25L, lags=20L, fit_func=glmnet::cv.glmnet, stack=TRUE))
(res4 <- ahead::mlf(USAccDeaths, h=25L, lags=20L, fit_func=glmnet::cv.glmnet, stack=FALSE))

par(mfrow=c(1, 2))
plot(res1, main="Conformal ML without stacking")
plot(res2, main="Conformal ML with stacking")

Image-titlu-here

par(mfrow=c(1, 2))
plot(res3, main="Conformal ML with stacking")
plot(res4, main="Conformal ML without stacking")

Image-titlu-hereImage-titlu-here

Dominic Botezariu
Dominic Botezariuhttps://www.noobz.ro/
Creator de site și redactor-șef.

Cele mai noi știri

Pe același subiect

LĂSAȚI UN MESAJ

Vă rugăm să introduceți comentariul dvs.!
Introduceți aici numele dvs.