Universitatea babeş-bolyai cluj-napoca



Yüklə 385,79 Kb.
səhifə7/11
tarix26.10.2017
ölçüsü385,79 Kb.
#13385
1   2   3   4   5   6   7   8   9   10   11

4.3.Abordări inrudite


Ideea folosirii tehnicilor de învățare automată pentru a prezice vremea a fost studiată în diverse lucrări în ultimii ani. În continuare, vom prezenta câteva din aceste lucrări.

Y. Radhika și M. Shashi prezintă în [11] o aplicație a mașinilor cu suport vectorial pentru a prezice temperatura maximă pentru ziua următoare, folosind ca date de intrare temperaturile maxime zilnice pentru ultimele n zile, unde n variază între 2 și 10.

Algoritmul SVM a fost antrenat cu metoda de regresie neliniară cu suport vectorial. Cand a fost selectată o funcție kernel pentru SVM, s-a observat [11] ca între funcțiile polinomiale și radial basis function (RBF), funcția RBF dă rezultate mai bune pentru același set de date și de aceea a fost aleasă pentru experimentele efectuate. În experimentele descrise în lucrare, a mai folosită un rețea neuronală de tip multi-layer perceptron (MLP), bazată pe algoritmul propagării înapoi, pentru a compara rezultatele cu cele obținute de SVM.

Rezultatele obținute de tehnicile de învățare automată din fiecare experiment au fost măsurate cu formula mean squared error (MSE).



Zile precedente

2

3

5

7

10

SVM

7.56

7.52

7.15

7.092

7.07

MLP

8.21

8.95

8.07

9.19

10.26

*Valorile temperaturilor sunt în Celsius

Figura . Erorile obținute în [11].

După cum se poate vedea din tabelul 1, algoritmul SVM a dat rezultate puțin mai bune decat rețeaua neuronală.

În lucrarea [20], scrisă de K. Sreelakshmi și P. Ramakanthkumar, este descris un model bazat pe o rețea neuronală implementată cu algoritmul de propagare înapoi, care este folosit pentru a prezice viteza vântului pe termen scurt, folosind valori ale altor variabile meteorologice ca și date de intrare.

Variabilele folosite în experimente sunt: presiunea atmosferica, umiditatea și cantitatea de precipitații. Experimentele au arătat ca viteze vântului previzionată de model era diferită de valorile actuale cu o diferență maximă de 5%.

Un alt articol care studiază problema prognozării vremii folosind tehnici de învățare automată este [21], scrisă de Aditya Polumetla. Unul din experimentele descrise în lucrare constă în prezicerea temperaturii pentru anumite locatii, folosind diverse tehnici de învățare, cum ar fi: regresie liniară (LR), multi-layer perceptron (MLP), rețele RBF, LeastMedSquare (LMS), M5P și Regula conjunctivă (CR).

Rezultatele au fost măsurate cu formula mean absolute error (MAE). Erorile obținute pentru LR, LMS, M5P și MLP au fost între 10 și 20 Fahrenheit, iar pentru RBF și CR eroarea a fost între 100 și 120 Fahrenheit.

În lucrarea [21], în afară de studierea problemei de previziune a vremii ca o problemă de regresie, aceasta a fost studiată și ca o problemă de clasificare. Valorile temperaturilor au fost grupate în 9 clase, în dependență de numărul de deviații standard ale valorii de la medie. Valorile de intrare erau temperaturile pentru ultime 3 ore, iar ieșirea constă în clasa estimată pentru temperatura din ora următoare.

Metodele folosite pentru a crea modelele de clasificare au fost: arbori de decizie J48 și metoda Naïve Bayes. În urma rezultatelor obținute, s-a arătat ca arborii de decizie J48 au clasificat corect 93.6% din instanțele din setul de date, iar metoda Naïve Bayes a avut o performanța de doar 32.33%.

Smith et al. la fel investighează în [22] folosirea rețelelor neuronale artificiale pentru problema previzionarii vremii. Valorile folosite ca date de intrare în model includeau cinci variabile: temperatura, umiditatea relativa, viteza vantului, radiația solară și cantitatea de precipitații. În plus față de valorile curente ale fiecărei instanțe observate, au fost incluse pentru antrenament și valorile indicatorilor din exemplele anterioare, la intervale de o oră distanță.

Rețelele neuronale folosite în experimente au fost antrenate cu algoritmul de propagare înapoi a erorii. Pentru toate modelele, rata de învățare a fost aleasă 0.1, iar ponderile inițiale ale legăturilor dintre neuroni au fost alese între -0.1 și 0.1.

Valorile mean absolute error (MAE) pentru toate modelele folosite în experimente au fost între 1.50C and 20C. Cea mai perfomantă rețea a fost antrenată cu peste 50 000 de instanțe și a avut o eroare MAE de 1.510 C.

4.4.Metodologie


Această secțiune prezintă abordările folosite în acest studiu de caz pentru problema previzionării vremii. Sunt menționate valorile alese pentru parametrii modelelor de învățare automată folosite. De asemenea, este descris setul de date și preprocesările efectuate asupra acestuia înaintea folosirii lui pentru antrenament. Este prezentat și modul în care s-au facut antrenamentul și testarea modelelor.

4.4.1.Proiectarea modelelor

4.4.1.1.Rețele neuronale


Rețelele neuronale folosite în experimentele efectuate sunt de tip feed-forward cu propagarea înapoi (backpropagation). Acestea au fost configurate cu trei straturi. Primul strat constă din neuronii de intrare, iar numărul acestora depinde de valorile de intrare furnizate modelului. Al doilea strat este cel ascuns, care are de la 8 până la 20 neuroni, în functie de experimentul efectuat. Ultimul strat este stratul de ieșire și are un singur neuron, pentru că modelul trebuie să întoarcă doar valoarea estimată pentru temperatura medie din ziua următoare.

Funcția de activare folosită pentru fiecare neuron din stratul ascuns este funcția sigmoid:


4.4.1.2.Programare genetică


Fiecare algoritm de programare genetică are un set de parametri ale căror valori trebuie precizate la început. În experimentele noastre, modelele bazate pe programare genetică au următoarele valori pentru parametrii de bază:

  • Marimea populatiei: 30-100 (depinde de experiment).

  • Metoda de selectie pentru noi indivizi: elite.

  • Setul de funcții primitive folosite pentru a forma arborii de expresiii: (+, -, *, /, sin, cos, ln, exp, sqrt).

  • Rata de încrucișare: 0.75.

  • Rata de mutație: 0.1.

  • Adâncimea maximă a arborelui de expresie: 10.


4.4.1.3.Mașini cu suport vectorial


În cazul experimentelor în care s-au folosit mașini cu suport vectorial, algoritmii au avut următorii parametri:

  • Tipul tehnicii: ε-SVR. În cazul acestei tehnici, scopul este de a găsi o funcție care are o deviație de cel mult ε de la valorile reale petru toate instanțele de antrenament.

  • Funcția kernel: Radial basis function (RBF):



  • Parametrul : 1.

  • Parametrul ε: Între 10-5 și 10-4 (depinde de experiment).


4.4.2.Setul de date și preprocesare


Setul de date folosit în experimente constă din valorile zilnice pentru cei mai importanți indicatori meteorologici pentru regiunea Cluj-Napoca, România, din anul 1952 până în 2011 [23]. Indicatorii folosiți sunt: temperatura medie, temperatura maximă, temperatura minimă, punctul de rouă, viteza vântului și cantitatea de precipitații. S-a considerat ca variabilă de intrare pentru fiecare exemplu de date și indicele zilei în an. Valorile temperaturilor și a punctului de rouă sunt exprimate în Fahrenheit și variază în intervalul [-30, +90]. Cantitatea de precipitații este dată în inci și variază între 0.0 și 2.0. Viteza vântului este masurată în noduri și variază în intervalul [0.0, 20.0]. Pentru un exemplu de date unde o valoare lipsește, se ia valoarea precedentă pentru acea variabilă.

În cazul experimentelor cu rețele neuronale și mașini cu suport vectorial, toate valorile de intrare sunt scalate la intervalul [0, 1], în funcție de valorile minime și maxime pe care le pot lua variabilele. Iar valorile de ieșire sunt scalate înapoi la intervalul original.

S-a studiat și corelația dintre variabile. S-a calculat coeficientul de corelație Spearman, în loc de coeficientul Pearson, pentru ca ar putea fi relații între variabile care să nu fie neaparat liniare. Coeficientul lui Spearman se calculează astfel:


  • Fie că avem variabilele X și Y cu valorile Xi și Yi. Valorile sunt ordonate crescător și sunt convertite în rangurile xi și yi.

  • Se calculează coeficientul de corelație astfel:



  • Dacă valorile Xi și Yi sunt toate diferite și avem n valori pentru fiecare variabilă, atunci se poate aplica formula:

S-a obținut următorul tabel cu coeficienți de corelație:



Figura . Tabelul cu coeficienții de corelație dintre variabile

Se observă că variabilele care sunt mai bine corelate cu temperatura medie sunt: temperatura maximă, temperatura minimă și punctul de rouă.


4.4.3.Antrenament și testare


Inițial, setul de date este împărțit în 2 părți: setul de antrenament și setul de testare. Setul de antrenament conține 98% din exemplele de date, iar cel de testare restul de 2% din exemple.

În cadrul antrenamentului, evaluarea modelelor se face prin metoda k-fold cross-validation, unde k=4. Mai exact, setul de antrenament se împarte în 4 părți. Se face antrenamentul de 4 ori, de fiecare dată excluzându-se din exemplele de antrenament una din cele 4 părți. După fiecare antrenament, exemplele care nu au participat la antrenamentul propriu-zis sunt folosite pentru a evalua modelul. Se obțin astfel 4 valori diferite pentru eroare. Se calculează media acestor valori și deviația standard.

Eroarea modelului la fiecare validare se calculează folosind formula mean squared error (MSE):

În formula de mai sus, E reprezintă eroarea, n – numărul de exemple de test, yi – valoarea așteptată pentru testul i, și ypi – valoarea estimată pentru testul i.



Yüklə 385,79 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   10   11




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin