Megosztás a következőn keresztül:


Az AutoML előrejelzési módszereinek áttekintése

Ez a cikk azOkat a módszereket ismerteti, amelyeket az AutoML az Azure Machine Learningben az idősoradatok előkészítéséhez és az előrejelzési modellek létrehozásához használ. Az AutoML-ben az előrejelzési modellek betanításával kapcsolatos utasításokért és példákért lásd: AutoML beállítása idősor-előrejelzéshez.

Előrejelzési módszerek az AutoML-ben

Az AutoML számos módszert használ az idősor értékeinek előrejelzésére. Ezek a módszerek nagyjából két kategóriába sorolhatók:

  • Idősorozat-modellek, amelyek a célmennyiség előzményértékeit használják előrejelzések készítésére a jövőbe
  • Regressziós vagy magyarázó modellek, amelyek prediktorváltozókat használnak a célértékek előrejelzéséhez

Tegyük fel, hogy napi keresletet kell előre jeleznie egy bizonyos narancslé márkára egy élelmiszerboltból. A kifejezéshez hagyja, hogy $y_t$ képviselje a márka iránti keresletet a $t$ napján. Az idősorozat-modell az $t+1$ értéken előrejelzi a keresletet az előzményigény valamilyen függvényének a következő kifejezéssel való használatával:

$y_{t+1} = f(y_t, y_{t-1}, \ldots, y_{t-s})$

A $f$ függvény gyakran olyan paraméterekkel rendelkezik, amelyeket a múltban megfigyelt igények alapján hangol. A $f$ által az előrejelzések készítéséhez használt előzménymennyiség ($s$) a modell paraméterének is tekinthető.

Előfordulhat, hogy a narancslé-igény példában szereplő idősorozat-modell nem elég pontos, mert csak a múltbeli keresletre vonatkozó információkat használja. Számos egyéb tényező is befolyásolhatja a jövőbeli keresletet, például az árat, a hét napját és az ünnepi időszakokat. Vegyünk egy regressziós modellt , amely ezeket a prediktorváltozókat használja az alábbi kifejezéssel:

$y = g(\text{price}, \text{day of week}, \text{holiday})$

A $g$ függvény általában számos paraméterrel rendelkezik, beleértve a szabályzást szabályozó értékeket is, amelyeket az AutoML az igény és a prediktorok múltbeli értékeinek használatával hangol. Kihagyja a $t$ kifejezést a kifejezésből annak hangsúlyozásához, hogy a regressziós modell korrelációs mintákat használ az egyidejűleg definiált változók között az előrejelzések létrehozásához. A $g$-ból származó $y_{t+1}$ előrejelzéséhez tudnia kell, hogy a hét melyik napja felel meg $t+1$-nak, hogy a nap ünnep-e, és a narancslé ára $t+1$. Az első két információ könnyen azonosítható egy naptár használatával. A kiskereskedelmi ár általában előre van meghatározva, így a narancslé ára valószínűleg egy nappal korábban is ismert. Előfordulhat azonban, hogy az ár nem ismert 10 nappal a jövőben. Fontos tisztában lenni azzal, hogy ennek a regressziónak a hasznosságát korlátozza, hogy milyen messze van szüksége az előrejelzésekre, más néven az előrejelzési horizontra, és hogy milyen mértékben ismeri az előrejelzők jövőbeli értékeit.

Fontos

Az AutoML előrejelzési regressziós modelljei feltételezik, hogy a felhasználó által biztosított összes funkció ismert a jövőben, legalábbis az előrejelzési horizontig.

Az AutoML előrejelzési regressziós modelljei kiegészíthetők a cél és a prediktorok előzményértékeinek használatára is. Az eredmény egy hibrid modell, amely egy idősoros modell jellemzőivel és egy tiszta regressziós modellel rendelkezik. Az előzménymennyiségek a regresszióban lévő extra prediktor változók, amelyeket hanyatlott mennyiségeknek neveznek. A késés sorrendje azt jelenti, hogy az érték milyen messze van ismert. Például a narancslé-keresleti példa célértékének két megrendelési késésének aktuális értéke a két nappal ezelőtti megfigyelt gyümölcslé-kereslet.

Az idősorozat-modellek és a regressziós modellek között egy másik jelentős különbség az, hogy hogyan hoznak létre előrejelzéseket. A rekurziós kapcsolatok általában olyan idősorozat-modelleket határoznak meg, amelyek egyenként készítenek előrejelzéseket. Ha több időszakot szeretne előrejelzni a jövőbe, iterálják az előrejelzési horizontot, és a korábbi előrejelzéseket visszatáplálják a modellbe, hogy szükség szerint létrehozzák a következő, egy időszakot megelőző előrejelzést. Ezzel szemben a regressziós modellek közvetlen előrejelzésnek minősülnek, amelyek egyetlen kísérlet során az összes előrejelzést a horizontig generálják. A közvetlen előrejelzők előnyben részesíthetők a rekurzív metódusokkal, mivel a rekurzív modellek összetett előrejelzési hibát okoznak, amikor a korábbi előrejelzéseket visszatáplálták a modellbe. Ha késési funkciók szerepelnek, az AutoML fontos módosításokat végez a betanítási adatokon, hogy a regressziós modellek közvetlen előrejelzési modellként működhessenek. További információ: Késési funkciók az AutoML idősoros előrejelzéséhez.

Modellek előrejelzése az AutoML-ben

Az AutoML a Machine Learningben az alábbi előrejelzési modelleket implementálja. Minden kategória esetében a modellek nagyjából az általuk beépíthető minták összetettsége, más néven a modellkapacitás alapján vannak felsorolva. Egy naiv modell, amely egyszerűen az utolsó megfigyelt értéket előrejelzési, alacsony kapacitással rendelkezik, míg a temporális konvolúciós hálózat (TCNForecaster), egy mély neurális hálózat (DNN) potenciálisan több millió halhatatlan paraméterrel rendelkezik, nagy kapacitással rendelkezik.

Idősorozat-modellek Regressziós modellek
Naív, szezonális naiv, átlag, szezonális átlag, ARIMA(X), exponenciális simítás Lineáris SGD, LARS LASSO, Elastic Net, Próféta, K legközelebbi szomszédok, Döntési fa, Véletlenszerű erdő, Rendkívül randomizált fák, Színátmenet kiemelt fák, LightGBM, XGBoost, TCNForecaster

Az AutoML olyan együttes modelleket is tartalmaz, amelyek a legjobban teljesítő modellek súlyozott kombinációit hozzák létre a pontosság további javítása érdekében. Az előrejelzéshez egy puha szavazási együttest használ, ahol a caruanai együttes kiválasztási algoritmusával összetételt és súlyokat talál.

Feljegyzés

Az előrejelzési modell együtteseinek két fontos kifogása van:

  • A TCN jelenleg nem vehető fel az együttesek közé.
  • Az AutoML alapértelmezés szerint letiltja a verem-együttes metódust, amely az AutoML alapértelmezett regressziós és besorolási feladatai közé tartozik. A verem-együttes a legjobb modell-előrejelzésekhez illeszkedik egy metamodellhez az együttes súlyainak megkereséséhez. A belső teljesítményértékelés során ez a stratégia nagyobb tendenciát mutat az idősorok adatainak túlillesztésére. Ez az eredmény gyenge általánosítást eredményezhet, ezért a verem-együttes alapértelmezés szerint le van tiltva. Szükség szerint engedélyezheti az együttest az AutoML-konfigurációban.

Hogyan használja az AutoML az adatokat?

Az AutoML táblázatos "széles" formátumban fogadja el az idősoradatokat. Minden változónak saját megfelelő oszloppal kell rendelkeznie. Az AutoML megköveteli, hogy egy oszlop legyen az előrejelzési probléma időtengelye. Ennek az oszlopnak dátum/idő típusba kell elemezhetőnek lennie. A legegyszerűbb idősor adatkészlete egy időoszlopból és egy numerikus céloszlopból áll. A cél az a változó, amelyet előre szeretne jelezni a jövőbe. Az alábbi táblázat az ehhez a formátumhoz tartozó példaértékeket mutatja be:

időbélyeg mennyiség
2012-01-01 100
2012-01-02 97
2012-01-03 106
... ...
2013-12-31 347

Összetettebb esetekben az adathalmaz az időindexhez igazított egyéb oszlopokat is tartalmazhat:

időbélyeg Termékváltozat price Hirdetett mennyiség
2012-01-01 JUICE1 3,5 0 100
2012-01-01 KENYÉR3 5.76 0 47
2012-01-02 JUICE1 3,5 0 97
2012-01-02 KENYÉR3 5,5 0 68
... ... ... ... ...
2013-12-31 JUICE1 3.75 0 347

A második példa egy termékváltozatot, egy kiskereskedelmi árat és egy jelölőt tartalmaz, amely jelzi, hogy az időbélyeg és a célmennyiség mellett meghirdetett-e egy tételt. A második adatkészlet két sorozatot mutat be: egyet a JUICE1 termékváltozathoz, egyet a BREAD3 termékváltozathoz. A termékváltozat oszlop egy idősor-azonosító oszlop , mert az oszlopértékek szerinti csoportosítás két csoportot hoz létre, amelyek mindegyike egyetlen adatsort tartalmaz. A modell átvizsgálása előtt az AutoML elvégzi a bemeneti konfiguráció és az adatok alapszintű ellenőrzését, és mérnöki funkciókat ad hozzá.

Adathosszra vonatkozó követelmények

Az előrejelzési modell betanításához elegendő mennyiségű előzményadattal kell rendelkeznie. Ez a küszöbérték a betanítási konfigurációtól függően változik. Ha érvényesítési adatokat ad meg, az idősoronként szükséges betanítási megfigyelések minimális száma az alábbiak szerint lesz kifejezve:

$T_{\text{user validation}} = H + \text{max}(l_{\text{max}}, s_{\text{window}}) + 1$

Ebben a kifejezésben a $H$ az előrejelzési horizont, $l_{\text{max}}$ a maximális késési sorrend, a $s_{\text{window}}$ pedig az összesítő funkciók ablakmérete. Keresztérvényesítés használata esetén a megfigyelések minimális száma a következőképpen van kifejezve:

$T_{\text{CV}} = 2H + (n_{\text{CV}} – 1) n_{\text{step}} + \text{max}(l_{\text{max}}, s_{\text{window}}) + 1$

Ebben a verzióban a $n_{\text{CV}}$ a keresztérvényesítési hajtások száma, a $n_{\text{step}}$ pedig a CV lépésmérete vagy eltolása a CV-hajtások között. A képletek mögött az alapvető logika az, hogy minden egyes idősorhoz legalább betanítási megfigyelési horizontot kell használnia, beleértve a késések és keresztérvényesítési felosztások néhány kitöltését is. Az előrejelzés keresztérvényesítésével kapcsolatos további információkért lásd : Modellválasztás az AutoML-ben.

Hiányzó adatkezelés

Az AutoML idősormodelljeihez rendszeres időközönkénti megfigyelésre van szükség, beleértve az olyan eseteket is, mint a havi vagy éves megfigyelések, ahol a megfigyelések közötti napok száma eltérő lehet. A modellezési folyamat megkezdése előtt az AutoML-nek meg kell győződnie arról, hogy nincsenek hiányzó adatsorértékek , és hogy a megfigyelések szabályosak. Ennek eredményeként két adateset hiányzik:

  • Hiányzik egy érték a táblázatos adatok valamelyik cellához.
  • Hiányzik egy sor , amely megfelel egy várható megfigyelésnek az idősor gyakorisága alapján.

Az első esetben az AutoML gyakran konfigurálható technikákkal imputálta a hiányzó értékeket. Az alábbi táblázat egy hiányzó várt sort mutat be:

időbélyeg mennyiség
2012-01-01 100
2012-01-03 106
2012-01-04 103
... ...
2013-12-31 347

Ez a sorozat látszólag napi gyakorisággal rendelkezik, de nincs megfigyelés 2012. január 2-ra (2012-01-02). Ebben az esetben az AutoML megkísérli kitölteni az adatokat egy új sor hozzáadásával a hiányzó értékhez. Az oszlop új értéke quantity és az adatok bármely más oszlopa a többi hiányzó értékhez hasonlóan lesz imputált. A folyamat végrehajtásához az AutoML-nek fel kell ismernie az adatsor gyakoriságát, hogy az ebben az esetben bemutatott megfigyelési hiányosságokat ki tudja tölteni. Az AutoML automatikusan észleli ezt a gyakoriságot, vagy opcionálisan a felhasználó is megadhatja a konfigurációban.

A hiányzó értékek megadására szolgáló számítási módszer konfigurálható a bemenetben. Az alábbi táblázat az alapértelmezett metódusokat sorolja fel:

Oszloptípus Alapértelmezett számítási módszer
Cél Előretöltés (utolsó elvégzett megfigyelés)
Numerikus funkció Mediánérték

A kategorikus funkciók hiányzó értékeit a numerikus kódolás során kezeli a rendszer egy másik, hiányzó értéknek megfelelő kategória beiktatásával. Ebben az esetben a számítás implicit.

Automatizált funkciófejlesztés

Az AutoML általában új oszlopokat ad hozzá a felhasználói adatokhoz a modellezés pontosságának növelése érdekében. A megtervezett funkciók tartalmazhatnak alapértelmezett vagy választható elemeket.

Alapértelmezett mérnöki funkciók:

Választható mérnöki funkciók:

A featurizációt az AutoML SDK-ból az ForecastingJob osztály vagy az Azure Machine Learning Studio webes felületén konfigurálhatja.

Nemstationáris idősorok észlelése és kezelése

Olyan idősor, amelyben a középérték és az időbeli eltérés nem helyhez kötött. Az idősor, amely sztochasztikus trendeket mutat, természete szerint nem áll meg.

Az alábbi kép egy vizualizációt mutat be ehhez a forgatókönyvhöz. A diagram egy általában felfelé trendelt sorozatot ábrázol. Ha kiszámítja és összehasonlítja az adatsor első és második felére vonatkozó középértékeket, azonosíthatja a különbségeket. A sorozat középértéke a diagram első felében kisebb, mint a második felében lévő középérték. Az a tény, hogy az adatsor átlaga a vizsgált időintervallumtól függ, példa az időfüggő pillanatokra. Ebben a forgatókönyvben egy sorozat átlaga az első pillanat.

Nem egy adott idősor kiskereskedelmi értékesítését bemutató ábra.

A következő képen egy diagram látható, amely az eredeti sorozatot ábrázolja az első különbségekben, $\Delta y_{t} = y_t – y_{t-1}$. Az adatsor középértéke nagyjából állandó az időtartományban, míg a variancia változónak tűnik. Ez a forgatókönyv egy példa egy elsőrendű helyhez kötött idősorra:

A gyenge helyhez kötött idősorok kiskereskedelmi értékesítését bemutató ábra.

Az AutoML regressziós modelljei nem képesek eredendően kezelni a sztochasztikus trendeket vagy más jól ismert problémákat, amelyek nem az idősorokhoz kapcsolódnak. Ennek eredményeképpen a mintaalapú előrejelzés pontossága gyenge lehet, ha ilyen trendek vannak jelen.

Az AutoML automatikusan elemzi az idősor adatkészletét annak szintjének vagy állomásaritásának meghatározásához. Ha nem ad visszatartási idősort, az AutoML automatikusan alkalmaz különbség-átalakítást a nemstationáris viselkedés hatásainak mérséklése érdekében.

Modellsöprés

Az adatok hiányzó adatkezeléssel és funkciófejlesztéssel való előkészítése után az AutoML egy modellajánlási szolgáltatás használatával átvizsgálja a modelleket és hiperparamétereket.

A modellek rangsorolása érvényesítési vagy keresztérvényesítési metrikák alapján történik, majd igény szerint a felső modellek használhatók egy együttes modellben. A legjobb modell vagy a betanított modellek bármelyike megvizsgálható, letölthető vagy üzembe helyezhető, hogy szükség szerint előrejelzéseket készítsen. További információ: Modellsöprés és előrejelzés kiválasztása az AutoML-ben.

Modell csoportosítása

Ha egy adathalmaz egynél több idősort tartalmaz, az adatok modellezésének több módja is van. Csoportosíthatja az adatokat az idősor-azonosító oszlopaiban , és betanított független modelleket az egyes sorozatokhoz. Általánosabb módszer az adatok olyan csoportokba való particionálása, amelyek mindegyike több (valószínűleg kapcsolódó) sorozatot tartalmazhat, és csoportonként betanít egy modellt.

Az AutoML-előrejelzés alapértelmezés szerint vegyes megközelítést használ a modell csoportosításához. Az idősorozat-modellek, valamint az ARIMAX és a Prophet egy sorozatot rendelnek egy csoporthoz, a többi regressziós modell pedig az összes sorozatot egyetlen csoporthoz rendeli.

Az egyes modelltípusok a következőképpen használnak csoportokat:

  • Minden sorozat egy külön csoportban (1:1): Naív, Szezonális naiv, Átlag, Szezonális átlag, Exponenciális simítás, ARIMA, ARIMAX, Próféta

  • Minden sorozat ugyanabban a csoportban (N:1): Lineáris SGD, LARS LASSO, Elastic Net, K Legközelebbi szomszédok, Döntésfa, Véletlenszerű erdő, Rendkívül véletlenszerű fák, Színátmenetes fák, LightGBM, XGBoost, TCNForecaster

Az AutoML számos modellmegoldásával általánosabb modellcsoportokat lehet használni. További információ: Több modell – Automatizált gépi tanulási jegyzetfüzet.