SlideShare a Scribd company logo
1 of 25
Osnovne grupe algoritama
mašinskog učenja i njihove osobine
1
Cilj nedelje
• Za svaki prikazani algoritam:
– Osnovni principi funkcionisanja
– Okolnosti u kojima daje najbolje rezultate
– Parametri podešavanja –njihov uticaj, najbolji
opsezi vrednosti u različitim okolnostima
2
Osnovne grupe algoritama mašinskog
učenja i njihove osobine
• Načini grupisanja
– Na osnovu načina na koji algoritam uči
– Na osnovu načina na koji algoritam radi
3
Grupisanje algoritama na osnovu
načina na koji uče
• Nadgledano i nenadgledano učenje
• Online i batch učenje
• Učenje zasnovano na instancama i učenje
zasnovano na modelu
4
Nadgledano i nenadgledano učenje
• Nadgledano učenje
– Podaci sadrže i rešenje
• Klasifikacija
• Regresija
• Nenadgledano učenje
– Podaci nisu označeni
• Polunadgledano učenje
– Podaci za trening su delimično označeni
• Učenje sa podrškom (reinforcement)
– Kod softverskih agenata
5
Nadgledano učenje
• Za predviđanje budućnosti se koriste podaci
• Uspotavljanje funkcije koja povezuje ulaznu (x)
i izlaznu promenljivu (y)
– y = f(x)
• Cilj – aproksimiranje f-je, tako da za novo x
može da se predvidi y
• Klasifikacija i regresija
6
Regresija
• Vrednost izlazne promenljive y je kontinualna i
numerička
• Količine ili veličine
• Predviđanje cene kuće
• Tačnost modela se obično izražava srednjom
kvadratnom greškom (suma razlike kvadrata tačne i
predviđene vrednosti)
• Algoritmi
– Linearna regresija
– Polinomijalna regresija
– Regresiona stabla
7
Klasifikacija
• Aproksimacija f-je koja povezuje ulazne promenljive sa
diskretnim izlaznim vrednostima
• y - kategorija koju funkcija predviđa
• Cena kuće veća ili manja od preporučene
• Tačnost se izračunava kao procenat tačno klasifikovanih
primeraka, u odnosu na sve klasifikovane promerke
• Algoritmi
– Logistička regresija
– Naivni bayes
– Stabla odlučivanja
– KNN
8
Nenadgledano učenje
• Ulazni podaci nisu označeni
• Traži se pravilnost u podacima
• Zadaci
– Grupisanje (klasterovanje)
• Podaci se svrstavaju u grupe u cilju maksimacije sličnosti ili minimizacije različitosti
– Smanjenje dimenzionalnosti
• Traži se manji skup promenljivih koji zadržava glavne obrasce iz početnog skupa
promenljivih
– Asocijativna pravila
• Analiza velikih količina podataka i pronalaženje veza između atributa
• Analiza onih koji čitaju neki blog
• Algoritmi
– K-means
– PCA (principal component analysis)
– Učenje na bazi asocijativnih pravila (apriori)
9
Polunadgledano učenje
• Kombinacija nadgledanog i nenadgledanog
učenja
• Obeležen (manji deo), neobeležen (veći deo)
• Razlozi
– Označavanje velikih količina podataka je skupo
– Moguće su greške, ako to radi čovek
• Google photos
10
Učenje sa podrškom (reinforcement
learning)
• Obuka softverskih agenata
• Akcije i nagrada (pozitivna i negativna)
– Signal podrške
• Agent koristi signal za korekciju svojeg
ponašanja
• AlphaGo – pobedio u igri Go
11
Paketno i kontinualno učenje
(Batch and online)
• Inkrementalno učenje
• Batch algoritmi
– Nisu sposobni za inkrementalno učenje
– Offline
– Novi podaci se dodaju celom skupu i ponovo se
trenira
– Automatizacija procesa
• Treniranje u redovnim intervalima
– Stabla odlučivanja, SVM, K-NN, Logistička regresija
12
Paketno i kontinualno učenje
(Batch and online)
• Online algoritmi
– Pojedinačne instance ili mali paketi
– Kod sistema koji koji imaju kontinualni priliv
podataka
– U slučaju ograničenih resursa
– Za treniranje sistema sa ogromnim količinama
podataka
– Brzina učenja (learning rate)
– Randomized weighted majority, Winnow
algorithm, Stochastic gradient descent, Perceptron
13
Učenje na bazi instanci i na bazi
modela
• Kako se vrši generalizacija
• Učenje na osnovu instanci
– Sličnost novih i postojećih instanci
– Rote (učenje napamet)
– K-NN
– Nearest nested hyper-rectangles
– Learning Vector Quantization
• Učenje na osnovu modela
– Prvo se napravi model, pa se on koristi za predviđanje
– Stabla odlučivanja, logistička regresija, SVM ...
14
Podela algoritama na osnovu načina
na koji rade
• Na osnovu načina na koji algoritam radi
– Regresioni,
– algoritmi zasnovani na instancama,
– algoritmi zasnovani na stablima odlučivanja,
– algoritmi sa grupisanjem (klasterovanjem),
algoritmi sa asocijativnim pravilima,
– algoritmi sa višestrukim modelima,
– Algoritmi zasnovani na kernelima
15
Bias i varijansa
• Dva međusobno suprotstavljena pojma
• Komplikovaniji modeli
– Preterano prilagođavanje podacima (overfitting)
– sistematske greška (bias) i varijansa (variance).
• Loši modeli
– Nije dovoljno tačan i ne odgovara podacima
– Nije dovoljno precizan i postoji mnogo varijacija u rezultatu
• Složeni klasifikatori
– Poboljšavaju sistematsku grešku (smanjuju je), ali se povećava
varijansa
– Smanjivanje varijanse vodi ka povećanju sistematske greške
• Ne može se imati sve
16
Bias i varijansa
• Sistematska greška (bias) - razlika između
prosečnog predviđanja modela i tačne vrednosti
koju pokušavamo da predvidimo.
• Varijansa - promenljivost u predviđanju od strane
modela.
• Y=f(X) + e
Err(x) = bias2 + varijansa + greška
17
Veza sistematske greške i varijanse
18
Odnos sistematske greške i varijanse
19
Parametarski i neparametarski metodi
• Parametarski algoritmi - broj parametara je
unapred fiksiran.
– Prilikom učenja se postavljaju neke pretpostavke
• oblik funkcije koja se traži.
• dva koraka
1. Bira se oblik funkcije
2. Traže se koeficijenti te funkcije
• Neparametarski algoritmi - ne postavljaju
pretpostavke o osnovnoj funkciji mapiranja
20
Parametarski algoritmi
• linearna funkcija mapiranja, koja se koristi kod linearne
regresije.
• a0 + a1x1 + a2x2 = 0
– a0, a1 i a2 koeficijenti linije
– x1 i x2 - dve ulazne promenljive
• Učenje znatno jednostavnije
– Pronaći koeficijente ove linije
• Pogrešna pretpostavka
– Šta ako nepoznata funkcija nije linearna?
• logistička regresija, perceptron, naivni bajes, linearna
diskrminantna analiza itd.
21
Neparametarski algoritmi
• Ipak ima parametara
– Složeniji modeli sa povećanjem količine ulaznih
podataka
– parametarski model - unapred definisan broj
parametara
– neparametarski model - broj parametara može da
potencijalno postane beskonačan.
• u stanju da se prilagode većem broju funkcija.
• k-najbližih suseda (k-nearest neighbours)
• Stabla odlučivanja (CART, C4.5), SVM (kada se
koristi rbf kernel funkcija) itd.
22
Parametarski algoritmi
• Prednosti
– Jednostavniji
– vrlo brzo se dobijaju modeli
– za njihovu obuku nisu potrebne velike količine
podataka.
• Nedostaci
– izborom funkcije unapred se ograničavaju mogućnosti
učenja,
– teško primeniti ove metode na složene probleme,
– u praksi modeli retko odgovaraju pretpostavljenoj
osnovnoj funkciji.
23
Neparametarski algoritmi
• Prednosti
– Fleksibilnost (mogu da pronađu veliki broj funkcija),
– Snaga (nema pretpostavki o osnovnoj funkciji)
– Performanse (mogu da dovedu do boljih performansi
modela, prilikom predviđanja).
• Nedostaci
– Potrebna velika količina podataka da bi se dobila funkcija,
– Sporije se treniraju
– Postoji veći rizik od preteranog prilagođavanja (overfitting)
– Teže objasniti kako se došlo do nekog rezultata.
24
Grupe algoritama
• Algoritmi zasnovani na stablima odlučivanja (decision tree)
– CART
• Algoritmi zasnovani na sličnosti instanci (instance-based)
– k-NN
• Kernel metodi
– SVM
• Bajezijan metodi
• Veštačke neuronske mreže
• Algoritmi zasnovani na asocijativnim pravilima
• Kombinovani (ensemble) metodi
– Random Forest
25

More Related Content

What's hot

текстуални задаци са множењем и дељењем
текстуални задаци са множењем и  дељењемтекстуални задаци са множењем и  дељењем
текстуални задаци са множењем и дељењем
Milica Vasiljevic
 
Hemija r1 atomska_struktura_materije_energetski_nivoi_podnivoi_i_atomske_orbi...
Hemija r1 atomska_struktura_materije_energetski_nivoi_podnivoi_i_atomske_orbi...Hemija r1 atomska_struktura_materije_energetski_nivoi_podnivoi_i_atomske_orbi...
Hemija r1 atomska_struktura_materije_energetski_nivoi_podnivoi_i_atomske_orbi...
NašaŠkola.Net
 
Toplotne mašine i njihova efikasnost
Toplotne mašine i njihova efikasnostToplotne mašine i njihova efikasnost
Toplotne mašine i njihova efikasnost
Marina Dorocki
 
Molekulske osnove nasledjivanja
Molekulske osnove nasledjivanjaMolekulske osnove nasledjivanja
Molekulske osnove nasledjivanja
Sasa Lalevic
 
Trigonometrijske formule
Trigonometrijske formuleTrigonometrijske formule
Trigonometrijske formule
mArKoBK3
 
6.kontrolni zadatak, duž i jedinice mere
6.kontrolni zadatak, duž i jedinice mere6.kontrolni zadatak, duž i jedinice mere
6.kontrolni zadatak, duž i jedinice mere
Snežana Kovačević
 

What's hot (20)

Zapremina
ZapreminaZapremina
Zapremina
 
текстуални задаци са множењем и дељењем
текстуални задаци са множењем и  дељењемтекстуални задаци са множењем и  дељењем
текстуални задаци са множењем и дељењем
 
Omov zakon
Omov zakonOmov zakon
Omov zakon
 
Углови на трансверзали
Углови на трансверзалиУглови на трансверзали
Углови на трансверзали
 
Oblici nastavnog rada
Oblici nastavnog radaOblici nastavnog rada
Oblici nastavnog rada
 
Извори енергије
Извори енергијеИзвори енергије
Извори енергије
 
Domaće životinje i mladunčad
Domaće životinje i mladunčadDomaće životinje i mladunčad
Domaće životinje i mladunčad
 
Dan planete zemlje 2019
Dan planete zemlje 2019Dan planete zemlje 2019
Dan planete zemlje 2019
 
Hemija r1 atomska_struktura_materije_energetski_nivoi_podnivoi_i_atomske_orbi...
Hemija r1 atomska_struktura_materije_energetski_nivoi_podnivoi_i_atomske_orbi...Hemija r1 atomska_struktura_materije_energetski_nivoi_podnivoi_i_atomske_orbi...
Hemija r1 atomska_struktura_materije_energetski_nivoi_podnivoi_i_atomske_orbi...
 
Mutacije
MutacijeMutacije
Mutacije
 
Fizika 6 uvod test
Fizika 6 uvod testFizika 6 uvod test
Fizika 6 uvod test
 
Promet materije i energije u ćeliji
Promet materije i energije u ćelijiPromet materije i energije u ćeliji
Promet materije i energije u ćeliji
 
Nastavne metode
Nastavne metodeNastavne metode
Nastavne metode
 
Dijabetes
DijabetesDijabetes
Dijabetes
 
Toplotne mašine i njihova efikasnost
Toplotne mašine i njihova efikasnostToplotne mašine i njihova efikasnost
Toplotne mašine i njihova efikasnost
 
Molekulske osnove nasledjivanja
Molekulske osnove nasledjivanjaMolekulske osnove nasledjivanja
Molekulske osnove nasledjivanja
 
Merenje mase
Merenje maseMerenje mase
Merenje mase
 
Trigonometrijske formule
Trigonometrijske formuleTrigonometrijske formule
Trigonometrijske formule
 
6.kontrolni zadatak, duž i jedinice mere
6.kontrolni zadatak, duž i jedinice mere6.kontrolni zadatak, duž i jedinice mere
6.kontrolni zadatak, duž i jedinice mere
 
Pojam energije. obnovljivi i neobnoljivi izvori.
Pojam energije. obnovljivi i neobnoljivi izvori.Pojam energije. obnovljivi i neobnoljivi izvori.
Pojam energije. obnovljivi i neobnoljivi izvori.
 

Similar to OKMU 2.1 Osnovne grupe algoritama mašinskog učenja i njihove osobine

Similar to OKMU 2.1 Osnovne grupe algoritama mašinskog učenja i njihove osobine (6)

OKMU 2.5 Udruživanje algoritama
OKMU 2.5 Udruživanje algoritamaOKMU 2.5 Udruživanje algoritama
OKMU 2.5 Udruživanje algoritama
 
OKMU 1.1 Vrste i načini pripreme podataka
OKMU 1.1 Vrste i načini pripreme podatakaOKMU 1.1 Vrste i načini pripreme podataka
OKMU 1.1 Vrste i načini pripreme podataka
 
010 Modeliranje 2021.pdf
010 Modeliranje 2021.pdf010 Modeliranje 2021.pdf
010 Modeliranje 2021.pdf
 
Model podataka.pdf
Model podataka.pdfModel podataka.pdf
Model podataka.pdf
 
OKAP 2.2 Python programiranje - korak po korak
OKAP 2.2 Python programiranje - korak po korakOKAP 2.2 Python programiranje - korak po korak
OKAP 2.2 Python programiranje - korak po korak
 
OKMU 2.4 Klasifikacija i regresija pomoću metode potpornih vektora
OKMU 2.4 Klasifikacija i regresija pomoću metode potpornih vektoraOKMU 2.4 Klasifikacija i regresija pomoću metode potpornih vektora
OKMU 2.4 Klasifikacija i regresija pomoću metode potpornih vektora
 

More from Milan Zdravković

Key EURAXESS online platform functionalities and selected Extranet tools
Key EURAXESS online platform functionalities and selected Extranet toolsKey EURAXESS online platform functionalities and selected Extranet tools
Key EURAXESS online platform functionalities and selected Extranet tools
Milan Zdravković
 

More from Milan Zdravković (20)

Investing in scientific startups - Perspective from both sides
Investing in scientific startups - Perspective from both sidesInvesting in scientific startups - Perspective from both sides
Investing in scientific startups - Perspective from both sides
 
Discovery and validation with scientific method - the Lean Startup approach
Discovery and validation with scientific method - the Lean Startup approachDiscovery and validation with scientific method - the Lean Startup approach
Discovery and validation with scientific method - the Lean Startup approach
 
Key EURAXESS online platform functionalities and selected Extranet tools
Key EURAXESS online platform functionalities and selected Extranet toolsKey EURAXESS online platform functionalities and selected Extranet tools
Key EURAXESS online platform functionalities and selected Extranet tools
 
Funding & Grants in Horizon Europe
Funding & Grants in Horizon EuropeFunding & Grants in Horizon Europe
Funding & Grants in Horizon Europe
 
Open Science in HORIZON Grant Agreement
Open Science in HORIZON Grant AgreementOpen Science in HORIZON Grant Agreement
Open Science in HORIZON Grant Agreement
 
EURAXESS Online Tools To Support Researcher Career Development
EURAXESS Online Tools To Support Researcher Career DevelopmentEURAXESS Online Tools To Support Researcher Career Development
EURAXESS Online Tools To Support Researcher Career Development
 
UPRO05 - Automatizacija procesa
UPRO05 - Automatizacija procesaUPRO05 - Automatizacija procesa
UPRO05 - Automatizacija procesa
 
UPRO05 - Automatizacija procesa
UPRO05 - Automatizacija procesaUPRO05 - Automatizacija procesa
UPRO05 - Automatizacija procesa
 
Social media promotion
Social media promotionSocial media promotion
Social media promotion
 
UPRO01 - Modeliranje poslovnih procesa i BPMN
UPRO01 - Modeliranje poslovnih procesa i BPMNUPRO01 - Modeliranje poslovnih procesa i BPMN
UPRO01 - Modeliranje poslovnih procesa i BPMN
 
UPRO01 - Modeliranje poslovnih procesa
UPRO01 -  Modeliranje poslovnih procesaUPRO01 -  Modeliranje poslovnih procesa
UPRO01 - Modeliranje poslovnih procesa
 
UPRO00 - Uvod u BPM
UPRO00 - Uvod u BPMUPRO00 - Uvod u BPM
UPRO00 - Uvod u BPM
 
MEZN00 - Uvod u upravljanje znanjem
MEZN00 - Uvod u upravljanje znanjemMEZN00 - Uvod u upravljanje znanjem
MEZN00 - Uvod u upravljanje znanjem
 
PA Training Nov 5-6 Day 2 - Talk 2. Content Management Best Practices
PA Training Nov 5-6 Day 2 - Talk 2. Content Management Best PracticesPA Training Nov 5-6 Day 2 - Talk 2. Content Management Best Practices
PA Training Nov 5-6 Day 2 - Talk 2. Content Management Best Practices
 
PA Training Nov 5-6 Day 2 - Talk 1. Web Visibility, SEO elements in content c...
PA Training Nov 5-6 Day 2 - Talk 1. Web Visibility, SEO elements in content c...PA Training Nov 5-6 Day 2 - Talk 1. Web Visibility, SEO elements in content c...
PA Training Nov 5-6 Day 2 - Talk 1. Web Visibility, SEO elements in content c...
 
PA Training Nov 5-6 Day 1 - Talk 1. EURAXESS Portal updates
PA Training Nov 5-6 Day 1 - Talk 1. EURAXESS Portal updatesPA Training Nov 5-6 Day 1 - Talk 1. EURAXESS Portal updates
PA Training Nov 5-6 Day 1 - Talk 1. EURAXESS Portal updates
 
PA Training Nov 5-6 Day 1 - Talk 4. Compliance issues
PA Training Nov 5-6 Day 1 - Talk 4. Compliance issuesPA Training Nov 5-6 Day 1 - Talk 4. Compliance issues
PA Training Nov 5-6 Day 1 - Talk 4. Compliance issues
 
PA Training Nov 5-6 Day 2 - Talk 3. Accessibility Checker
PA Training Nov 5-6 Day 2 - Talk 3. Accessibility CheckerPA Training Nov 5-6 Day 2 - Talk 3. Accessibility Checker
PA Training Nov 5-6 Day 2 - Talk 3. Accessibility Checker
 
IT1 1.5 Analiza podataka
IT1 1.5 Analiza podatakaIT1 1.5 Analiza podataka
IT1 1.5 Analiza podataka
 
IT1 1.3 Internet pod haubom
IT1 1.3 Internet pod haubomIT1 1.3 Internet pod haubom
IT1 1.3 Internet pod haubom
 

OKMU 2.1 Osnovne grupe algoritama mašinskog učenja i njihove osobine

  • 1. Osnovne grupe algoritama mašinskog učenja i njihove osobine 1
  • 2. Cilj nedelje • Za svaki prikazani algoritam: – Osnovni principi funkcionisanja – Okolnosti u kojima daje najbolje rezultate – Parametri podešavanja –njihov uticaj, najbolji opsezi vrednosti u različitim okolnostima 2
  • 3. Osnovne grupe algoritama mašinskog učenja i njihove osobine • Načini grupisanja – Na osnovu načina na koji algoritam uči – Na osnovu načina na koji algoritam radi 3
  • 4. Grupisanje algoritama na osnovu načina na koji uče • Nadgledano i nenadgledano učenje • Online i batch učenje • Učenje zasnovano na instancama i učenje zasnovano na modelu 4
  • 5. Nadgledano i nenadgledano učenje • Nadgledano učenje – Podaci sadrže i rešenje • Klasifikacija • Regresija • Nenadgledano učenje – Podaci nisu označeni • Polunadgledano učenje – Podaci za trening su delimično označeni • Učenje sa podrškom (reinforcement) – Kod softverskih agenata 5
  • 6. Nadgledano učenje • Za predviđanje budućnosti se koriste podaci • Uspotavljanje funkcije koja povezuje ulaznu (x) i izlaznu promenljivu (y) – y = f(x) • Cilj – aproksimiranje f-je, tako da za novo x može da se predvidi y • Klasifikacija i regresija 6
  • 7. Regresija • Vrednost izlazne promenljive y je kontinualna i numerička • Količine ili veličine • Predviđanje cene kuće • Tačnost modela se obično izražava srednjom kvadratnom greškom (suma razlike kvadrata tačne i predviđene vrednosti) • Algoritmi – Linearna regresija – Polinomijalna regresija – Regresiona stabla 7
  • 8. Klasifikacija • Aproksimacija f-je koja povezuje ulazne promenljive sa diskretnim izlaznim vrednostima • y - kategorija koju funkcija predviđa • Cena kuće veća ili manja od preporučene • Tačnost se izračunava kao procenat tačno klasifikovanih primeraka, u odnosu na sve klasifikovane promerke • Algoritmi – Logistička regresija – Naivni bayes – Stabla odlučivanja – KNN 8
  • 9. Nenadgledano učenje • Ulazni podaci nisu označeni • Traži se pravilnost u podacima • Zadaci – Grupisanje (klasterovanje) • Podaci se svrstavaju u grupe u cilju maksimacije sličnosti ili minimizacije različitosti – Smanjenje dimenzionalnosti • Traži se manji skup promenljivih koji zadržava glavne obrasce iz početnog skupa promenljivih – Asocijativna pravila • Analiza velikih količina podataka i pronalaženje veza između atributa • Analiza onih koji čitaju neki blog • Algoritmi – K-means – PCA (principal component analysis) – Učenje na bazi asocijativnih pravila (apriori) 9
  • 10. Polunadgledano učenje • Kombinacija nadgledanog i nenadgledanog učenja • Obeležen (manji deo), neobeležen (veći deo) • Razlozi – Označavanje velikih količina podataka je skupo – Moguće su greške, ako to radi čovek • Google photos 10
  • 11. Učenje sa podrškom (reinforcement learning) • Obuka softverskih agenata • Akcije i nagrada (pozitivna i negativna) – Signal podrške • Agent koristi signal za korekciju svojeg ponašanja • AlphaGo – pobedio u igri Go 11
  • 12. Paketno i kontinualno učenje (Batch and online) • Inkrementalno učenje • Batch algoritmi – Nisu sposobni za inkrementalno učenje – Offline – Novi podaci se dodaju celom skupu i ponovo se trenira – Automatizacija procesa • Treniranje u redovnim intervalima – Stabla odlučivanja, SVM, K-NN, Logistička regresija 12
  • 13. Paketno i kontinualno učenje (Batch and online) • Online algoritmi – Pojedinačne instance ili mali paketi – Kod sistema koji koji imaju kontinualni priliv podataka – U slučaju ograničenih resursa – Za treniranje sistema sa ogromnim količinama podataka – Brzina učenja (learning rate) – Randomized weighted majority, Winnow algorithm, Stochastic gradient descent, Perceptron 13
  • 14. Učenje na bazi instanci i na bazi modela • Kako se vrši generalizacija • Učenje na osnovu instanci – Sličnost novih i postojećih instanci – Rote (učenje napamet) – K-NN – Nearest nested hyper-rectangles – Learning Vector Quantization • Učenje na osnovu modela – Prvo se napravi model, pa se on koristi za predviđanje – Stabla odlučivanja, logistička regresija, SVM ... 14
  • 15. Podela algoritama na osnovu načina na koji rade • Na osnovu načina na koji algoritam radi – Regresioni, – algoritmi zasnovani na instancama, – algoritmi zasnovani na stablima odlučivanja, – algoritmi sa grupisanjem (klasterovanjem), algoritmi sa asocijativnim pravilima, – algoritmi sa višestrukim modelima, – Algoritmi zasnovani na kernelima 15
  • 16. Bias i varijansa • Dva međusobno suprotstavljena pojma • Komplikovaniji modeli – Preterano prilagođavanje podacima (overfitting) – sistematske greška (bias) i varijansa (variance). • Loši modeli – Nije dovoljno tačan i ne odgovara podacima – Nije dovoljno precizan i postoji mnogo varijacija u rezultatu • Složeni klasifikatori – Poboljšavaju sistematsku grešku (smanjuju je), ali se povećava varijansa – Smanjivanje varijanse vodi ka povećanju sistematske greške • Ne može se imati sve 16
  • 17. Bias i varijansa • Sistematska greška (bias) - razlika između prosečnog predviđanja modela i tačne vrednosti koju pokušavamo da predvidimo. • Varijansa - promenljivost u predviđanju od strane modela. • Y=f(X) + e Err(x) = bias2 + varijansa + greška 17
  • 18. Veza sistematske greške i varijanse 18
  • 19. Odnos sistematske greške i varijanse 19
  • 20. Parametarski i neparametarski metodi • Parametarski algoritmi - broj parametara je unapred fiksiran. – Prilikom učenja se postavljaju neke pretpostavke • oblik funkcije koja se traži. • dva koraka 1. Bira se oblik funkcije 2. Traže se koeficijenti te funkcije • Neparametarski algoritmi - ne postavljaju pretpostavke o osnovnoj funkciji mapiranja 20
  • 21. Parametarski algoritmi • linearna funkcija mapiranja, koja se koristi kod linearne regresije. • a0 + a1x1 + a2x2 = 0 – a0, a1 i a2 koeficijenti linije – x1 i x2 - dve ulazne promenljive • Učenje znatno jednostavnije – Pronaći koeficijente ove linije • Pogrešna pretpostavka – Šta ako nepoznata funkcija nije linearna? • logistička regresija, perceptron, naivni bajes, linearna diskrminantna analiza itd. 21
  • 22. Neparametarski algoritmi • Ipak ima parametara – Složeniji modeli sa povećanjem količine ulaznih podataka – parametarski model - unapred definisan broj parametara – neparametarski model - broj parametara može da potencijalno postane beskonačan. • u stanju da se prilagode većem broju funkcija. • k-najbližih suseda (k-nearest neighbours) • Stabla odlučivanja (CART, C4.5), SVM (kada se koristi rbf kernel funkcija) itd. 22
  • 23. Parametarski algoritmi • Prednosti – Jednostavniji – vrlo brzo se dobijaju modeli – za njihovu obuku nisu potrebne velike količine podataka. • Nedostaci – izborom funkcije unapred se ograničavaju mogućnosti učenja, – teško primeniti ove metode na složene probleme, – u praksi modeli retko odgovaraju pretpostavljenoj osnovnoj funkciji. 23
  • 24. Neparametarski algoritmi • Prednosti – Fleksibilnost (mogu da pronađu veliki broj funkcija), – Snaga (nema pretpostavki o osnovnoj funkciji) – Performanse (mogu da dovedu do boljih performansi modela, prilikom predviđanja). • Nedostaci – Potrebna velika količina podataka da bi se dobila funkcija, – Sporije se treniraju – Postoji veći rizik od preteranog prilagođavanja (overfitting) – Teže objasniti kako se došlo do nekog rezultata. 24
  • 25. Grupe algoritama • Algoritmi zasnovani na stablima odlučivanja (decision tree) – CART • Algoritmi zasnovani na sličnosti instanci (instance-based) – k-NN • Kernel metodi – SVM • Bajezijan metodi • Veštačke neuronske mreže • Algoritmi zasnovani na asocijativnim pravilima • Kombinovani (ensemble) metodi – Random Forest 25

Editor's Notes

  1. Kod nadgledanog učenja podaci koji se daju algoritmu sadrže i i željeno rešenje (engl. Label). Kod nenadgledanog učenja podaci nisu označeni. Algoritam pokušava da uči bez učitelja. Učenje sa podrškom je takvo učenje kod kojeg agent obavlja niz akcija i na kraju dobija nagradu koja signalizuje da su akcije bile dobre
  2. Kod nadgledanog učenja se za obuku koristi skup podataka sa poznatim izlazima. Kod ovakvog učenja se od algoritma traži da nauči, pronađe koja je to funkcija koja povezuje ulaznu i izlaznu promenljivu Cilj kod rešavanja ovog problema je da se što tačnije aproksimira željena funkcija, tako kad se pojavi novi ulazni podaci (x), može da se predviti koja će biti vrednost izlazne promenljive y.
  3. Kod regresije algoritam pokušava da uspostavi funkciju koja povezuje ulaznu promenljivu x i numeričku, kontinualnu vrednost y. Kod regresionih algoritama se obično predviđaju količine ili veličine Na primer, predviđanje cene kuće na osnovu podataka o kućama, spada u regresiju.
  4. Kod klasifikacije se traži funkcija koja povezuje ulazne promenljive sa diskretnim izlaznim vrednostima. Y je kategorija koju funkcija predviđa. Ako bi u pitanju bilo predviđanje cene kuće, onda bi klasifikacija mogla da predvidi da li će cena biti veća ili manja od preporučene vrednosti.
  5. Kod nenadgledanog učenja su dati samo ulazni podaci. Cilj je da se u podacima pronađe neka pravilnost. Osnovni zadaci mašinskog učenja su grupisanje Kod upotrebe asocijativnih pravila se vrši analiza velikih količina podataka u cilju pronalaženja veze između atributa. Na primer, u velikom supermarketu se može vršiti analiza prodaje. Ako se zaključi da se onaj ko kupuje roštiljski sos obično kupuje i meso, onda se mogu ta dva proizvoda postaviti jedan pored drugog. Može se na primer vršiti i analiza posetilaca nekog blog sajta. Zaključak može biti da 30% posetilaca dolazi vikendom i onda čita određene blogove itd.
  6. Ovo učenje predstavlja kombinaciju nadgledanog i nenadgledanog učenja. Kod ovakvog učenja obično postoji manji deo ulaznih podataka koji su obeleženi i veći deo koji nije obeležen (za koji ne postoji izlaz) Razlozi za uvođenje ovakvih postupaka su da označavanje velikih količina podataka traži puno vremena, a pošto to obično rade eksperti to može biti i jako skupo. Drugi razlog je u tome da kod tog označavanja lako može doći do greške, jer ljudi nisu dobri u tim masovnim zadacima. Primer ovakvog učenja može biti Google photos. Na primer, ako se tamo postave fotografije google će zaključiti da je ista osoba A na slikama 2 i 5 a osoba B na nekim drugim. To je primer nenadgledanog učenja (klasterovanje). Ako se posle toga osoba A označi imenom, i osoba B nekim drugim imenom, onda će Google ubuduće prepoznavati koje su to osobe, što je primer nadgledanog učenja.
  7. Ovakav vid učenja se uglavnom primenjuje kod obuke softverskih agenata koji ddeluju u nekom prostoru akcija. Učenje se obavlja tako što agent obavlja niz akcija i nakon toga dobija nagradu (pozitivna ili negativna). Sistem učenja treba da iskoristi signal podrške da utvrdi koja je tačno akcija (ili više njih) dovela pozitivnog ili negativnog signala podrške I da na osnovu toga koriguje ponašanje agenta Primer ovakvog učenja može biti program AlphaGo, koji je 2016 godine pobedio svetskog šampiona u igri Go. Agent je analizirao milione partija i igrao protiv samog sebe, dok nije naučio kako da pobedi.
  8. Još jedan mogući način podele algoritama mašinskog učenja je da li sistemi mogu da inkrementalno uče na osnovu podataka koji stalno pristižu. Batch algoritmi nisu sposobni za inkrementalno učenje. To znači da se algoritam trenira na osnovu svih podataka koji su na raspolaganju. Ovo obično dugo traje i traži dosta resursa, tako da se vrši offline. Sistem se prvo istrenira, a onda se pusti u proizvodnju gde primenjuje ono št je naučio. Više nema treniranja. Ako je potrebno da se sistem bude svestan novih podataka, mora da se ponovo treniranje sa kompletnim skupom u koji su dodati i novi podaci. Proces treniranja, evaluacije i upotrebe sistema se može automatizovati, tako da se i takvi sistemi mogu da prilagode promenama. Proces treniranja traži puno resursa tako da se obavlja u određenim vremenskim intervalima (na primer, svakih 24 sata). Ako je potebno brže prilagođavanje, onda se mora tražiti drugo rešenje. Primeri ovakvih algoritama su
  9. Kod online učenja se algoritam trenira inkrementalno, tako što se dodaju isntance sa podacima, bilo pojedinačno bilo u malim paketima. Koraci su mali i jeftini, tako da se sistem u letu upoznaje sa novim podacima. Onlajn učenje se primenjuje kod sistema koji imaju kontinualni priliv podataka, kao što su recimo podaci sa berze. To je dobro rešenje i u slučaju da su računarski resursi ograničeni. Kad se jednom ovakav sistem upozna sa podacima, oni više nisu potrebni (osim ako je potreban rollback). Ovakvi algoritmi se koriste i kod sistema koje treba trenirati na osnovu ogromnih količina podataka, koji ne mogu da stanu u memoriju. U tom slučaju se učitava deo po deo podataka. Važna karakteristika ovakvih sistema je brzina učenja. Ako se zada veća brzina, onda se sistem brzo prilagođava novim podacima, ali može i da zaboravi stare. Ako se zada manja brzina onda je sistem inertan, odnosno sporije uči, ali će zato biti manje osetljiv na šum u novim podacima.
  10. Joše jedan način podele algoritama je na osnovu načina na koji se vrši generalizacija. Ako algoritam ima dobre performanse kod treniranja, to nije dovoljno, potrebne su dobre performanse kod novih instanci, odnosno kod generalizacije. Kod učenja na osnovu instanci sistem napamet nauči postojeće primere, a onda nove primere klasifikuje na osnovu sličnosti sa postojećim instancama. Algoritmi koji se zasnivaju na instancama su učenje napamet, knn Kod učenja na osnovu modela se na osnovu skupa isntanci za treniranje napravi model, a onda se taj model koristi za predviđanje
  11. Algoritmi koji se koriste kod mašinskog učenja se mogu grupisati na više različitih načina. Onovna podela, koja je već ranije pomenuta je na osnovu načina na koji algoritam uči. U skladu sa tom podelom algoritmi se mogu grupisati na algoritme koji se koriste kod nadgledanog učenja, na one koji se koriste kod nenadgledanog učenja i algoritme koji se koriste kod mešavine nadgledanog i nenadgledanog učenja. Tipični predstavnici prve grupe algoritama, koji se koriste kod nadgledanog učenja su Logistička regresija, Back propagation neuronska mreža itd. U drugu grupu algoritama, koji se koriste kod nenadgledanog učenja spadaju algoritmi kao što je k-means, ili Apriori. Kod treće grupe algoritama ne postoje tipični predstavnici, već se radi o proširenjima drugih algoritama u cilju modeliranja podataka koji nisu označeni. Drugi način grupisanja algoritama je na osnovu načina na koji rade. Iako se većina algoritama može svrstati u jednu ili drugu grupu, treba imati na umu da postoje i algoritmi koji ne pripadaju samo jednoj grupi. Na primer, algoritam Learning Vector Quantization pripada istovremeno i grupi algoritama nastalih na osnovu neuronskih mreža, ali i grupi algoritama koji su zasnovani na instancama. Na osnovu načina kako rade, algoritmi se mogu podeliti na regresione, algoritme zasnovane na instancama, regularizacione algoritme, algoritme zasnovane na stablima odlučivanja, bajesianove algoritme, algoritme koji koriste grupisanje (clustering), algoritme zasnovane na asocijativnim pravilima, veštačke neuronske mreže, algoritmi koji koriste višestruke modele (ensemble), algoritmi zasnovani na kernelima itd.
  12. Pre nego što se krene sa objašnjavanjem pojedinih algoritama iz prethodno pomenutih grupa, treba objasniti dva međusobno suprotstavljena pojma, koji se koriste u statistici, a onda i kod mašinskog učenja. To su sistematska greška (bias) i varijansa (variance). Prilikom treniranja bilo kojeg algoritma mašinskog učenja donose se odluke o modelu koji će se koristiti, kao i o parametrima izabranog modela. Što više stepeni slobode postoji u algoritmu, to je komplikovaniji model koji se dobija. Kod komplikovanijih modela postoji opasnost od preteranog prilagođavanja podacima (overfitting), što se obično rešava povećanjem broja potrebnih podataka i validacijom. Drugi pogled na činjenicu da složeniji modeli ne vode obavezno ka boljim rezultatima se može objasniti pomoću sistematske greške (bias) i varijanse (variance). U opštem slučaju model može biti loš iz dva razloga. Ili nije dovoljno tačan i ne odgovara podacima, ili nije dovoljno precizan i postoji mnogo varijacija u rezultatu. Prvi razlog se izražava kao sistematska greška, a drugi kao statistička varijansa. Složeniji klasifikatori poboljšavaju sistematsku grešku, ali je cena toga u povećanju varijanse. Sa druge strane, ako se smanjuje varijansa, dolazi do povećanja sistematske greške. Može se reći da se u ovoj situaciji primenjuje univerzalno pravilo da se ne može imati sve.
  13. Sistematska greška se može definisati kao razlika između prosečnog predviđanja modela i tačne vrednosti koju pokušavamo da predvidimo. Modeli sa velikom sistematskom greškom obraćaju premalo pažnje na podatke koji se koriste kod treniranja i previše pojednostavljuju stvari. Ovo vodi ka velikoj grešci kod podataka za treniranje i testiranje. Varijansa se može definisati kao promenljivost u predviđanju od strane modela. Modeli koji imaju veliku varijansu previše pažnje obraćaju na podatke koji se koriste za trening i nisu dobri u generalizaciji podataka koji ranije nisu bili poznati. Rezultat je da se takvi modeli dobro ponašaju kod podataka za trening, ali postoji velika greška kod podataka za testiranje. Matematički se bias i varijansa mogu objasniti na sledeći način. Neka je Y promenljiva koju algoritam pokušava da predvidi, dok je X zadata promenljiva. Između X i Y postoji veza takva da je: Y=f(X) + e U prethodnoj jednačini e je greška. Pretpostavka je da ona ima normalnu distribuciju sa srednjom vrednošću 0. Zadatak algoritma je da se napravi model . Jedna od mogućnosti da se izračuna greška (razlika) između ciljne i predviđene vrednosti je da se pronađe suma kvadrata njihovih razlika. Greška se može izraziti jednačinom: Za funkciju greške se može izvršiti dekompozicija na Err(x) = Prethodna jednačina se može napisati i u obliku: Err(x) = bias2 + varijansa + greška Kao što se vidi greška se može predstaviti kao suma kvadrata sistematske greške, varijanse i greške koja se ne može izbeći. Greška koja se ne može izbeći je greška koja će postojati koliko god da model bude dobar. Ova greška je mera količine šuma u ulaznim podacima. Kakav god model da se napravi uvek će postojati izvesna greška, koja se ne može ukloniti.
  14. Na ovom dijagramu se u centru nalazi model koji savršeno predviđa tačne vrednosti. Kako se pomeramo od centra, predviđanja postaju sve lošija. Da podsetimo da se kod nadgledanog učenja premalo podudaranje (underfitting) javlja kad model nije u stanju da otkrije osnovni obrazac koji postoji u podacima. Takvi modeli obično imaju veliku sistematsku grešku i malu varijansu. To se na primer, dešava kada postoji mala količina podataka. Preterano podudaranje (overfitting) se dešava kada model obuhvata i šum koji se nalazi u podacima. To se dešava kada se model trenira na osnovu podataka u kojima postoji mnogo šuma. Takvi modeli imaju malu sistematsku grešku i veliku varijansu. Ako je model suviše jednostavan i ima malo parametara, onda se može desiti da postoji velika sistematska greška i mala varijansa. Sa druge strane ako postoji veliki broj parametara, može se desiti da postoji velika varijansa i mala sistematska greška. Umetnost je pronaći pravi balans između njih.
  15. Parametarski algoritmi su oni kod kojih je broj parametara unapred fiksiran. To znači da se prilikom učenja postavljaju neke pretpostavke, koje mogu da pojednostave ceo proces. Pretpostavke se odnose na oblik funkcije koja se traži. Kod ovakvih algoritama postoje dva koraka. U prvom koraku se bira oblik funkcije, a u drugom se traže koeficijenti te funkcije, na osnovu podataka koji su dostupni. Neparametarski algoritmi su oni koji ne postavljaju pretpostavke o osnovnoj funkciji mapiranja. Na taj način, ovi algoritmi su slobodni da uoče bilo koju funkciju koja eventualno postoji u ulaznim podacima.
  16. Pogledajmo, na primer, linearnu funkciju mapiranja, koja se koristi kod linearne regresije. a0 + a1x1 + a2x2 = 0 Ovde su a0, a1 i a2 koeficijenti linije, dok su x1 i x2 dve ulazne promenljive. Proces učenja je znatno jednostavniji ako se unapred pretpostavi oblik funkcije. Sve što posle ove pretpostavke treba uraditi je da se pronađu koeficijenti ove linije i da tako se dobije model. Problem sa ovakvim pristupom je da se može desiti da je pretpostavka pogrešna. Šta ako u prethodnom slučaju nepoznata funkcija nije linearna? Neki od predstavnika grupe parametarskih algoritama su logistička regresija, perceptron, naivni bajes, linearna diskrminantna analiza itd.
  17. Kada se kaže da su algoritmi neparametarski, to ne znači da nema parametara. Upravo suprotno, ovi modeli uglavnom postaju sve složeniji sa povećanjem količine ulaznih podataka. To znači da kod parametarskih modela postoji unapred definisan broj parametara, dok kod neparametarskih modela broj parametara može da potencijalno postane beskonačan. Neparametarski modeli traže funkciju koja najbolje odgovara ulaznim podacima, pri čemu se zadržava i određena sposobnost generalizacije. To znači da su ovi algoritmi u stanju da se prilagode većem broju funkcija. Tipičan predstavnik neparametarskih algoritama je algoritam k-najbližih suseda (k-nearest neighbours). Ovaj algoritam svoja predviđanja gradi na osnovu k najsličnijih obrazaca i nove instance. Algoritam ne pretpostavlja ništa o obliku funkcije, osim da obrasci koji se nalaze blizu, verovatno imaju i slične izlaze. Pored K-NN algoritma, u grupu popularnih neparametarskih algoritama spadaju i Stabla odlučivanja (CART, C4.5), SVM (kada se koristi rbf kernel funkcija) itd.
  18. Osnovne prednosti parametarskih algoritama su u tome da su oni jednostavniji, što znači da ih je lakše razumeti i interpretirati rezultate, da se vrlo brzo dobijaju modeli, i da za njihovu obuku nisu potrebne velike količine podataka. Pored prednosti ovi algoritmi imaju i nedostatke. Oni se ogledaju u tome da se izborom funkcije unapred, ograničavaju i mogućnosti učenja, da je teško primeniti ove metode na složene probleme, kao i da se u praksi retko dešava da modeli odgovaraju pretpostavljenoj osnovnoj funkciji.
  19. Prednosti neparametarskih algoritama se ogledaju u njihovoj fleksibilnosti (mogu da pronađu veliki broj funkcija), snazi (jer nema pretpostavki o osnovnoj funkciji) i performansama (jer mogu da dovedu do boljih performansi modela, prilikom predviđanja). Nedostaci ovih algoritama se ogledaju u tome što ime je potrebna velika količina podataka da bi se dobila funkcija, što se sporije treniraju, jer postoji puno parametara koje treba uočiti, što postoji veći rizik od preteranog prilagođavanja (overfitting) i što je teže objasniti kako se došlo do nekog rezultata.
  20. U narednim prezentacijama će se detaljnije objasniti neki od osnovnih algoritama. Iz svake grupe algoritama će detaljnije biti objašnjen po jedan, tipičan predstavnik. Iz grupe algoritama zasnovanih na stablima odlučivanja ćemo detaljnije objasniti Classification and regression tree (CART) algoritam, Iz grupe algoritama zasnovanih na sličnosti instanci ćemo detaljnije objasniti algoritam k-NN (k najbližih suseda) Iz grupe algoritama zasnovanih na primeni kernelskih funkcija ćemo detaljnije objasniti algoritam Support Vector Machine i iz grupe kombinovanih algoritama ćemo detaljnije objasniti RandomForest algoritam.