Článok rozoberá oblasti použitia časových radov, problémy, ktoré je potrebné riešiť, a použité algoritmy. Prognóza časových radov sa používa v úlohách, ako je predpovedanie dopytu, zaťaženia kontaktného centra, cestnej a internetovej premávky, riešenie problému studeného štartu v systémoch odporúčaní a hľadanie anomálií v správaní zariadení a používateľov.
Pozrime sa na úlohy podrobnejšie.
1) Predpovedanie dopytu.
Cieľ: znížiť náklady na sklad a optimalizovať pracovné plány zamestnancov.
Ako to vyriešiť: s predpoveďou nákupov tovaru a počtu zákazníkov minimalizujeme množstvo tovaru na sklade a skladujeme presne toľko, koľko sa v danom časovom rozmedzí nakúpi. S vedomím počtu klientov v danom čase zostavíme optimálny harmonogram prác tak, aby bol dostatočný počet zamestnancov s minimálnymi nákladmi.
2) Predpovedanie zaťaženia doručovacej služby
Cieľ: zabrániť kolapsu logistiky počas špičiek.
Ako to vyriešiť: predvídať počet objednávok, priviesť na linku optimálny počet áut a kuriérov.
3) Predpovedanie zaťaženia kontaktného centra
Cieľ: zabezpečiť požadovanú dostupnosť kontaktného centra pri minimalizácii nákladov na mzdový fond.
Ako riešiť: predpovedanie počtu hovorov v čase, vytvorenie optimálneho harmonogramu pre operátorov.
4) Predpovedanie dopravy
Cieľ: predpovedať počet serverov a šírku pásma pre stabilnú prevádzku. Aby vaša služba nepadla v deň premiéry obľúbeného televízneho seriálu alebo futbalového zápasu 😉
5) Predpovedanie optimálneho času na výber z bankomatu
Cieľ: minimalizovať množstvo hotovosti uloženej v sieti bankomatov
6) Riešenia problému so studeným štartom v systémoch odporúčaní
Cieľ: Odporučiť relevantné produkty novým používateľom.
Keď používateľ uskutočnil niekoľko nákupov, môže sa vytvoriť spoločný filtrovací algoritmus pre odporúčania, ale ak neexistujú žiadne informácie o používateľovi, je optimálne odporučiť najobľúbenejšie produkty.
Riešenie: Obľúbenosť produktov závisí od času, kedy je odporúčanie urobené. Používanie prognóz časových radov pomáha identifikovať relevantné produkty v akomkoľvek danom časovom bode.
Pozreli sme sa na life hacky na budovanie odporúčacích systémov
7) Hľadajte anomálie
Cieľ: identifikovať problémy pri prevádzke zariadení a neštandardné situácie v podnikaní
Riešenie: Ak je nameraná hodnota mimo intervalu spoľahlivosti prognózy, bola zistená anomália. Ak je toto jadrová elektráreň, je čas zväčšiť druhú mocninu vzdialenosti 😉
Algoritmy na riešenie problému
1) Kĺzavý priemer
Najjednoduchším algoritmom je kĺzavý priemer. Vypočítajme priemernú hodnotu na niekoľkých posledných prvkoch a urobme predpoveď. Pre predpovede počasia dlhšie ako 10 dní sa používa podobný prístup.
Keď je dôležité, aby posledné hodnoty v rade mali väčšiu váhu, zavedieme koeficienty v závislosti od vzdialenosti dátumu, čím získame vážený model:
Môžete teda nastaviť koeficient W tak, aby maximálna váha pripadla na posledné 2 dni a na vstupné dni.
Berúc do úvahy cyklické faktory
Kvalita odporúčaní môže byť ovplyvnená cyklickými faktormi, ako je zhoda s dňom v týždni, dátumom, predchádzajúcimi sviatkami atď.
Ryža. 1. Príklad rozkladu časových radov na trend, sezónnu zložku a šum
Exponenciálne vyhladzovanie je riešením na zohľadnenie cyklických faktorov.
Pozrime sa na 3 základné prístupy
1. Jednoduché vyhladenie (hnedý model)
Predstavuje výpočet váženého priemeru na posledných 2 prvkoch série.
2. Dvojité vyhladenie (model Holt)
Zohľadňuje zmeny trendu a kolísanie zostatkových hodnôt okolo tohto trendu.
Vypočítame predikciu zmien rezíduí ® a trendu (d). Konečná hodnota y je súčtom týchto dvoch veličín.
3. Trojité vyhladenie (model Holt-Winters)
Trojité vyhladenie navyše zohľadňuje sezónne výkyvy.
Vzorce pre trojité vyhladenie.
Algoritmus ARIMA a SARIMA
Zvláštnosťou časových radov pre použitie ARIMA je spojenie medzi minulými hodnotami spojenými so súčasnými a budúcimi.
SARIMA – rozšírenie pre série so sezónnou zložkou. SARIMAX je rozšírenie, ktoré obsahuje externý regresný komponent.
Modely ARIMA umožňujú simulovať integrované alebo rozdielovo stacionárne časové rady.
Prístup ARIMA k časovým radom spočíva v tom, že najprv sa posúdi stacionarita radu.
Potom sa séria transformuje prevzatím rozdielu príslušného poradia a pre transformovaný model sa skonštruuje model ARMA.
ARMA je lineárny viacnásobný regresný model.
Dôležité je, aby séria bola stacionárna, t.j. priemer a rozptyl sa nezmenili. Ak je séria nestacionárna, mala by sa uviesť do stacionárnej formy.
XGBoost – kde by sme bez neho boli?
Ak séria nemá vnútornú vyjadrenú štruktúru, ale existujú vonkajšie ovplyvňujúce faktory (manažér, počasie atď.), potom môžete pokojne použiť modely strojového učenia, ako je boosting, náhodné lesy, regresia, neurónové siete a SVM.
Zo skúseností tímu ÚDAJE4, prognózovanie časových radov, jedna z hlavných úloh riešenia optimalizácie skladových nákladov, personálnych nákladov, optimalizácia údržby ATM sietí, logistiky a systémov odporúčania budov. Komplexné modely ako SARIMA poskytujú vysokokvalitné výsledky, sú však časovo náročné a sú vhodné len pre určitý rozsah úloh.
V nasledujúcom článku sa pozrieme na hlavné prístupy k vyhľadávaniu anomálií.
Aby ste sa uistili, že články sú relevantné pre vaše záujmy, zúčastnite sa nižšie uvedeného prieskumu alebo napíšte do komentárov, o ktorých témach písať v ďalších článkoch.
Do prieskumu sa môžu zapojiť iba registrovaní užívatelia.
Články o akej téme vás zaujímajú?
-
Systémy odporúčaní
-
Rozpoznávanie obrázkov
-
Spracovanie reči a textu
-
Nové architektúry v DNN
-
Časové rady a vyhľadávanie anomálií
-
ML v podnikaní, prípady použitia
Hlasovalo 17 užívateľov. 3 používatelia sa zdržali hlasovania.
Zdroj: hab.com