PowerPoint Presentation

Documente similare
Slide 1

Introducere

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea de Vest din Timișoara 1.2 Facultatea Matematică și Informa

Logică și structuri discrete Limbaje regulate și automate Marius Minea marius/curs/lsd/ 24 noiembrie 2014

Logică și structuri discrete Logică propozițională Marius Minea marius/curs/lsd/ 3 noiembrie 2014

Inteligență artificială Laboratorul 8 Perceptronul și rețele de perceptroni în Scikit-learn Stanga :multimea de antrenare a punctelor 3d; Dreapta : mu

Cuantizare Vectoriala.doc

..MINISTERUL EDUCAŢIEI NAȚIONALE ŞI CERCETARII STIINTIFICE UNIVERSITATEA DE VEST DIN TIMIȘOARA.I CENTRUL DE DEZVOLTARE ACADEMICĂ. FIȘA DISCIPLINEI 1.

Slide 1

Slide 1

Microsoft Word - TIC5

Microsoft PowerPoint - Curs_SDA_9_RO_2019_v2.pptx

OPERATII DE PRELUCRAREA IMAGINILOR 1

Microsoft PowerPoint - Curs_SDA_10_RO_2019_v1.pptx

Logică și structuri discrete Mulțimi Casandra Holotescu

Logică și structuri discrete Relații. Funcții parțiale Marius Minea marius/curs/lsd/ 20 octombrie 2014

E_d_Informatica_sp_SN_2014_bar_10_LRO

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A

Introducere în statistică

1. Găsiți k numerele cele mai apropiate într-un şir nesortat Dându-se un şir nesortat și două numere x și k, găsiți k cele mai apropiate valori de x.

E_d_Informatica_sp_MI_2015_bar_02_LRO

Prelegerea 4 În această prelegere vom învăţa despre: Algebre booleene; Funcţii booleene; Mintermi şi cuburi n - dimensionale. 4.1 Definirea algebrelor

Testare manuala: situatia in care o persoana initiaza fiecare test, interactioneaza cu el si interpreteaza, analizeaza si raporteaza rezultatele. Test

09. Informatica 2 - MM 1

D.Rusu, Teoria măsurii şi integrala Lebesgue 6 MĂSURA LEBESGUE Cursul 5 Teorema 6.26 Există submulţimi ale lui R care nu sunt măsurabile Lebesgue. Dem

LOGICA MATEMATICA SI COMPUTATIONALA Sem. I,

Universitatea “Dunarea de Jos” din Galati

Microsoft Word - 2 Filtre neliniare.doc

Capitole Speciale de Informatică Curs 1: Extragerea informaţiilor. Modelul boolean şi modelul boolean extins 27 septembrie 2018 Extragerea informaţiil

Document2

FIȘA DISCIPLINEI 1. Date despre program 1.1 Instituția de învățământ superior Universitatea Alexandru Ioan Cuza din Iași 1.2 Facultatea Facultatea de

Subiectul 1

ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine număru

Microsoft Word - Curs_10.doc

Microsoft Word - _arbori.docx

Microsoft PowerPoint - curs5-DPT-2010V97 [Compatibility Mode]

Microsoft Word - cap1p4.doc

Paradigme de programare

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f

Unitatea școlară: CENTRUL ȘCOLAR DE EDUCAȚIE INCLUZIVĂ BRĂILA Propunător: MUȘAT STELIANA-VASILICA Funcția: PROFESOR PSIHOPEDAGOG TEMA PROPUSĂ: Rolul e

Acordurile de achiziții, implicații concurențiale și juridice

RS-1.3 LM.2

Diapositive 1

Curs 6: Clasificarea surselor de informatii - Clasificarea Bayes Naiva. Modelul Bernoulli

Sistem de supraveghere video inteligent cu localizarea automata a evenimentelor de interes SCOUTER, cod proiect PN-II-IN-DPST , contract nr

ExamView Pro - Untitled.tst

DOMENIUL: Matematica

I

Slide 1

Calcul Numeric

Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011

Microsoft Word - Curs_08.doc

Microsoft Word - Curs_09.doc

Microsoft Word - Algoritmi genetici.docx

Interfață Vizuală Om-Mașină Analiza și recunoașterea gesturilor

Laborator 3

PowerPoint Presentation

rrs_12_2012.indd

ALGORITHMICS

Slide 1

talaba.doc

Slide 1

Aproximarea functiilor prin metoda celor mai mici patrate

Grafuri neorinetate Aplicatii 1 Care este numărul maxim de componente conexe pe care le poate avea un graf neorientat cu 20 noduri şi 12 muchii? a. 6

Programarea şi utilizarea calculatoarelor

Capitole Speciale de Informatica - Curs 5: Extragerea informatiilor prin feedback de relevanta. Metode probabiliste de extragere a informatiilor

Microsoft Word - probleme_analiza_numerica_ses_ian09.rtf

PPSD

Proiectarea Algoritmilor

METODE NUMERICE ÎN INGINERIE

Proiect didactic

Lucrarea 7 Filtrarea imaginilor BREVIAR TEORETIC Filtrarea imaginilor se înscrie în clasa operaţiilor de îmbunătăţire, principalul scop al acesteia fi

Matematici aplicate științelor biologie Lab05 MV

RAPORT ŞTIINŢIFIC Contract nr 33CI/2017, cod PN-III-P2-2.1-CI Titlu proiect: Sistem integrat de analiză și prognoză a consumului pentru dist

15. Logică matematică cu aplicații în informatică - MI 3

Baze de date Anul 2 Teorie Examen 1. Diagrama entitate/relatie si diagrama conceptuala (curs 2-5) 2. Arbore algebric si expresie algebrica (curs 6-10)

FIŞA DISCIPLINEI 1. Date despre program 1.1. Instituţia de învăţământ superior Universitatea Spiru Haret 1.2. Facultatea Ştiinţe Economice Bucureşti 1

Poo Laboratoare 1 Contents Laborator7 2 1 Colecţii de obiecte în Java Interfaţa Iterator Interfaţa C

Microsoft Word - Cap09_AutoorganizareSiEmergentaInSistemeleAdaptiveComplexe_grile.doc

Microsoft Word - Curs_07.doc

rptFisa

proiectarea bazelor de date

B

Analiză de flux de date 29 octombrie 2012

Analiză statică Analiza fluxului de date 23 octombrie 2014

Caraivan George-Alexandru Grupa 431A Interfața driver-kernel la Linux Introducere Deși pentru unii dintre noi acest lucru poate fi o supriză, cei mai

AGENDA TRAINING

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Dunărea de Jos din Galaţi 1.2 Facultatea Economie şi Admin

Retele Petri si Aplicatii

PowerPoint Presentation

1

PowerPoint Presentation

20 SUBIECTE DE EXAMEN - De fapt, în pofida acestor probleme, până la urmă tot vom logaritma, căci aceasta este tehnica naturală în context. Trebuie do

PROGRAMARE ORIENTATA PE OBIECTE

Slide 1

Investeşte în oameni Proiect cofinanţat din Fondul Social European prin Programul Operaţional Sectorial pentru Dezvoltarea Resurselor Umane

COMENTARII FAZA JUDEŢEANĂ, 9 MARTIE 2013 Abstract. Personal comments on some of the problems presented at the District Round of the National Mathemati

Introducere în limbajul JavaScript

Transcriere:

Arbori de decizie Prof. Adina Magda Florea Multi-Agent Systems and Learning Agents Summer School 26-30 iunie, 2017, București

WEKA Weka 3: Data Mining Software in Java Weka contine implementarea unei multimi de algoritmi de invatare automata pentru data mining Algoritmii pot fi aplicati direct pe seturi de date sau apelati din cod Java Weka contine instrumente pentru preprocesare, clasificare, regresie, clusterizare, reguli de asociere si vizualizare http://www.cs.waikato.ac.nz/ml/weka/ Machine Learning Group at the University of Waikato 2

Medii care ofera algoritmi de invatare Weka 3: Data Mining Software in Java Weka contine implementarea unei multimi de algoritmi de invatare automata pentru data mining Algoritmii pot fi aplicati direct pe seturi de date sau apelati din cod Java Weka contine instrumente pentru preprocesare, clasificare, regresie, clusterizare, reguli de asociere si vizualizare http://www.cs.waikato.ac.nz/ml/weka/ Machine Learning Group at the University of Waikato 3

Medii care ofera algoritmi de invatare Scikit Learn este un pachet de algoritmi de ML in Python Data mining si analiza datelor Open source Contine algoritmi de clasificare, regersie, clustering etc. http://scikit-learn.org/stable/index.html# 4

1. Definitii Invatarea este procesul prin care un sistem isi imbunatateste performantele (Herbert Simon). Invatarea este achizitia cunostintelor explicite; Invatarea este achizitiaa deprinderilor de rezolvare a problemelor Invatarea este formare teoriilor, formarea ipotezelor si inferenta inductiva 5

Invatare automata Machine learning Schimba structura, programul sau BC Schimbarile: imbunatatiri sau de la zero Perceptie Model (BC) Rationament Actiune 6

Invatare automata De ce sa invete? Taskuri definite prin exemple Relatii / corelatii in cantitati mari de date Mediu in schimbare Date diferite, cu zgomot Cantitate de cunostinte prea mare pentru a fi reprezentate explicit 7

Denumiri utilizate Instanta Concept Concept vizat (target concept) Clasa de ipoteze Multimea de invatare (Training set) Multimes de test (Test set) 8

Denumiri utilizate T vector de intrare, vector sablon, vector de caracteristici, esantioane, exemple, instante x i - caracteristici, atribute, variabile de intrare, componente x i - valori reale, valori numerice intregi, valori simbolice, valori booleene f(x i ) valori reale: h functie de esantionare valori simbolice: h clasificator boolene: 1 instanta pozitiva, 0 instanta negativa 9

Tipuri de invatare Invatare supervizata determinarea ipotezei de invatare pe baza unor date etichetate Simbolica sau subsimbolica Invatarea prin recompensa Invătare nesupervizata - determinarea ipotezei de invatare / a unei structuri pe baza unor date neetichetate Simbolica sau subsimbolica 10

Model simplu Clasificare 1 T = {X 1, X 2,, X m } multime de invatare X i = x 1 x 2.. x n h h H h(x i ) f(x) =? Invatare supervizata se cunosc f(x 1 ),, f(x m ) Gasim h a.i. h(x i ) = f(x i ), i=1,m h(x i ) = f(x i ), i Clasificare f - valori discrete grupeaza exemple Regresie f valori continue, estimeaza sau prezice valori 11

Clasificare vs regresie Caine / Pisica Dan 10.000 lei credit de 30.000 lei George 3.000 lei credit de 10.000 lei Vlad 15.000 lei credit de 50.000 lei Maria 5.000 lei cat credit? 12

Clasificare vs regresie Reprezentam ipotezele de invatare sub o forma care sa permita ca iesirea algoritmului sa fie o eticheta (clasa): arbori, retele neurale, etc. Reprezentam ipoteza de invatare ca o functie liniara h(x)=a 0 +a 1 x Cat este valoarea y pt punctul rosu? x 13

Model simplu Clasificare 1 T = {X 1, X 2,, X m } multime de invatare X i = x 1 x 2.. x n h h H h(x i ) f(x) =? Invatare ne-supervizata NU se cunosc f(x 1 ),, f(x m ) Imparte T in submultimi clase Se poate vedea tot ca invatarea unei functii val f = numele submultimii careia ii apartine X i Invatare prin recompensa Se cunosc recompensele pentru valorile h(x 1 ),, h(x m ), Nu se cunosc valorile lui f 14

Model conceptual Clasificare 2 Mediul ofera stimuli sau informatie elementului de învatare, care foloseste aceasta informatie pentru a imbunatati cunostintele (explicite) din baza de cunostinte Aceste cunostinte sunt utilizate de componenta de prelucrare (rezolvare) în rezolvarea problemei 15

Sistem de invatare Element de invatare Feed-back Rezultate invatare Date Mediu Profesor Feed-back Rezolvare BC Motor de inferenta Strategie Rezultate Evaluare performante 16

Aspecte InvA Regimuri de invatare: Batch Incremental Zgomot: zgomot intrari (de ex valorile atributelor) zgomot iesiri (alterare iesiri) Favorizare inductiva (Inductive bias) Favorizare restrictiva (Restrictive bias) restrange setul de ipoteze Favorizare preferentiala (Preference bias) anumite ipoteze sunt preferate 17

2. Occam Razor Principiul lamei lui Occam (lex parsimoniae ) prefer explicatiile simple celor complexe selectez ipoteza care implica cele mai putine presupuneri, intre ipoteze similare/egal probabile Wiliam of Occam, 1285 1347 filozof englez "non sunt multiplicanda entia praeter necessitatem" 18

Conditii pentru o invatare "corecta" Problema: identifica personaje de film "bune" sau "rele" dupa modul in care arata 19

Conditii pentru o invatare "corecta" Atribute / Instante Sex Masca Pelerina Cravata Urechi Lupta Clasa Set de invatare Batman Masc Da Da Nu Da Nu Bun Robin Masc Da Da Nu Nu Nu Bun Alfred Masc Nu Nu Da Nu Nu Bun Pinguin Masc Nu Nu Da Nu Da Rau Catwoman Fem Da Nu Nu Da Nu Rau Joker Masc Nu Nu Nu Nu Nu Rau Date de test Batgirl Fem Da Da Nu Da Nu?? Fred Masc Da Nu Nu Nu Nu?? 20

Conditii pentru o invatare "corecta" Clasifica datele corect Cravata Nu Da Pelerina Lupta Nu Da Nu Da Rau Bun Bun Rau 21

Conditii pentru o invatare "corecta" Nu Masca Da Nu Lupta Da Nu Pelerina Da Nu Urechi Rau Sex Urechi Da Fem Masc Nu Da Nu Cravata Da Pelerina Nu Da Bun Rau Lupta Nu Da Bun Rau Bun Rau Bun Bun Rau Clasifica datele corect dar complexitate prea mare (intuitiv) 22

Conditii pentru o invatare "corecta" Prea simplu, nu clasifica corect Sex Masc Fem Bun Rau Aleg prima varianta (cf. lamei lui Occam) 23

Conditii pentru o invatare "corecta" Clasificatoarele trebuie sa fie suficient de "expresive" pentru a fi in concordanta cu setul de invatare Dar clasificatoarele care au o complexitate prea mare pot duce la fenomenul de "overfit" (overfitting) = ipoteza formata/gasita include zgomot sau sabloane de date nerelevante 24

3 Arbori de decizie ID3 in jur de 1960s C4.5 (Quinlan): Permite atribute numerice Trateaza cazurile valorilor lipsa Trateaza cazul valorilor cu zgomot C4.5 unul din cei mai cunoscuti si mai utilizati algoritmi de invatare Ultima versiune de cercetare: C4.8, implementata in Weka Versiunea comerciala: C5.0 25

Invatarea inductiva prin AD Vede invatarea ca achizitia cunostintelor structurate Reprezentarea cunostintelor = arbori de decizie (AD) Problema de invatare = clasificare Invatare supervizata Strategie = invatare batch (ne-incrementala) AD se construieste pornind de la radacina spre frunze = Top Down Induction of Decision Tree 26

ID3 (Quinlan) Univers de obiecte U descrise in termenii unei colectii de atribute {A} Fiecare atribut masoara o caracteristica importanta a unui obiect o U Domeniul de valori atribute D A = discret, simbolic (ulterior extins) Fiecare obiect apartine unui clase dintr-o multime de clase mutual exclusive {Cl} Se da setul de invatare (SI) Problema = obtinerea unor reguli de clasificare / construirea unui AD care clasifica corect nu numai o SI dar si o U 27

ID3 (Quinlan) Metoda de constructie C = multmea de obiecte / ex inv. din SI A atribut test cu valori / iesiri A 1,.. A n [C 1,..C n ], cu C i ={o C A = A i } Impartirea/expandarea AD se opreste cand toate C i apartin unei aceleiasi clase Se termina intotdeauna (in cazul cel mai nefavorabil, cate un obiect in fiecare clasa) 28

ID3 Exemplu No. Atribute Clasa Vreme Temperatura Umiditate Vant 1 soare cald mare fals N 2 soare cald mare adev N 3 nori cald mare fals P 4 ploaie placut mare fals P 5 ploaie racoare normal fals P 6 ploaie racoare normal adev N 7 nori racoare normal adev P 8 soare placut mare fals N 9 soare racoare normal fals P 10 ploaie placut normal fals P 11 soare placut normal adev P 12 nori placut mare adev P 13 nori cald normal fals P 14 ploaie placut mare adev N 29

ID3 Exemplu Vreme C ploaie = {4P,5P,6N,10P,14N} C soare = {1N,2N,8N,9P,11P} soare nori ploaie Umiditate P Vant mare normal adev fals N P N P C nori = {3P,7P,12P,13P} 30

ID3 Arbore minim Din acelasi SI se pot contrui diferiti AD Cum se poate obtine cel mai mic arbore (lama lui Occam)? = Cum selectez atributul din radacina unui arbore? 31

ID3 Cum selectez A? C cu p P si n N Se presupune ca: (1) Orice AD corect va clasifica obiectele proportional cu reprezentarea lor in C Un obiect arbitrar o C va fi clasificat: P cu probabilitatea p/(p+n) N cu probabilitatea n/(p+n) (2) Cand un AD este utilizat pentru a clasifica obiecte, acesta intoarce o clasa AD poate fi vazut ca o sursa a unui mesaj 'P' sau 'N' avand informatia necesara pentru a genera acest mesaj 32

Teoria informatiei ofera criteriul Pentru un univers de mesaje M = {m 1, m 2,..., m n } si o probabilitate p(m i ) de aparitie a fiecarui mesaj, continutul informational I(M) al mesajelor din M se defineste astfel: n i 1 I( M) p( m i ) log 2 (p(m i )) 33

Selectia testului (atributului) C cu p P si n N Continutul de informatie I(AD p,n ) este I( AD p p p n, n ) log 2 log p n p n p n 2 p n n Selecteaza A in radacina; A {A 1,,A v } Fie C i cu p i P si n i N, i=1,v Continutul de informatie pentru C i este I(AD pi,ni ), i=1,v 34

Selectia testului (atributului) Dupa selectarea lui A in radacina, cantitatea de informatie necesara pentru a termina constructia arborelui este suma ponderata a continutului de informatie din toti subarborii v pi ni E( A) I( AD pi, p n i 1 unde ponderea ramurii i este fractiunea de obiecte din C care apartin lui C i ; v este numarul de valori ale lui A ni ) 35

Selectia testului (atributului) Castigul informational al unui atribut A obtinut prin selectia acestuia ca radacina a arborelui de decizie este: G(A) = I(AD p,n ) E(A) Se selecteaza A cu castig informational maxim Recursiv pentru a forma AD corespunzatori C 1 C m 36

Calcul G(A) pt Ex 14 exemple, 9 P, 5 N I(AD p,n ) = 0.940 bits vreme 9 14 log 9 14 2 soare - 2 P, 3 N I(AD p1,n1 ) = 0.971 nori - 4 P, 0 N I(AD p2,n2 ) =? ploaie - 3 P, 2 N I(AD p3,n3 ) =? 5 14 0 0.971 log 2 5 14 E(vreme) = 0.694 bits I( AD G(vreme) = 0.940-0.694= 0.246 bits G(temperatura) = 0.029 bits G(umiditate) = 0.151 G(vant) = 0.048 bits 5 14 4 ) I( AD 14 5 ) I( AD 14 p1, n1 p2, n2 p3, n3 C soare = {1N,2N,8N,9P,11P} C nori = {3P,7P,12P,13P} C ploaie = {4P,5P,6N,10P,14N} ) 37

Generalizare la mai multe clase Continutul de informatie I( Arb) p( Cl C )*log 2 i 1 Cantitatea de informatie necesara pentru a termina constructia arborelui v C i E( A) i 1 C Castigul informational v G(A) = I(Arb) E(A) i I( C i ) p( Cl Ci) 38

Algoritm ID3 functie ind-arbore (set-invatare, atribute, default) 1. daca set-invatare = vid atunci intoarce frunza etichetata cu default sau "Failure" 2. daca toate exemplele din set-invatare sunt in aceeasi clasa atunci intoarce o frunza etichetata cu acea clasa 3. daca atribute este vida atunci intoarce o frunza etichetata cu disjunctia tuturor claselor din set-invatare 4. selecteaza un atribut A, creaza nod pt A si eticheteaza nodul cu A 5. sterge A din atribute > atribute1 6. m = cea mai frecventa clasa (set-invatare) 7. pentru fiecare valoare V a lui A repeta - fie partitie V multimea exemplelor din set-invatare, cu valorea V pentru A - creaza nod V = ind-arbore (partitie V, atribute1, m) - creaza legatura nod A nod V etichetata cu V sfarsit Caz 1 ex inv lipsa Bine = recunoaste Caz 2 atr inadecvate 39

Cazuri speciale Caz 1. Nu exista obiecte o C pentru care A=A j ID3 eticheteaza frunzele cu "null" sau "Failure" deci nu clasifica in aceste noduri Solutie Generalizeaza si se atribuie frunzei clasa cu cea mai mare frecventa de aparitie in C (cea mai frecventa) 40

Cazuri speciale: Zgomot Caz 2. Informatia din SI este afectata de zgomot Zgomot valori de atribute ale obiectelor din C afectate de zgomot clasificare incorecta a obiectelor din C Erorile din C (zgomotele) pot duce la 2 probleme: AD cu complexitate mai mare decat este necesar (a) atribute inadecvate (b) 41

Cazuri speciale: Zgomot Modificari necesare ID3 pt a trata zgomotul (a) Trebuie sa decida daca testarea unor atribute suplimentare va creste sau nu acuratetea predictiva a AD (b) Trebuie sa poata lucra cu atribute inadecvate Cum se realizeaza (a) G(A) > prag absolut sau relativ suficient de mare pt a elimina atribute nerelevante - dar elimina si atribute relevante pt cazul fara zgomot 42

Cazuri speciale: Zgomot atribute Cum se realizeaza (b atribute inadecvate) Trebuie produsa o eticheta pt C i dar obiectele nu sunt in aceeasi clasa Solutia 1 Se utilizeaza notiunea de apartenenta la o clasa cu o anumita probabilitate, de ex. p i /(p i +n i ) Solutia 2 Eticheteaza cu clasa cea mai numeroasa: P daca p i >n i, N daca p i <n i, oricare (P sau N) daca p i =n i 43

Cazuri speciale: Extinderi C4.5 Caz 3. Valori necunoscute de atribute 3.1 Valori de atribute lipsa in SI Solutia 1 Atribuie valoarea cu cea mai mare frecventa Solutia 2 Foloseste probabilitati pt a determia distributia de probabilitate a valorilor lui A in C in functie de apartenenta la o clasa prob( A A i clasa P) prob( A Ai clasa prob( clasa P) P) si alege valoarea cu cea mai mare probabilitate 44

Cazuri speciale: Extinderi C4.5 Caz 4. Atribute cu multe valori A 1.. A n - f multe valori simbolice sau valori numerice / continue, sau chiar valori aleatoare Castig mare arbore cu 1 nivel Partitionez in intervale (A i +A i+1 )/2, fiecare interval o valoare 45

Cazuri speciale: A cu multe valori Exemplificare (valori numerice) Partitionez in intervale (A i +A i+1 )/2, fiecare interval o valoare Ordonez valorile atributului din SI 64 65 68 69 70 71 72 72 75 75 80 81 83 85 da nu da da da nu nu da da da nu da da nu 64.5 66.5 70.5 72 73.5 77.5 80.5 84 46

Cazuri speciale: A cu multe valori Utilizeaza diverse metode de invatare pentru a forma clase din aceste valori sau a grupa aceste valori in grupuri (clustere), clase care sa devina valori discrete (sau sa produca mai putine valori) pentru atribut Retele neurale 47