inteligenta artificiala: tehnici de clasificare

112
Inteligenţă artificială 10. Învăţarea supervizată. Tehnici de clasificare Florin Leon Universitatea Tehnică „Gheorghe Asachi” din Iaşi Facultatea de Automatică şi Calculatoare http://florinleon.byethost24.com/curs_ia.htm Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Upload: enrollinfo

Post on 04-Apr-2015

884 views

Category:

Documents


11 download

DESCRIPTION

Inteligenta artificiala: Tehnici de clasificareArtificial Intelligence: Classification Techniques

TRANSCRIPT

Page 1: Inteligenta artificiala: Tehnici de clasificare

Inteligenţă artificială

10. Învăţarea supervizată. Tehnici de clasificare Florin Leon

Universitatea Tehnică „Gheorghe Asachi” din Iaşi Facultatea de Automatică şi Calculatoare

http://florinleon.byethost24.com/curs_ia.htm

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 2: Inteligenta artificiala: Tehnici de clasificare

2

Învăţarea supervizată. Tehnici de clasificare

1. Învăţarea automată şi clasificarea

2. Arbori de decizie

3. Metoda Bayes naivă

4. Învăţarea bazată pe instanţe

5. Generalizarea

6. Algoritmul NNGEP

7. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 3: Inteligenta artificiala: Tehnici de clasificare

3

Învăţarea supervizată. Tehnici de clasificare

1. Învăţarea automată şi clasificarea

2. Arbori de decizie

3. Metoda Bayes naivă

4. Învăţarea bazată pe instanţe

5. Generalizarea

6. Algoritmul NNGEP

7. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 4: Inteligenta artificiala: Tehnici de clasificare

4

Tipuri de raţionament

Raţionament deductiv

Raţionament inductiv

Raţionament transductiv

Analogie

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 5: Inteligenta artificiala: Tehnici de clasificare

5

Învăţarea automată

engl. “machine learning”

Capacitatea de învăţare este unul din cele mai importante componente ale comportamentului inteligent

Un sistem clasic specializat care nu învaţă: Realizează calcule numeroase pentru rezolvarea

unei probleme

Nu memorează soluţia

De fiecare dată, realizează aceeaşi secvenţă de calcule complexe

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 6: Inteligenta artificiala: Tehnici de clasificare

6

Învăţarea

Învăţarea denotă schimbările adaptive dintr-un sistem, în sensul de a realiza aceeaşi sarcină sau sarcini similare mai eficient (engl. “efficient”)

cu mai puţine resurse (doing the things in the right manner)

măsură de productivitate

mai eficace (engl. “effective”) care atinge scopurile propuse (doing the right things)

măsură de calitate (după Herbert A. Simon)

Un program învaţă dacă îşi îmbunătăţeşte performanţele la îndeplinirea unei sarcini pe baza experienţei (Tom Mitchell)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 7: Inteligenta artificiala: Tehnici de clasificare

7

Motivaţie

Învăţarea este esenţială pentru mediile necunoscute Nu se pot anticipa toate stările mediului

Proiectantul nu poate să îi dea agentului toate informaţiile

Învăţarea este o alternativă la proiectarea explicită Expune agentul la mediul real în loc să îi spună

despre mediu

Proiectantul nu doreşte să îi dea toate informaţiile

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 8: Inteligenta artificiala: Tehnici de clasificare

8

Ce presupune învăţarea

Învăţarea presupune schimbări în agent

Învăţarea presupune generalizări pe baza experienţei

Performanţele trebuie să se îmbunătăţească nu numai la repetarea aceleiaşi sarcini, dar şi pentru sarcini similare care nu au mai fost întâlnite înainte

Algoritmii trebuie să generalizeze euristic: să selecteze aspectele importante ale experienţei

Aceasta este problema inducţiei

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 9: Inteligenta artificiala: Tehnici de clasificare

9

Învăţarea supervizată

În forma cea mai simplă, reprezintă învăţarea unei funcţii din exemple

Fie f funcţia ţintă

Un exemplu este o pereche (x, f(x))

Problema este găsirea unei ipoteze h astfel încât h ≈ f, pe baza unei mulţimi de exemple de antrenare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 10: Inteligenta artificiala: Tehnici de clasificare

10

Problema de clasificare

Se dă o mulţime de instanţe (obiecte)

Mulţimea de antrenare

Instanţele au atribute

Fiecare instanţă are atribute cu anumite valori

De obicei, ultimul atribut este clasa

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 11: Inteligenta artificiala: Tehnici de clasificare

11

Tipuri de atribute

Nominal

Culoarea ochilor, nume, sex, CNP (ca obiect, nu număr)

Ordinal

Înălţime (mică, medie, mare), ranguri, calificative

Interval

Temperatura (°C), date calendaristice

Raţional (există un „element neutru”, de exemplu 0)

Lungime, distanţă (m), preţuri, temperatura (°K)

Discrete: de tip nominal şi ordinal

Continue: de tip interval şi raţional

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 12: Inteligenta artificiala: Tehnici de clasificare

12

Clasificarea şi regresia

Aceeaşi idee de bază: învăţarea unei relaţii între intrări (vectorul x) şi ieşire (y) din date

Singura diferenţă între clasificare şi regresie este tipul ieşirii: discret, respectiv continuu

Clasificarea estimează o ieşire discretă y, numită „clasă”

Regresia estimează funcţia h astfel încât y ≈ h(x) cu o anumită precizie

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 13: Inteligenta artificiala: Tehnici de clasificare

13

Exemple de aplicaţii

Învăţarea tratamentelor optime din înregistrările medicale

Clasificarea celulelor din tumori ca benigne sau maligne pe baza radiografiilor

Predicţia ratei de recuperare a pacienţilor cu pneumonie

Clasificarea structurilor secundare a proteinelor (predicţia proprietăţilor pe baza componentelor structurale)

Clasificarea plăţilor electronice ca legitime sau frauduloase

Recunoaşterea vorbirii

Clasificarea ştirilor în categorii precum politică, meteo, sport etc.

Clasificarea email-urilor în “spam” şi “ham”

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 14: Inteligenta artificiala: Tehnici de clasificare

14

Învăţarea supervizată. Tehnici de clasificare

1. Învăţarea automată şi clasificarea

2. Arbori de decizie

3. Metoda Bayes naivă

4. Învăţarea bazată pe instanţe

5. Generalizarea

6. Algoritmul NNGEP

7. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 15: Inteligenta artificiala: Tehnici de clasificare

15

Clasificarea cu arbori de decizie

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 16: Inteligenta artificiala: Tehnici de clasificare

16

Inducţia arborelui de decizie

Fie Dn mulţimea instanţelor de antrenare care ajung la un nod n

Procedura generală (algoritmul lui Hunt): Dacă Dn conţine instanţe din aceeaşi clasă yn , atunci

n este o frunză etichetată yn

Dacă Dn este o mulţime vidă, atunci n este o frunză etichetată cu clasa implicită (default) yd

Dacă Dn conţine instanţe care aparţin mai multor clase, se utilizează un test de atribute pentru a partiţiona datele în mulţimi mai mici

Se aplică recursiv procedura pentru fiecare submulţime

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 17: Inteligenta artificiala: Tehnici de clasificare

17

Algoritmul lui Hunt

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 18: Inteligenta artificiala: Tehnici de clasificare

18

Inducţia arborelui de decizie

Urmează o strategie greedy

Se partiţionează mulţimea de instanţe cu un test care maximizează un anumit criteriu

Partiţionarea datelor presupune:

Specificarea testului

Determinarea partiţionării optime

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 19: Inteligenta artificiala: Tehnici de clasificare

19

Specificarea testului

Depinde de tipul atributului

Nominal

Ordinal

Continuu

Depinde de numărul de posibilităţi de partiţionare

Binară

Multiplă

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 20: Inteligenta artificiala: Tehnici de clasificare

20

Atribute nominale

Partiţionarea multiplă

Numărul de partiţii = numărul de valori distincte

Partiţionarea binară

Se divid valorile în 2 submulţimi

Trebuie descoperită partiţionarea optimă

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 21: Inteligenta artificiala: Tehnici de clasificare

21

Atribute ordinale

Partiţionarea multiplă

Numărul de partiţii = numărul de valori distincte

Partiţionarea binară

Se divid valorile în 2 submulţimi

Trebuie descoperită partiţionarea optimă

? Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 22: Inteligenta artificiala: Tehnici de clasificare

22

Atribute continue

Se discretizează datele pentru a le transforma în atribute ordinale

Cu interval egal (histograma)

Cu frecvenţă egală (mulţimi cu numere egale de instanţe)

Clusterizare de exemplu k-medii (k-means), cursul 12

Decizie binară: (A v) sau (A > v)

Trebuie considerate toate partiţionările posibile

Necesită un efort de calcul mai mare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 23: Inteligenta artificiala: Tehnici de clasificare

Discretizarea

Cu interval egal – 3 intervale

[65, 75], (75, 85], (85, 95]

23 Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 24: Inteligenta artificiala: Tehnici de clasificare

Discretizarea

Cu frecvenţă egală – 3 intervale

24 Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 25: Inteligenta artificiala: Tehnici de clasificare

Discretizarea

Binară, cu o valoare de referinţă (de ex. 85)

25 Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 26: Inteligenta artificiala: Tehnici de clasificare

26

Partiţionarea optimă

Euristică: se preferă nodurile cu cele mai omogene distribuţii de clasă

Necesită o măsură a „impurităţii” nodurilor

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 27: Inteligenta artificiala: Tehnici de clasificare

27

Măsuri de impuritate

Convenţie: 0 log2 0 = 0

Pentru o problemă binară:

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 28: Inteligenta artificiala: Tehnici de clasificare

28

Măsuri de impuritate

Valoarea maximă: instanţele sunt distribuite egal între clase

Valoarea minimă (0): toate instanţele aparţin unei singure clase

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 29: Inteligenta artificiala: Tehnici de clasificare

29

Exemple

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 30: Inteligenta artificiala: Tehnici de clasificare

30

Partiţionarea

Când un nod părinte p este partiţionat în k fii, calitatea partiţionării se calculează astfel:

unde: ni = numărul de instanţe din fiul i

n = numărul de instanţe din nodul p

Formulă similară pentru entropie

k

i

isplit iGINI

n

nGINI

1

)(

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 31: Inteligenta artificiala: Tehnici de clasificare

31

Câştigul informaţional

Calitatea unei partiţionări este determinată de creşterea omogenităţii submulţimilor rezultate

Trebuie maximizat câştigul informaţional:

Δ = I(părinte) – Σi(ni / n * I(fiui))

Deoarece I(părinte) este acelaşi pentru toţi fiii, se preferă valoarea minimă pentru Σi(ni / n * I(fiui))

Funcţia I() poate fi entropia, indexul Gini sau altă măsură de impuritate

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 32: Inteligenta artificiala: Tehnici de clasificare

32

Exemplu: construirea unui AD

Se calculează câştigul informaţional pentru fiecare atribut (Refund, Status, Income)

Refund Refund = Yes 3 instanţe

Cheat = Yes 0

Cheat = No 3 Gini = 0

Refund = No 7 instanţe Cheat = Yes 3

Cheat = No 4 Gini = 1 – (3/7)2 – (4/7)2 = 0.49

GiniRefund = (3/10) * 0 + (7/10) * 0.49 = 0.343

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 33: Inteligenta artificiala: Tehnici de clasificare

33

Exemplu: construirea unui AD

Status Status = Divorced 2 instanţe

Cheat = Yes 1 Cheat = No 1

Gini = 1 – (1/2)2 – (1/2)2 = 0.5

Status = Married 4 instanţe Cheat = Yes 0 Cheat = No 4

Gini = 1 – (0/4)2 – (4/4)2 = 0

Status = Single 4 instanţe Cheat = Yes 2 Cheat = No 2

Gini = 1 – (2/4)2 – (2/4)2 = 0.5

GiniStatus = (2/10) * 0.5 + (4/10) * 0 + (4/10) * 0.5 = 0.3

Aceeaşi valoare dacă am considera 2 clase: {Married} şi {Divorced, Single} problemă de optimizare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 34: Inteligenta artificiala: Tehnici de clasificare

34

Construirea unui AD: atribute continue

Pentru eficientizarea calculelor, pentru fiecare atribut: Se sortează valorile Se parcurg liniar valorile, actualizându-se numărarea

instanţelor şi calculându-se indexul Gini Se alege poziţia de partiţionare cu indexul Gini minim

Cheat No No No Yes Yes Yes No No No No

Taxable Income

60 70 75 85 90 95 100 120 125 220

55 65 72 80 87 92 97 110 122 172 230

<= > <= > <= > <= > <= > <= > <= > <= > <= > <= > <= >

Yes 0 3 0 3 0 3 0 3 1 2 2 1 3 0 3 0 3 0 3 0 3 0

No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0

Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420

Poziţii de part.

Valori sortate

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 35: Inteligenta artificiala: Tehnici de clasificare

35

Construirea unui AD: atribute continue

Optimizare: se calculează indexul Gini doar pentru poziţiile unde se schimbă valoarea clasei

2 partiţionări candidat în loc de 11

Cheat No No No Yes Yes Yes No No No No

Taxable Income

60 70 75 85 90 95 100 120 125 220

55 65 72 80 87 92 97 110 122 172 230

<= > <= > <= > <= > <= > <= > <= > <= > <= > <= > <= >

Yes 0 3 0 3 0 3 0 3 1 2 2 1 3 0 3 0 3 0 3 0 3 0

No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0

Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420

Poziţii de part.

Valori sortate

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 36: Inteligenta artificiala: Tehnici de clasificare

36

Prima partiţionare

GiniRefund = 0.343

GiniStatus = 0.3

GiniIncome = 0.3

Partiţionările după “Status” şi “Income” sunt egal posibile

Dar rezultatele pot fi foarte diferite...

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 37: Inteligenta artificiala: Tehnici de clasificare

37

Procedura recursivă

Să considerăm “Status” pentru prima partiţionare

MarSt

Divorced Married Single

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 38: Inteligenta artificiala: Tehnici de clasificare

38

Al doilea nivel

Atribute rămase

Refund, Income

Status = Divorced

Refund = No Cheat = Yes

Refund = Yes Cheat = No

Gini = 0, partiţionare după Refund

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 39: Inteligenta artificiala: Tehnici de clasificare

39

Al doilea nivel

Status = Married Cheat = No

Nu mai sunt necesare alte partiţionări

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 40: Inteligenta artificiala: Tehnici de clasificare

40

Al doilea nivel

Status = Single Refund = Yes 1 instanţă

Cheat = Yes 0 Cheat = No 1

Gini = 0

Refund = No 3 instanţe Cheat = Yes 2 Cheat = No 1

Gini = 1 – (2/3)2 – (1/3)2 = 0.444

GiniRefund = 0 + (3/4) * 0.444 = 0.333

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 41: Inteligenta artificiala: Tehnici de clasificare

41

Al doilea nivel

Status = Single

Valoarea clasei neschimbată Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 42: Inteligenta artificiala: Tehnici de clasificare

42

Al doilea nivel

GiniRefund = 0.333

GiniIncome = 0.333

Partiţionările după “Refund” şi “Income” sunt egal posibile

Să considerăm “Refund”

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 43: Inteligenta artificiala: Tehnici de clasificare

43

Arborele final

MarSt

Divorced Married Single

Refund

Yes

NO

No

YES

NO Refund

Yes

NO

No

Income

<80

NO

80

YES

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 44: Inteligenta artificiala: Tehnici de clasificare

44

Decizia alternativă

Income

97

NO

<97

MarSt

Divorced Married Single

YES NO YES

Arborele de decizie are 1 eroare chiar pe mulţimea de antrenare!

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 45: Inteligenta artificiala: Tehnici de clasificare

Clasificarea cu arbori de decizie

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 46: Inteligenta artificiala: Tehnici de clasificare

Aplicarea modelului

Refund

MarSt

TaxInc

YES NO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Instanţa de test Se începe din rădăcină

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 47: Inteligenta artificiala: Tehnici de clasificare

Refund

MarSt

TaxInc

YES NO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Aplicarea modelului

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 48: Inteligenta artificiala: Tehnici de clasificare

Refund

MarSt

TaxInc

YES NO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Aplicarea modelului

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 49: Inteligenta artificiala: Tehnici de clasificare

Refund

MarSt

TaxInc

YES NO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Aplicarea modelului

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 50: Inteligenta artificiala: Tehnici de clasificare

Refund

MarSt

TaxInc

YES NO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Aplicarea modelului

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 51: Inteligenta artificiala: Tehnici de clasificare

Refund

MarSt

TaxInc

YES NO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Refund Marital Status

Taxable Income Cheat

No Married 80K ? 10

Se clasifică instanţa: Cheat = “No”

Aplicarea modelului

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 52: Inteligenta artificiala: Tehnici de clasificare

52

Algoritmi de inducţie

ID3, Iterative Dichotomiser 3 (Quinlan, 1983) Operează numai pe atribute discrete

C4.5 (Quinlan, 1993) Extensie a algoritmului ID3 Permite şi atribute continue Permite partiţionarea de mai multe ori după acelaşi atribut Permite „retezarea” (simplificarea, engl. “pruning”) arborelui generat pentru

a creşte capacitatea de generalizare

ID3 şi C4.5 folosesc entropia pentru a descoperi arbori de dimensiuni cât mai reduse

Arbori aleatorii (Random Tree, Random Forest) Stabileşte atributele pentru partiţionare în mod aleatoriu Nu generează arbori de dimensiuni mici Eroarea pe mulţimea de antrenare este foarte mică

Toţi aceşti algoritmi sunt euristici Nu se garantează dimensiunea minimă a arborelui şi nici performanţele Există mai mulţi arbori posibili pentru o problemă dată

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 53: Inteligenta artificiala: Tehnici de clasificare

53

Clasificarea cu arbori de decizie

De obicei uşor de construit Necesită totuşi o serie de calcule La implementare, dificultatea principală este partiţionarea

recursivă

Rapizi la clasificarea instanţelor necunoscute Uşor de interpretat

Mai ales pentru arbori mici ca dimensiune

Un arbore de decizie poate fi interpretat ca o mulţime de reguli De exemplu „Dacă Marital Status este Divorced şi Refund

este Yes atunci Cheat este No”

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 54: Inteligenta artificiala: Tehnici de clasificare

54

Învăţarea supervizată. Tehnici de clasificare

1. Învăţarea automată şi clasificarea

2. Arbori de decizie

3. Metoda Bayes naivă

4. Învăţarea bazată pe instanţe

5. Generalizarea

6. Algoritmul NNGEP

7. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 55: Inteligenta artificiala: Tehnici de clasificare

55

Clasificatorul bayesian

Se consideră fiecare atribut şi clasa ca variabile aleatorii

Se dă o instanţă cu atributele (A1, A2, …, An)

Trebuie determinată clasa C

Echivalent, trebuie găsită valoarea lui C care maximizează P ( C | A1, A2, …, An )

Trebuie estimată P ( C | A1, A2, …, An ) direct din date

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 56: Inteligenta artificiala: Tehnici de clasificare

56

Clasificatorul bayesian

Conform teoremei lui Bayes:

Se alege valoarea lui C care maximizează P ( C | A1, A2, …, An)

Echivalent cu alegerea valorii lui C care maximizează P ( A1, A2, …, An | C ) * P(C)

Problema se reduce la estimarea P(A1, A2, …, An | C)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 57: Inteligenta artificiala: Tehnici de clasificare

57

Clasificatorul bayesian naiv

engl. “Naïve Bayes”

Se presupune că atributele Ai sunt independente dată fiind clasa Cj:

P(A1, A2, …, An | Cj) = P(A1| Cj) P(A2| Cj) … P(An| Cj)

Putem estima P(Ai | Cj) pentru toate Ai şi Cj

Trebuie găsită valoarea Cj astfel încât P(Cj) i P(Ai | Cj) să fie maxim

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 58: Inteligenta artificiala: Tehnici de clasificare

58

Exemplu de clasificare

xq = (No, Married, 80K)

Trebuie să găsim:

argmax P(Cj) i P(Ai| Cj)

Calculăm probabilităţile pentru (Cheat = Yes) şi (Cheat = No)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 59: Inteligenta artificiala: Tehnici de clasificare

59

Exemplu de clasificare

xq = (No, Married, 80K)

argmax P(Cj) i P(Ai| Cj)

Cj = (Cheat = Yes)

P(Cheat = Yes) = 3 / 10

P(Refund = No | Cheat = Yes) = 3 / 3

P(Status = Married | Cheat = Yes) = 0 / 3

Income, Cheat = Yes

μ(Income|Cheat = Yes) = 90

σ (Income|Cheat = Yes) = 4.33

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 60: Inteligenta artificiala: Tehnici de clasificare

60

Considerente practice

Dacă una din probabilităţile condiţionate este 0, tot produsul devine 0

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 61: Inteligenta artificiala: Tehnici de clasificare

61

Considerente practice

Soluţie: corecţia Laplace sau estimarea m (engl. “m-estimate”)

Se estimează probabilităţile anterioare ale fiecărei valori

Iniţial:

Estimarea m:

Fie c numărul de clase, putem considera m = c şi p = 1 / c

Corecţia Laplace:

Foarte utilă mai ales la clasificarea textelor

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 62: Inteligenta artificiala: Tehnici de clasificare

62

Considerente practice

Precizia calculelor poate fi afectată de înmulţirea probabilităţilor (valori mici)

Soluţie: folosirea logaritmilor

Produsul de probabilităţi este înlocuit cu suma logaritmilor de probabilităţi

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 63: Inteligenta artificiala: Tehnici de clasificare

63

Atribute continue

Abordarea 1. Discretizarea

Câte un atribut ordinal pe submulţime

Violează presupunerea de independenţă

Abordarea 2. Partiţionarea binară: (A v) sau (A > v)

Se alege doar unul din teste

Valori: Da / Nu

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 64: Inteligenta artificiala: Tehnici de clasificare

64

Atribute continue

Abordarea 3. Estimarea distribuţiei de probabilitate (folosită mai rar)

Se presupune că valorile atributului respectă o distribuţie (de exemplu) normală

Parametrii distribuţiei se estimează din date (media μ şi deviaţia standard σ)

Odată cunoscută distribuţia de probabilitate, poate fi utilizată pentru a calcula probabilităţile condiţionate P(Ai|Cj)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 65: Inteligenta artificiala: Tehnici de clasificare

65

Atribute continue

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 66: Inteligenta artificiala: Tehnici de clasificare

66

Exemplu de clasificare

xq = (No, Married, 80K)

argmax P(Cj) i P(Ai| Cj)

Cj = (Cheat = Yes)

P(Cheat = Yes) = 3 / 10

P(Refund = No | Cheat = Yes) = 3 / 3

P(Status = Married | Cheat = Yes) = 0 / 3

Income, Cheat = Yes

μ(Income|Cheat = Yes) = 90

σ (Income|Cheat = Yes) = 4.082

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 67: Inteligenta artificiala: Tehnici de clasificare

67

Exemplu de clasificare

xq = (No, Married, 80K)

Income, Cheat = Yes

μ(Income|Cheat = Yes) = 90

σ (Income|Cheat = Yes) = 4.082

P(Income = 80 | Cheat = Yes) =

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 68: Inteligenta artificiala: Tehnici de clasificare

68

Exemplu de clasificare

xq = (No, Married, 80K)

argmax P(Cj) i P(Ai| Cj)

Cj = (Cheat = Yes)

P(Cheat = Yes) = 3 / 10

P(Refund = No | Cheat = Yes) = 3 / 3

P(Status = Married | Cheat = Yes) = 0 / 3

P(Income = 80 | Cheat = Yes) = 4.862e-3

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 69: Inteligenta artificiala: Tehnici de clasificare

69

Exemplu de clasificare

xq = (No, Married, 80K)

argmax P(Cj) i P(Ai| Cj)

Analog pentru Cj = (Cheat = No)

P(Cheat = No) = 7 / 10

P(Refund = No | Cheat = No) = 4 / 7

P(Status = Married | Cheat = No) = 4 / 7

P(Income = 80 | Cheat = No) = 6.622e-3

μ(Income|Cheat = No) = 110 σ(Income|Cheat = No) = 50.498 !

valorile atributului nu au de fapt o distribuţie normală

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 70: Inteligenta artificiala: Tehnici de clasificare

70

Exemplu de clasificare

xq = (No, Married, 80K)

argmax P(Cj) i P(Ai| Cj)

Analog pentru Cj = (Cheat = No)

P(Cheat = No) = 7 / 10

P(Refund = No | Cheat = No) = 4 / 7

P(Status = Married | Cheat = No) = 4 / 7

P(Income = 80 | Cheat = No) = 6.622e-3

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 71: Inteligenta artificiala: Tehnici de clasificare

71

Exemplu de clasificare

xq = (No, Married, 80K)

P(xq|Cyes) = 0.233 * 10-3

P(xq|Cno) = 1.43 * 10-3

argmaxj P(xq|Cj) = “No”

În general, discretizarea (chiar cu intervale egale) dă rezultate mai bune decât metoda estimării distribuţiei de probabilitate.

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 72: Inteligenta artificiala: Tehnici de clasificare

72

Clasificarea Bayes naivă

Avantaje Calcule simple Robusteţe la zgomot şi atribute irelevante

Aplicabilitate Mulţimi de antrenare medii sau mari Atribute independente condiţional

Presupunerea este deseori infirmată în realitate Dar metoda funcţionează totuşi surprinzător de bine! Extensie: reţele bayesiene

Aplicaţii de succes Diagnoză Clasificarea documentelor text Detecţia spam-ului

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 73: Inteligenta artificiala: Tehnici de clasificare

73

Învăţarea supervizată. Tehnici de clasificare

1. Învăţarea automată şi clasificarea

2. Arbori de decizie

3. Metoda Bayes naivă

4. Învăţarea bazată pe instanţe

5. Generalizarea

6. Algoritmul NNGEP

7. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 74: Inteligenta artificiala: Tehnici de clasificare

74

Clasificarea bazată pe instanţe

Instanţele memorate

Instanţă nouă

Se memorează instanţele de antrenare

Se folosesc pentru a prezice clasele instanţelor noi

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 75: Inteligenta artificiala: Tehnici de clasificare

75

Cei mai apropiaţi k vecini

engl. “k-Nearest Neighbor” (k-NN)

Se folosesc cele mai apropiate k instanţe pentru a realiza clasificarea

„Dacă merge ca o raţă şi măcăne ca o raţă, atunci probabil e o raţă”

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 76: Inteligenta artificiala: Tehnici de clasificare

76

Clasificarea k-NN

Necesită:

Mulţimea instanţelor de antrenare

O metrică de distanţă pentru a calcula distanţa dintre instanţe

Valoarea lui k, numărul de vecini apropiaţi (k ≥ 1)

Pentru a clasifica o instanţă nouă:

Se calculează distanţa faţă de instanţele de antrenare

Se identifică cei k vecini cei mai apropiaţi

Se folosesc clasele vecinilor pentru a determina clasa noii instanţe (de exemplu prin vot majoritar)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 77: Inteligenta artificiala: Tehnici de clasificare

77

Reprezentarea instanţelor

Pentru n atribute, instanţele pot fi văzute ca puncte într-un spaţiu n-dimensional

De exemplu clasificarea riscului unor pacienţi

Atribute:

Indicele Masei Corporale IMC (= G/I2)

Vârsta V

Instanţe:

IMC = 18.5, V = 20

IMC = 27, V = 32

IMC = 39, V = 27

IMC = 20, V = 25

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 78: Inteligenta artificiala: Tehnici de clasificare

78

Cei mai apropiaţi vecini

Cei mai apropiaţi k vecini ai unei instanţe x sunt punctele cu cele mai mici distanţe faţă de x

k = 1 k = 2 k = 3

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 79: Inteligenta artificiala: Tehnici de clasificare

79

Numărul de vecini

k = 1 k = 2 k = 3

Când k este prea mic, clasificarea poate fi afectată de zgomot

Când k este prea mare, vecinătatea poate include puncte din alte clase

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 80: Inteligenta artificiala: Tehnici de clasificare

80

1-NN: diagrama Voronoi

În interiorul unei celule, clasificarea tuturor noilor instanţe este determinată de instanţa de antrenare corespunzătoare

Instanţele noi din afara unei celule sunt mai apropiate de alte instanţe de antrenare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 81: Inteligenta artificiala: Tehnici de clasificare

81

Diagramele Voronoi şi grădina zen Ryoanji

Cercetătorii au descoperit că spaţiul gol al grădinii evocă o imagine ascunsă a unui arbore care este percepută inconştient

Partea de sus este similară cu diagrama Voronoi

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 82: Inteligenta artificiala: Tehnici de clasificare

82

Metrici de distanţă

Se folosesc în general particularizări ale distanţei Minkowski

Cele mai folosite metrici sunt: Distanţa euclidiană: p = 2

Distanţa Manhattan: p = 1

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 83: Inteligenta artificiala: Tehnici de clasificare

83

Scalarea

Se recomandă scalarea atributelor pentru a preveni dominarea măsurii de distanţă de către un anumit atribut

De exemplu:

Înălţimea unei persoane [1.5, 2.1] m

Greutatea unei persoane [50, 120] kg

Venitul unei persoane [10000, 1000000] EUR/an

Valorile atributelor sunt normalizate:

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 84: Inteligenta artificiala: Tehnici de clasificare

84

Numărul de dimensiuni

Blestemul dimensionalităţii

engl. “curse of dimensionality”

Datele devin mai rare în spaţiile multidimensionale

Dacă numărul de atribute este mare, este nevoie de mai multe instanţe de antrenare pentru a forma un model corect

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 85: Inteligenta artificiala: Tehnici de clasificare

85

Ponderarea instanţelor

Vecinii mai apropiaţi au o influenţă mai mare la stabilirea clasei

Fiecare dintre vecini poate fi ponderat pe baza distanţei:

wi = 1 / d(xq, xi)2

Dacă d(xq, xi) = 0, atunci f(xq) = f(xi)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 86: Inteligenta artificiala: Tehnici de clasificare

86

Exemplu: calcularea distanţelor

Noua instanţă: xq = (No, Married, 80K)

De exemplu: d(xq, x4) = ...

dRefund = 1 (No Yes)

dStatus = 0 (Married = Married)

dIncome = ...

Iq = 80, normalizat între 60 şi 220 0.125

I4 = 120, normalizat 0.375

dIncome = 0.25

d(xq, x4) = sqrt(12 + 02 + 0.252)= 1.031

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 87: Inteligenta artificiala: Tehnici de clasificare

87

Exemplu: calcularea distanţelor

Noua instanţă: xq = (No, Married, 80K) d(xq, x1) = 1.442 d(xq, x2) = 0.125 d(xq, x3) = 1.002 d(xq, x4) = 1.031 d(xq, x5) = 1.004 d(xq, x6) = 0.125 d(xq, x7) = 1.663 d(xq, x8) = 1.000 d(xq, x9) = 0.031 d(xq, x10) = 1.002 k = 3 Cele mai apropiate 3 instanţe sunt:

x9 (Cheat=No), x2 (No) şi x6 (No) Deci: f(xq) = No

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 88: Inteligenta artificiala: Tehnici de clasificare

88

Exemplu: ponderarea

Noua instanţă: xq = (No, Married, 80K)

w(x1) = 1 / 1.4422 = 0.481 (No)

w(x2) = 1 / 0.1252 = 64 (No)

w(x3) = 0.996 (No) w(x4) = 0.941 (No) w(x5) = 0.992 (Yes) w(x6) = 64 (No) w(x7) = 0.362 (No) w(x8) = 1.000 (Yes) w(x9) = 1040.583 (No) w(x10) = 0.996 (Yes)

k = 10 Se pot lua în calcul toate

instanţele de antrenare Se transformă dintr-o

metodă locală într-una globală

Decizia: suma Voturi pt. No: 1171.363 Voturi pt. Yes: 2.988

Deci: f(xq) = No

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 89: Inteligenta artificiala: Tehnici de clasificare

89

Ponderarea atributelor

Ideea de bază: lungirea sau scurtarea axelor în spaţiul euclidian

Lungirea axelor atributelor mai relevante

Scurtarea axelor atributelor mai puţin relevante

Metode:

Ponderarea pe baza câştigului informaţional

Ponderarea cu un algoritm local, precum Relief (Kira & Rendell, 1992)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 90: Inteligenta artificiala: Tehnici de clasificare

90

Selecţia atributelor

Într-o mulţime de antrenare pot exista atribute irelevante, care complică inutil modelul şi pot afecta rezultatele clasificării

Avantajele selecţiei atributelor:

Calcule mai simple

Clasificatorul rezultat este mai rapid

Erorile la predicţie pot scădea

Identificarea atributelor relevante poate ajuta la înţelegerea naturii problemei de clasificare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 91: Inteligenta artificiala: Tehnici de clasificare

91

Clasificarea bazată pe cei mai apropiaţi vecini

Clasificatorii k-NN sunt clasificatori pasivi (engl. “lazy learners”)

Modelul nu este construit explicit

Efortul de calcul se face la clasificarea instanţelor noi

Arborii de decizie sunt clasificatori activi (engl. “eager learners”)

Timpul de clasificare poate fi redus prin utilizarea arborilor kd (engl. “kd-trees”, k-dimensional trees)

Rata de eroare este de obicei mică

Dacă mulţimea de antrenare nu este afectată de zgomot, rata de eroare este de obicei 0%

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 92: Inteligenta artificiala: Tehnici de clasificare

92

Învăţarea supervizată. Tehnici de clasificare

1. Învăţarea automată şi clasificarea

2. Arbori de decizie

3. Metoda Bayes naivă

4. Învăţarea bazată pe instanţe

5. Generalizarea

6. Algoritmul NNGEP

7. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 93: Inteligenta artificiala: Tehnici de clasificare

93

Aproximarea unei funcţii

Să se determine funcţia care trece prin punctele de mai jos

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 94: Inteligenta artificiala: Tehnici de clasificare

94

Aproximarea unei funcţii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 95: Inteligenta artificiala: Tehnici de clasificare

95

Aproximarea unei funcţii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 96: Inteligenta artificiala: Tehnici de clasificare

96

Aproximarea unei funcţii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 97: Inteligenta artificiala: Tehnici de clasificare

97

Aproximarea unei funcţii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 98: Inteligenta artificiala: Tehnici de clasificare

98

Briciul lui Occam

Trebuie preferată cea mai simplă ipoteză consistentă cu datele

La egalitate, modelele mai simple tind să generalizeze mai bine decât cele complexe

Lex parsimoniae: entia non sunt multiplicanda praeter necessitatem

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 99: Inteligenta artificiala: Tehnici de clasificare

99

Generalizarea

Găsirea unui model pentru determinarea valorii clasei în funcţie de valorile celorlalte atribute cu eroare cât mai mică

Modelul trebuie să aibă capacitate de generalizare

Aplicarea acestui model pe date noi

De obicei există o mulţime de antrenare, pentru crearea modelului şi o mulţime de validare (sau de test) pentru verificarea capacităţii de generalizare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 100: Inteligenta artificiala: Tehnici de clasificare

100

Generarea mulţimii de validare

Împărţirea 1/3 - 2/3

2/3 pentru antrenare, 1/3 pentru test

Validare încrucişată (engl. “cross-validation”)

n grupuri, n-1 pentru antrenare, al n-lea pentru testare, se repetă de n ori

“Leave one out”

n-1 instanţe pentru antrenare, a n-a pentru testare, se repetă de n ori

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 101: Inteligenta artificiala: Tehnici de clasificare

101

Generalitatea unui model

Subpotrivirea (engl. “underfitting”): ipoteza este prea simplă şi nu poate învăţa modelul din date

Suprapotrivirea (engl. “overfitting”): ipoteza este prea complexă şi este influenţată de zgomot şi date irelevante

Un model suprapotrivit are performanţe foarte bune pe mulţimea de antrenare, dar performanţe slabe pe mulţimea de validare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 102: Inteligenta artificiala: Tehnici de clasificare

102

Învăţarea supervizată. Tehnici de clasificare

1. Învăţarea automată şi clasificarea

2. Arbori de decizie

3. Metoda Bayes naivă

4. Învăţarea bazată pe instanţe

5. Generalizarea

6. Algoritmul NNGEP

7. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 103: Inteligenta artificiala: Tehnici de clasificare

103

Integrarea

Pot fi integrate astfel de metode aparent diferite într-o singură metodă?

NNGEP, “Non-Nested Generalized Exemplars with Prototypes” (Leon, 2005) combină:

Reguli

Instanţe

Prototipuri

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 104: Inteligenta artificiala: Tehnici de clasificare

104

Clasificarea NNGEP

Instanţele similare sunt agregate în exemplare generalizate (hiper-paralelipipede)

Exemplarele generalizate nu se suprapun

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 105: Inteligenta artificiala: Tehnici de clasificare

105

Clasificarea NNGEP

Noile instanţe sunt incluse în cel mai apropiat exemplar generalizat

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 106: Inteligenta artificiala: Tehnici de clasificare

106

Clasificarea NNGEP

Dacă o generalizare intră ulterior în conflict cu un exemplu negativ, generalizarea este modificată pentru menţinerea consistenţei

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 107: Inteligenta artificiala: Tehnici de clasificare

107

Prototipuri

Întrucât un exemplar generalizat conţine mai multe instanţe, media statistică a acestora nu coincide neapărat cu centrul geometric al hiper-paralelipipedului corespunzător

Prototipul poate fi diferit de centrul geometric

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 108: Inteligenta artificiala: Tehnici de clasificare

Actualizarea prototipurilor

Când se adaugă o nouă instanţă unui exemplar generalizat, prototipul acestuia se modifică după formulele:

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 109: Inteligenta artificiala: Tehnici de clasificare

109

Rezultate

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 110: Inteligenta artificiala: Tehnici de clasificare

110

Interpretare

Hiper-paralelipipedele pot fi interpretate ca reguli

Dacă a < x < b atunci x CH

Hiper-paralelipipedele sunt exemplare generalizate (instanţe)

În interior, o nouă instanţă este clasificată direct în clasa CH

În exterior, o nouă instanţă este clasificată pe baza celui mai apropiat exemplar generalizat

Prototipurile sunt calculate folosind distribuţia normală

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 111: Inteligenta artificiala: Tehnici de clasificare

111

Concluzii

Clasificarea este o parte foarte importantă a învăţării inductive

Euristicile de clasificare pot avea performanţe diferite pentru aceeaşi problemă, depinzând de structura problemei

Deşi diferite conceptual, metodele bazate pe reguli, instanţe şi prototipuri pot fi integrate într-un model cognitiv unitar

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 112: Inteligenta artificiala: Tehnici de clasificare

Weka

Colecţie open-source de algoritmi de învăţare automată

112 Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm