Strojové učenie

38
Strojové učenie Jožo Kováč 7SEGMENTS s.r.o. [email protected]

description

Strojové učenie. Jožo Kováč 7SEGMENTS s.r.o. jozo.kovac@ 7segments.com. Agenda. Úplné základy strojového učenia Predtým ako sa pustíme do učenia ... Rozhodovacie strom y – CART, CHAID Boosting, Bagging, AdaBoost, Random Forrests Iné aplikácie strojového učenia - PowerPoint PPT Presentation

Transcript of Strojové učenie

Page 1: Strojové učenie

Strojové učenieJožo Kováč7SEGMENTS s.r.o. [email protected]

Page 2: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Agenda

• Úplné základy strojového učenia

• Predtým ako sa pustíme do učenia ...

• Rozhodovacie stromy – CART, CHAID

• Boosting, Bagging, AdaBoost, Random Forrests

• Iné aplikácie strojového učenia

• Hodnotenie zručnosti v hrách• ELO / True Skill / Multiplayer Matchmaking Rating

• Product Recommendation systémy

Page 3: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Základy strojového učenia

Algoritmy strojového učenia:

• Učenie s učiteľom (supervised)

• Učenie bez učiteľa (unsupervised)

A taktiež:

• Učenie odmenou a trestom (Reinforcement learning)

• Recommendation systémy

Page 4: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Učenie s učiteľom

• Klasifikácia

• Zadeľovanie objektov do dvoch (binárna) alebo viacerých tried

• Kúpi si Jano paušál v Orange? • {áno, nie}

• Ktorý z troch paušálov si Jano kúpi? • {X, Y, Z, ..}

• Regresia

• Predikcia celočíselnej hodnoty

• Koľko Jano zaplatí za svoj paušál budúci rok? ( € )• Koľko paušálov predá Orange budúci rok? ( # )

Page 5: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Príklad: Ceny nehnuteľností

Plocha domu

(feets^2)Počet izieb

Počet poschodí

Predá sa do 30 dní?

Predajná cena

(tisíce $)

2104 5 1 Yes 460

1416 3 2 No 232

1534 3 2 No 315

852 2 1 Yes 178

… … … … …

Predajná cena = b0 + b1 . Plocha + b2 * Izby + b3 * Poschodia

Úloha A – určiť b0 až b3 tak, aby rovnica sedela na dáta

Úloha B – vybrať minimálny set atribútov, ktoré postačujú pre kvalitnú predikciu ( nepoužiť všetky )

Page 6: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Predtým ako sa pustíme do učenia ...... stanovíme pravidla hry

• Vyhráva najpresnejší algoritmus. Ako merať presnosť?

A: “ algoritmus má úspešnosť 80% “

B: “ algoritmus je o 400% lepší ako náhodný výber ”

C: “ algoritmus dokonale zachytáva všetky pozitívne prípady ”

Page 7: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Predtým ako sa pustíme do učenia ...... stanovíme pravidla hry

Letisko v Iraku: 10 z 10 000 pasažierov sú teroristi.

A: “ algoritmus má úspešnosť 80% “

Lenže pravidlo: nikto nie je terorista má 99,9%.

B: “ algoritmus je o 400% lepší ako náhodný výber ”

Náhodne je zo 1000 zadržaných 1 terorista. Takto 4 z 1000. Stačí?

C: “ algoritmus dokonale zachytáva všetky pozitívne prípady ”

To aj pravidlo: každý je terorista? Nezavrieme radšej letisko?

Page 8: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Ešte k očakávaniam

x1

x2

Študentovo očakávanie Tvrdá realita

Strojové učenie pomáha riešiť ťažké problémy, riešenie nebýva dokonalé, len je lepšie ako existujúce prístupy.

Page 9: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Vyhodnocovanie kvality modelov

• Regresia

• korelačný koeficient R^2

• Vyjadruje ako dobre sedí funkcia na dát, t.j. akú kvalitnú predikciu môžeme očakávať

• chybová funkcia RSME (root square mean error)

• Klasifikácia

• Zle: Úspešnosť = správne / (správne + nesprávne) [%]

• Lepšie: Presnosť a návratnosť

1

0.5

0.5 1Návratnosť

Pre

sno

Presnosť =true positives

no. of predicted positive

Návratnosť =true positives

no. of actual positive

Page 10: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Ďalšie kritéria úspešnosti

• Úspešnosť, presnosť, návratnosť

• Lift

• GINI index

• Kolmogorov-Smirnov štatistika

• Informačný zisk

• Chybová funkcia (RMSE, ...)

Prezradí viac

Page 11: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Vyhodnotenie kvality klasifikácie

no. of actual positiveChi kvadrát= Očakávané vs. Skutočné

Chi test – je skutočnosť odlišná od očakávania?

Čím je skutočnosť odlišnejšia, tým lepší model.

p – pravdepodobnosť, že skutočnosť je odlišná od očakávania

Presnosť =true positives

Návratnosť =

F1 score =

no. of predicted positive

true positives

Page 12: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Tvorba modelov

• Štatisticky prístup

• Majme funkciu (predpokladaný “tvar” dát) a poďme nájsť, ako dobre sa dá napasovať na naše dáta

• Lineárna regresia, polynomiálna, logistická ....

• Data-miningový prístup

• Nemáme žiadne predpoklady o tvare dát a učíme sa čisto z pozorovaní

• Rozhodovacie stromy, neurónové siete, ...

“TESTOVANIE HYPOTÉZ”

“IDE O VÝSLEDKY, NIE O MODEL”

Page 13: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Page 14: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Page 15: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Page 16: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Page 17: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Page 18: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Page 19: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Logistická regresia

Page 20: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Logistická regresia ... je tiež jednoduchá

Šanca = P (true) / P (false)

samozrejme : P (false) = 1 - P(true)

… pridajme logaritmus …

… ten ma lineárny vzťah k prediktorom ...

... vyjadríme pravdepodobnosť ...

... a máme výsledok:

... odstránime logaritmus e^...

Page 21: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

CART – Classification And Regression Tress

• Neparametrická metóda, samovalidačný (train/validation/test)

• Automatický výber prediktorov, kritérium GINI

• Binárny split

• Strom rastie do hĺbky

• Výsledky sú invariantné lineárnym transformáciám atribútov napr. x’=Log(x); nie je citlivý na extrémne hodnoty

• Samoorezávanie (minimálna chyba na validačnej množine)

• Nevýhody

• Nestabilný, malá zmena v dátach – celkom iný strom

• Rozdeľuje iba cez jeden atribút, oproti stromom, ktoré dokážu rozdeľovať cez kombináciu napr. (b0 + b1 X + b2 Y)

Page 22: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

CHi-squared Automatic Interaction Detection

• Rozdeľovacím kritérium:

• ChiSquare pri klasifikácií

• F-test pri regresii

• Väčšina vlastností podobná s CART

• Numerické atribúty diskretizuje do N (napr. 10) binov

• Spája diskrétne hodnoty, ak sa spojením nestratí sila

• Vytvára viac-cestné splity (vs. binárne)

• Strom rastie do šírky, jednoduchšie na interpetáciu

Page 23: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Random Forests

Page 24: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Cesta za najlepším algoritmom

• Bagging

• Bootstrap aggregating – vytváranie nových prediktorov výberom s opakovaním

• Boosting

• Adaboost – v tom čase najlepší, ale konverguje? Nie vždy

• Prvý model na celej populácií, potom upravuje váhy a trénuje ďalšie

• RandomForest – Bagging + náhodný výber prediktorov

Page 25: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Random Forests

Parametre:

- M je celkový počet premenných v trénovacej množine

- N je celkový počet prípadov v trénovacej množine

1. Náhodne sa vyberie m premenných z M; m=odmocnina(M)

2. Príklady do trénovacej množiny sa vyberú n-násobným výberom s opakovaním z N (bootstraping). Na zvyšnej 1/3 prípadov sa otestuje chyba stromu.

3. Nechá sa narásť celý rozhodovací strom (neorezávať)

Pri hodnotení nového príkladu sa vypočíta výsledok každého stromu a rozhodne sa hlasovaním jednotlivých stromov.

Page 26: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Random Forests

• Jeden z najpresnejších algoritmov v súčasnosti

• Dá sa použiť na veľmi veľké datasety

• Nepotrebujú testovaciu množinu ani krížovú validáciu, samé pri učení vypočítavajú odhad skutočnej chyby

• Nie je to black-box; významnosť atribútov sa vypočítava permutáciou hodnôt atribútu a otestovaním, ako veľmi sa zmenili výsledky

• Náhrada chýbajúcich hodnôt: medián triedy, modus triedy

• Nevýhodou je na prvý pohľad zložitosť a niekedy aj náchylnosť na preučenie

Page 27: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Správa od p. Breimana

Ani najmúdrejší algoritmus nedokáže nahradiť ľudskú inteligenciu a nerozumie dátam tak, ako im rozumie človek.

Berte výstupy náhodných stromov nie ako absolútnu pravdu, ale ako inteligentný počítačom generovaný odhad, ktorý môže napomôcť hlbšiemu porozumeniu.

[Leo Breiman]

Page 28: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Nekontrolované učenie - Segmentácia

• K-Means;

• podla vzdialenosti

• Hierarchické zhlukovanie

• Dendogram

• Pravdepodobnostné zhlukovanie (EM)

• Použitie?

Page 29: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Page 30: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Recommendation systémy

• Kolaboratívne filtrovanie

Netflix 1M$ cena za zlepšenie odporúčania filmov (2008)

http://www.netflixprize.com/Yahoo KDD cup – hodnotenie

hudby (2011)

http://kddcup.yahoo.com/Radio.FM + Kaggle (2012)

http://labrosa.ee.columbia.edu/millionsong/

Page 31: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Algoritmy pre kolaboratívne filtrovanie

• vi,j= hlas používateľa i pre položku j

• Ii = položky ktoré používateľ i už ohodnotil

• Priemerné hodnotenie i je

• Odhadovaný hlas pre používateľa a je vážená suma

váha n-podobných používateľovnormalizátor

priemerné hodnotenie používateľa a Rozdiel priemeru a hodnotenia tejto položky

Page 32: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Ako vybrať “podobných” používateľov• K-nearest neighbor

• Pearson correlation coefficient

• Cosine distance (from IR)

else0

)neighbors( if1),(

aiiaw

Page 33: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Player Skill Rating

• Systémy pre hodnotenie schopností hráčov / tímov

• Spravodlivo prideľujú body pri výhre / prehre

• aj pokiaľ ide o súboje Dávida s Goliášom

• Umožňujú

• robiť rebríčky (ladder boards)

• vytvárať vyrovnané zápasy pri zohľadnení zručností X hráčov

• predikovať šance na výhru

$10,000 prize to be awarded to the team that submits the most accurate predictions; http://www.kaggle.com/c/chessratings2

Page 34: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Triviálne systémy

• Výhra +X bodov , prehra –Y

• Viac zápasov, viac bodov, nevyjadruje priamo zručnosť

• Príklad: tenis WTA, ATP, hokejová liga

• Nevhodné pre balancovanie zápasov

• Otázna schopnosť predikovať víťaza

• (HC Košice prehrali s HK Nitra 2:3, Košice vyhrali ligu s 110 bodmi, Nitra je posledná s 52)

Rank, Name & Nationality PointsWeek

ChangeTourn Played

1 Djokovic, Novak (SRB) 12,670 0 19

2 Nadal, Rafael (ESP) 10,175 0 20

3 Federer, Roger (SUI) 9,350 0 20

Page 35: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

ELO

• známy zo šachu, vhodný pre 1 vs. 1

• o 200 bodov vyššie skóre dosiahne priemerne o 75% win-rate (0.75 bodu v šachu, 0 prehra, 1 výhra, 0.5 remíza)

• 5839 players had an active rating between 2200 and 2299, and are usually associated with the Candidate Master title.

• 2998 players had an active rating between 2300 and 2399, and are usually associated with the FIDE Master title.

• 1382 players had an active rating between 2400 and 2499, most of whom had either the International Master or the International Grandmaster title.

• 587 players had an active rating between 2500 and 2599, most of whom had the International Grandmaster title

• 178 players had an active rating between 2600 and 2699, all but one of whom had the International Grandmaster title

• 42 players had an active rating between 2700 and 2799

• 4 active players had a rating over 2800: Magnus Carlsen, Viswanathan Anand, Vladimir Kramnik and Levon Aronian.

Očakávané skóre hráča A – znova raz logistická regresia

Ra – rating hráča A

Ea – očakávanie

Sa – výsledok

K – násobiteľ zmeny

Nové body:

Page 36: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

True Skill

• Microsoft Research, použitý v X-Box Live

u – priemerný skill hráča

sigma – stupeň istoty, že naozaj má tento skill

Rýchlejšie sa dostanem na skutočný skill a tam +- ostanem

viac hier, vyššia istota, menšia sigma

http://research.microsoft.com/en-us/projects/trueskill/details.aspx

Page 37: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

MMR – Multiplayer Matchmaking Rating

• Hra 10 hráčov v 2 teamoch, median skóre 1600, nováčik 1500

• Pred zápasom sa zráta šanca na výhru

• Čím horšie šance, tým viac bodov sa dá získať

• Autobalancing

Page 38: Strojové učenie

Ing. Jozef Kováč, KKUI TU Košice, odbor: Hospodárska informatika

Ďakujem za pozornosť!