sreda, 27. januar 2016

Strojno učenje - PIA KOKELJ

Sprva se povprašajmo o sposobnosti učenja samega – kdo oziroma kaj se je sposobno učiti, na kakšen način in s kakšnim namenom? Ta sposobnost naj bi bila ena od osnovnih lastnosti inteligentnih sistemov, ki iz podatkov in predznanja oblikujejo uporabno zaključeno celoto in jo uporabljajo pri nadaljnem reševanju problemov. Predznanje v primeru sistemov lahko definiramo kot množico možnih rešitev oziroma modelov, ki ga bo ta sistem poskušal med učenjem izpolniti, že leta 1959 pa je bilo strojno učenje definirano kot področje študije, ki daje računalniku sposobnost učenja brez izrecnega programiranja.


Slika 1: Googlov ,database'


Namen umetne inteligence kot znanosti je ustvariti stroj, ki lahko posnema človekov um, za doseg tega cilja potrebuje sposonost učenja in s tem ne le vsrkavanja znanja, temveč tudi predstavljanje in povezovanje naučenega. Zato se strojno učenje večkrat uporablja v povezavi s statistikami in podatkovnim rudarjenjem kot pa dejansko umetno inteligenco, kot po definiciji: če stroj lahko izboljša njegov način opravljanja določene dane naloge na podlagi predznanja lahko rečemo, da se je nečesa naučil. To pa je povsem nekaj drugega kot izpolnjevanje nalog, vnaprej določenih za ta določen sistem.


Slika 2

Strojno učenje (angleško: machine learning) je podvrsta računalništva, in sicer proces pridobivanja znanja na podlagi izkušenj, pri katerem ne gre za učenje na pamet, temveč za odkrivanje nekih zakonitosti, pravil v podatkovnih bazah, s tem pa tudi odgovarjanjem na vprašanje, ki ni nujno sodelovalo pri učenju. Osnovna naloga strojnega učenja je modeliranje pojavov iz določenih podatkov, uporablja pa se na številnih področjih: v medicini, ekonomiji, industriji, prav tako pa tudi pri razumevanju naravnega jezika, analizi podatkov, odkrivanju zakonitosti v bazah podatkov, učenje prepoznavanj, igranje iger, podatkovno rudarjenje, preverjanje in klasifikacijo tekstov, nadzor dinamičnih procesov, gradnji baz znanja, reševanju nekaterih problemov, računalniškem prepoznavanju slik in zvoka, avtomatskem sklepanju in dokazovanju izrekov... Rezultati učenja samega so lahko različni, največkrat so to pravila, relacije, sistemi enačb, verjetnostne porazdelitve in funkcije, ti naučeni modeli pa poskušajo razložiti podatke in jih lahko uporabijo za odločanje pri opazovanju prihodnjih procesov.


Za lažje razumevanje delovanja strojnega učenja predlagam ogled spodnjega videa:






Vrste strojnega učenja lahko delimo na različne načine: 

Glede na nadzor učenja:

  •     vzpodbujevalno učenje, pri katerem algoritem uči na podlagi nagrajevanja in kaznovanja s taktiko največjega izoristka uporabnosti
  •     nadzorovano učenje, pri katerem algoritem uči stroj z vnaprej podanimi pari vhodnih podatkov, izhodni pa so točno določeni s strani nadzornika
  •     nenadzorovano učenje, pri katerem algoritem razdeli vnaprej dane vhodne podatke v več kategorij po nekih določenih kriterijih s svojimi značilnostmi, število teh kategorij ter in njihove značilnosti pa so povezane z algoritmom in vhodnimi podatki, kar pa poteka brez nadzora človeka

  •     Za razlago vrst strojnega učenja glede na nadzor priporočam spodnji video:





Glede na prilagajanje:

  •      ofline učenje, pri katerem se celotno učenje stroja izvede pred dejansko uporabo stroja
  •      inkrementalno učenje, pri katerem stroj učimo pred uporabo, a le 'ofline', če pa med uporabo zaznamo težavo, lahko opravimo naknadno oziroma dodatno učenje
  •      online učenje, pri katerem najprej izvedemo že prej omenjeno 'ofline' učenje, a z zmanjšanim naborom vzorcev učenja, med samo uporabo pa stroj sprotno dodatno učimo z dodajanjem vzorcev


Poznamo še veliko več vrst metod: 

  •      statistične metode: diskriminantna analiza, k-najbližjih sosedov, Bayesov klasifikator, naivni Bayesov klasifikator
  •      umetne nevronske mreže
  •      simbolično induktivno učenje: z odločitvenimi drevesi in pravili, učenjem konceptov, indukcijo logičnih programov... 


Med najbolj znanimi primeri strojnega učenja so: 

  •     nevronske mreže: naprave za obdelovanje informacij, ki pa delujejo na podlagi oziroma po vzoru človeških ali živalskih možganov
  •     skriti model Markova (SMM): model, najlažje opisan z dvema naključnima procesoma, prvi ustreza verigi Markova pri kateri so stanja in prehodi označeni z verjetnostjo stanje verig pa navzven ni vidno ali skrito, drugi pa daje vidne znake ustrezne verjetnosti porazdelitve odvisnosti od stanja v vsakem trenutku
  •     metoda podpornih vektorjev: metoda razvrščanja množice predmetov v razrede, gre za matematični postopek prepoznavanja vzorcev


Da se vrnem na začetek: vprašajmo se o sposobnosti učenja samega – kdo oziroma kaj se je sposobno učiti, na kakšen način in s kakšnim namenom? Na drugi strani te teme je zagotovo vprašanje o moralnih načelih in podatkih, ki jih pustimo strojem, da si jih zapomnijo in uporabljajo vnaprej. Strojno učenje smo spustili in začeli uporabljati na vseh področjih našega doživljanja, s tem pa ustvarili ogromno novih služb na tem področju, med drugim tudi nadzornike pretoka podatkov v različnih načinih pridobivanja znanja, razvila se je cela znanost v ozadju dojemanja in s tem tudi možnost za vse znanstvenike, ki jih zanima to še ne tako dobro raziskano področje umetne inteligence.

V vsakem primeru je strojno učenje koristno orodje, nezamudno in uporabno na različnih področjih.


 Viri:



Wikipedia: Machine learning. Dostopno na spletnem naslovu: https://en.wikipedia.org/wiki/Machine_learning


Krapež, Alenka: Tehnologije znanja pri predmetu informatika. Dostopno na spletnem naslovu: http://old.gimvic.org/predmeti/informatika/gradiva/html-ji/prva_stran1.html


Konenko, Igor: Strojno učenje. Dostopno na spletnem naslovu: https://www.fri.uni-lj.si/si/izobrazevanje/11813/class.html

Viri slik:



Slika 1. Dostopno na spletnem naslovu:  http://www.spiegel.de/

Slika 2: Dostopno na spletnem naslovu: http://www.gsts.ca/

Slika 3: Dostopno na spletnem naslovu: danielmiessler.com

Ni komentarjev:

Objavite komentar

Opomba: Komentarje lahko objavljajo le člani tega spletnega dnevnika.