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.
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:
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.
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
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
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.