SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA DIPLOMSKI RAD br. 1223 PRIMJENA STATISTIČKIH MODELA U PREDVIĐANJU NALAZIŠTA BILJNIH VRSTA Valentino Perović Zagreb, lipanj 2016 Zahvaljuje mentoru doc. dr. sc. Borisu Milašinoviću na povjerenju, strpljenju, poticaju i savjetima kojima je znatno olakšao pisanje ovog rada te dr. sc. Andreji Radović na pomoći i savjetima prilikom implementacije samog sustava. Sadržaj 1. Uvod ................................................................................................................. 1 2. Modeli strojnog učenja ..................................................................................... 4 2.1 Strojno učenje ........................................................................................... 4 2.2 Maximum Entropy ..................................................................................... 7 2.3 Primjeri iz prakse..................................................................................... 11 3. Specifikacija zahtjeva ..................................................................................... 13 3.1 Korisnički zahtjevi.................................................................................... 13 3.2 Funkcionalni zahtjevi ............................................................................... 14 3.3 Nefunkcionalni zahtjevi ........................................................................... 15 4. Arhitektura sustava ........................................................................................ 17 4.1 Web servis .............................................................................................. 17 4.2 Struktura cjelokupnog sustava ................................................................ 18 4.3 Tehnologija modela predviđanja ............................................................. 19 4.4 Odabrana arhitektura sustava ................................................................. 19 5. Statistički i podatkovni modeli ........................................................................ 21 5.1 Podatkovni model.................................................................................... 21 5.1.1 Prostorni podaci ........................................................................................ 21 5.1.2 Podaci o biljkama ...................................................................................... 25 5.1.3 Proces spajanja podataka ......................................................................... 26 5.2 Statistički model predviđanja nalazišta biljnih vrsta ................................. 26 5.2.1 Princip rada .............................................................................................. 26 5.2.2 Testiranje modela ..................................................................................... 28 6. Implementacija sustava .................................................................................. 31 6.1 Implementacija korisničkog sučelja ......................................................... 31 6.2 Implementacija statističkog modela predviđanja biljnih vrsta .................. 33 6.3 Implementacija web servisa .................................................................... 35 7. Rezultati ......................................................................................................... 44 7.1 Korisničko sučelje ................................................................................... 44 7.2 Rezultati predviđanja ............................................................................... 46 8. Zaključak ........................................................................................................ 53 Literatura ............................................................................................................... 56 Sažetak ................................................................................................................. 58 Abstract ................................................................................................................. 60 Popis slika Slika 1 Kartografski prikaz rezultata predviđanja MAXENT modela. .................... 10 Slika 2 Prikaz odabrane arhitekture sustava ........................................................ 20 Slika 3 Prikaz prvog dijela matrice korelacije........................................................ 24 Slika 4 Prikaz drugog dijela matrice korelacije ..................................................... 24 Slika 5 Grafički prikaz metode testiranja 𝑅2 ........................................................ 29 Slika 6 Grafički prikaz strukture angular radnog okvira ........................................ 33 Slika 7 Grafički prikaz arhitekture sustava ............................................................ 36 Slika 8 Izgled početnog ekrana korisničkog sučelja. ............................................ 45 Slika 9 Izgled dijela korisničkog sučelja za slanje datoteka. ................................. 45 Slika 10 Izgled sučelja za izbor parametara modela. ........................................... 46 Slika 11 Prikaz izbornika biljaka nad kojima se raditi predikcija. .......................... 46 Slika 12 Prikaz lokacija za učenje Ambrosia artemisiifolia L. ............................... 47 Slika 13 Rezultati predviđanja za Ambrosia artemisiifolia L. ................................ 48 Slika 14 Prikaz vrijednosti parametara određenog područja ................................ 48 Slika 15 Prikaz lokacija za Carpinus betulus L. .................................................... 49 Slika 16 Rezultati predviđanja za Carpinus betulus L. .......................................... 49 Slika 17 Prikaz lokacija za Fraxinus ornus L. ....................................................... 50 Slika 18 Rezultati predviđanja za Fraxinus ornus L. ............................................. 50 Slika 19 Prikaz preuzetih rezultata predviđanja u alatu QGIS .............................. 51 Popis tablica Tablica 1 Rezultati testiranja MAXENT modela metodom RMSE. ........................ 30 Tablica 2 Rezultati testiranja MAXENT modela metodom 𝑅2 ............................... 30 Tablica 3 Primjer korištenja R.NET knjižnice ........................................................ 37 Tablica 4 Isječak učitavanja datoteka ................................................................... 37 Tablica 5 Isječak pripreme podataka o biljkama za korištenje u modelu .............. 40 Tablica 6 Isječak za učenje modela i predikciju. ................................................... 41 Tablica 7 Isječak spremanja datoteke i slanja lokacije. ........................................ 42 1. Uvod Statistički modeli najmoderniji su trend u modernoj primjeni računalne tehnologije u svrhu znanstvenoistraživačkih, ali i poslovnih projekata. Primjena statističkih metoda uz matematičko modeliranje dovelo je do razvoja brojnih algoritama i modela kojima se omogućuje obrada i analiza velikih količina podataka. Obrada takvih podataka najčešće nije jednostavna, stoga je primjena statističkih modela iznimno važna u modernoj tehnologiji. Primjeri korištenja takvih modela sežu u sve grane moderne tehnologije, počevši od komercijalnih primjena u svrhu istraživanja navika kupaca, primjena u svrhu otkrivanja i modeliranja raznih pojava čije je praćenje u ljudskoj okolini nemoguće, kao što su primjerice istraživanja ljudskih ponašanja i emocija temeljem poruka preko društvenih medija, pa sve do kompleksnih znanstvenih istraživanja u svrhu otkrivanja uzroka bolesti. Pravilno postaviti i u konačnici programski podržati moderne statističke modele i metode ključan je zadatak prilikom njihove implementacije u svakoj od mnogobrojnih grana korištenja. Neispravno postavljeni matematički modeli mogu postati izvor dezinformacija, jer zbog svoje novonastale popularnosti i mogućnosti ponove iskoristivosti, postoji tendencija stvaranja mnogobrojnih programskih knjižnica opće namjene, koje bez nadzora i testiranja mogu potvrditi netočne hipoteze ili predstaviti zanimljive rezultate koji u suštini nemaju pokriće u stvarnom svijetu. Takve se nenamjerne dezinformacije kasnije mogu predstavljati kao činjenice ili koristiti u svrhu ulaganja u neprofitabilne poslovne prilike, a u najgorem slučaju ovakvim metodama mogu se prouzročiti razni medicinski problemi ukoliko se pogrešnim modelima korištenje neke terapije pokaže ispravnim, iako u stvarnosti može biti štetno. Ipak, ispravnom implementacijom statističkih modela predviđanja ostvaruje se neizmjerna korist u svakoj grani primjene. Jedan od primjera korištenja ovakvih modela, u današnje vrijeme sve rašireniji, jest u svrhe istraživanja i predviđanja bioloških čimbenika naše okoline. Predviđanje raspodjele ribljih vrsta [1], predviđanja ili određivanja ugroženih biljnih i životinjskih vrsta, predviđanja kretanja biljnih vrsta i biološke raznolikosti (u daljnjem tekstu bioraznolikost), neki su od primjera korištenja statističkih modela i metoda u svrhu detaljnog istraživanja 1 prirode. Pojam bioraznolikost odnosi se na vrijednost alfa-diverziteta, to jest broja različitih biljnih vrsta u nekom području, opisan u radu [2]. Takvi tipovi istraživanja donedavno su predstavljali ogromne prepreke znanstvenicima, kako zbog iznimne vremenske zahtjevnosti istraživanja, tako i zbog povećih financijskih sredstava potrebnih za vršenje takvih istraživanja. Korisnost ovakvih istraživanja nije potrebno napominjati, stoga je pojednostavljenje primjene ovakvih metoda uz očuvanje ispravnosti istih od iznimne važnosti za biologiju kao granu znanosti. Ovisno o grani biologije, ključne informacije za istraživanja mogu biti upravo bioraznolikost i vjerojatnost uspješnosti rasta određene biljke na određenom teritoriju. Podaci o tome gdje bi koja biljka mogla imati uvjete za rast mogu se iskoristiti u raznim aplikacijama. Primjerice, u Republici Hrvatskoj svake je godine ogroman problem širenje ambrozije, zbog koje velik broj građana može imati zdravstvenih problema. Zbog male površine države, također je važno optimirati iskoristivost poljoprivrednih površina i zarade od poljoprivrednih djelatnosti, što se također može olakšati korištenjem statističkih modela u svrhu predviđanja uspješnosti rasta neke sorte na neiskorištenim područjima. Bioraznolikost se s druge strane može iskoristiti u svrhu otkrivanja novih žarišta bioloških istraživanja, gdje bi se istraživačima dao uvid u potencijalnu raznolikost biljnih vrsta na nekom području, čime bi se fokus istraživačkih ekspedicija prebacio sa trenutno popularnih područja, kao što su Nacionalni park Plitvička jezera ili Nacionalni park Sjeverni Velebit. Svrha ovog rada, kao i programske infrastrukture stvorene prilikom njegove izrade, leži upravo u stvaranju verificiranog i znanstveno relevantnog sustava koji bi korisnicima, najčešće znanstvenicima i znanstvenim novacima, dao jednostavan i praktičan skup operacija kojima bi iskoristili stvoreni model predviđanja potencijalnih nalazišta biljnih vrsta, kao i potencijalnog broja biljnih vrsta na cjelokupnom teritoriju kojeg oni sami odaberu. Tehnički gledano, ideja je stvoriti programsko rješenje u obliku web sustava, koji bi korisniku omogućio korištenje statističkog modela za predikciju nalazišta biljnih vrsta i biološke raznolikosti. Korištenje samog sustava nije namijenjeno ljudima koji nemaju potrebno znanje u području primjene s obzirom da sustav koristi podatke koji nisu dostupni svakome, a iste je potrebno i pravilno pripremiti. Stoga je fokus korištenja ovog sustava na ekspertima koji su spremni 2 pripremiti podatke, na unaprijed definirani način, kako bi ih iskoristili za procese koji bi im inače uzeli mjesece ili godine rada na obradi. Rad je podijeljen u osam poglavlja uključujući uvod i zaključak. Nakon uvoda, slijedi kratko upoznavanje sa statističkim modelima korištenima prilikom izrade, koji predstavljaju srž samog programskog rješenja, kao i općeniti osvrt na takve modele. Poglavlje završava primjerima sličnih ideja i radova, kako bi se ukazalo na korisnost i važnost implementacije jednog takvog rješenja. Slijedeće poglavlje navodi korisničke, funkcionalne i nefunkcionalne zahtjeve, osvrt na važnost i razloge iza tih zahtjeva te ograničenja koja se implementiraju u sustavu kako bi isti zadovoljio zahtjeve, nakon čega slijedi upoznavanje sa arhitekturom sustava te obrascima i algoritmima potrebnima za ostvarenje takve arhitekture. Peto poglavlje opisuje modele korištene u sustavu, modele podataka te statistički model specificiran za rad s takvim podacima. Šesto poglavlje odnosi se na implementaciju sustava. Nakon dokaza ispravnosti konačnog statističkog modela, razmatraju se implementacijski detalji korisničkog sučelja i serverske strane rješenja, a zatim slijedi prikaz rezultata dobivenih radom, ponajprije grafičkim sučeljem za interakciju sa sustavom te samih rezultata predviđanja na testnim primjerima biljnih vrsta i staništa, kao i rasprave o tako dobivenim rezultatima. Rad završava kratkim zaključkom te pregledom literature korištene za izradu. 3 2. Modeli strojnog učenja 2.1 Strojno učenje Strojno učenje (engl. machine learning) predstavlja podskup područja umjetne inteligencije gdje se matematičkim modelima stvaraju automatizirana rješenja čija je svrha koristeći funkciju dobrote optimirati stvarni model prema nekom kriteriju. Očigledan razlog primjene ovakvih modela leži u činjenici da je sposobnost čovjekovog rješavanja kompleksnih matematičkih modela ograničena, što zbog pretjerane vremenske zahtjevnosti rješavanja takvih modela, što zbog mnogo većeg utjecaja nenamjernih pogrešaka na konačno rješenje. U novije vrijeme, glavni razlog popularnosti ovakvih modela, nalazi se u činjenici da su ljudima dostupne ogromne količine podataka, koje je gotovo nemoguće obraditi bez uporaba kompleksnih rješenja. Stoga se danas ovakvi modeli češće koriste u komercijalne svrhe nego u okviru znanstvenih istraživanja. Povijesno gledano, počeci strojnog učenja sežu u daleku 1951. kada je Arthur Samuel napisao program koji je igrao damu protiv čovjeka te pamteći dobre kombinacije s vremenom postajao sve bolji u samoj igri. No prvim pravim algoritmom strojnog učenja može se smatrati perceptron (dio neuronske mreže) koji je implementirao Frank Rosenblatt [3]. Ideja koju je Rosenblatt iskoristio dolazi iz ljudskog mozga u kojem brojni neuroni međusobno razmjenjuju informacije, kako bi u konačnici stekli određeno znanje ili donijeli zaključak. Dvije su osnovne podjele modela strojnog učenja, modeli nadziranog strojnog učenja (engl. supervised machine learning) te modeli strojnog učenja bez nadzora (engl. unsupervised machine learning). Osnovna razlika između ove dvije vrste modela jest činjenica da nadzirani model zahtijeva znanje o vrijednosti podataka, to jest prilikom učenja modela za predikciju model mora imati predanu i referentnu vrijednost koja proširuje informacije o tom podatku. Primjerice, kod predviđanje filmova koji bi se ljudima mogli sviđati na temelju filmova koji su im se prethodno svidjeli, model prilikom učenja mora za svaki film znati je li se on svidio korisniku ili nije. Modeli učenja bez nadzora najčešće se odnose na modele za grupiranje podataka temeljem sličnosti te detekciju anomalija u podacima. Primjer takvog 4
Description: