25
1 Prof. dr. sc. Bojana Dalbelo Bašić Fakultet elektrotehnike i računarstva Zavod za elektroniku, mikroelektroniku, računalne i inteligentne sustave www.zemris.fer.hr/~bojana [email protected] FER © Bojana Dalbelo Bašić UMJETNA INTELIGENCIJA Uvod u strojno učenje V1.5

UMJETNA INTELIGENCIJA Uvod u strojno učenje

Embed Size (px)

Citation preview

Page 1: UMJETNA INTELIGENCIJA Uvod u strojno učenje

1

Prof. dr. sc. Bojana Dalbelo Bašić

Fakultet elektrotehnike i računarstvaZavod za elektroniku, mikroelektroniku, računalne i inteligentne sustave

www.zemris.fer.hr/[email protected]

FER© Bojana Dalbelo Bašić

UMJETNA INTELIGENCIJA

Uvod u strojno učenje

V1.5

Page 2: UMJETNA INTELIGENCIJA Uvod u strojno učenje

2

STROJNO UČENJE

(engl. Machine Learning)

Povijesno, razvoj ML započeo prije 50-tak god.:

Kako indukcijom/generalizacijom izvesti novo znanje

iz primjera/podataka?

Page 3: UMJETNA INTELIGENCIJA Uvod u strojno učenje

3

Zašto strojno učenje?

1. Automatizirano prikupljanje znanja (direktno iz podataka)

2. Rastuće količine informacija -> ima li znanja u njima?

Otkrivanje znanja u skupovima podataka (eng.data

mining, text mining)

3. Klasične metode nisu dovoljne, neki problemi su preteški

-> Napredak u izgradnji algoritama i teorije

Page 4: UMJETNA INTELIGENCIJA Uvod u strojno učenje

4

Zašto strojno učenje?

Automatizirano prikupljanje znanja

Razvoj umjetne inteligencije:

Tradicionalna shema program = algoritam + podaci.

Nova shema: ekspertno područno znanje - temeljni

oslonac u rješavanju problema.

Program = algoritam + podaci + znanje

Page 5: UMJETNA INTELIGENCIJA Uvod u strojno učenje

uporaba znanja:

programer inženjer baze znanja

5

Zašto strojno učenje?

Izuzetno kompleksan problem!

Primjer: Kako kodirati znanje o igranju šaha?

Što znači slaba struktura pješaka, dobro zaštićen kralj, itd…?

Kako znanje velemajstora oblikovati u ako-onda pravila?

Ideja: načiniti sustav koji će automatski stjecati znanje (visoko apstraktne koncepte ili strategije rješavanja

problema) kroz iskustvo tj. primjere,

kao što to čini čovjek.

Program = algoritam + podaci + znanje

Važno: djelotvornog automatiziranog prikupljanja znanjato prvenstveno na temelju primjera,• izvođenja novog znanja.

Page 6: UMJETNA INTELIGENCIJA Uvod u strojno učenje

7

Otkrivanje znanja u (velikim) skupovima podataka (engl. data mining)

Medicinska dijagnostika

9714 zapisa, svaki opisuje tijek trudnoće i poroda

pacijenta

svaki zapis sadrži 215 značajki

Page 7: UMJETNA INTELIGENCIJA Uvod u strojno učenje

8

Otkrivanje znanja u (velikim) skupovima podataka (engl. data mining)

Učenjem predvidjeti klasu pacijenata s visokim rizikom za

hitan carski rez.

Page 8: UMJETNA INTELIGENCIJA Uvod u strojno učenje

9

Otkrivanje znanja u (velikim) skupovima podataka (engl. data mining)

Analiza rizika kod dodjele kredita

Page 9: UMJETNA INTELIGENCIJA Uvod u strojno učenje

10

Otkrivanje znanja u (velikim) skupovima podataka (engl. data mining)

Ostali primjeri predviđanja…

prevencija “churna”

Page 10: UMJETNA INTELIGENCIJA Uvod u strojno učenje

11

Problemi previše složeni da bi se riješili na uobičajeni način

Računalom upravljano vozilo

Učenje strategija vožnje za autonomno upravljanje

automobilom brzinom 70 km/h na duljini od 120 km

Page 11: UMJETNA INTELIGENCIJA Uvod u strojno učenje

12

Problemi previše složeni da bi se riješili na uobičajeni način

Učenje se primjenjuje na različite baze podataka da bi se

otkrile pravilnosti implicitno sadržane u podacima.

Učenje klasificiranja novih astronomskih struktura

NASA – stabla odluke korištena za klasifikaciju nebeskih

objekata dobivena Palomar Observatory Sky Survey

(Fayyad, et al. 1995). Sustav automatski klasificira sve

objekte dobivene pregledom neba - 3 terabyta podataka

slika.

Page 12: UMJETNA INTELIGENCIJA Uvod u strojno učenje

13

Problemi previše složeni da bi se riješili na uobičajeni način

Učenje se primjenjuje svuda gdje je potrebno efikasno

pretraživati veliki prostor stanja.

Učenje igranja backgammona na razini svjetskog

prvaka

Najuspješnije implementacije igara na računalu temelje

se na učenju

Najbolji svjetski program TD-GAMMON (Tesauro, 1992,

1995) naučio je strategiju igranja (na svjetskoj razini) na

temelju više od 106 odigranih partija protiv samog sebe

Page 13: UMJETNA INTELIGENCIJA Uvod u strojno učenje

14

Problemi previše složeni da bi se riješili na uobičajeni način

Raspoznavanje rukom pisanog teksta

Page 14: UMJETNA INTELIGENCIJA Uvod u strojno učenje

15

Problemi previše složeni da bi se riješili na uobičajeni način

Raspoznavanje rukom pisanih znakova

Primjer: KLASIFIKATOR ZNAMENAKA

Znak tri kako je TISKAN U KNJIZI i njegova

DIGITALIZIRANA SLIKA u razlučivosti 8x8 slikovnih

elemenata.

3

Page 15: UMJETNA INTELIGENCIJA Uvod u strojno učenje

16

Problemi previše složeni da bi se riješili na uobičajeni način

Sustav treba odlučivati kojoj od unaprijed definiranih

klasa pripada predočeni, ulazni uzorak. Posao koji bi

takav sustav obavljao naziva se klasifikacija uzoraka.

Klasifikator znamenaka

0

123456789

Ulaz8x8=64 slikovnih elementa

Izlaz

Page 16: UMJETNA INTELIGENCIJA Uvod u strojno učenje

17

Problemi previše složeni da bi se riješili na uobičajeni način

Zamislimo sada da želimo načiniti sustav koji će

raspoznavati rukom pisane znakove.

Što još klasificiramo?

Problem kod klasifikacije rukom pisanih znamenaka:

Postoji nebrojeno varijacija između uzoraka za jedan te

isti znak.

Page 17: UMJETNA INTELIGENCIJA Uvod u strojno učenje

18

Problemi previše složeni da bi se riješili na uobičajeni način

Modeliranje sustava: pohrana mogućih uzoraka u

memoriji

64 ulaza za jedan uzorak

Pohranjivanje 264 = 1.8 1019 različitih uzoraka u

memoriji

Uspoređivanje ulaznog uzorka s onim u memoriji

Page 18: UMJETNA INTELIGENCIJA Uvod u strojno učenje

19

Problemi previše složeni da bi se riješili na uobičajeni način

Kada bi uspoređivanje uzorka na ulazu s jednim uzorkom

u memoriji trajalo jednu desetinku milisekunde, može se

izračunati da bi nam za uspoređivanje jednog uzorka sa

svima u memoriji bilo potrebno prosječno oko…

Rješenje konceptualno jednostavno, nije prikladno za

primjenu jer nije učinkovito!

RJEŠENJE: UČENJE SUSTAVA NA NAČIN KAO ŠTO

TO RADI ČOVJEK!

Page 19: UMJETNA INTELIGENCIJA Uvod u strojno učenje

21

Problemi previše složeni da bi se riješili na uobičajeni način

Zaključak:

Izuzetno široka primjena metoda strojnog učenje

(umjetne inteligencije) na rješavanje složenih problema

na sva područja ljudske djelatnosti!

Page 20: UMJETNA INTELIGENCIJA Uvod u strojno učenje

22

STROJNO UČENJE

Strojno učenje bavi se izgradnjom računarskih sustava

koji automatski poboljšavaju svoje performanse kroz

iskustvo.

Kakav učinak bi imalo postizanje cilja?

Nema univerzalnog algoritma za učenje! – ipak

izumljeni su učinkoviti algoritmi koji rješavaju određen tip

problema (+ bolje teoretsko razumijevanje učenja).

Postoji puno uspješnih implementacija algoritama za

učenje (primjeri…)

razumijevanje algoritama za strojno učenje

razumijevanje ljudske sposobnosti (ili ograničenja) za učenje.

Page 21: UMJETNA INTELIGENCIJA Uvod u strojno učenje

23

Neke uspješne primjene strojnog učenja

Otkrivanje znanja u (velikim) skupovima podataka (engl.

data mining)

Programske implementacije koje nije moguće riješiti

klasičnim programiranjem

Prilagodljivi programski sustavi

Bioinformatika

Obrada prirodnog jezika

Raspoznavanje govora

Raspoznavanje uzoraka

Inteligentno upravljanje

Predviđanje trendova

Page 22: UMJETNA INTELIGENCIJA Uvod u strojno učenje

24

Vrste učenja

Podržano učenje (reinforcement learning)

Podaci su u obliku (x, y) tj. ulazna vrijednost x, ciljna

vrijednost y

Učimo funkciju f(x)=y funkcija koja primjeru x pridružuje

klasu ili realnu vrijednost y

Nadzirano

(supervised)

Nenadzirano

(unsupervised)

učenje

Page 23: UMJETNA INTELIGENCIJA Uvod u strojno učenje

25

Vrste učenja

Regresija Raspoznavanje

uzoraka

Nadzirano

učenje

Učenje funkcija

(metričkom prostoru)

Učenje klasificiranja

jedna ili više klasa

izlaz

Page 24: UMJETNA INTELIGENCIJA Uvod u strojno učenje

26

Vrste učenja

Tri najčešća oblika primjene algoritama strojnog učenja:

Programske implementacije koje nije moguće

napraviti na klasičan način

Otkrivanje znanja u skupovima podataka –

(engl. data mining)

Programi koji se trebaju dinamički mijenjati i

prilagoĎavati nekim uvjetima

Page 25: UMJETNA INTELIGENCIJA Uvod u strojno učenje

27

Literatura

Mitchell, T.: “Machine Learning”, McGraw-Hill Comp.,

1997. (Prof. Tom M. Mitchell, Carnegie Mellon University,

http://www.cs.cmu.edu/~tom)