Sunteți pe pagina 1din 45

Analiza tehnicilor de Machine Learning

și aplicarea lor în Weka

Tibuleac Dumitru & Cebotarean Ecaterina IA – 33 (RO)


obiectivele proiectelor:

1. Analizarea tehnicilor de machine learning si aplicarea lor in weka.


2. Aplicarea algoritmelor din categoriilor supervizate si nesupervizate pe
DataSet1(elecNormNew.arff ) si DataSET2(credit.arff )
3. Analiza comparativa al algoritmelor utilizati
Machine Learning
Noțiuni generale de
Machine Learning

Ce este Machine Learning?

 Machine learning (ML) este studiul algoritmilor și modelelor matematice pe care sistemele
informatice le folosesc pentru a-și îmbunătăți progresiv performanțele într-o anumită
sarcină.
 Algoritmii de învățare a mașinilor construiesc un model matematic al datelor de probă,
cunoscut sub numele de " date de antrenament ", pentru a face predicții sau decizii fără a fi
programate în mod explicit pentru a îndeplini sarcina
Instrument Weka*

* Waikato Environment for Knowledge


Analysis
Ce este WEKA?

 Waikato Environment for Knowledge Analysis.


 Weka este un instrumentar de Machine Learning dezvoltat
de Universitatea din Waikato, Noua Zeelandă.
 Caracteristici de bază:
 Set vast de instrumente de preprocesare a datelor, algoritmi de
învațare și metode de evaluare;
 Interfață grafică cu utilizatorul(inclusiv pentru vizualizarea datelor);
 Mediu de comparare a algoritmilor de învățare.
Tipuri de date în Weka

 Fiecare intrare din setul de date reprezintă o instanță;


 Fiecare instanță se compune din atribute:
 Nominale(care au o listă predefinită de valori);
 De exemplu da, nu;
 Numerice(un număr întreg sau real);
 String(text între ghilimele “” sau apostroafe ‘’);
 Date;
 Relaționale.
Fișier de tip .ARFF

 Weka vrea ca datele de intrare să fie în formatul ARFF.


 Un set de date de formatul ARFF trebuie să înceapă cu declarare unui nume
de relație:
 @ relation nume
 Urmatorul pas este declararea atributelor: @attribute nume_atribut specificare
 Dacă un atribut este nominal , specificarea conține o listă de valori posibile ale atributului între acolade:
 @attribute atribut_nominal {prima_valoare, adoua_valoare, atreia_valoare}
 Dacă un atribut este numeric, specificarea este înlocuită cu cuvîntul cheie REAL(Numerele întregi sunt tratate ca numere
reale în WEKA)
 @attribute numeric_attribute REAL
 După declararea atributelor se introduc instanțele de antrenament după
tagul:
 @data
GUI de bază

Conține 3 interfețe grafice cu


utilizatorul;
 “Explorer” mediu de implementare a
algoritmilor de invățare;
 “Experimenter” mediu de experimentare;
 “KnowledgeFlow” mediu de extragere de
cunoștințe din date*(data mining);
 “Simple CLI” oferă posibilitatea de a lucra
din linia de comandă.
WEKA: Explorer

 Preprocess: Alegerea și modificarea datelor de intrare;


 Classify: Antrenarea și testarea algoritmilor de învățare
supervizată care fac clasificare sau regresie;
 Cluster: Gruparea datelor;
 Associate: Învață reguli de asociere din date.
 Select attributes: Selectarea celor mai relevante atribute
din date.
 Visualize: Afișarea interactivă a datelor sub formă de
grafic 2D.
Explorer – preprocesarea datelor

 Datele pot fi importate dintr-un fișier care are unul din


următoarele formate:
 ARFF, CSV, C4.5, binary.
 Datele mai pot fi citite dintr-un URL sau dintr-o bază de date SQL
(utilizînd JDBC);
 Instrumentele de preprocesare în WEKA se numesc “filtre”;
 Weka conține filtre ca:
 Normalizare, discretizare, tokenizare, selectarea celor mai
relevante atributelor, selectarea clasei, etc….
Matricea de confuzie

 Fiecare element al matricei arată numărul de intsanțe pentru care clasa


dorită este linia și clasa prezisă de model este coloana;
 Rezultatele bune se obțin atunci când diagonala principală are numere mari;
Descrierea dataset1 (elecNormNew.arff)

Title: elecNormNew database Relevant Information:


Acest file contine descrieri despre masinia exemplu
calitatea,pretul,clasa, cate persoane pot intra, nr de usi,
. Contine 9 atribute

Attributes:date,day,period,nsworice,nswdemand,vicprice
,vicdeman,transfer,class
Descrierea dataset2 (credit.ARFF)

Title: credit database


Relevant Information:
Contine informatie despre calitatea
drojdiei.Sunt 21 atribute
Attributes:
Preprocesarea Algoritmului J-48

C4.5 este un algoritm folosit pentru a genera un arbore de


decizie dezvoltat de Ross Quinlan . C4.5 este o extensie
a algoritmului anterior ID3 al lui Quinlan . Arborii de
decizie generați de C4.5 pot fi utilizați pentru clasificare și,
din acest motiv, C4.5 este adesea denumit clasificator
statistic . Autori ai software-ului de învățare a
mașinilor Weka au descris algoritmul C4.5 drept "un
program arbore de decizie decisiv, care este probabil
mașina de învățare a mașinilor, cea mai utilizată în
practică până în prezent"
Clasificarea algoritmului J-48
(dataset1)
Clasificarea algoritmului j-48
utilizarea (part I)

Deschiderea fișierului elecNormNew.arff;


Clasificarea algoritmului j-48
utilizarea (part II)

Alegerea algoritmului
j48(trees j48);
Clasificarea algoritmului J-48
(dataset2)
Clasificarea algoritmului j-48
utilizarea (part I)
Deschiderea fișierului credit.arff;
Clasificarea algoritmului j-48
utilizarea (part II)

Alegerea algoritmului
j48(trees j48);
Analiza algoritmului J-48
(dataset1)

ANALIZA algoritmului j-48
(INSTANTELE SI MATRICEA DE CONFUZIE)

Instante clasificate corecte = 90.828%


Instante clasificate incorecte = 9.172%

MATRICEA DE CONFUZIE
Analiza algoritmului J-48
(dataset2)
ANALIZA algoritmului j-48
(INSTANTELE SI MATRICEA DE
CONFUZIE)

Instante clasificate corecte = 70,5%


Instante clasificate incorecte = 29,5%

MATRICEA DE CONFUZIE
Preprocesarea Algoritmului Logistic
Preprocesarea Algoritmului Logistic

• Class for building and using a multinomial logistic regression model with a ridge estimator.

There are some modifications, however, compared to the paper of leCessie and van
Houwelingen(1992):

If there are k classes for n instances with m attributes, the parameter matrix B to be
calculated will be an m*(k-1) matrix.
Clasificarea algoritmului Logistic
Clasificarea algoritmului logistic
utilizarea

Alegerea algoritmului
Classify(functions Logistic);
Analiza algoritmului Logistic
(dataset1)
ANALIZA algoritmului Logistic
(INSTANTELE SI MATRICEA DE
CONFUZIE)

Instante clasificate corecte = 76.099%


Instante clasificate incorecte = 23.901 %

MATRICEA DE CONFUZIE
Analiza algoritmului Logistic
(dataset2)
ANALIZA algoritmului logistic
(INSTANTELE SI MATRICEA DE
CONFUZIE)

Instante clasificate corecte = 75,2%


Instante clasificate incorecte = 24,8%

MATRICEA DE CONFUZIE
Preprocesarea Algoritmului MultilayerPerceptron
Preprocesarea Algoritmului
MultilayerPercepton

Un perceptron multistrat (MLP) este o clasă de rețea neuronală artificială de


alimentare. Un MLP constă în cel puțin trei straturi de noduri: un strat de intrare,
un strat ascuns și un strat de ieșire.
Clasificarea algoritmului MultilayerPerceptron
Clasificarea algoritmului MultilayerPerceptron

Alegerea algoritmului
Classify(functions MultilayerPerceptron);
Analiza algoritmului MultilayerPerceptron
(dataset1)
ANALIZA algoritmului MultilayerPerceptron
(INSTANTELE SI MATRICEA DE CONFUZIE)

Instante clasificate corecte = 78,3347 %


Instante clasificate incorecte = 21,6653 %

MATRICEA DE CONFUZIE
Analiza algoritmului MultilayerPerceptron
(dataset2)
ANALIZA algoritmului MultilayerPerceptron
(INSTANTELE SI MATRICEA DE CONFUZIE)

Instante clasificate corecte = 71,5 %


Instante clasificate incorecte = 28,5 %

MATRICEA DE CONFUZIE
Analiza comparativa
(tabel)
Analiza comparativa
(tabel)
Algoritmi
Valorile
Datasets
atributelor
MultilayerPerc
J48 Logistic
eptron
ElectoNormNe

Corecte 90.828% 76,099% 78,3347%


Dataset 1

w.arff

Incorecte 9.172% 23,001% 21,6653%


credit.arff

Corecte 70,5% 75,2% 71,5%


Dataset 2

Incorecte 29,5% 24,8% 28,5%


Concluzie
Concluzie

In urma executiei acestui proiect, eu cu colegul meu am comparat doua datasets (elecNormNew.arff si
credit.arff) folosind unele si aceleasi algoritme, pentru a compara rezultatele noastre. Putem ajunge
la concluzia ca ele difera cu 20-50%. Observam ca in urma acestei prezentari, rezultatele sunt la un
nivel mediu, care nu intotdeauna au o probabilitate exacta.

Observam ca pentru algoritmul j48, rezultatele difera fata de celelalte rezultate, aproximativ cu 20 de
%.

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