Sunteți pe pagina 1din 9

Proiect TADM

- Arbori de decizie -

Student: Manea Daniela


Facultate: Litere si stiinte
Specializare: TAPI
An: II; Sem: I
Arbori de decizie

In realizarea proiectului meu la displina Tehnici Avansate de Data


Mining am ales sa descriu un model de clasificare avand ca elemente
reper urmatoarele intrebari:

1. Cum se alege un clasificator? (ex. Pentru o anumit problem de


clasificare, ce algoritm este potrivit? Dai un exemplu concret n KNIME,
prin realizarea diagramei corespunztoare i indicarea rezultatelor
obinute modelul obinut, acurateea modelului etc.).

2. Ct de mare trebuie s fie un set de antrenare a modelului de


clasificare? Justificai.
3. Care sunt metodele de evaluare a unui clasificator?

4. Care sunt avantajele modelului de clasificare considerat?

Avantaje model
Am ales arborii de decizie drept model de clasificare pentru
problema de clasificare Bank Marketing deoarece analiza arborilor de
decizie/clasificare reprezinta una dintre principalele tehnici data mining.
Tehnica este flexibila datorita faptului ca prezinta avantajul unei
vizualizari sugestive ( arborele ce sintetizeaza clasificarea obtinuta).
Arborele de decizie este un instrument de clasificare si predictie.
Regulile associate lui trebuie sa fie usor de interpretat, utilizat intr-o
baza de date. Clasificatorul rezultat in urma aplicarii arborelui de decizie
asupra problemei de rezolvat este sub forma unei structura
arborescente in care nodurile sunt:
- nod frunza: valoarea atributul tinta (clasa);
- nod de decizie: testul facut asupra unui singur atribut
valoare.
Algoritmii dezvoltati pentru invatarea arborilor de decizie se
bazeaza pe metoda Greedy, adica o constructive recursive de sus in
jos de tip divide and conquer. Algoritmii Greedy sunt algoritmi care
utilizeaza rezolvarea metaeuristica, a problemelor, prin identificarea
optimelor locale si incercarea de gasire a optimului global.
Principalele avantaje ale metodei sunt:
- permit generarea de reguli usor interpretabile;
- tehnica flexibila deoarece ofera vizibilitate asupra celor mai
importante campuri pentru clasificare;
- clasifica fara a depune eforturi mari d.p.d.v. al calculelor;
- permit utilizarea variabilelor categoriale si numerice.
Utilizarea arborilor de decizie ca instrument DM:
Pas 1: Descrierea atributelor valoare;
Pas 2: Predefinirea claselor;
Pas 3: Identificarea claselor discrete;
Pas 4: Utilizarea unui volum semnificativ de date de antrenare.

Setul de antrenare a modelului de clasificare


Este importanta utilizarea unui volum semnificativ de date de
antrenare si testare. Un numar prea mic de date de antrenare (de zeci
de inregistrari ) ar putea duce la construirea gresita a modelului de
clasificare deoarece datele sunt insuficiente. De obicei se folosesc sute
sau mii de cazuri de antrenare. Deasemenea nici un set de date foarte
mare nu este eficient deoarece poate distorsiona rezultatele in urma
aplicarii modelului (clasificator) in rezolvarea problemei.

Descrierea problemei de clasificare


Bank Marketing

Datele sunt legate de campanii de marketing direct (apeluri


telefonice) ale unei instituii bancare portugheze. Obiectivul de
clasificare este de a prezice daca clientul va subscrie un depozit la
termen (variabila y).
Fisierul ce contine datele se numeste bank-full.csv si este
descarcat de pe site-ul UCI Machine Learning Repository (
http://mlr.cs.umass.edu/ml/datasets/Bank+Marketing ). Tabela cu
datele este descrisa astfel:
Descrierea setului de date

Obiectivul de clasificare este de a prezice daca clientul va subscrie


(da / nu) un depozit la termen (variabila y).
Descrierea atributelor :

Variabilele de intrare:
1 - age (numeric)
2 - job : tipul de job (categorical: 'admin.','blue-collar', 'entrepreneur',
'housemaid', 'management', 'retired', 'self-employed', 'services', 'student',
'technician', 'unemployed', 'unknown')
3 - marital : statut marital (categorical: 'divorced','married','single','unknown';
note: 'divorced' means divorced or widowed)
4 - education (categorical: 'basic.4y', 'basic.6y', 'basic.9y', 'high.school', 'illiterate',
'professional.course', 'university.degree', 'unknown')
5 - default: are credit neachitat? (categorical: 'no','yes','unknown')
6 - housing: are imprumut ipotecar? (categorical: 'no','yes','unknown')
7 - loan: are credit de nevoi personale? (categorical: 'no','yes','unknown') #
related with the last contact of the current campaign:
8 - contact: tip de contact de comunicare (categorical: 'cellular','telephone')
9 - month: ultimul contact - luna din an(categorical: 'jan', 'feb', 'mar', ..., 'nov',
'dec')
10 - day_of_week: ultimul contact ziua din saptamana (categorical: 'mon', 'tue',
'wed', 'thu', 'fri')
11 - duration: durata ultimului contact in secunde (numeric).
12 - campaign: numarul de contacte realizate pentru acest client in timpul acestei
campanii (numeric, include ultimul contact)
13 - pdays: numarul de zile care au trecut dup ace clientul a fost contactat ultima
data dintr-o campanie anterioara (numeric; 999 inseamna ca nu a fost recent
contactat)
14 - previous: numarul de contacte efectuate inainte de aceasta campanie pentru
acest client (numeric)
15 - poutcome: rezultatul campaniei de marketing precedente (categorical:
'failure','nonexistent','success')
16 - emp.var.rate: rata de variatie a ocuparii fortei de munca indicator
trimestrial (numeric)
17 - cons.price.idx: indicele preturilor de consum indicator lunar (numeric)
Variabila de iesire ( tinta dorita/ticheta/ atributul rezultat in
urma realizarii modelului ):
18 - y - has the client subscribed a term deposit? (binary: 'yes','no')

Realizarea problemei de clasificare


Bank Marketing in KNIME

Diagrama corespunzatoare modelului:

Diagrama corespunzatoare modelului de clasificare prin arbori de decizie

In realizarea diagramei corespunzatoare modelului am folosit


noduri precum:

CSV Reader: citeste fisierul de tipul CSV;


Number To String: realizeaza conversia variabilei de tip integer la o
variabila de tip string;
Partitioning: este nodul responsabil cu partitionarea datelor,
imparte datele in date de antrenare si date de testare (60%-40%).
Pentru a aplica modelul arborilor de decizie se adauga in
diagrama nodurile: Decision Tree Learner, Decision Tree
Predictor se configureaza prin precizarea variabilei tinta y).
Pentru verificarea acuratetei modelului de clasificare se
adauga nodul Scorer.

Metode de evaluare a clasificatorului

Metodele de evaluare a performantei unui clasificator sunt:

1. Masuri de performanta
2. Estimarea erorii
3. Testarea semnificatiei statistice

Masuri de performanta

a. Acuratetea/Rata erorii: cele doua masuri sunt complementare


si dau o masura de performanta generala a clasificatorului.

Acuratetea este raportul dintre numarul datelor etichetata in


mod corect impartit la numarul total de date, in timp ce rata
erorii este raportul dintre numarul datelor etichetate in mod
gresit impartit la numarul total de date.

b. Matricea de confuzie (confusion matrix)


Este o matrice de k clase de dimensiune k x k:
Clasificare Clasificat ca Total
reala instante
Pozitive Negative
Pozitive True Pozitive False Negative P
(TP) (FN)
Negative False Pozitive True Negative N
(FP) (TN)

Clasa de interes este cea pozitiva.


P= FN+TP; N= TN+FP;
True-positive rate (TPR) se refera la procentul de date clasificate
correct, iar false-positive rate (FPR) se refera la procentul de date
clasificate gresit:
TPR= TP/P; FPR= FP/N.

c. Analiza ROC (Receiver operating characteristic)


Analiza ROC se bazeaza pe un grafic (curba ROC) pentru un
clasificator. Curba ROC are pe axa orizontala FPR si pe verticala
TPR. Ea studiaza relatia dintre sensitivity (TPR) si specificity
(FPR) a unui clasificator. Spatiul ROC este un patrat 1X1.
AUC este masura a performantei unui clasificator. Valoarea
AUC apartine intervalului [0,1]:
- 1 este valoarea pentru clasificatorul perfect;
- 0.5 este valoarea pentru un clasificator aleator;
In concluzie un clasificator trebuie sa aiba un AUC peste 0.5
pentru ca performanta sa fie rezonabila.

Estimarea erorii
Realizeaza o estimare obiectiva a performantei unui clasificator.
Datele sunt impartite in 3 parti:
- date de antrenare: clasificatorul invata sa asocieze
clase atributelor;
- date de validare: determina eroarea de predictive a
modelului;
- date de test: masoara eroarea de generalizare a
abordarii.
Testarea semnificatiei statistice
Se foloseste cand performantele unui algoritm nou se
compara cu cele ale algoritmilor standard. Se testeaza care este cel
mai bun algoritm pentru o problema data.

Alte masuri de performanta:


- masuri statistice de concordanta;
- rata de verosimilitate;
- LR in compararea a doi algoritmi;
- PPV (Positive predictive value);

In exemplul meu pot evalua clasificatorul prin matricea de


confuzie:

Matricea de confuzie

In matricea de confuzie anterior prezentata se observa faptul ca acuratetea modelului


este de 96,29% ceea ce inseamna ca avem un clasificator bun. Datele clasificate correct fiind in
numar de 3.401 (TP+TN) iar cele clasificate gresit 131 (FP+FN). Eroarea fiind de 3,7%.
Calcul TPR,FPR:
True-positive rate ( TPR ): TPR = TP/P;
P = FN+TP => P = 76+33 = 109;
TPR = 33/109 = 0,3
False-positive rate ( FPR ): FPR = FP/N;
N = TN+FP => N = 3.368+55 = 3.423;
FPR = 55/3.423 = 0.01
Bibliografie

S-ar putea să vă placă și