• Rezultati Niso Bili Najdeni

Napovedovanjeporabeelektrikespomoˇcjostrojnegauˇcenjainmatriˇcnegaprofiliranja NacStoklas

N/A
N/A
Protected

Academic year: 2022

Share "Napovedovanjeporabeelektrikespomoˇcjostrojnegauˇcenjainmatriˇcnegaprofiliranja NacStoklas"

Copied!
77
0
0

Celotno besedilo

(1)

Univerza v Ljubljani

Fakulteta za raˇ cunalniˇ stvo in informatiko

Nac Stoklas

Napovedovanje porabe elektrike s pomoˇ cjo strojnega uˇ cenja in

matriˇ cnega profiliranja

MAGISTRSKO DELO

MAGISTRSKI PROGRAM DRUGE STOPNJE RA ˇCUNALNIˇSTVO IN INFORMATIKA

Mentor : izr. prof. dr. Matjaˇ z Kukar

Ljubljana, 2021

(2)
(3)

Avtorske pravice. Rezultati magistrskega dela so intelektualna last- nina avtorja in Fakultete za raˇcunalniˇstvo in informatiko Univerze v Ljubl- jani. Za objavljanje ali izkoriˇsˇcanje rezultatov magistrskega dela je potrebno pisno soglasje avtorja, Fakultete za raˇcunalniˇstvo in informatiko ter mentorja

©2021 Nac Stoklas

(4)
(5)

Zahvala

Hvala mentorju Matjaˇzu Kukarju za potrpljenje in nasvete tekom vseh razliˇcic tega magistrskega dela. Hvala Boˇzidari Cvetkoviˇc za pomoˇc in mentorstvo v zaˇcetnih fazah. Hvala druˇzini, ki mi je stala ob strani skozi vse letne ˇcase, za spodbudo, skrb in bodrenje. Joˇzi, upam, da je obleka, ki si jo kupila za moj zagovor tega dela pred kakˇsnim letom, spet aktualna! Hvala Ajdi in Raju, ki sta v zadnjem letu ob meni preˇzivela najveˇc ˇcasa in skrbela za moje duˇsevno zdravje, prehrano in gibanje. Dajala sta mi potuho, ko sem gledal v zrak in me spodbujala vse delovne noˇci.

Hvala vsem!

Nac Stoklas, 2021

(6)
(7)

Moji druˇzini, Ajdi, Raju in vsem ki ste mi pomagali. Brez vas ne bi priˇsel do sem.

(8)
(9)

Kazalo

Povzetek Abstract

1 Uvod 1

2 Sorodno delo 3

2.1 Napovedovanje porabe elektriˇcne energije . . . 3

2.2 Matriˇcni profili . . . 6

3 Podatki 11 3.1 Pridobitev podatkov . . . 11

3.2 Ciˇsˇˇ cenje in analiza podatkov . . . 14

3.3 Znaˇcilke . . . 20

4 Matriˇcni profili 25 4.1 Analiza anomalij . . . 26

4.2 Generiranje dvostopenjskega MP-modela . . . 28

4.3 Izraˇcun MP-znaˇcilke . . . 29

4.4 Uporaba MP znaˇcilke pri napovedovanju . . . 32

5 Testna metodologija 35 5.1 Testiranje in evalvacija . . . 35

5.2 Izbira uˇcne metode . . . 36

5.3 Optimizacija parametrov . . . 37

5.4 Analiza znaˇcilk . . . 38

5.5 AutoML . . . 42

5.6 LSTM . . . 45

6 Rezultati 47 6.1 Rezultati analize anomalij . . . 48

6.2 Rezultati napovednih modelov . . . 49

(10)

KAZALO 6.3 Statistiˇcna analiza . . . 49 6.4 Diskusija o rezultatih . . . 52

7 Zakljuˇcek 53

7.1 Sklepne ugotovitve . . . 53 7.2 Nadaljnje delo . . . 54

(11)

Seznam uporabljenih kratic

kratica angleˇsko slovensko

MP matrix profile matriˇcni profili

BDP gross domestic product bruto domaˇci proizvod SVM support vector machine metoda podpornih vektorjev

ML machine learning strojno uˇcenje

RNN recurrent neural network rekurenˇcne nevronske mreˇze LSTM long short term memory dolgo-kratko roˇcne mreˇze CNN convolutional neural networks konvolucijske nevronske mreˇze MAE mean absolute error povpreˇcna absolutna napaka MAPE mean absolute percentage error povpreˇcna relativna napaka ACF auto-correlation function avtokorelacijska funkcija PACF partial auto-correlation function delno avtokorelacijska funkcija

ReLU rectified linear unit aktivacijska funkcija s popravljeno linearno enoto ROCV rolling origin cross validation drseˇce preˇcno preverjanje

ANN artificial neural network umetne nevronske mreˇze IOT internet of things internet stvari

k-NN k nearest neighbours k najbliˇzjih sosedov

(12)
(13)

Povzetek

Naslov: Napovedovanje porabe elektrike s pomoˇcjo strojnega uˇcenja in ma- triˇcnega profiliranja

Pomemben del v verigi dobavljanja elektriˇcne energije so prodajalci, ki skr- bijo za dobavo elektriˇcne energije konˇcnim uporabnikom. Toˇcne kratkoroˇcne napovedi porabe zmanjˇsajo skrbi o preseˇzkih in primanjkljajih, ki so del nji- hovega vsakdana. V ta namen se uporablja ˇsirok nabor metod za analizo ˇcasovnih vrst (avtokorelacija, dekompozicija, motivi, diskordi) in njihovo na- povedovanje (drevesne metode, globoko uˇcenje, statistiˇcne metode). Pred ne- kaj leti se je pojavila metoda za hiter izraˇcun matriˇcnega profila, ki omogoˇca preprosto zaznavanje motivov in diskordov. Z uporabo matriˇcnih profilov analiziramo podatkovno mnoˇzico (gospodinjski odjem v Mariboru) in prepo- znamo podroˇcja, na katerih je smiselno iskati relevantne znaˇcilke. V naˇsem delu se osredotoˇcimo predvsem na gospodinjski odjem, za katerega smo zgra- dili modele, ki napovedujejo porabo na uro natanˇcno. Primerjamo razliˇcne modele in analiziramo napako glede na razliˇcne nabore znaˇcilk. Najboljˇsi nabor znaˇcilk apliciramo tudi na loˇceno podatkovno mnoˇzico in primerjamo toˇcnost med obema. Predstavimo tudi metodo, ki uporabi matriˇcni profil za generiranje znaˇcilk. Rezultati nakazujejo, da lahko podoben nabor znaˇcilk uporabimo na razliˇcnih podatkovnih mnoˇzicah porabe elektriˇcne energije in priˇcakujemo dobre rezultate.

Kljuˇ cne besede

Napovedovanje porabe elektrike, strojno uˇcenje, regresija, azure, matriˇcno profiliranje

(14)
(15)

Abstract

Title: Energy load forecasting with machine learning and matrix profiling An important part in supplying electricity to residential areas are companies selling them the electricity. Accurate daily forecasts alleviate some of the con- cern related to providing the right amount of electricity without any surplus or shortages. The predictions are made after using a wide array of meth- ods to analyze time series data (autocorrelations, time series decomposition, motifs and discords, etc.) and algorithms to build forecasting models (tree based methods, deep learning, statistical methods, etc.). Recently a method was presented which efficiently calculates the matrix profile of a time series.

Matrix profile enables us simple discovery of motifs and discords. We use matrix profiles to analyse our dataset (residential energy load in Maribor) and recognize the areas from which we should draw our features. We focused on residential energy consumption for which we built models, which fore- cast hourly energy demand. We compare different models and analyse the forecasting accuracy using different features. We apply the most successfull feature set to another data set and compare the forecasting accuracy. We also develop and present a method, that uses matrix profiles to generate features.

The result indicate that we can use a similar set of features, which work well on Maribor dataset, and apply it to another residential consumption dataset and expect similarly good results.

Keywords

Energy load forecasting, machine learning, regression, azure, matrix profiling

(16)
(17)

Poglavje 1 Uvod

Napovedovanje ˇcasovnih vrst predstavlja konkreten izziv na ˇstevilnih po- droˇcjih, ki posredno ali neposredno vplivajo na naˇs vsakdan. Eno izmed njih je tudi poraba elektriˇcne energije. Poveˇcevanje ˇcloveˇske populacije, dvig ˇzivljenjskega standarda, izboljˇsevanje gospodarske situacije in naraˇsˇcajoˇca odvisnost od tehnologije pripomorejo k vedno veˇcji porabi elektriˇcne ener- gije. S tem se poveˇcuje potreba po toˇcnih kratkoroˇcnih napovedih, s katerimi uravnavamo koliˇcino proizvedene energije za nekaj dni v prihodnost, in tudi veˇcletne projekcije za naˇcrtovanje infrastrukture.

V naˇsem delu se sreˇcamo s podatkovno mnoˇzico, ki vsebuje zgodovinske podatke o urni porabi el. energije za rezidenˇcno obmoˇcje. Poleg tega imamo na voljo tudi ocene porabe - na toˇcne podatke se lahko ˇcaka tudi po veˇc tednov. Te ocene smo pridobili od podjetja Energija PLUS [1] Maribor, ki bi mu toˇcne napovedi koristile pri zakupu elektrike za prihodnje dni. S temi pribliˇzki si bomo pomagali pri napovedovanju porabe na mestu, kjer bi bili sicer primorani uporabiti naˇse napovedi. Porabo energije napovedujemo za en dan naprej na urni ravni, saj ˇzelimo ˇcim boljˇse ocene za prihodnje ure in dni. Podjetje, ki kupuje elektriko na trgu, se lahko tako pripravi na nihanja v iznosu energije. Ocene porabe uporabimo na mestu zgodovinskih vrednosti, ki v realnem sistemu tudi ne bi bile nujno na voljo za zadnje obdobje (tedni, meseci).

Pomemben del vsakega napovednega modela so znaˇcilke. Z njimi opisu- jemo abstrakcijo stanj v doloˇcenem trenutku. Izbrati jih ˇzelimo tako, da ˇcim bolje predstavijo problem in zaobjamejo ˇcim veˇc dejavnikov, ki pomembno vplivajo na vrednost naˇse ciljne spremenljivke. V primeru napovedovanja porabe elektriˇcne energije so to lahko vremenski vplivi, navade prebivalstva in njihov socialno-ekonomski status, lokalni prazniki, vpliv industrije itd.

Pripravili bomo ˇsirok nabor znaˇcilk, ki jih bomo skozi analizo Shapleyevih vrednosti [2, 3] ocenili in izmed vseh izbrali le nekaj najvplivnejˇsih. Nauˇcili

1

(18)

2 POGLAVJE 1. UVOD bomo veˇc razliˇcnih modelov XGBoost [4], preizkusili bomo tudi uporabo LSTM-nevronskih mreˇz [5] in AutoML [6].

Matriˇcno profiliranje [7] je metoda, s katero lahko zelo hitro in uˇcinkovito iz ˇcasovnih vrst razberemo tako anomalije kot tudi ponavljajoˇce se vzorce.

Uporabili jo bomo za prepoznavanje anomalij v podatkih, boljˇse razumeva- nje naˇse domene in pri gradnji novih znaˇcilk. V zadnjih letih se matriˇcno profiliranje uspeˇsno uporablja v ˇsirokem naboru domen - od analize glasbe do analize potresov in potresnih obmoˇcij [8, 9, 10]. Pregledali bomo smisel- nost njihove uporabe na podroˇcju kratkoroˇcnega napovedovanja elektriˇcne energije. Razvili bomo tudi metodo, s katero matriˇcne profile uporabimo pri oblikovanju znaˇcilk, s katerimi bi lahko zmanjˇsali napake svojih modelov.

V nadaljevanju bomo pregledali sorodna dela (poglavje 2), predstavili proces pridobitve in ˇciˇsˇcenja podatkov (poglavje 3), opisali matriˇcne pro- file in njihovo uporabo ter raziskali naˇso aplikacijo te metode na problemu kratkoroˇcnega napovedovanja elektriˇcne energije (poglavje 4). V poglavju o metodologiji (poglavje 5) si bomo ogledali naˇs pristop k razvoju napovednih modelov in ocenjevanju njihovih napak, nakar bomo rezultate predstavili (po- glavje 6) in jih primerjali z obstojeˇco literaturo ter predstavili svoje sklepne ugotovitve (poglavje 7).

(19)

Poglavje 2 Sorodno delo

2.1 Napovedovanje porabe elektriˇ cne energije

Napovedovanje porabe elektriˇcne energije po navadi razmejimo na kratkoroˇcno in dolgoroˇcno. Kratkoroˇcno napovedovanje porabe zajema ˇcasovna razdobja do najveˇc dveh tednov [11, 12, 13]. Zanje je znaˇcilno, da so podatkovne toˇcke postavljene v urne intervale. Pri dolgoroˇcnem napovedovanju se iˇsˇcejo napovedi porabe tudi za veˇc let v prihodnost [14]. Dolgoroˇcne napovedi so veˇcinoma uporabljene pri naˇcrtovanju infrastrukture drˇzav ali veˇcjih regij, medtem ko se kratkoroˇcne pogosteje nanaˇsajo na manjˇsa geografska obmoˇcja (mesta, veˇcji industrijski obrati ...).

Pri obeh pristopih so uspeˇsni podobni algoritmi, prilagojeni za posamezne ˇcasovne okvire. Pogoste so razliˇcice nevronskih mreˇz, SVM-jev in regresijskih modelov [15]. Na veˇcjih tekmovanjih se (kot je za ML-tekmovanja znaˇcilno) odliˇcno obnesejo ansambelske metode. Glavne razlike med kratkoroˇcnimi in dolgoroˇcnimi napovedmi so predvsem v znaˇcilkah in poslediˇcno strukturi mo- delov. Pri kratkoroˇcnih napovedih imamo tukaj veliko manevrskega prostora in izbire - vse od podatkov o veˇcjih ˇsportnih dogodkih, ki vplivajo na porabo elektrike, do mnoˇzice vremenskih kazalnikov (temperatura, vlaˇznost, verje- tnost padavin, zraˇcni pritisk ...). Pri dolgoroˇcnih napovedih se na takˇsne podatke veliko teˇzje opremo. Kljuˇcna je tako poraba v preteklosti kot tudi veˇcji, vseobsegajoˇci indeksi in njihove napovedi (npr. BDP).

Xie in sod. [16] poudarijo, da so ˇstevilni ˇclanki in tekmovanja na temo po- rabe in napovedovanja elektriˇcne energije neposredno koristni proizvajalcem in ponudnikom le-te. V svoje modele vkljuˇcijo ˇstevilo strank na zaˇcetku in koncu obdobja, problem pa razdrobijo na napovedovanje po posameznem od- jemalcu in tudi na napovedovanje za izkljuˇcno dolgoroˇcne stranke. Uporabili so preˇzivetveno analizo in regresijske modele, ki so v zadnjih letih pogosto

3

(20)

4 POGLAVJE 2. SORODNO DELO

poudarjeni pri napovedovanju porabe el. energije [17]. Za uspeˇsnega se je izkazal tudi XGBoost [18, 4, 19] - uporaben je pri analizi znaˇcilk kot tudi pri napovedovanju. Aktualnost in relevantnost podroˇcja sta razlog za ˇstevilna lokalna in tudi globalna tekmovanja na temo kratkoroˇcnega in dolgoroˇcnega napovedovanja porabe elektriˇcne energije. Eno izmed bolj prominentnih je GEFcom [20, 11, 21], ki se odvija na vsake 2-3 leta v zadnjem desetletju.

Med naˇsim problemom in problemi, predstavljenimi na tekmovanjih skozi leta, lahko potegnemo ˇstevilne vzporednice, zato si bomo natanˇcneje pogle- dali pristope in metodologije uspeˇsnih tekmovalcev. Tekmovanja se med sabo razlikujejo po granularnosti geografskih obmoˇcij in meteoroloˇskih podatkov, ki so tekmovalcem na voljo. V letu 2012 so npr. imeli vzporedno tudi tekmo- vanje v napovedovanju proizvodnje vetrne energije. Ponekod so bili za testne podatke primorani pripraviti lastne napovedi temperature zraka, medtem ko so v veˇcini primerov imeli te podatke na voljo v vseh fazah tekmovanja.

Uspeˇsne ekipe so pogosto zgradile posamezne modele za posamezna geograf- ska podroˇcja s svojimi posebnimi znaˇcilkami. Veˇcina visoko uvrˇsˇcenih ekip je na nek naˇcin vkljuˇcila uˇcinek praznikov (prazniˇcni dnevi odloˇcno spremenijo obnaˇsanje ljudi in poslediˇcno njihovo porabo elektriˇcne energije). Skoraj vsi so preˇcistili podatke in uporabili ponujene podatke z meteoroloˇskih postaj.

Veˇcina najuspeˇsnejˇsih algoritmov uporabi neko ansambelsko metodo. Nabor uspeˇsnih algoritmov je zelo ˇsirok, saj vsebuje vse od regresijskih modelov in SVM-jev do globokih nevronskih mreˇz.

Pri definiciji uˇcnega problema se je za uspeˇsno izkazalo drobljenje pro- blema na manjˇse podprobleme [22, 11, 21]. Dober primer takˇsnega razbitja je ˇclanek o kratkoroˇcnem napovedovanju porabe [13], kjer predstavijo delitev uˇcnih podatkov na ˇstiri dele (po letnih ˇcasih) in naprej na 24 manjˇsih ko- sov za vsako uro v dnevu. Upoˇstevajo tudi delovnike in vikende, ne pa tudi praznikov. Na voljo so imeli urne podatke za nekoliko veˇc kot ˇstiri leta.

Nevronske mreˇze so v preteklih letih doˇzivele hiter vzpon v priljubljeno- sti in tudi na podroˇcju kratkoroˇcnega napovedovanja ni niˇc drugaˇce. Spe- cifiˇcno, NN so se pokazale kot uspeˇsne pri kratkoroˇcnem napovedovanju rezidenˇcne porabe el. energije. Pogoste so RNN, npr. LSTM nevronske mreˇze [23, 5, 24, 25] in razliˇcne inaˇcice, ki na njih temeljijo (LSTM sequence- to-sequence/S2S) [24, 26]. Njihova glavna prednost je fleksibilnost pri dolˇzini vhodne sekvence (doloˇcen podatek ni na voljo v ˇcasu napovedovanja, lahko pa ga vkljuˇcimo v zgodovino).

Povpreˇcne relativne napake (MAPE) pri napovedovanju kratkoroˇcne po- rabe elektriˇcne energije se v literaturi gibljejo med 1% in 12% [23, 27, 28].

Razlike izhajajo iz razliˇcnih podatkovnih mnoˇzic in njihovih lastnosti, razliˇcne definicije kratkoroˇcne porabe (vse od ene ure do enega tedna) in razliˇcnih metodologij (razliˇcni naˇcini predpriprave podatkov, kodiranja spremenljivk,

(21)

2.1. NAPOVEDOVANJE PORABE ELEKTRI ˇCNE ENERGIJE 5

razliˇcni algoritmi za napovedovanje,...).

(22)

6 POGLAVJE 2. SORODNO DELO

2.2 Matriˇ cni profili

2.2.1 Izraˇ cun matriˇ cnih profilov

Motiv je zaporedje toˇck v ˇcasovni vrsti, ki se v zelo podobni obliki ponovi ˇse na kakˇsnem drugem mestu znotraj iste ˇcasovne vrste. Diskord ali ano- malija so zaporedja toˇck oz. sekvence, ki izstopajo in so od vseh ostalih sekvenc iste dolˇzine zelo daleˇc (mera razdalje je lahko npr. hammingova razdalja, evklidska, manhattan,...). Izraˇcun podobnosti vseh parov sekvenc (podmnoˇzice zaporednih toˇck iz izvirne ˇcasovne vrste) je relativno slabo raz- iskan problem na podroˇcju ˇcasovnih vrst, kot poudarijo avtorji matriˇcnih profilov [7]. Z namenom izboljˇsave ˇcasovne zahtevnosti izraˇcuna predstavijo algoritem STOMP O(n2) in STAMP O(n2log(n)) ter podatkovno strukturo, s katero anotiramo ˇcasovno vrsto - matriˇcni profil. Avtorji poudarijo, da je ˇcasovna zahtevnost izraˇcuna matriˇcnega profila MP z uporabo predlaganega algoritma STOMP enaka ne glede na dolˇzino sekvenc. Uveljavljeni algoritmi za iskanje motivov imajo obˇcutno veˇcje ˇcasovne zahtevnosti - med O(n2) za SAX ali pa DAME vse do MDL s ˇcasovno kompleksnostjo O(n2m2) [29]. Z izraˇcunom matriˇcnega profila pa lahko v ˇcasovni vrsti poleg motivov zaznamo tudi anomalije oz. diskorde. V literaturi se za detekcijo anomalij najprej po- javisjo statistiˇcni pristopi [30], s pomoˇcjo katerih se postavijo meje znotraj katerih padejo normalni vzorci. Sledijo jim metode, ki uporabijo strojno uˇcenje. V literaturi zasledimo vse od algoritmov za grupiranje, npr. K naj- bliˇznjih sosedov (k-NN algoritem) [31] pa do Markovih verig [32] in analize PCA [33]. Zadnja leta sreˇcujemo tudi vedno veˇc pristopov, ki temeljijo na globokem uˇcenju [34, 35, 36]

Veˇcina del, ki se ukvarja z iskanjem motivov, uporabi za izraˇcun motivov evklidsko razdaljo [29]. Tudi STOMP uporabi za izraˇcun MP evklidsko raz- daljo. Na mestu evklidske razdalje lahko uporabimo poljubno mero. Vsaka toˇcka v matriˇcnem profilu predstavlja najmanjˇso evklidsko razdaljo med se- kvenco, ki se zaˇcne na istem mestu v izvorni ˇcasovni vrsti in med vsemi drugimi sekvencami iste dolˇzine. Primer izraˇcuna vrednosti matriˇcnega pro- fila za en vzorec (ki se zaˇcne na prvi toˇcki) je na sliki 2.1, ki smo jo vzeli iz dokumentacije algoritma STUMPY [37] za izraˇcun matriˇcnega profila. Ma- triˇcni profil je zaporedje izraˇcunanih vrednosti (za prvo toˇcko je na sliki 2.1 obkroˇzena z zeleno barvo). Na sliki 2.2 je prikazan izraˇcun matriˇcnega profila vkljuˇcno z vmesnimi koraki za sekvence/vzorce dolˇzine tri.

(23)
(24)
(25)

2.2. MATRI ˇCNI PROFILI 9

spremljanje vitalnih znakov kroniˇcnih bolnikov [41]. Pacienti dobijo na- prave, ki jim redno merijo vitalne znake, kot so krvni tlak, srˇcni utrip ali raven sladkorja v krvi. Cilj raziskave je ˇcim boljˇse razumevanje stanja paci- enta, navkljub preprekam, kot so neredno merjenje, ki ga pacienti izvajajo sami, omejene informacije o nekaterih pacientih ipd. Pokaˇzejo, da se mo- tivi lahko uporabijo za uˇcinkovito odkrivanje signalov, ki kaˇzejo na nevarno stanje pacienta in obveˇsˇcanje zdravstvenega osebja. Poudarijo tudi, da se lahko uporabijo motivi za segmentacijo in zdruˇzevanje pacientov ter tudi napovednih modelov v smiselne skupine.

Bellas in sod. uporabijo matriˇcne profile za razpoznavanje in iskanje uˇcnih primerov za odkrivanje anomalij - vdorov - v raˇcunalniˇske sisteme zdravstvenih ustanov [42]. Njihove metode potrebujejo le ˇcas incidenta in z uporabo diskordov ne polagajo bremena anotacije na izvedence.

Matriˇcni profili so bili uporabljeni tudi v prepoznavanju in lociranju nizko frekvenˇcnih potresov. Izkazali so se tudi v analizi in raziskovanju refrenov v glasbi [43], pri analizi soli [9] in njihove vlaˇznosti. Avtorji matriˇcnih profilov so pokazali tudi uspeˇsnost pri zaznavanju anomalij in motivov pri porabi elektriˇcne energije [7] znotraj hiˇse (poraba hladilnika in toplotne ˇcrpalke) ter tudi v veˇcjih rezidenˇcnih obmoˇcjih.

(26)

10 POGLAVJE 2. SORODNO DELO

(27)

Poglavje 3 Podatki

3.1 Pridobitev podatkov

3.1.1 Maribor

Glavna podatkovna mnoˇzica sestoji iz urnih intervalov porabe elektrike za rezidenˇcno obmoˇcje Maribora med januarjem 2014 in aprilom 2019 (slika 3.1) ter vremenskih podatkov za isto ˇcasovno obdobje. Poraba se giba med 50 in 250 MW ur. V poletnih mesecih je poraba nekoliko niˇzja, v zimskih pa viˇsja.

Velike razlike so tudi znotraj posameznih dni, saj je poraba ponoˇci niˇzja kot tekom dneva. Poleg podatkov porabe imamo komplementarno tudi urne ocene porabe v preteklih ˇcasovnih obdobjih od januarja 2019 do aprila 2019.

Ocene so last podjetja Energija Plus in njihovih napak glede na dejanske vrednosti in tudi postopka pridobitve ne bomo komentirali. Zgodovinske vremenske podatke in tudi vremenske napovedi smo pridobili prek Dark Sky API [44] za obdobje med januarjem 2014 in aprilom 2019. Sami smo za to isto obdobje generirali koledar praznikov, delovnih dni in vikendov za Slovenijo.

Podatke smo razdelili na uˇcno in testno mnoˇzico. Ker imamo na voljo ocene porabe (kot tudi dejanske vrednosti) samo v letu 2019, smo to obdobje izbrali za testno mnoˇzico. Vsi podatki pred zaˇcetkom leta 2019 padejo v uˇcno mnoˇzico, ki jo naprej delimo na validacijski (20%) in uˇcni del (80%).

Ocene porabe bomo uporabili pri generiranju znaˇcilk na testni mnoˇzici.

S tem se pribliˇzamo postopku napovedovanja v produkcijskem okolju, kjer poraba za zadnja obdobja ni vedno na voljo.

11

(28)
(29)
(30)

14 POGLAVJE 3. PODATKI

3.2 Ciˇ ˇ sˇ cenje in analiza podatkov

3.2.1 Ciˇ ˇ sˇ cenje podatkov

Vse mnoˇzice podatkov, s katerimi operiramo, so dobro preˇciˇsˇcene. GEFcom- podatkovna mnoˇzica je bila namenjena tekmovanju, kjer ˇciˇsˇcenje podatkov ni predstavljalo pomembnega izziva in je tako ˇze pripravljena za delo. MB- podatkovna mnoˇzica je tudi zelo ˇcista. Kjer izjemoma manjkajo podatki, jih zapolnimo z interpolacijo prejˇsnje in naslednje vrednosti. Najveˇc dela je bilo z vremenskimi podatki, ki imajo najveˇc razliˇcnih stolpcev in vrednosti. Po- nekod manjkajo posamezne vrednosti, vˇcasih manjkajo vsi podatki za veˇc ur.

Te manjkajoˇce podatke smo zamenjali z vrednostmi v prejˇsnjem ˇcasovnem koraku. ˇZiv sistem operira z napovedmi, pri katerih po naˇsih izkuˇsnjah z DarkSky API vrednosti ne manjkajo.

3.2.2 Dekompozicija ˇ casovne vrste

Da bi bolje razumeli podatkovno mnoˇzico, smo opravili dekompozicijo na tri komponente: sezonsko, trend in preostanek (ˇsum). Pogosti [45] sta aditivna ( 3.1) in multiplikativna ( 3.2) dekompozicija, ki sta lahko zelo uporabni pri npr. izbiri parametrov za ARIMA-algoritme [46].

Y(t) = V rednost+T rend+Sezonskost+P reostanek (3.1) Y(t) = V rednost∗T rend∗Sezonskost∗P reostanek (3.2) Aditivni model je linearen, trend pa je ravna ˇcrta. Linearna sezonskost ima isto amplitudo in frekvenco skozi ˇcas (viˇsina in dolˇzina cikla). Multiplika- tivni model te iste komponente med sabo mnoˇzi, model pa je nelinearen.

Frekvenca in amplituda sezonskosti se spreminjata skozi ˇcas, trend pa je ne- raven. Sezonska komponenta predstavlja vpliv sezon na naˇso ˇcasovno vrsto.

Na sliki smo uporabili multiplikativen model dekompozicije. Podatke smo zdruˇzili na tedensko frekvenco, saj je na dnevni preveˇc toˇck, ki jih je teˇzje analizirati. Treba je omeniti, da s tem izgubimo znotraj tedenski trend, ki je najverjetneje tudi prisoten. V realnih problemih so komponente pogosto kombinacija multiplikativnih in additivnih lastnosti, ta opis pa sluˇzi le kot abstrakcija, da si laˇzje predstavljamo, s kakˇsnimi podatki operiramo in kako jih bomo morali obdelati v prihodnjih fazah svojega dela.

(31)
(32)

16 POGLAVJE 3. PODATKI

Sezonska komponenta je v primeru podatkov porabe za MB odliˇcno vidna na sliki 3.3. Poraba je v hladnih mesecih viˇsja, kar lahko pripiˇsemo gretju.

Sklepamo lahko, da moramo modelu podati informacijo o sezoni - pa naj bo to preprost datum, mesec v letu ali meteoroloˇski podatki. Trend nam omogoˇca, da nekako inkorporiramo to modalnost v svoj sistem napovedovanja - oziroma predloˇzimo modelu dovolj podatkov, da se te komponente nauˇci sam. Kot je razvidno na sliki 3.3, pri naˇsem multiplikativnem modelu trend v prvih dveh letih naraˇsˇca, nato pa z manjˇsimi korekcijami veˇcinoma stagnira.

Pri GEFcom-podatkih je slika 3.4 nekoliko drugaˇcna. Trend naraˇsˇca, nato pada in spet naraˇsˇca. Poleg tega imamo znotraj letno sezonskost, ki je ob zaˇcetku leta visoka, pada proti polovici, nato spet naraste, pade in naraste.

V teh podatkih porabe elektrike je veliko veˇc dinamike kot v mariborskih podatkih.

GEFcom podatki imajo nereden trend v primerjavi z MB, kjer bi lahko rekli da je trend naraˇsˇcajoˇc. Pri slednjih bi na daljˇsi rok lahko razmiˇsljali o prilagajanju podatkov za trend, saj bi lahko skozi daljˇsi ˇcas vplival na toˇcnost napovedi.

3.2.3 Avtokorelacija in delna avtokorelacija

Avtokorelacijo lahko uporabimo za preverbo sezonskosti v podatkih [46].

Predvsem nas zanima vzorec, ki se pojavi na dnevni ravni pri urni resolu- ciji podatkov. Preverimo lahko tudi predpostavke o znotraj letni sezonskosti (poraba energije poleti in pozimi se odloˇcno razlikuje), ki smo jih zaznali ˇze pri dekompoziciji ˇcasovne vrste. Avtokorelacija ACF (Perasonov korelacijski koeficient) lahko zavzame vrednost med -1 in 1 ter predstavlja negativno ozi- roma pozitivno korelacijo. ˇCe ni nobene korelacije, zavzame vrednost 0. Pri ˇcasovni vrsti lahko za posamezno toˇcko izraˇcunamo korelacijo s prejˇsnjimi toˇckami t-1, t-2 ... Izris teh vrednosti imenujemo tudi korelogram. Za po- datke MB lahko vidimo na sliki 3.5, da je avtokorelacija ACF posameznih toˇck zelo moˇcna s toˇckami v ˇcasu t-1, nakar ostro pade, nekoliko naraste pri t-12, potem pa spet enakomerno pade in zraste proti t-24. Povsem isti vzorec se ponovi vsakih 24 ur. Glede na ta graf bi lahko sklepali, da bi bila dovolj znaˇcilka, ki opisuje porabo pred kakˇsnim dnevom, dvema ali tremi in napovedni model bi deloval odliˇcno. ACF ima teˇzavo, da ne vzame v zakup intrinziˇcne korelacije med toˇcko t int-1. Avtokorelacija ˇcasovne vrsteY pri zamiku 1 je enaka koeficientu korelacije medYtinYt-1. Isto velja za korela- cijo medYt-1inYt-2. ˇCe jeYt koreliran zYt-1in jeYt-1koreliran z Yt-2, potem lahko priˇcakujemo tudi korelacijo medYtinYt-2. To intrinziˇcno kore- lacijo oziroma propagacijo koreliranosti odstrani delna avtokorelacija PACF, saj predstavlja razliko korelacije dveh toˇck in njune priˇcakovane propagirane

(33)

3.2. CIˇˇ S ˇCENJE IN ANALIZA PODATKOV 17

korelacije. Tako uporabimo tudi PACF, ki umakne uˇcinek vmesnih korelacij in ga za naˇs podatke vidimo na sliki 3.5. Korelacija je za ˇcas t-1ˇse vedno prisotna, pri nadaljnjih vrednostih pa korelacija vztrajno pada in vidimo, da je ˇze po t-24 praktiˇcno zanemarljiva v primerjavi s korelacijo pri t-1.

Pri GEFcom-podatkovni mnoˇzici so vzorci korelacije na sliki 3.6 podobni, s tem da sta ACF in PACF negativno korelirani pri ˇcasut-12. Signala PACF sta nasploh med sabo podobna in imata pri istih zamikih zelo podobne vre- dnosti. To lahko opazimo tako pri t-3 ali t-4 kot tudi pri t-23, t-24.

Takˇsna opaˇzanja nakazujejo, da bi lahko uporabili podobne znaˇcilke, me- tode in pristope, za gradnjo modelov porabe elektriˇcne energije na razliˇcnih geografskih obmoˇcjih.

(34)
(35)
(36)

20 POGLAVJE 3. PODATKI

3.3 Znaˇ cilke

Iz podatkov o porabi elektriˇcne energije za rezidenˇcni del MB smo generirali ˇsirok nabor znaˇcilk, ki ga kasneje skrˇcimo na najuporabnejˇse. Predvide- vamo, da bi uporaba vseh znaˇcilk samo vnesla ˇsum v naˇs model. Nekatere znaˇcilke vsebujejo originalno vrednost, kot smo jo pridobili iz podatkov (npr.

temperatura ali relativna vlaˇznost zraka ob doloˇceni uri), pri nekaterih smo nad pridobljenimi podatki izvedli razliˇcne transformacije oziroma izraˇcune, da smo ˇse dodatno obogatili uˇcno mnoˇzico (npr. povpreˇcna temperatura v dnevu) [47].

3.3.1 Datumske znaˇ cilke

Najosnovnejˇse znaˇcilke se nanaˇsajo na razliˇcne vrednosti, ki se nanaˇsajo na datum. Pri ˇcasovni vrsti imamo vedno na voljo vsaj neki opis, ki se nanaˇsa na ˇcas in ker ljudje strukturiramo svoje navade okoli razliˇcnih naravnih ciklov, povezanih s ˇcasom, je smiselno uporabiti ˇcim veˇc razliˇcnih naˇcinov, da toˇcko v ˇcasu oziroma ciklu (npr. letni cikel, tedenski cikel, cikel, vezan na letne ˇcase ...) dobro opiˇsemo. Iz datuma in ure smo ustvarili znaˇcilke, ki opisujejo uro, dan in mesec. Opisali smo tako dan v tednu, dan v mesecu in dan v letu kot tudi teden v letu in kvartal. Vse te znaˇcilke opiˇsemo s celimi ˇstevili (npr. 1-7 za dan v tednu).

3.3.2 Znaˇ cilke o porabi

Znaˇcilke, ki opisujejo porabo v preteklih ˇcasovnih obdobij, imajo glede na ko- relograme v podpoglavju 3.2.3 velik potencial. Poraba prejˇsnje ure je visoko korelirana, pozitivno koreliranost pa je mogoˇce zaznati tudi po dveh, treh, 24 urah ali sedmih dneh. Intuitivno bi lahko rekli, da je poraba ob ponedelj- kih podobna porabi ob ostalih ponedeljkih. Ljudje se radi drˇzimo navad in sobote so dan za pranje. ˇCe dovolj velik del populacije najraje pere oblaˇcila za vikend, se bo tudi to poznalo pri porabi. Teˇzava teh znaˇcilk je v tem, da glede na situacijo, v kateri se znajdemo, nimamo vedno na voljo porabe za prejˇsnjo uro, dan, teden ali mesec. Vse je odvisno od naˇcina odˇcitavanja podatkov, infrastrukture, ki nam je na voljo ... Poraba energije za doloˇcen in- dustrijski obrat se lahko npr. odˇcita povsem toˇcno vsakih 10 minut, medtem ko lahko odˇcitavanje in zdruˇzevanje podatkov o porabi elektrike veˇcjih mest, drˇzav ali kontinentov trajajo veˇc mesecev, tudi leta. Ponekod imamo lahko tudi neko vmesno pot - npr. imamo ocene porabe za preteklo uro, dan ... Na toˇcne podatke lahko ˇcakamo tudi mesec dni ali veˇc. Uporaba zgodovinskih

(37)

3.3. ZNA ˇCILKE 21

vrednosti porabe je torej lahko zelo koristna in odloˇcno zniˇza naˇso napako, vendar ni vedno na voljo.

3.3.3 Prazniˇ cni efekt

Uˇcinek praznikov je v literaturi dobro poznan pojav [48, 49], ki ga zaznamo tudi v naˇsih podatkih (veˇc o tem v odseku o analizi anomalij 4.1). Zaradi tega smo pripravili koledarˇcek, ki vsakemu dnevu pripiˇse vrednost 3, ˇce je dan prazniˇcen, 2 ˇce je vikend in 1, ˇce je opisani dan delovnik. Tukaj bi morda bilo smiselno loˇciti med prazniki, ki padejo na dan, ki bi bil drugaˇce deloven in tistimi, ki padejo na vikend. Za to se nismo odloˇcili, vendar smo generirali znaˇcilke, ki opisujejo, ali je bil prejˇsnji dan praznik in tudi, ali je bil kakˇsen dan izmed zadnjih treh prazniˇcen. Tudi tukaj bi lahko na uˇcni mnoˇzici preizkuˇsali razliˇcne razliˇcice znaˇcilk tipa, ali je bil praznik v zadnjih nekaj dneh, lahko bi pripravili znaˇcilko, ki je kombinacija znaˇcilke dan v tednu in praznik itd. Nabor znaˇcilk, s katerimi operiramo, je ˇze tako dovolj velik, tako da se bomo tukaj ustavili z generiranjem znaˇcilk, povezanih s prazniki.

3.3.4 Vremenske znaˇ cilke

Zgodovinske podatke o vremenu smo pridobili za MB-podatke s pomoˇcjo Dar- kSky API. Uporabili smo podatke o temperaturi, pokritosti neba, vlaˇznosti, hitrosti vetra, verjetnosti padavin, intenziteti in tipu padavin ter o pritisku.

Znaˇcilke za vlago, verjetnost padavin in pritisk smo diskretizirali glede na frekvenco pojavitve. Znaˇcilko za vlago smo kot alternativo diskretizirali tudi v pet intervalnih koˇsev.

3.3.5 Min, max in avg

Za nekatere vrednosti znaˇcilk smo izraˇcunali tudi najmanjˇso, najveˇcjo in povpreˇcno vrednost. Ker imajo naˇsi podatki urne vrednosti, smo poraˇcunali min, max in avg na osnovi tekoˇcega dneva. Vsi primeri znotraj enega kole- darskega dneva imajo torej isto vrednost za npr. povpreˇcno temperaturo ali pa najviˇsjo zabeleˇzeno temperaturo. Okno za izraˇcun teh (min, max inavg) vrednosti bi lahko poljubno poveˇcali, lahko bi tudi zgradili znaˇcilko iz razlike med min in max. Hitre spremembe v zraˇcnem pritisku lahko vplivajo tako na navade ljudi kot tudi na padavine, meglo ipd. Razlika med najmanjˇso in najveˇcjo vrednostjo znotraj dveh dni bi takˇsno spremembo lahko dobro opisala. Omenjene spremembe vplivajo na porabo elektriˇcne energije, tako da bi bilo smiselno raziskati tudi uˇcinkovitost teh znaˇcilk. Na tem mestu

(38)
(39)

3.3. ZNA ˇCILKE 23

3.3.7 Vse generirane znaˇ cilke

Vse znaˇcilke, za katere smo opisali proces generiranja v tem poglavju, lahko vidimo v tabeli 3.1.

Znaˇcilka Znaˇcilka Znaˇcilka

hour dayofweek quarter

month pressure humidity

dayofyear dayofmonth weekofyear

temp max temp min cloudCover

wind speed workday precip intensity

temp 3 days since holiday weekend y 1h ago

1 days since holiday 3 days since holiday 1 days since holiday weekend 5 days since holiday 5 days since holiday 5 days since holiday weekend

y 2h ago y 6h ago y 12h ago

y 3d ago y 1w ago tmp change 1 days

tmp change 3 days tmp min 3 days tmp max 7 days tmp min 1 days tmp max 1 days tmp change 3 days tmp max 3 days tmp change 7 days tmp min 7 days

month sin month cos dayofweek sin

y 1d ago dayofweek cos dayofyear cos

hour sin hour cos dayofyear sin

weekofyear sin weekofyear cos dayofmonth sin

dayofmonth cos pressure max 1 days humidity cat

humidiy min 1 days humidity max 1 days pressure min 1 days precipProbability cat pressure cat humidiy bins

Tabela 3.1: Tabela vseh generiranih znaˇcilk

(40)

24 POGLAVJE 3. PODATKI

(41)
(42)

26 POGLAVJE 4. MATRI ˇCNI PROFILI

trike v MB. Samo z metodo ostrega pogleda v naˇsem primeru teˇzko ugoto- vimo kar koli, zato smo si pripravili tabelo 4.1 z dnevi, ki vsebujejo najveˇcje anomalije (top 50).

4.1 Analiza anomalij

Anomalije je treba analizirati do te mere, da lahko za neke vrste z gotovo- stjo trdimo, kaj jih je povzroˇcilo. Natanˇcna analiza teh anomalij nas lahko pripelje do novih spoznanj o naˇsi domeni oziroma mnoˇzici podatkov, kar se lahko z oblikovanjem relevantnih znaˇcilk prelevi v zmanjˇsevanje napovedne napake.

Kot smo omenili zgoraj, vsaka anomalija predstavlja okno 24 ur. Glede na to, da se naˇsi podatki nanaˇsajo na velik del rezidenˇcnega Maribora, predpo- stavimo, da mora biti razlog za anomalijo dovolj pomemben, da ga omenimo v vsaj nekaj ˇcasopisih/novicah. Dogodek, ki je anomalijo povzroˇcil, se je lahko zgodil kakˇsen dan prej (Mariborski Lent ...) ali dan kasneje. Zaradi tega smo pri iskanju razlogov za anomalije vzeli v vpogled tudi dan pred in po anomaliji. Poleg tega smo pri izraˇcunu anomalij umaknili najbliˇzje okno

±24 ur, saj sta si vzorca, ki se zaˇcneta na mestu i in mestu i+1, zelo podobna in najverjetneje predstavljata isto anomalijo oziroma podobnost.

Za vseh 50 primerov smo tako preiskali Googlov arhiv ˇclankov za podroˇcje Maribora za vsake tri relevantne dni.

Iz tabele je razvidno, da lahko veˇcini anomalij pripiˇsemo jasen razlog.

Na izredno porabo ima zelo velik vpliv vreme. V nekaj primerih temu bo- truje izpad elektrike po delih Maribora zaradi neurij. Sneg v mesecih, ko ga navadno ne priˇcakujemo, je tudi dober kazalnik za potencialno anomalijo.

Ekstremni vremenski pojavi tako (po priˇcakovanjih) ekstremno vplivajo na porabo elektrike. Sklepamo lahko, da vremenski pojavi odloˇcno vplivajo na porabo tudi v bolj povpreˇcnih dnevih. ˇCe deˇzuje, se veˇcina ljudi zadrˇzuje v hiˇsah, ob lepem vremenu pa raje zapustijo stanovanja, kamor se vrnejo ˇsele proti veˇceru (ko je lahko spet vidna poveˇcana poraba). Skladno z obstojeˇco literaturo in naˇsimi ugotovitvami smo se odloˇcili med svoje znaˇcilke vkljuˇciti meteoroloˇske podatke. Prazniki tudi pomembno vplivajo na porabo elektrike in spremenijo povpreˇcno obnaˇsanje prebivalcev MB. Kar 19/50 anomalij je povezanih z nekim praznikom. Zaradi tega smo si pripravili koledarˇcek, ki doloˇcen dan oznaˇci kot delovnik oziroma vikend, ima pa lahko tudi dodatno oznako, ki pomeni, da je dan prazniˇcen.

Med anomalijami se pogosto pojavijo tudi ˇsportni dogodki. Maribor ima dolgo tradicijo nogometa in njihovo rivalstvo z Olimpijo je veˇc kot enkrat

(43)

4.1. ANALIZA ANOMALIJ 27

Datum Tip dneva Opis Razlog

2/2/2014 vikend nedelja vreme

2/3/2014 delovnik ponedeljek vreme

2/28/2014 delovnik petek nogomet

3/28/2014 delovnik petek 4/13/2014 vikend nedelja

5/2/2014 praznik praznik dela praznik

5/6/2014 delovnik torek praznik

5/10/2014 vikend sobota nogomet

5/18/2014 vikend nedelja nogomet

11/1/2014 praznik dan spomina na mrtve praznik 6/22/2015 delovnik ponedeljek

7/7/2015 delovnik torek vreme

9/24/2015 delovnik ˇcetrtek nogomet

3/26/2016 vikend sobota vreme

3/27/2016 vikend nedelja vreme

4/29/2016 delovnik petek vreme

5/1/2016 praznik praznik dela praznik

5/2/2016 praznik praznik dela praznik

8/14/2016 vikend nedelja vreme

10/30/2016 vikend nedelja praznik

12/24/2016 vikend sobota praznik

1/1/2017 praznik Novo leto praznik

2/23/2017 delovnik ˇcetrtek praznik

3/26/2017 vikend nedelja

5/2/2017 praznik praznik dela praznik

5/5/2017 delovnik petek praznik

8/5/2017 vikend sobota

8/9/2017 delovnik sreda vreme

9/15/2017 delovnik petek koˇsarka eu

9/18/2017 delovnik ponedeljek koˇsarka eu

10/21/2017 vikend sobota praznik

10/28/2017 vikend sobota praznik

12/31/2017 vikend nedelja praznik

2/25/2018 vikend nedelja vreme

3/16/2018 delovnik petek 3/25/2018 vikend nedelja 3/29/2018 delovnik ˇcetrtek 3/31/2018 vikend sobota

4/2/2018 praznik velikonoˇcni ponedeljek praznik 4/6/2018 delovnik petek

4/27/2018 praznik dan upora proti okupatorju praznik 6/24/2018 vikend nedelja

8/10/2018 delovnik petek

12/24/2018 delovnik ponedeljek praznik

12/31/2018 delovnik ponedeljek praznik

2/8/2019 praznik Preˇsernov dan praznik 2/15/2019 delovnik petek

2/17/2019 vikend nedelja 2/22/2019 delovnik petek 2/27/2019 delovnik sreda

Tabela 4.1: Tabela zaznanih anomalij

(44)

28 POGLAVJE 4. MATRI ˇCNI PROFILI

botrovalo atipiˇcni porabi elektriˇcne energije. Zaradi tega smo pridobili po- datkovno mnoˇzico nogometnih tekem Maribora [51]. Ta del podatkov je pomanjkljiv, saj so podatki na voljo samo do zaˇcetka leta 2018. Veliko teˇzje je tudi predvideti, kdaj se bodo tekme odvijale oziroma ali bodo morda od- padle. Teˇzko je tudi oznaˇciti, katere tekmo bodo zelo pomembne in bi lahko vplivale na porabo. Zaradi nepraktiˇcnosti vkljuˇcitve teh znaˇcilk v potenci- alni ˇzivi sistem smo se odloˇcili, da jih iz zadnjega kroga analize izloˇcimo. V MB se vsakoletno odvijajo tudi prireditve, ki bi lahko potencialno vplivale na porabo el. energije, ampak jih med najveˇcjimi anomalijami nismo zaznali (npr. Lent) in jih zaradi tega nismo niti poskuˇsali vkljuˇciti v svoj model. Za te podatke bi tudi najteˇzje naˇsli zanesljive vire. Najprej bi bilo teˇzavno pri- dobiti zgodovinske podatke (npr. Napovednik [52], spletni portal z naborom prireditev po Sloveniji, teh podatkov ne posreduje). Izziv predstavljata tudi anotacija in pripis pomembnosti dogodka glede na njegov potencialni vpliv na porabo elektrike (dogodke bi bilo smiselno grupirati v neke sploˇsnejˇse skupine kulturno-informativnih dogodkov).

Anomalije, ki izvirajo iz ˇsportnih dogodkov ali veˇcjih prireditev, smo iz napovednih modelov izkljuˇcili. Po definiciji ekstremno izstopajo iz povpreˇcja in modeliranje takˇsnih vrednosti ni nujno smiselno. Naˇse znaˇcilke pogosto ne vsebujejo informacije, ki bi lahko pomagala anotirati razloge za nastanek anomalije (npr. pomembnih nogometnih tekem) in naˇse napovedi bodo na takˇsne dni nekoliko slabˇse. Tako se vsaj ne bomo uˇcili iz primerov, za katere vemo, da jih ne znamo modelirati.

4.2 Generiranje dvostopenjskega MP-modela

Kot smo pokazali v prejˇsnjem poglavju, so matriˇcni profili lahko uporabni pri razumevanju podroˇcja, na katerem uˇcimo model in poslediˇcno pri izbiri znaˇcilk. V tem odseku predstavimo metodo za generiranje znaˇcilk s pomoˇcjo MP. Na temo generiranja znaˇcilk s pomoˇcjo matriˇcnih profilov nismo naˇsli veliko literature. Nekoliko bolje je raziskano napovedovanje ˇcasovnih vrst s pomoˇcjo uporabe motivov.

Jiang in sod. [53] so uporabili motive pri napovedovanju gibanja cen del- nic. Po tem, ko so s pomoˇcjo k-NN-algoritma naˇsli motive, so poskuˇsali prepoznati vzorce, ki jim sledijo, in s tem napovedovati cene delnic. Truong in sod. so uporabili motive v kombinaciji z umetnimi nevronskimi mreˇzami ANN [54]. Iz ˇcasovne vrste poiˇsˇcejo najpogostejˇsi motiv in ga razdelijo na zaˇcetni in konˇcni del. ˇCe se zaˇcetni del pojavi pri napovedovanju, uporabijo konˇcni del za generiranje napovedi. V nasprotnem primeru napovedi napravi ANN. Za iskanje motivov so uporabili algoritem MK [55], ki deluje zelo poˇcasi

(45)

4.3. IZRA ˇCUN MP-ZNA ˇCILKE 29

na veˇcjih podatkovnih mnoˇzicah, kot avtorji ˇclankov tudi veˇckrat poudarijo [56, 54]. S ˇcasovnimi vrstami se to zgodi zelo hitro, saj nas obdaja vedno veˇc IOT-naprav, ki stalno merijo vse v naˇsi okolici, od temperature zraka do bitja naˇsega srca. ˇCasovna zahtevnost iskanja vseh podobnih parov sekvenc iste dolˇzine (TSAPSS/all pairs similarity search) pred pojavom matriˇcnih profi- lov je pomemben razlog za relativno slabo raziskanost oz. poˇcasen napredek na tem podroˇcju [7].

Matriˇcni profil je sestavljen iz dveh delov. Prvi del (ki ga vidimo na veˇcini slik v literaturi) je profil razdalj. Drugi del so indeksi iz originalne ˇcasovne vrste, ki nakazujejo zaˇcetek sekvence, iz katere se je profil razdalj preraˇcunal.

Povedano drugaˇce, za vsako toˇcko (in sekvenco toˇck, ki ji pripada) v MP vemo, kateri sekvenci iz originalne ˇcasovne vrste je najbolj podobna. Kot smo ˇze omenili, smo za dolˇzino sekvence izbrali 24.

MP najdejo podobne vzorce s pomoˇcjo izraˇcuna evklidske razdalje med vsemi kombinacijami sekvenc. Evklidska razdalja je najbolj pogosta mera pri iskanju motivov [29], kar je verjetno razlog, da so se je posluˇzili tudi avtorji MP. Podobne sekvence imajo na istih mestih podobne vrednosti, na istoleˇznih mestih naraˇsˇcajo in padajo. Prvi vrednosti podobnih sekvenc sta si pogosto zelo podobni. Enako velja tudi za n-ti vrednosti v sekvenci. Od tukaj izhaja ideja, da ˇce bi pribliˇzno lahko ocenili, kakˇsna bo poraba za nasle- dnjo uro, dan ali teden, bi lahko naˇsli podobne motive znotraj zgodovinskih podatkov. Podobne sekvence se verjetno zgodijo ob podobnih pogojih - in za majhne razlike so lahko odgovorne stvari, kot je manjˇsa razlika v temperaturi ali zraˇcnem pritisku. Od tukaj izhaja motivacija za vkljuˇcitev znaˇcilke oz.

znaˇcilk, ki dodajo v uˇcno mnoˇzico podatek o porabi elektriˇcne energije pri podobnih vzorcih. Model bi lahko zaradi tega morda bolje posploˇseval ali pa bil manj obˇcutljiv na spremembe manj pomembnih vplivov. Preprost naˇcin za vkljuˇcitev porabe podobnih vzorcev med znaˇcilke, ki ga predstavimo v tem delu, je opisan z algoritmom 1.

4.3 Izraˇ cun MP-znaˇ cilke

Izraˇcun MP-znaˇcilke predstavimo na preprostem primeru na sliki 4.2 za vrednost 5 v ˇcasovni vrsti na indeksu 3. Vzorec, ki se zaˇcne s to toˇcko, imenujemo toˇcka/vzorec A. Dolˇzina vzorca je 3. Matriˇcni profil imamo ˇze preraˇcunan (druga ˇcasovna vrsta na sliki 4.2). Najprej vzamemo prvi vzorec iz originalne ˇcasovne vrste, v katerem je naˇsa zaˇcetna vrednost - toˇcka A.

Ta vzorec poimenujemo B [3,4,5]. Vzorec, ki je vzorcu B najbolj podoben, se zaˇcne na indeksu, ki ga lahko preberemo iz matriˇcnega profila - indeks 0. Vzorec, ki se zaˇcne na indeksu 0 v originalni ˇcasovni vrsti, je vzorec B1

(46)

30 POGLAVJE 4. MATRI ˇCNI PROFILI

[3,3,4]. B1 je najbliˇzje vzorcu B izmed vseh vzorcev dolˇzine 3 iz originalne ˇcasovne vrste. Toˇcka A je v vzorcu B na zadnjem mestu, zato si shranimo vrednost, ki je na zadnjem mestu v vzorcu B1. Ta vrednost je 4. Ta posto- pek ponovimo za vse vzorce, v katerih se nahaja toˇcka A. Nad shranjenimi vrednostmi lahko opravimo poljubne transformacije in agregacije, tako da iz njih dobimo eno samo vrednost, ki jo lahko uporabimo kot znaˇcilko. V opisanem primeru smo uporabili povpreˇcje. Ta postopek imenujemo tudi generiranje MP-znaˇcilk. Znaˇcilko izraˇcunamo na tovrsten naˇcin zato, da do- bimo sekvenco vrednosti, ki so v podobnih vzorcih. Vrednosti porabe energije med podobnimi vzorci so si podobne. Vsako toˇcko (uro) v dnevu opiˇsemo z veˇc znaˇcilkami, ki bi naj dobro opisale njegove karakteristike (temperatura, praznik,...). S tem, ko vzamemo informacijo o porabi iz podobnega vzorca dodamo v model dodatno informacijo o porabi, ki se je zgodila pri (najverje- tneje) podobnih pogojih. Ker se posamezna toˇcka nahaja v veˇcih podobnih vzorcih dobimo veˇc podobnih vrednosti. V model bi jih lahko dodali na veˇc razliˇcnih naˇcinov. Mi smo se odloˇcili za njihovo povpreˇcje, saj bi s tem lahko dobro posploˇsili vrednost porabe v podobnih vzorcih. Na tej toˇcki je veliko razliˇcnih moˇznosti agregacije in obdelave podobnih vrednosti, ki jih bomo omenili v sledeˇcih poglavjih.

(47)
(48)

32 POGLAVJE 4. MATRI ˇCNI PROFILI

Algorithm 1 Psevdokoda generiranja MP znaˇcilk

1: izraˇcunamo matriˇcni profilmpza ˇcasovno vrstots 2: repeat

3: vzamemo toˇckomT1 v ˇcasu T1 (njena vrednost je razdaljamL1) in pripadajoˇce oknomT W1

4: poiˇcemo pripadajoˇco toˇcko v ˇcasuT2 in oknoT W2 v ˇcasovni vrstits 5: repeat

6: shranimo vrednost priT2 v seznam vrednosti 2DlistzaT1 7: untilobdelamo vse pare toˇck vT W2 inmT W1

8: untilpregledamo vse toˇcke vmp

9: povpreˇcimo posamezne sezname v 2Dlistda dobimo seznam vrednostiZmp 10: Zmpvsebuje posamezne vrednosti znaˇcilke MP

Tako pripravljeno znaˇcilko lahko brez teˇzav vkljuˇcimo k preostalim znaˇcilkam v ˇcasu uˇcenja modela, vendar tega ne moremo storiti pri napovedovanju s tem istim modelom. MP se namreˇc zgradi iz ˇcasovne vrste, ki je za prihodnost ne poznamo, lahko pa jo skuˇsamo oceniti.

4.4 Uporaba MP znaˇ cilke pri napovedovanju

Postopek, ki sledi, je zelo podoben ansambelskim modelom, ki izhod iz prvega modela (ali veˇc modelov) uporabijo kot vhod v drugega (oziroma kot enega izmed vhodov). Takˇsni postopki so zelo pogosti na razliˇcnih tekmovanjih (npr. Kaggle), zasledimo jih tudi v znanstveni literaturi [28, 57]. V svojem primeru dodamo vmesni korak, s katerim nad izhodom iz prvega modela izraˇcunamo matriˇcni profil.

Najprej nauˇcimo osnovni model brez MP znaˇcilke. S tem modelom na- povemo porabo elektrike poljubno daleˇc v prihodnost. Idealno je, da je tak model ˇcim bolj natanˇcen (vzamemo si ˇcas za njegov razvoj - v naˇsem primeru model 6.2). Njegove napovedi namreˇc prilepimo k originalni ˇcasovni vrsti (s katero smo osnovni model 6.2 uˇcili). Na novi ˇcasovni vrsti (ki sestoji iz zgo- dovinskih podatkov in napovedi) ponovno zgradimo matriˇcni profil (oz. ga inkrementalno posodabljamo) in ponovimo originalni postopek sestavljanja seznamov in njihovega povpreˇcenja, kot je razvidno v algoritmu 1. Te pov- preˇcne vrednosti lahko vkljuˇcimo v testno mnoˇzico in uporabimo nov model, ki je bil nauˇcen na povpreˇcenih vrednostih iz MP-seznamov, da napovemo porabo elektriˇcne energije za poljubno ˇcasovno obdobje. Ta postopek ite- rativno ponavljamo poljubno daleˇc v prihodnost. V praksi smo omejeni z izbranimi znaˇcilkami - v naˇsem primeru imamo med drugim vremenske na- povedi (padavine, temperatura, vlaga,...) za najveˇc 14 dni, tako da dlje od tega ne moremo napovedovati porabe.

(49)

4.4. UPORABA MP ZNA ˇCILKE PRI NAPOVEDOVANJU 33

V prvi fazi uˇcenja modela, ki vsebuje MP-znaˇcilko, torej uporabimo Al- goritem 1 na originalni ˇcasovni vrsti. V fazi napovedovanja uporabimo ta isti algoritem na kombinaciji pravih vrednosti in napovedih osnovnega mo- dela. Rezultat so MP-znaˇcilke, ki jih lahko uporabimo za napovedovanje z MP-modelom.

Delo bi si lahko olajˇsali tako, da bi osnovni model napovedoval za veˇc korakov v prihodnost (npr. 24). S tem bi zmanjˇsali ˇstevilo iteracij, ki jih potrebujemo za gradnjo napovedi. MP-model bi ˇse vedno napovedoval samo za en korak v prihodnost, saj ˇzelimo izkoristiti korelacijo med dvema zapore- dnima vrednostma. MP znaˇcilka namreˇc opisuje stanje za eno toˇcko v ˇcasu in gotovo ne nosi dovolj informacije, da bi izboljˇsala model, ki dela dnevne napovedi za npr. teden dni v prihodnost.

(50)

34 POGLAVJE 4. MATRI ˇCNI PROFILI

(51)

Poglavje 5

Testna metodologija

5.1 Testiranje in evalvacija

5.1.1 Problematika zgodovinskih podatkov

Naˇsa podatkovna mnoˇzica vsebuje poleg podatkov o porabi elektriˇcne ener- gije tudi ocene porabe, ki se pridobijo relativno hitro - najveˇc z zamudo kakˇsnega dne. Pri testiranju smo te ocene uporabili namesto pravih podat- kov. Na realnem primeru napovedi za prihodnji dan ne morejo temeljiti na toˇcnih podatkih prejˇsnjega dne, saj dobimo podatke o dejanski porabi tudi z zamudo meseca dni ali veˇc. Pri napovedovanju moramo tako uporabiti za zadnji mesec ali dva pribliˇzne ocene porabe. V tem delu smo napovedali za tri mesece dnevne porabe v letu 2019, katerih znaˇcilke so med drugim sestavljene iz ocen pretekle porabe na mestu, kjer se je model uˇcil iz de- janskih podatkov. Na ta naˇcin simuliramo vsakodnevni delovni proces in se pribliˇzamo napovednim napakam, kot jih lahko priˇcakujemo v ˇzivem sistemu.

V praksi je tako smiselno modele ponovno uˇciti le, ko dobimo toˇcne podatke o porabi elektriˇcne energije. V primerjavi z dolˇzino uˇcnih podatkov je testna mnoˇzica MB-podatkov nekoliko premajhna.

5.1.2 Izbira ocenjevalne funkcije

Kriterijska funkcija, ki jo uporabljamo pri gradnji modelov je MAE 5.1. Po- raba elektriˇcne energije na obmoˇcju Maribora je namreˇc cikliˇcna in ponoˇci je poraba konkretno niˇzja kot tekom dneva. In napaka 1% podnevi pomeni veliko veˇcjo absolutno napako kot ponoˇci. Podjetju, ki kupuje elektriko, ne bo pomembno, ali je relativna napaka niˇzja na raˇcun noˇcnih ur, ko je po- raba tako ali tako manjˇsa, Glavno, da je skupna absolutna vrednost napak tem niˇzja. Zaradi tega ne ˇzelimo uporabiti kriterijske funkcije, ki bi merila

35

(52)

36 POGLAVJE 5. TESTNA METODOLOGIJA

relativno napako (npr. MAPE) in potencialno izboljˇsala napovedi ponoˇci na raˇcun dneva. Navkljub temu uporabimo MAPE 5.2 pri konˇcni oceni napo- vedne napake na testni mnoˇzici, saj ˇzelimo primerjati uspeˇsnost napovedi na MB-mnoˇzici podatkov z napovedmi na podatkihGEFcom. Tukaj ne bi bilo smiselno primerjati MAE, ker je poraba zabeleˇzena v mnoˇzici GEFcom veliko viˇsja kot tista v MB-podatkih. Znotraj domene tako uporabimo MAE, med domenami pa MAPE.

M AE(y,y) =ˆ 1 n

n

X

t=1

|yt−yˆt| (5.1)

M AP E(y,y) =ˆ 100 n

n

X

t=1

|yt−yˆt

yt | (5.2)

5.2 Izbira uˇ cne metode

Gradient boosting metode [58] se zadnja leta odliˇcno obnesejo na ˇstevilnih podroˇcjih in napovedovanje ˇcasovnih vrst ni nobena izjema [59, 60, 61]. Gre za ansambelsko metodo, ki uporablja odloˇcitvena drevesa, da zgradi napo- vedni model. Na voljo imamo veˇc implementacij [62, 63, 4], vsaka s svojimi prednostmi in slabostmi. V Pythonu je pogosta uporaba implementacije XGBoost [4]. Na voljo ima veliko razliˇcnih parametrov. Spreminjali in prila- gajali smo naslednjih sedem, opisanih v tabeli 5.1. Drugi parametri obdrˇzijo svoje privzete vrednosti.

Parameter Opis

learning_rate padec koraka pri uˇcenju n_estimators ˇstevilo dreves

max_depth najveˇcja globina drevesa

min_child_weight najmanjˇsa vsota uteˇzi v potomcu, da se deljenje nadaljuje subsample deleˇz podatkov, ki se nakljuˇcno izbere v vsaki boosting iteraciji

gamma najmanjˇsa izboljˇsava, pri kateri ˇse nadaljujemo z gradnjo listov drevesa colsample_bytree deleˇz stolpcev v vsakem drevesu

Tabela 5.1: XGBoost-parametri, ki jih spreminjamo (optimiziramo)

(53)

5.3. OPTIMIZACIJA PARAMETROV 37

5.3 Optimizacija parametrov

Izbira parametrov je vedno ˇcasovno zamuden proces. Olajˇsamo ga z uporabo razliˇcnih knjiˇznic, kot je Hyperopt [64], ki uporablja Bayesovsko optimizacijo za iskanje minimuma [65]. Vso parametrizacijo svojih modelov smo opravili samodejno. Za XGBoost smo optimizirali parametre v tabeli 5.2.

Parameter Razpon

learning_rate [0.025, 0.5]

n_estimators [500, 4000]

max_depth [1, 15]

min_child_weight [1, 9]

subsample [0.3, 1]

gamma [0.4, 1]

colsample_bytree [0.3, 1]

Tabela 5.2: Obmoˇcje optimizacije XGBoost-parametrov

Pri optimizaciji smo uporabili merilo MAE. Ocenjevalna funkcija je sesta- vljena iz povpreˇcja dveh rezultatov (dodaten boj proti prekomernemu pri- leganju). Prvega pridobimo tako, da vzamemo za validacijsko mnoˇzico ob uˇcenju 20% uˇcnih podatkov. Drugi je podmnoˇzica prvega, kjer od uˇcne mnoˇzice vzamemo ˇse 15% za validacijo in uˇcimo drug model na preostanku.

Konˇcna ocena parametrov je nato povpreˇcje ocen teh dveh mnoˇzic. Zaradi ˇsirine prostora, ki ga ˇzelimo preiskati (sedem parametrov z velikim razpo- nom), smo vedno pognali med 50 in 100 iteracij Hyperopta, kar traja od 3 do 5 ur (odvisno od ˇstevila znaˇcilk).

(54)

38 POGLAVJE 5. TESTNA METODOLOGIJA

5.4 Analiza znaˇ cilk

Po vzgledu predhodnih del o interpretativnosti modelov [3, 66, 67, 68] sta Lundberg in Lee razvila metodo SHAP (SHapley Additive exPlanations) [2]

kot enoten in celovit pristop k razumevanju znaˇcilk. V praksi jih lahko upo- rabimo pri izbiri znaˇcilk, saj lahko jasno vidimo, koliko posamezni atribut prispeva k napovedi. Uporabili smo knjiˇznico Python shap [69], ki podpira analizo XGBoost, LightGMB [62], CatBoost [63], scikit-learn in pyspark dre- vesnih modelov.

Vrednost SHAP predstavlja prispevek posamezne znaˇcilke k razliki med priˇcakovano vrednostjo in napovedano vrednostjo modela. ˇCe imamo npr.

priˇcakovano vrednost 15, SHAP-vrednost neke znaˇcilke pa je 3, se poveˇca napoved modela zaradi te znaˇcilke za 3, torej na 18. Ko seˇstejemo vse vre- dnosti SHAP-znaˇcilk za posamezen uˇcni primer, dobimo napovedno vrednost modela.

Za najpreprostejˇsi pregled vpliva posameznih znaˇcilk nam avtorji knjiˇznice predlagajo vizualizacijo, ki jo poimenujejo summary plot. Primer te vizua- lizacije lahko vidimo na 5.1. Graf ima na Y-osi imena znaˇcilk, na X-osi pa SHAP-vrednosti. Za vsako znaˇcilko so izrisane SHAP-vrednosti za vse uˇcne primere. Barva posamezne toˇcke (primera) predstavlja vrednost znaˇcilke. ˇCe imamo npr. znaˇcilko, ki predstavlja temperaturo, bi bila vrednost za 45C pobarvana z rdeˇco barvo, 5C pa z modro. Uporabna vizualizacija je tudi na sliki 5.2, kjer lahko vidimo povpreˇcno SHAP-vrednost po posameznih znaˇcilkah. Tretji prikaz, ki smo ga uporabili pri analizi vpliva znaˇcilk, so avtorji poimenovali force plot 5.3. Na njem vidimo vse znaˇcilke in njihove SHAP-vplive za posamezni uˇcni primer.

Po optimizaciji parametrov celotnega nabora znaˇcilk smo si tako ogledali njihove SHAP-vrednosti. Za ta model ne priˇcakujemo, da bo deloval dobro, saj je prisotnega ogromno ˇsuma zaradi ˇstevilnih razliˇcnih znaˇcilk, ki so po- tencialno povsem neuporabne. Uporabili smo tako izvorne vrednosti kot tudi njihove transformacije (npr. sin/cos). ˇZelimo dobiti le obˇcutek za znaˇcilke in njihove potencialne vplive na konˇcni model. Najprej smo si ogledali vizu- alizaciji tipa slika 5.1 in 5.2.

Najvplivnejˇse znaˇcilke glede na njihove SHAP-vrednosti so tipa poraba pred x-ˇcasom y_xTime_ago. Pogosto prevladajo nad npr. meteoroloˇskimi znaˇcilkami - kar je tudi smiselno, saj je pretekla vrednost med drugim po- sledica vremenskih vplivov. Na to je nakazovala ˇze analiza ACF in PACF.

Po prvotni analizi smo nekoliko zmanjˇsali svojo mnoˇzico znaˇcilk in upora- bili samo osnovne vrednosti ali pa samo njihove transformacije (po koˇsih, sin/cos ...). Iterativno smo optimizirali parametre, gradili modele ter pre- gledovali vplive znaˇcilk in napake napovedi na validacijski mnoˇzici. Znaˇcilke

(55)
(56)
(57)

5.4. ANALIZA ZNA ˇCILK 41

Ime znaˇcilke Opis

y_1d_ago poraba pred enim dnevom y_3d_ago poraba pred tremi dnevi y_1w_ago poraba pred enim tednom hour_sin sinus transformacija ure v dnevu hour_cos kosinus transformacija ure v dnevu

temp temperatura

temp_min najniˇzja dnevna temperatura temp_max najviˇsja dnevna temperatura dayofweek dan v tednu

dayofyear dan v letu

month mesec

Tabela 5.4: Osnovni model GEFcom-znaˇcilke

(58)

42 POGLAVJE 5. TESTNA METODOLOGIJA

5.5 AutoML

Velik del razvoja je potekal na oblaˇcnih reˇsitvah Azure. To nam omogoˇca, da hitreje uˇcimo modele in celoten proces od optimizacije parametrov do na- povedi na testni mnoˇzici skrajˇsamo za veˇc ur v vsaki iteraciji. Azure ponuja reˇsitev AutoML [6], ki omogoˇca gradnjo modelov tako rekoˇc brez kakrˇsnega koli predznanja. Vse, kar potrebujemo, je preˇciˇsˇcena ˇcasovna vrsta brez manjkajoˇcih vrednosti. Celoten proces od analize podatkov, optimizacije pa- rametrov in izbire znaˇcilk vse do gradnje modela in analize napovedi napake je ˇcasovno zelo zahteven, zato bomo primerjali napake svojih modelov z naj- boljˇsimi rezultati, doseˇzenimi na AutoML-platformi. ˇCe je konˇcna napaka primerljiva z napako, ki jo doseˇzejo naˇsi modeli, bi lahko uporabili AutoML tudi v produkcijskih okoljih. To je seveda zelo odvisno od posameznih zahtev projekta (zahteva po doloˇceni napovedni napaki, pogostost ponovnega uˇcenja modela ...). Predpogoj za uporabo AutoML je, da ima vhodna mnoˇzica po- datke na vseh toˇckah ˇcasovne vrste in konstantno frekvenco. Za validacijo pri napovedovanju ˇcasovnih vrst uporablja AutoML t.i. Rolling Origin Cross Validation ROCV [70], ki je prikazan na sliki 5.4. Modra barva predstavlja uˇcno mnoˇzico, oranˇzna pa validacijsko. Na tem primeru vidimo 10-kratno preˇcno preverjanje. Kot parameter lahko podamo ˇstevilo preˇcnih preverjanj.

Poleg vrednosti naˇse ˇcasovne vrste lahko vkljuˇcimo svoje znaˇcilke, lahko pa prepustimo generiranje znaˇcilk AutoML-algoritmu, kar smo tudi storili, a se v njihove vrednosti tukaj ne bomo poglabljali, saj nas zanima le konˇcna napaka modela, ki jo lahko doseˇzemo s ˇcim manj ˇcloveˇskega vloˇzka.

(59)
(60)

44 POGLAVJE 5. TESTNA METODOLOGIJA

kot optimizacijsko funkcijo uporabili normaliziran MAE (AutoML-parameter primary_metric- MAE, ki je normaliziran glede na razpon podatkov). ˇZeleli smo uporabiti MAE - enako kot pri drugih modelih v tem delu, ampak te moˇznosti nismo imeli na voljo. Izbirati smo morali med naborom vnaprej definiranih metrik in normaliziran MAE je najbliˇzji MAE. Proti koncu vna- prej doloˇcenega ˇcasa, ki ga ima AutoML na voljo, se iz najboljˇsih modelov ustvarita tudi voting in stacking ansambla.

(61)
(62)

46 POGLAVJE 5. TESTNA METODOLOGIJA

F(x) = M ax(0, y) (5.3)

Topologija naˇse najuspeˇsnejˇse nevronske mreˇze je relativno preprosta (Slika 5.5). V Kerasu definiramo sekvenˇcni model z vhodno plastjo, tremi LSTM-plastmi (z globino 128, 64 in 32) in izhodno plastjo Dense. V primeru prevelikega prileganja uˇcnim podatkom bi lahko uporabili plasti Dropout.

To je regularizacijska metoda, ki v uˇcenje vnese ˇsum tako, da spusti na- kljuˇcne povezave - prepreˇci aktivacije in posodobitve uteˇzi. Tako uˇcinkovito prepreˇcimo preveliko prileganje uˇcnim podatkom [77], ˇce imamo s tem teˇzavo.

Vsi MB-podatki pred zaˇcetkom leta 2019 padejo v uˇcno mnoˇzico, ki jo naprej delimo na validacijski (20%) in uˇcni del (80%). Prvi trije meseci v letu 2019 so testna mnoˇzica.

(63)

Poglavje 6 Rezultati

Veˇcino rezultatov smo pridobili na oblaku Azure. Izraˇcuni so potekali na 128 GB RAM in 16-jedrnem CPU. Del eksperimentov smo opravili na Intel i7 (7700), grafiˇcni kartici GeForce GTX 1060/6 GB in 16 GB RAM.

Kot smo podrobneje zapisali ˇze v petem poglavju, napovedujemo porabo elektriˇcne energije na podatkovni mnoˇzici rezidenˇcne porabe dela Maribora in na GEFcom-podatkih s tekmovanja v napovedovanju porabe elektrike.

Na MB-podatkih smo zgradili matriˇcni profil in iskali anomalije, s pomoˇcjo katerih bi lahko prepoznali nova podroˇcja, od koder lahko vkljuˇcimo atri- bute (poleg podatkov o porabi). Na temelju analize anomalij in preteklih del na podroˇcju napovedovanja elektriˇcne energije smo pripravili zaˇcetni na- bor znaˇcilk, ki smo ga s pomoˇcjo analize vrednosti SHAP-ley konkretno zmanjˇsali. Cim bolj podoben nabor znaˇˇ cilk smo nato uporabili tudi na GEFcom-podatkih.

Na podatkih rezidenˇcne porabe za Maribor smo napovedali porabo za prve tri mesece leta 2019, na GEFcom-podatkih pa smo napovedali porabo za celo leto 2014. Za obe mnoˇzici podatkov smo pripravili po tri modele.

Prvi je osnovni model z naborom znaˇcilk, za katerega menimo, da bi morale producirati dobre rezultate. Drugi je MP-model, ki vsebuje poleg osnov- nih znaˇcilk tudi MP-znaˇcilko. Tretji model smo zgradili s pomoˇcjo Azure AutoML-modula, saj nas je zanimalo, kakˇsno toˇcnost lahko priˇcakujemo od samodejno generiranih modelov. Zanima nas, ali je toˇcnost primerljiva z roˇcno zgrajenimi modeli in ali bi jih lahko uporabili za neke preliminarne ocene toˇcnosti, preden se spustimo v posamezni projekt. Za MB-podatke smo zgradili tudi ˇcetrti LSTM-model, saj so se LSTM-arhitekture v zadnjih letih izkazale za zelo uporabne pri napovedovanju porabe elektriˇcne energije.

47

(64)

48 POGLAVJE 6. REZULTATI

6.1 Rezultati analize anomalij

Kot smo ˇze podrobneje opisali v ˇcetrtem poglavju, smo na temelju matriˇcnih profilov pridobili seznam petdesetih anomalij. Za vsako anomalijo smo pre- gledali ˇclanke, ki so izˇsli na tisti dan, dan pred in dan po anomaliji. Na temelju ˇclankov smo poskuˇsali razbrati, kaj bi lahko vplivalo na veˇcje od- stopanje v porabi elektriˇcne energije. Najveˇcji vpliv so imeli prazniki, veˇcji ˇsportni in kulturni dogodki ter vreme. Za doloˇcene anomalije nismo naˇsli oˇcitnega razloga. Morda nismo prepoznali novice, ki bi krila dogodek, zaradi katerega je bila na tisti dan poraba elektrike atipiˇcna.

Razlog Stevilo primerovˇ

Praznik 19

Neznan razlog 16

Vreme 9

ˇSport 6

Tabela 6.1: Razlogi za anomalije

V tabeli 6.1 je posploˇsen seznam razlogov za anomalije in ˇstevilo njihovih primerov. Najpogosteje se anomalije zgodijo zaradi praznikov. Nekoliko manj pogosto je razlog vreme oziroma ˇsport. Kar 16-krat se je zgodilo, da nismo naˇsli razloga za anomalijo na temelju arhiviranih novic, kljub temu da je iz ˇcasovne vrste jasno razvidna. ˇSportne anomalije je bilo najteˇzje vkljuˇciti med atribute modela, ker je teˇzko dobiti podatke, ki bi se redno posodabljali in bi bili toˇcni. Menimo, da ˇsportni dogodki ne vplivajo na redno porabo elektrike z izjemo pomembnejˇsih derbijev. Vse druge anomalije imajo vzroke, za katere menimo, da se dogajajo pogosteje in imajo vpliv skozi celotno leto (vreme, prazniki, vikendi).

(65)

6.2. REZULTATI NAPOVEDNIH MODELOV 49

6.2 Rezultati napovednih modelov

Za vsak napovedni model imamo rezultate ocenjene s kriterijsko funkcijo MAE in MAPE. Poleg ocene imamo oznaˇcene tudi standardne deviacije(npr.

±3.0). Osnovni model je na MB-podatkih dosegel MAE 4.1 in MAPE 3.0%.

Njegove napovedi lahko vidimo na sliki 6.2. V prvih dveh mesecih leta 2019 smo konsistentno napovedovali nekoliko previsoko porabo, proti koncu dru- gega meseca pa smo porabo energije podcenili. MP-model za MB-podatke je bil nekoliko boljˇsi s 3,8 MAE in 2,9% MAPE. Na GEFcom-podatkih je osnovni model dosegel MAE 64 in MAPE 1,9%, MP-model pa je bil slabˇsi z MAE 73 in MAPE 2,3%. AutoML-model se je obnesel slabˇse kot osnovni in MP-model na obeh podatkovnih mnoˇzicah. Na MB ima MAE 7,7 in MAPE 5,6%, na GEFcom pa 111 MAE in MAPE 2,9%. Na MB-podatkih je bil naj- slabˇsi LSTM-model, ki je dosegel MAE 12,7 in MAPE 8,5%. Gostoto napak napovedi osnovnih modelov lahko vidimo na sliki 6.1. Gostota napake histo- grama je izraˇcunana kot deleˇz vseh napak v posameznem koˇsu normaliziran na ˇsirino koˇsa. Porazdelitve napak napovedi MP-modelov so primerljive.

Veˇcji deleˇz napak na GEFcom podatkih je med 0% in 2% MAPE, zaradi ˇcesar je tudi skupna napaka nekoliko niˇzja. MB napovedi imajo nekoliko veˇc napak v nad 6% MAPE .

Model MB GEFcom

MAE MAPE [%] MAE MAPE [%]

Osnovni model 4.1 ±3.1 3.0 ±2.4 64±58 1.9 ±1.7 MP model 3.8 ±3.0 2.9 ±2.2 73±71 2.3 ±2.1 AutoML 7.7 ±7.2 5.6 ±5.0 111 ±100 3.3 ±2.9

LSTM 12.7 ±8.5 9.4 ±6.5

Tabela 6.2: Tabela napak napovedi z razliˇcnimi modeli na MB in GEFcom podatkih

6.3 Statistiˇ cna analiza

Na posameznih podatkovnih mnoˇzicah smo za napovedi osnovnega in MP- modela opravili testDiebold-Mariano [78], z osnovno (niˇcelno) hipotezo, da imata dve mnoˇzici napovedi isto toˇcnost. P-vrednost na MB-podatkih je bila 0,0016, na GEFcom pa 8.12∗10−53, tako da lahko zakljuˇcimo, da so razlike med napovedmi signifikantne na obeh podatkovnih mnoˇzicah (p < 0.01).

(66)
(67)

Reference

POVEZANI DOKUMENTI

Nauˇ cili smo veˇ c detektorjev z razliˇ cnimi uˇ cnimi mnoˇ zicami, ki so jih sestavljale sintetiˇ cne in realistiˇ cne slike, ter primerjali, kako ˇstevilo uˇ cnih epoh in

V njem spoznamo razliˇ cne pristope pri reˇsevanju obravnavane problematike, predstavimo nekaj najbolj pogosto uporabljanih metod strojnega uˇ cenja, iz- biro znaˇ cilk ter

Ker so bili obstojeˇci poslovni procesi tako razliˇcni, funkcionalno omejeni (veliko je bilo roˇcnega dela) in jih je bilo potrebno med seboj povezati, pri tem pa tudi optimizirati,

Razliˇ cni sta si tudi v nekaterih bolj bistvenih delih (imena znaˇ ck, razliˇ cne datoteke, razliˇ cni opisni jeziki), vendar ne dovolj, da bi raz- vijalec samo na podlagi

S pomoˇ cjo frekvenˇ cnih pasov lahko nato izraˇ cunamo vrednosti znaˇ cilk FBANK.. Za izraˇ cun potrebujemo amplitudne odzive okvirjev, na katerih uporabimo izraˇ cunane frekvenˇ

Glede na to, da se trend uporabe mobilnih aplikacij vedno bolj poveˇ cuje, lahko priˇ cakujemo, da bo v prihodnosti tudi na podroˇ cju parkiriˇsˇ c velik nabor razliˇ cnih

Centralni streˇ znik uporabnikom omogoˇ ca prijavo v sistem in vklop enega ali veˇ c izmed prostih prikljuˇ ckov, prav tako tudi izklop prikljuˇ ckov, ko dobroimetje na raˇ

Implementirali smo izbiro vzorcev, predstavili in izbrali algoritem DTW za primerjanje ˇ casovnih vrst, predstavili moˇ znosti za pohitritev izbranega algoritma,