UNIVERSITATEA BABEŞ-BOLYAI CLUJ-NAPOCA
FACULTATEA DE MATEMATICǍ ŞI INFORMATICǍ
SPECIALIZAREA INFORMATICĂ ROMÂNĂ
LUCRARE DE DIPLOMǍ
Sisteme predictive inteligente.
Analiza seriilor de timp prin metode de învățare automată
Conducător ştiinţific
Prof. univ. dr. Czibula Gabriela
Absolvent
Grecu Mircea
2012
Cuprins
Cuprins 13
Introducere 14
Capitolul 1. Inteligența artificială și învățarea automată 18
1.1.Inteligența artificială 18
1.1.1.Ce este inteligența artificială? 18
1.1.2.Ramuri ale inteligenței artificiale 19
1.2.Învățarea automată 20
1.2.1.Ce este învățarea automată? 20
1.2.2.Clase de probleme de învățare automată 20
1.2.3.Aplicații ale învățării automate 21
Capitolul 2. Învățare supervizată 22
2.1.Aspecte generale 22
2.2.Rețele neuronale 23
2.3.Programare genetică 25
2.4.Mașini cu suport vectorial 26
Capitolul 3. Sisteme predictive inteligente 28
3.1.Analiza predictivă 28
3.2.Serii de timp 29
3.3.Măsuri de performanță pentru modele predictive de regresie 30
Capitolul 4. Studiu de caz: Previziunea vremii folosind tehnici de învățare automată 32
4.1.Aspecte generale 32
4.2.Descrierea problemei 33
4.2.1.Context 33
4.2.2.Motivație 34
4.3.Abordări inrudite 34
4.4.Metodologie 36
4.4.1.Proiectarea modelelor 37
4.4.2.Setul de date și preprocesare 38
4.4.3.Antrenament și testare 39
4.5.Experimente și rezultate 40
4.5.1.Experimente 40
4.5.2.Analiză comparativă 44
4.6.Discuții 45
4.6.1.Analiză 45
4.6.2.Comparații cu lucrări anterioare 46
4.7.Concluzii 46
Capitolul 5. Aplicație practică: Analiza seriilor de timp prin tehnici de învățare automată 48
5.1.Enunțul și specificarea problemei 48
5.2.Analiza problemei 49
5.3.Proiectare 50
5.3.1.Modelul de date 50
5.3.2.Tehnicile de învățare 54
5.4.Implementare 54
5.4.1.Limbajul și bibliotecile folosite 54
5.4.2.Implementarea interfeței cu utilizatorul 55
5.4.3.Secvențe de cod relevante 55
5.5.Testare 59
5.6.Manual de utilizare 60
5.7.Extinderi posibile 62
Concluzii 64
Bibliografie 65
Introducere
Deciziile oamenilor sunt de multe ori dificile, din cauza incertitudinilor și a lipsei de informații despre evenimentele din viitor. Dorința de a facilita luarea deciziilor și de a face alegeri corecte ne motivează să căutam cât mai multe informații despre situația studiată. Întrucât în numeroase situații informațiile care lipsesc sunt legate de evenimente care încă nu au avut loc, se caută modalități de a prezice anumite fenomene care sunt relevante pentru situațiile în cauză sau de a estima rezultatele unor evenimente despre care se știe că vor avea loc.
Predicțiile s-au dovedit foarte utile în diverse domenii de activitate: industrie, transporturi, politică, finanțe, marketing, meteorologie. Mai exact, predicțiile sunt folosite pentru: managementul lanțului de aprovizionare, o activitate de bază în afacerile mari, previzionarea indicatorilor meteorologici, planificarea transportului urban și aerian, previzionarea cutremurelor și a altor calamități naturale și reducerea pagubelor acestora, previzionarea rezultatelor la alegerile electorale, în actuariat pentru construirea unor modele care ar estima riscurile afacerilor unei companii în viitorul apropiat, în studierea burselor de valori pentru a prezice evoluția prețurilor acțiunilor.
Previzionarea diverselor fenomene din societate și din natură a fost una din preocupările oamenilor încă din antichitate. Însă cele mai importante descoperiri științifice legate de previzionare și predicții au fost făcute din anii 1960 până în prezent. Și odată cu apariția calculatoarelor, s-a inceput studierea modelelor computerizate, care să genereze predicții, având la bază algoritmi construiți după modele matematice sau seturi de reguli folosite de experți.
În a doua jumătate a secolului XX a început să se dezvolte și o nouă ramură a informaticii – inteligența artificială. Aceasta include și studiul învățării automate – o serie de algoritmi și metode care evoluează în funcție de datele empirice primite. Problemele în care se cer predicții s-au dovedit a fi ușor de transformat în probleme de învățare automată. Această lucrare studiază aplicarea tehnicilor de învățare automată la problemele de predicție.
Lucrarea cuprinde cinci capitole.
Capitolul 1 descrie pe scurt studiul inteligenței artificiale și al învățării automate. Se face o scurtă introducere în inteligența artificială și sunt prezentatea principalele ramuri ale aceasteia. De asemenea, se încadrează studiul învățării automate în cadrul inteligenței artificiale și se prezintă principalele clase de probleme de învățare. Sunt descrise și câteva situații reale în care se aplică algoritmii de învățare automată.
În Capitolul 2 este descrisă mai detaliat una din clasele de probleme de învățare automată – învățare prin supervizare. Sunt prezentate aspecte teoretice și caracteristici comune ale problemelor din aceasta clasă și domenii în care sunt aplicate tehnici de învățare supervizată. În cadrul aceluiași capitol sunt descrise trei dintre cele mai cunoscute metode folosite pentru această clasă de probleme: rețele neuronale artificiale, programarea genetică și mașini cu suport vectorial. Aceste metode au fost alese și pentru studiul de caz, descris în Capitolul 4. Sunt prezentate și modalitățile prin care este masurată performanța acestor tehnici.
În continuare, Capitolul 3 include aspecte generale legate de sisteme predictive și analiza predictivă. Se va prezenta pe scurt și tema analizei seriilor de timp – o modalitate de a modela numeroase probleme de predicție. În acest capitol sunt menționate și cele mai importante măsuri de evaluare a modelelor predictive, care vor fi utile în studiul de caz prezentat în capitolul următor.
Capitolul 4 descrie un studiu de caz cu tema: Previzionarea vremii folosind metode de învățare automată. Inițial, sunt mentionate aspecte care ne motivează să cercetăm problema previzionării indicatorilor meteorologici folosind tehnici de învățare. Sunt prezentate pe scurt lucrări în care a fost cercetată aceeași problemă, menționându-se metodele și pașii folosiți pentru a studia problema, precum și rezultatele obținute. În continuare, sunt explicate abordările folosite în această lucrare și sunt prezentate experimentele realizate și o analiză a rezultatelor obținute în urma experimentelor respective. Este inclusă și o analiză comparativă cu experimentele și rezultatele din lucrările menționate care studiază aceeași problemă. Capitolul include și câteva concluzii relevante pentru studiul de caz efectuat.
În final, Capitolul 5 descrie aplicația practică realizată pentru studierea sistemelor predictive inteligente, care este folosită și în cadrul experimentelor descrise în studiul de caz. Este o aplicatie de tip desktop care poate fi folosită pentru orice problemă pentru care există un set de date compus dintr-o mulțime de exemple de date, fiecare fiind descris de valorile aceluiași set de variabile. Odată ce este încărcat un set de date se pot întreprinde următoarele acțiuni: se poate studia corelația dintre variabile, se poate configura o problemă care constă în previzionarea uneia din variabile, în funcție de valorile precedente ale unui subset de variabile din setul de date, se poate aplica o tehnică de învățare supervizată pentru a antrena un model pentru problema configurată, se poate testa acest model și se pot salva rezultatele obținute. Tehnicile care pot fi folosite în program sunt: rețele neuronale, programare genetică și mașini cu suport vectorial. Algoritmii folosiți pentru aceste tehnici pot fi configurați din aplicație, setând parametrii corespunzîtori fiecăruia.
În cadrul Capitolului 5 se prezintă specificarea proiectului, proiectarea aplicației, cu diagramele corespunzătoare, detalii de implementare, prezentându-se instrumentele soft folosite și secvențe de cod relevante pentru algoritmii utilizați, un manual de utilizare a aplicației și extinderi posibile a acesteia pentru a include mai multe funcționalități și posibilitatea studierii unui set mai larg de probleme de învățare supervizată.
Este de menționat faptul că studiul de caz prezentat în această lucrare a fost subiectul unui articol prezentat la Sesiunea de Comunicări Științifice ale Studenților, organizată de Universitatea Babeș-Bolyai și Universitatea Tehnică din Cluj-Napoca, din iunie, 2012.
Dostları ilə paylaş: |