Enostavno in natančno napovedovanje z AutoGluon-TimeSeries PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Enostavno in natančno napovedovanje z AutoGluon-TimeSeries

AutoGluon-TimeSeries je najnovejši dodatek k AutoGluon, ki vam pomaga enostavno zgraditi zmogljive modele napovedovanja časovnih vrst s samo tremi vrsticami kode.

Napovedovanje časovnih vrst je pogosta naloga v številnih panogah in znanstvenih področjih. Dostop do zanesljivih napovedi za ponudbo, povpraševanje ali zmogljivost je ključnega pomena za načrtovanje podjetij. Vendar pa je napovedovanje časovnih vrst težka težava, zlasti če je na voljo na tisoče potencialno povezanih časovnih vrst, kot je prodaja v velikem katalogu v e-trgovini ali zmogljivosti na stotinah operativnih mest.

Preproste statistične metode ali metode napovedovanja, ki temeljijo na presoji, so pogosto že močne osnove, ki jih je težko izboljšati z novimi metodami strojnega učenja (ML). Poleg tega so aplikacije nedavnega napredka v ML za napovedovanje različne, z nekaj metodami, kot je npr DeepAR [1] ali časovni fuzijski transformatorji [2], ki se pojavljajo kot priljubljena izbira. Vendar je te metode težko usposobiti, prilagoditi in uvesti v produkciji, kar zahteva strokovno znanje o ML in analizi časovnih vrst.

AutoML je hitro rastoča tema v ML, ki se osredotoča na avtomatizacijo običajnih opravil v cevovodih ML, vključno s predprocesiranjem funkcij, izbiro modela, prilagajanjem modela, združevanjem in uvajanjem. AutoGluon-TimeSeries je najnovejši dodatek k AutoGluon, ena vodilnih odprtokodnih rešitev AutoML, ki gradi na zmogljivem ogrodju AutoGluon za AutoML pri nalogah napovedovanja. AutoGluon-TimeSeries je bil zasnovan za izgradnjo zmogljivih sistemov za napovedovanje s samo tremi vrsticami kode, kar olajša izzive predprocesiranja funkcij, izbire modela, prilagajanja modela in enostavnosti uvajanja.

S preprostim klicem AutoGluon-TimeSeries TimeSeriesPredictor, AutoGluon sledi intuitivnemu vrstnemu redu pri prilagajanju modelov: začenši s preprostimi naivnimi osnovnimi črtami in se premakne na zmogljivo globalno nevronsko mrežo in okrepljene drevesne metode, vse v okviru časovnega proračuna, ki ga določi uporabnik. Ko so na voljo sorodne časovne vrste (časovno spremenljive spremenljivke ali eksogene spremenljivke) ali metapodatki elementov (statične funkcije), jih AutoGluon-TimeSeries vključi v napoved. Knjižnica uporablja tudi Bayesovo optimizacijo za uravnavanje hiperparametrov, s čimer pride do najboljše konfiguracije modela z uravnavanjem kompleksnih modelov. Končno AutoGluon-TimeSeries združuje najboljše statistične metode in metode, ki temeljijo na ML, v skupino modelov, optimiziranih za obravnavani problem.

V tej objavi prikazujemo enostavnost uporabe AutoGluon-TimeSeries pri hitri izdelavi zmogljivega napovedovalca.

Začnite uporabljati AutoGluon-TimeSeries

Za začetek morate namestiti AutoGluon, kar je enostavno narediti s pipom na lupini UNIX:

pip install "autogluon>=0.6"

AutoGluon-TimeSeries predstavlja TimeSeriesDataFrame razred za delo z nabori podatkov, ki vključujejo več povezanih časovnih vrst (včasih imenovanih nabor podatkov plošče). Te podatkovne okvire je mogoče ustvariti iz tako imenovanih podatkovnih okvirov dolgega formata, ki imajo ID-je časovnih vrst in časovne žige, razvrščene v vrstice. Sledi en tak primer podatkov, vzet iz tekmovanja M4 [3]. Tukaj, item_id stolpec podaja enolični identifikator posamezne časovne serije, kot je ID izdelka za dnevne podatke o prodaji več izdelkov. The target je vrednost obresti, ki se jo bo AutoGluon-TimeSeries naučil napovedovati. weekend je dodatna časovno spremenljiva kovariata, ki smo jo ustvarili, da označimo, ali je bilo opazovanje ob koncu tedna ali ne.

Z lahkoto izdelamo novo TimeSeriesDataFrame iz tega nabora podatkov z uporabo from_data_frame konstruktor. Oglejte si naslednjo kodo Python:

df = TimeSeriesDataFrame.from_data_frame(raw_data_frame)

Nekateri podatki o časovnih vrstah imajo časovno nespremenljive funkcije (statične funkcije ali metapodatke elementov), ​​ki jih je mogoče uporabiti pri usposabljanju modela napovedovanja. Na primer, nabor podatkov M4 vsebuje spremenljivko kategorije za vsako časovno vrsto. Te lahko dodate k TimeSeriesDataFrame z nastavitvijo static_features spremenljivko z novim podatkovnim okvirjem.

Enostavno in natančno napovedovanje z AutoGluon-TimeSeries PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Uporabite naslednjo kodo:

df.static_features = raw_static_features

Usposobite TimeSeriesPredictor

Končno lahko pokličemo TimeSeriesPredictor prilagoditi široko paleto modelov napovedovanja za izgradnjo natančnega sistema napovedovanja. Oglejte si naslednjo kodo:

predictor = TimeSeriesPredictor(
    prediction_length=7,
    eval_metric="MASE",
    known_covariates_names=["weekend"],
)

Tukaj navajamo, da je TimeSeriesPredictor mora izdelati modele za napovedovanje naslednjih sedmih časovnih obdobij in oceniti najboljše modele z uporabo srednje absolutne skalirane napake (MASE). Poleg tega navajamo, da je časovno spremenljiva kospremenljivka weekend je na voljo v naboru podatkov. Zdaj lahko objekt napovednika prilagodimo na TimeSeriesDataFrame izdelano prej:

predictor.fit(df, presets="medium_quality", time_limit=1800)

Poleg zagotavljanja podatkov o usposabljanju prosimo napovedovalca za uporabo “medium_quality” prednastavitve. AutoGluon-TimeSeries je opremljen z več prednastavitvami za izbiro podmnožic modelov, ki jih je treba upoštevati, in koliko časa porabiti za njihovo uravnavanje, upravljanje kompromisa med hitrostjo usposabljanja in natančnostjo. Poleg prednastavitev lahko bolj izkušeni uporabniki uporabljajo a hyperparameters argument za natančno določitev modelov komponent in katere hiperparametre jim nastaviti. Določimo tudi časovno omejitev 1,800 sekund, po kateri napovedovalec preneha trenirati.

Pod pokrovom AutoGluon-TimeSeries usposablja čim več modelov v določenem časovnem okviru, začenši z naivnimi, a zmogljivimi osnovnimi črtami in dela proti bolj zapletenim napovedovalcem, ki temeljijo na povečanih drevesih in modelih nevronske mreže. S klicem predictor.leaderboard(), lahko vidimo seznam vseh modelov, ki jih je usposobil, ter rezultate natančnosti in čase usposabljanja za vsakega. Upoštevajte, da vsak model AutoGluon-TimeSeries poroča o svojih napakah v formatu »višje je boljše«, kar pomeni, da se večina meritev napak pri napovedovanju ob poročanju pomnoži z -1. Oglejte si naslednji primer:

              model  score_val  pred_time_val  fit_time_marginal  fit_order
0  WeightedEnsemble  -0.612510      15.406334          48.428711          8
1  AutoGluonTabular  -0.654924       1.068694         104.208688          6
2            DeepAR  -0.673366       6.731659        1065.956648          7
3     SeasonalNaive  -1.035286       0.410615           0.000742          2
4               ETS  -1.073640       5.832542           0.000584          3
5             Theta  -1.107362       1.773439           0.000614          4
6             ARIMA  -3.006273       2.483140           0.000625          5
7             Naive  -3.427339      29.532215           0.000577          1

Napoved s TimeSeriesPredictor

Končno lahko uporabimo napovedovalec za napovedovanje vseh časovnih vrst v a TimeSeriesDataFrame, 7 dni v prihodnosti. Upoštevajte, da je treba, ker smo uporabili časovno spremenljive kovariate, za katere se domneva, da bodo znane v prihodnosti, tudi te določiti v času napovedi. Oglejte si naslednjo kodo:

predictions = predictor.predict(
	df,
	known_covariates=future_known_covariates
)

AutoGluon-TimeSeries privzeto zagotavlja točkovne napovedi in verjetnostne (kvantilne) napovedi ciljne vrednosti. Probabilistične napovedi so bistvenega pomena pri številnih nalogah načrtovanja in jih je mogoče uporabiti za prilagodljivo izračunavanje intervalov, kar omogoča nadaljnje naloge, kot sta načrtovanje zalog in zmogljivosti.

Enostavno in natančno napovedovanje z AutoGluon-TimeSeries PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Sledi vzorčni izris napovedi, ki prikazuje točkovne napovedi in intervale napovedi.

Enostavno in natančno napovedovanje z AutoGluon-TimeSeries PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

zaključek

AutoGluon-TimeSeries omogoča napovedovalcem in podatkovnim znanstvenikom hiter in enostaven način za izdelavo zmogljivih modelov napovedovanja. Poleg nekaterih pogosto uporabljenih funkcij knjižnice, predstavljenih v tej objavi, ima AutoGluon-TimeSeries nabor načinov za konfiguriranje napovedi za napredne uporabnike. Napovedovalce je tudi enostavno usposobiti, uvesti in služiti v velikem obsegu Amazon SageMaker, z uporabo poglobljenega učenja AutoGluon posode.

Za več podrobnosti o uporabi AutoGluon, primere, vadnice in druge naloge, ki se jih AutoGluon loteva, kot je učenje tabelarnih ali multimodalnih podatkov, obiščite AutoGluon. Če želite začeti uporabljati AutoGluon-TimeSeries, si oglejte naše vadnica za hiter začetek ali naš poglobljena vadnica za globlji vpogled v vse funkcije, ki jih ponuja knjižnica. Sledite AutoGluon on Twitterin nas označi z zvezdico GitHub da boste obveščeni o najnovejših posodobitvah.

Za napovedovanje v velikem obsegu z namenskim računalništvom in delovnimi tokovi, podporo na ravni podjetja, razložljivostjo napovedi in več, preverite tudi Amazonska napoved.

Reference

[1] Salinas, David, Valentin Flunkert, Jan Gasthaus in Tim Januschowski. »DeepAR: Probabilistično napovedovanje z avtoregresivno ponavljajočimi se omrežji.« Mednarodni časopis za napovedovanje 36. 3 (2020): 1181-1191.

[2] Lim, Bryan, Sercan O Arik, Nicolas Loeff in Tomas Pfister. »Časovni fuzijski transformatorji za interpretabilno napovedovanje časovnih vrst z več obzorji.« Mednarodni časopis za napovedovanje 37.4 (2021): 1748-1764.

[3] Makridakis, Spyros, Evangelos Spiliotis in Vassilios Assimakopoulos. "Tekmovanje M4: 100,000 časovnih vrst in 61 metod napovedovanja." Mednarodni časopis za napovedovanje 36.1 (2020): 54-74.


O avtorjih

Enostavno in natančno napovedovanje z AutoGluon-TimeSeries PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Caner Turkmen je uporabni znanstvenik pri Amazon Web Services, kjer se poleg razvoja AutoGluon-TimeSeries ukvarja s problemi na presečišču strojnega učenja in napovedovanja. Preden se je pridružil podjetju AWS, je delal v industriji svetovanja pri upravljanju kot podatkovni znanstvenik ter služil panogi finančnih storitev in telekomunikacij pri projektih po vsem svetu. Canerjevi osebni raziskovalni interesi obsegajo vrsto tem, vključno z napovedovanjem, vzročnim sklepanjem in AutoML.

Enostavno in natančno napovedovanje z AutoGluon-TimeSeries PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Oleksander Ščur je uporabni znanstvenik pri Amazon Web Services, kjer dela na napovedovanju časovnih vrst v AutoGluon-TimeSeries. Preden se je pridružil AWS, je doktoriral iz strojnega učenja na Tehnični univerzi v Münchnu v Nemčiji, kjer je raziskoval verjetnostne modele za podatke o dogodkih. Njegovi raziskovalni interesi vključujejo strojno učenje za časovne podatke in generativno modeliranje.

Enostavno in natančno napovedovanje z AutoGluon-TimeSeries PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Nick Erickson je višji aplikativni znanstvenik pri Amazon Web Services. Magistriral je iz računalništva in inženiringa na University of Minnesota Twin Cities. Je soavtor in vodilni razvijalec odprtokodnega ogrodja AutoML AutoGluon. Nick je leta 2018 začel kot komplet orodij ML za osebno konkurenco, nenehno pa je širil zmogljivosti AutoGluona in se leta 2019 pridružil Amazon AI, da bi projekt odprl kodo in polni delovni čas delal na napredku najsodobnejšega v AutoML.

Časovni žig:

Več od Strojno učenje AWS