Documente Academic
Documente Profesional
Documente Cultură
1
14
log
2
(p(m
i
))
Selectia testului (atributului)
15
C cu peP si neN
Continutul de informatie I(AD
p,n
) este
Selecteaza A in radacina; A e{A
1
,,A
v
}
Fie C
i
cu p
i
eP si n
i
eN, i=1,v
Continutul de informatie pentru C
i
este
I(AD
pi,ni
), i=1,v
n p
n
n p
n
n p
p
n p
p
AD I
n p
+ +
+ +
=
2 2 ,
log log ) (
Selectia testului (atributului)
16
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
unde ponderea ramurii i este fractiunea de obiecte
din C care apartin lui C
i ;
v este numarul de valori ale lui A
) ( ) (
,
1
ni pi
v
i
i i
AD I
n p
n p
A E
=
+
+
=
Selectia testului (atributului)
17
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
Calcul G(A) pt Ex 1
18
14 exemple, 9eP, 5eN
I(AD
p,n
) = ???? = 0.940 bits
vreme
soare - 2eP, 3eN I(AD
p1,n1
) = 0.971
nori - 4eP, 0eN I(AD
p2,n2
) = ?
ploaie - 3eP, 2eN I(AD
p3,n3
) = ?
E(vreme) = ??? = 0.694 bits
G(vreme) = 0.940-0.694= 0.246 bits
G(temperatura) = 0.029 bits
G(umiditate) = 0.151
G(vant) = 0.48 bits
14
5
log
14
5
14
9
log
14
9
2 2
) (
14
5
) (
14
4
) (
14
5
3 , 3 2 , 2 1 , 1 n p n p n p
AD I AD I AD I + +
0
0.971
Generalizare la mai multe clase
Continutul de informatie
Cantitatea de informatie necesara
pentru a termina constructia arborelui
Castigul informational
G(A) = I(Arb) E(A)
) ( log * ) ( ) ( 2
1
Ci Cl p C Cl p Arb I
v
i
i
= = =
=
19
=
=
v
i
i
i
C I
C
C
A E
1
) (
| |
| |
) (
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 > atribute
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
, atribute, m)
- creaza legatura nod A nod
V
etichetata cu V
sfarsit
20
caz 1 ex inv lipsa
caz 2 atr inadecvate
Bine = recunoaste
Acuratetea predictiva a ID3
Acuratetea predictiva = cat de bine clasifica un
AD obiecte necunoscute
Experimente
1.4 mil pozitii joc tabla sah descrise de 49 atribute
715 obiecte (65% si 35%) AD cu 150
noduri
SI fereastra cu 20% din cele 715 obiecte AD care
clasifica corect 84% din restul obiectelor
1987 obiecte AD cu 48 noduri
SI fereastra cu 20% din obiecte AD clasifica
corect 98% din restul obiectelor
21
Complexitate
In fiecare nod cu exceptia frunzelor trebuie aflat
G (castig informational) pt fiecare atribut A
G depinde de valorile p
i
si n
i
pentru fiecare
valoare A
i
a lui A fiecare obiect din C trebuie
investigat (clasa, valoare A)
O(|C| * |A|) , |A| - nr atribute
Pentru fiecare iteratie, complexitatea ID3
O(|C| * |A| * |AD|) , unde |AD| - numar de noduri
interne AD
22
Cazuri speciale
Caz 1. Nu exista obiecte oe 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)
23
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 ale obiectelor din C
Erorile din C (zgomotele) pot duce la 2
probleme:
atribute inadecvate (1)
AD cu complexitate mai mare decat este
necesar (2)
24
Cazuri speciale: Zgomot
Modificari necesare ID3 pt a trata zgomotul
(1) Trebuie sa poata lucra cu atribute inadecvate
(2) trebuie sa decida daca testarea unor atribute
suplimentare va creste sau nu acuratetea predictiva a AD
Cum se realizeaza (2)
Este un atribut relevant?
Fie A cu valori aleatoare
Alegerea lui A pt a creste arborele va aduce un castig
informational mare (cu exceptia cazului in care procentul
de obiecte eP din fiecare C
i
este exact aceasi cu procentul
de obiecte eP din C) numai aparent
25
Cazuri speciale: Zgomot clase
Solutia 1
G(A) > prag o absolut sau relativ
o suficient de mare pt a elimina atribute nerevante
elimina si atribute relevante pt cazul fara zgomot
Solutia 2
Testul pt independenta stohastica
C
i
cu p
i
eP si n
i
eN
Daca valoarea A
i
a lui A este irelevanta pt clasa unui
obiect din C, valoarea estimata p
i
'
a lui p
i
este:
26
2
n p
n p
p p
i i
i
+
+
=
'
Cazuri speciale: Zgomot clase
Daca p
i
' si n
i
' nu sunt foarte mici atunci se poate
utiliza o expresie ce aproximeaza testul
pentru a determina increderea in relevanta lui A
Se elimina atributele pentru care increderea in
relevanta nu este foarte mare.
27
'
2 '
1
'
2 '
) ( ) (
i
i
v
i
i
i
n
n n
p
p p
+
=
_
2
Cazuri speciale: Zgomot atribute
Cum se realizeaza (1)
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
28
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
si alege valoarea cu cea mai mare probabilitate
29
) (
) (
) | (
P clasa prob
P clasa A A prob
P clasa A A prob
i
i
=
= . =
= = =
Cazuri speciale: atribute lipsa SI
Solutia 3
Construieste un AD pt a invata valorile
atributelor lipsa
C'cC, C' cu valori pt A
In C' clasa este privita ca un atribut
A clasa de invatat cu valori P sau N
Obtine AD' utilizat apoi pentru a clasifica
obiectele din C-C' determin valoarea
atributului A
Solutia 3 > Solutia 2 > Solutia 1
30
Cazuri speciale: atribute lipsa SI
Solutia 4
Adauga o noua valoare "nec"
Rezultate anormale
A={A
1
, A
2
}
C A
1
p
1
=2 n
1
=2 A
2
p
2
=2 n
2
=2
E(A)=1
A' identic cu A cu exceptia un obiect care are val A
1
necunoscuta
A' = {A
1
', A
2
', A
3
'="nec"}
p
1
' = 1 p
2
'=2 p
3
'=1
n
1
'=2 n
2
'=2 n
3
'=0 E(A') = 0.84
Se selecteaza A'
31
Cazuri speciale: atribute lipsa SI
Solutia 5
La evaluarea castigului informational, obiectelor
cu valori necunoscute li se atribuie valori
distribuite peste valorile lui A proportional cu
frecventa relativa a acestor valori in C
G(A) este calculat ca si cum valoarea lui p
i
ar fi
data de:
p
i
+p
i
* R
i
n
i
+n
i
* R
i
Valorile necunoscute nu pot decat sa scada
castigul informational
32
+
+
=
j
j j
i i
i
n p
n p
R
) (
Cazuri speciale: atribute lipsa in clasificare
Caz 3. Valori necunoscute de atribute
3.2 Valori de atribute lipsa in clasificare
Valoarea lui A este necunoscuta in obiect
Se exploreaza toate alternativele A
1
,, A
v
si se
transmite pe fiecare ramura un jeton A
i
R
i
33
+
+
=
j
j j
i i
i
n p
n p
R
) (
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
Solutia 1 (valori numerice)
Partitionez in intervale (A
i
+A
i+1
)/2, fiecare interval o
valoare
Solutia 2 (valori numerice)
Pt fiecare A
i
, i=1,m imparte obiectele in (-, A
i
] si
(A
i
, + ) partitie P
i
Pentru fiecare P
i
calculeaza castigul informational si
selecteaza partitia cu castig informational maxim
34
Cazuri speciale: A cu multe valori
Solutia 3 (valori simbolice)
Utilizeaza Informatia de separare = cantitatea de
informatie necesara pentru a determina valoarea unui
atribut A intr-un set de invatare C
Fie P
A,C
distributia de probabilitate a valorilor lui A
Informatia de separare masoara continutul
informational al raspunsului la intrebarea "Care este
valoarea atributului A?"
35
n p
n p
n p
n p
A ISep
i i
v
i
i i
+
+
+
+
=
=
2
1
log ) (
)
| |
| |
,...,
| |
| |
(
1
C
A
C
A
P
v
AC
=
Cazuri speciale: A cu multe valori
Dar GR poate sa nu fie intotdeauna definita (ISep=0)
sau sa tinda sa favorizeze ISep mici
Selecteaza dintre atributele cu G(A) mare (peste medie)
acelea cu GR(A) cel mai bun
G(vreme) = 0.246 bits
G(temperatura) = 0.029 bits
G(umiditate) = 0.151 bits
G(vant) = 0.48 bits
ISep(vreme) = 1.578, ISep(umiditate) = 1 bit
GR(vreme) = 0.246/1.578=0.156
GR(umiditate) = 0.151/1.0 = 0.151
36
) (
) (
) (
A ISep
A G
A GR =
Cazuri speciale: A cu multe valori
Utilizeaza diverse metode de invatare pentru a
forma clase din aceste valori sau a grupa aceste
vaori in grupuri (clustere), clase care sa devina
valori discrete (sau sa produca mai putine
avlori) pentru atribut
Retele neurale
37