Kako mašina uči: primeri umesto pravila
U prvom modulu videli smo da veštačka inteligencija pravila ne dobija od programera, nego ih „uči“ iz primera. Ali šta tačno znači da računar uči? U ovoj lekciji prolazimo kroz ceo postupak – od podataka do modela koji pogađa – i učimo kako se proverava da li je model zaista nešto naučio.
Učenje iz primera
Seti se kako si naučio da razlikuješ psa od mačke. Niko ti nije dao spisak pravila – video si mnogo pasa i mnogo mačaka i neko ti je rekao „ovo je pas“, „ovo je maca“. Posle nekog vremena prepoznaješ i životinje koje nikada ranije nisi video.
Mašinsko učenje radi slično: računaru damo mnogo primera sa tačnim odgovorom, a on traži pravilo koje povezuje primere i odgovore. Ono što na kraju nastane zove se model.
Četiri koraka mašinskog učenja
| Korak | Šta se radi | Primer: model prepoznaje voće |
|---|---|---|
| 1. podaci | skupe se primeri i tačni odgovori (oznake) | 300 fotografija jabuka, banana i pomorandži, svaka sa oznakom |
| 2. trening | računar menja „podešavanja“ modela dok ne počne da pogađa oznake | model uči da je banana izdužena i žuta, pomorandža okrugla i narandžasta… |
| 3. provera | model se testira na primerima koje nije video | 60 novih fotografija – koliko je pogodio? |
| 4. upotreba | model daje odgovore za nove primere | aplikacija kojoj pokažeš voće kamerom |
Zašto se proverava na novim primerima
Zamisli učenika koji je napamet naučio rešenja iz zbirke, a ne razume postupak. Na zadacima iz zbirke dobija sve tačno – ali na kontrolnom, sa novim brojevima, ne zna ništa.
Isto može da se desi i modelu: „nabuba“ primere, a ne nauči pravilo. To se zove preprilagođavanje (engl. overfitting). Zato podatke delimo: veći deo (na primer 80 %) koristimo za učenje, a manji deo (20 %) čuvamo za proveru – model ga ne vidi dok uči.
Kako merimo koliko je model dobar
Najjednostavnija mera je tačnost: koliko je odgovora od ukupnog broja bilo tačno.
tačnost = broj tačnih odgovora / broj svih primera · 100 %
Ako je model od 60 fotografija za proveru tačno prepoznao 54, tačnost je 54 / 60 · 100 % = 90 %.
| Prava oznaka ↓ / model kaže → | jabuka | banana | pomorandža |
|---|---|---|---|
| jabuka (20) | 18 | 0 | 2 |
| banana (20) | 0 | 20 | 0 |
| pomorandža (20) | 4 | 0 | 16 |
Ovakva tabela pokazuje gde model greši: banane uvek prepoznaje, ali ponekad meša jabuke i pomorandže (crvene pomorandže? zelene jabuke?). Ukupno je tačno 18 + 20 + 16 = 54 od 60.
Aktivnost: budi ti algoritam
U tabeli su životinje sa osobinama i oznakom. Pronađi jednostavno pravilo po kome se razlikuju ptice od ostalih životinja, pa ga proveri na novim primerima.
| Životinja | ima krila | leti | ima perje | broj nogu | oznaka |
|---|---|---|---|---|---|
| vrabac | da | da | da | 2 | ptica |
| golub | da | da | da | 2 | ptica |
| mačka | ne | ne | ne | 4 | nije ptica |
| pčela | da | da | ne | 6 | nije ptica |
| pas | ne | ne | ne | 4 | nije ptica |
| roda | da | da | da | 2 | ptica |
Novi primeri za proveru: pingvin (krila da, leti ne, perje da, 2 noge), slepi miš (krila da, leti da, perje ne, 2 noge), noj (krila da, leti ne, perje da, 2 noge).
Rešenje i šta iz toga učimo
Pravilo „ima krila i leti → ptica“ radi na svih 6 primera iz tabele, ali greši na proveri: pingvin i noj su ptice koje ne lete, a slepi miš leti, a nije ptica. Pravilo „ima perje → ptica“ je tačno na svim primerima – i na novim.
Zaključak: više pravila može da „radi“ na primerima za učenje, ali tek provera na novim primerima pokazuje koje je zaista dobro. Zato je važno da u podacima bude i neobičnih primera (pingvin, slepi miš).
Grupe predlažu pravila; nastavnik zatim „otkriva“ nove primere jedan po jedan i grupe proveravaju svoja pravila. Pobeđuje grupa čije pravilo najduže ostane tačno.
Česte zablude
- „Što duže model uči, to je bolji“ – posle nekog vremena model počne da pamti primere napamet i na novim primerima bude lošiji – zato se prati provera.
- „Tačnost 100 % na primerima za učenje znači savršen model“ – važna je tačnost na primerima koje model nije video.
- „Model razume šta je jabuka“ – model je naučio vezu između piksela i oznake, a ne šta je jabuka u stvarnom svetu.
Zadaci za vežbu
Pokušaj prvo sam, pa tek onda otvori rešenje.
- Poređaj korake: provera, upotreba, podaci, trening.
- Model je od 200 slika za proveru tačno prepoznao 170. Kolika je tačnost?
- Model koji prepoznaje cveće ima tačnost 99 % na slikama za učenje, a samo 60 % na slikama za proveru. Šta se verovatno desilo i šta bi pomoglo?
Rešenje 1: redosled
podaci → trening → provera → upotreba.
Rešenje 2: račun
170 / 200 · 100 % = 85 %.
Rešenje 3: objašnjenje
Desilo se preprilagođavanje: model je „naučio napamet“ slike za učenje umesto opšteg pravila. Pomaže više i raznovrsnijih slika, kraći trening ili jednostavniji model.
Proveri znanje
Otvori kviz
Kviz: kako mašina uči
1. Koji je pravilan redosled koraka mašinskog učenja?
2. Zašto se deo podataka čuva za proveru?
3. Model je tačno prepoznao 45 od 50 slika. Kolika je tačnost?
4. Šta je preprilagođavanje (overfitting)?
