weka dataset classifier
Acest tutorial explică setul de date WEKA, clasificatorul și algoritmul J48 pentru arborele deciziei. De asemenea, oferă informații despre exemplele de seturi de date ARFF pentru Weka:
În Tutorial anterior , am aflat despre instrumentul Weka Machine Learning, caracteristicile sale și despre cum să descărcați, instalați și utilizați software-ul Weka Machine Learning.
WEKA este o bibliotecă de algoritmi de învățare automată pentru rezolvarea problemelor de extragere a datelor pe date reale. WEKA oferă, de asemenea, un mediu pentru a dezvolta mulți algoritmi de învățare automată. Are un set de instrumente pentru realizarea diferitelor activități de extragere a datelor, cum ar fi clasificarea datelor, gruparea datelor, regresia, selectarea atributelor, extragerea frecventă a seturilor de articole și așa mai departe.
Toate aceste sarcini pot fi efectuate pe fișierul sample.ARFF disponibil în depozitul WEKA sau utilizatorii își pot pregăti fișierele de date. Fișierele .arff eșantion sunt seturi de date care au date istorice încorporate colectate de cercetători.
=> Citiți seria completă de formare pentru învățarea automată
În acest tutorial, vom vedea câteva exemple de seturi de date în WEKA și vom efectua, de asemenea, extragerea datelor algoritmului arborelui decizional folosind setul de date weather.arff.
Ce veți învăța:
Explorarea seturilor de date WEKA
Instrumentul de învățare automată WEKA oferă un director cu câteva exemple de seturi de date. Aceste seturi de date pot fi încărcate direct în WEKA pentru ca utilizatorii să înceapă să dezvolte modele imediat.
Seturile de date WEKA pot fi explorate din linkul „C: Program Files Weka-3-8 data”. Seturile de date sunt în format .arff.
Exemplu de seturi de date WEKA
Unele seturi de date prezente în WEKA sunt prezentate în tabelul de mai jos:
S.Nr. | Exemple de date |
---|---|
7. | diabet zaharat |
1. | compania aeriană.arff |
Două. | cancer mamar.arfa |
3. | lentilă de contact.arfă |
Patru. | cpu.arff |
5. | cpu.with-vendor.arff |
6. | credit-g.arff |
8. | sticlă.arfa |
9. | hypothyroid.arff |
10. | ionospehre.arff |
unsprezece. | iris.2D.arff |
12. | iris.arff |
13. | travaliu.arff |
14. | ReutersCorn-train.arff |
cincisprezece. | ReutersCorn-test.arff |
16. | ReutersGrain-train.arff |
17. | ReutersGrain-test.arff |
18. | segment-provocare.arfa |
19. | segment-test.arff |
douăzeci. | soia.arff |
douăzeci și unu. | supermarket.arff |
22. | dezechilibrat.arfa |
2. 3. | vot.arff |
24. | weather.numeric.arff |
25. | weather.nominal.arff |
Să aruncăm o privire la unele dintre acestea:
lentilă de contact.arfă
setul de date contact-lens.arff este o bază de date pentru montarea lentilelor de contact. A fost donat de donatorul Benoit Julien în anul 1990.
Bază de date: Această bază de date este completă. Exemplele utilizate în această bază de date sunt complete și fără zgomot. Baza de date are 24 de instanțe și 4 atribute.
Atribute: Toate cele patru atribute sunt nominale. Nu lipsesc valorile atributelor. Cele patru atribute sunt după cum urmează:
# 1) Vârsta pacientului: atributul vârstă poate lua valori:
- tineri
- pre-presbiopic
- prezbit
#Două) Prescripție de ochelari: acest atribut poate lua valori:
- miop
- hipermetrop
# 3) Astigmatic: acest atribut poate lua valori
- nu face
- da
# 4) Rata de producere a lacrimilor: valorile pot fi
- redus
- normal
Clasă: aici sunt definite trei etichete de clasă. Acestea sunt:
- pacientul trebuie să fie echipat cu lentile de contact dure.
- pacientul trebuie să fie echipat cu lentile de contact moi.
- pacientul nu trebuie să fie echipat cu lentile de contact.
Distribuția clasei: instanțele clasificate în etichete de clasă sunt prezentate mai jos:
Eticheta clasei | Nr de instanțe | |
---|---|---|
1. | Lentile de contact dure | 4 |
Două. | Lentile de contact moi | 5 |
3. | Fără lentile de contact | cincisprezece |
iris.arff
setul de date iris.arff a fost creat în 1988 de Michael Marshall. Este baza de date Iris Plants.
cum se inițializează o matrice generică în java
Bază de date: Această bază de date este utilizată pentru recunoașterea modelelor. Setul de date conține 3 clase de 50 de instanțe. Fiecare clasă reprezintă un tip de plantă de iris. O clasă este separabilă liniar de cealaltă 2, dar acestea din urmă nu sunt separabile liniar una de cealaltă. Se prezice cărei specii din cele 3 flori de iris aparține observația. Aceasta se numește set de date de clasificare multi-clasă.
Atribute: Are 4 atribute numerice, predictive și clasa. Nu lipsesc atribute.
Atributele sunt:
- lungimea sepalului în cm
- lățimea sepalului în cm
- lungimea petalei în cm
- lățimea petalei în cm
- clasă:
- Iris Setosa
- Iris Versicolor
- Iris Virginica
Statistici rezumative:
Min | Max | Rău | SD | Corelarea clasei | |
---|---|---|---|---|---|
lungimea sepalului | 4.3 | 7.9 | 5,84 | 0,83 | 0,7826 |
lățimea sepalului | 2.0 | 4.4 | 3.05 | 0,43 | -0.4194 |
lungimea petalei | 1.0 | 6.9 | 3,76 | 1,76 | 0,9490 (mare!) |
lățimea petalei | 0,1 | 2.5 | 1.20 | 0,76 | 0,9565 (mare!) |
Distribuția clasei: 33,3% pentru fiecare din cele 3 clase
Alte seturi de date:
diabet zaharat
Baza de date a acestui set de date este Pima Indians Diabetes. Acest set de date prezice dacă pacientul este predispus la diabet în următorii 5 ani. Pacienții din acest set de date sunt toți femei de cel puțin 21 de ani din Pima Indian Heritage. Are 768 instanțe și 8 atribute numerice plus o clasă. Acesta este un set de date de clasificare binară în care variabila de ieșire prezisă este nominală, cuprinzând două clase.
ionosfera.arfa
Acesta este un set de date popular pentru clasificarea binară. Instanța din acest set de date descrie proprietățile retururilor radar din atmosferă. Este folosit pentru a prezice unde ionosfera are sau nu o anumită structură. Are 34 de atribute numerice și o clasă.
Atributul clasei este „bun” sau „rău”, care se prezice pe baza observării a 34 de atribute. Semnalele recepționate sunt procesate prin funcția de autocorelație luând impulsul timpului și numărul impulsului ca argumente.
Seturi de date de regresie
Seturile de date de regresie pot fi descărcate de pe pagina web WEKA „ Colecții de seturi de date ”. Are 37 de probleme de regresie obținute din diferite surse. Fișierul descărcat va crea directorul numeric / cu seturi de date de regresie în format .arff.
Seturile de date populare prezente în director sunt: Set de date economice Longley (longley.arff), set de date despre prețul casei din Boston (housing.arff) și setul de date privind somnul la mamifere (sleep.arff).
Să vedem acum cum să identificăm atributele cu valori reale și nominale în setul de date folosind WEKA Explorer.
Care sunt atributele reale și valorile nominale
Atributele cu valoare reală sunt atribute numerice care conțin doar valori reale. Acestea sunt cantități măsurabile. Aceste atribute pot fi scalate la intervale, cum ar fi temperatura sau raportul, cum ar fi media, mediana.
Atributele nominale reprezintă nume sau o reprezentare a lucrurilor. Nu există o ordine în astfel de atribute și ele reprezintă o anumită categorie. De exemplu, culoare.
Urmați pașii enumerați mai jos pentru a utiliza WEKA pentru identificarea valorilor reale și a atributelor nominale din setul de date.
# 1) Deschideți WEKA și selectați „Explorer” sub „Aplicații”.
#Două) Selectați fila „Pre-procesare”. Faceți clic pe „Deschideți fișierul”. Cu utilizatorul WEKA, puteți accesa fișierele eșantion WEKA.
# 3) Selectați fișierul de intrare din folderul WEKA3.8 stocat pe sistemul local. Selectați fișierul .arff predefinit „credit-g.arff” și faceți clic pe „Deschidere”.
# 4) O listă de atribute se va deschide în panoul din stânga. Statisticile atributelor selectate vor fi afișate în panoul din dreapta împreună cu histograma.
Analiza setului de date:
În panoul din stânga, relația curentă arată:
- Numele relației: german_credit este fișierul eșantion.
- Instanțe: 1000 numărul de rânduri de date din setul de date.
- Atribute: 21 de atribute din setul de date.
Panoul de sub relația curentă arată numele atributelor.
În panoul din dreapta, sunt afișate statisticile atributelor selectate. Selectează atributul „status_verificare”.
Arată:
- Numele atributului
- Dispărut: Toate valorile lipsă ale atributului din setul de date. 0% în acest caz.
- Distinct: Atributul are 4 valori distincte.
- Tip: Atributul este de tipul nominal, adică nu ia nicio valoare numerică.
- Numara: Dintre cele 1000 de cazuri, numărul fiecărei etichete distincte de clasă este scris în coloana de numărare.
- Histogramă: Se va afișa eticheta clasei de ieșire pentru atribut. Eticheta clasei din acest set de date este fie bună, fie rea. Există 700 de cazuri bune (marcate cu albastru) și 300 de cazuri rele (marcate cu roșu).
- Pentru etichetă<0, the instances for good or bad are almost the same in number.
- Pentru etichetă, 0<= X<200, the instances with decision good are more than instances with bad.
- În mod similar, pentru eticheta> = 200, instanțele maxime apar definitiv și nici o etichetă de verificare nu are mai multe instanțe cu decizie bună.
Pentru următorul atribut „durata”.
Panoul din dreapta arată:
- Nume: Acesta este numele atributului.
- Tip: Tipul atributului este numeric.
- Valoare lipsă: Atributul nu are nicio valoare lipsă.
- Distinct: Are 33 de valori distincte în 1000 de cazuri. Înseamnă că în 1000 de cazuri are 33 de valori distincte.
- Unic: Are 5 valori unice care nu se potrivesc între ele.
- Valoare minimă: Valoarea minimă a atributului este 4.
- Valoare maximă: Valoarea maximă a atributului este de 72.
- Rău: Mean este adăugarea tuturor valorilor împărțite la instanțe.
- Deviație standard: Deviația standard a duratei atributului.
- Histogramă: Histograma descrie durata a 4 unități, instanțele maxime apar pentru o clasă bună. Pe măsură ce durata crește la 38 de unități, numărul de instanțe se reduce pentru etichete de clasă bună. Durata ajunge la 72 de unități care au o singură instanță care clasifică decizia ca fiind rea.
Clasa este caracteristica de clasificare a tipului nominal. Are două valori distincte: bine si rau. Eticheta de clasă bună are 700 de instanțe, iar eticheta de clasă proastă are 300 de instanțe.
Pentru a vizualiza toate atributele setului de date, faceți clic pe „Vizualizați toate”.
# 5) Pentru a afla numai atributele numerice, faceți clic pe butonul Filtru. De acolo, faceți clic pe Alegeți -> WEKA> FILTRE -> Tip fără supraveghere -> Ștergeți tipul.
Filtrele WEKA au multe funcționalități pentru a transforma valorile atributelor setului de date pentru a-l face potrivit pentru algoritmi. De exemplu, transformarea numerică a atributelor.
Filtrarea atributelor nominale și reale din setul de date este un alt exemplu de utilizare a filtrelor WEKA.
# 6) Faceți clic pe RemoveType din fila filtru. Se va deschide o fereastră de editor de obiecte. Selectați atributul Tipul „Ștergeți atributele numerice” și faceți clic pe OK.
# 7) Aplicați filtrul. Vor fi afișate numai atributele numerice.
Atributul clasei este de tip nominal. Clasifică ieșirea și, prin urmare, nu poate fi șters. Astfel se vede cu atributul numeric.
Ieșire:
Atributele valorilor reale și nominale din setul de date sunt identificate. Vizualizarea cu eticheta clasei este văzută sub formă de histograme.
Algoritmi de clasificare a arborelui decizional Weka
Acum, vom vedea cum să implementăm clasificarea arborelui decizional în setul de date weather.nominal.arff folosind clasificatorul J48.
weather.nominal.arff
Este un exemplu de set de date prezent în direct WEKA. Acest set de date prezice dacă vremea este potrivită pentru a juca cricket. Setul de date are 5 atribute și 14 instanțe. Eticheta clasei „redare” clasifică rezultatul ca „da” sau „nu”.
Ce este arborele deciziei
Arborele de decizie este tehnica de clasificare care constă din trei componente rădăcină nod, ramură (margine sau legătură) și nod frunză. Rădăcina reprezintă condiția testului pentru diferite atribute, ramura reprezintă toate rezultatele posibile care pot fi acolo în test, iar nodurile frunze conțin eticheta clasei căreia îi aparține. Nodul rădăcină se află la începutul copacului, numit și vârful copacului.
Clasificator J48
Este un algoritm pentru a genera un arbore de decizie generat de C4.5 (o extensie a ID3). Este, de asemenea, cunoscut sub numele de clasificator statistic. Pentru clasificarea arborelui decizional, avem nevoie de o bază de date.
Pașii includ:
# 1) Deschideți exploratorul WEKA.
#Două) Selectați fișierul weather.nominal.arff din „alegeți fișierul” sub opțiunea fila preprocesare.
# 3) Accesați fila „Clasificare” pentru clasificarea datelor neclasificate. Faceți clic pe butonul „Alegeți”. Din aceasta, selectați „copaci -> J48”. Să aruncăm o privire rapidă și asupra altor opțiuni din butonul Alege:
- Bayes: Este o estimare a densității pentru atributele numerice.
- Meta: Este o regresie liniară cu răspuns multiplu.
- Funcții: Este o regresie logistică.
- Leneş: Setează entropia amestecului automat.
- Regulă: Este un cursant de regulă.
- Copaci: Copacii clasifică datele.
# 4) Faceți clic pe butonul Start. Ieșirea clasificatorului va fi văzută pe panoul din dreapta. Afișează informațiile despre rulare în panou ca:
- Sistem: Algoritmul de clasificare utilizat.
- Instanțe: Numărul de rânduri de date din setul de date.
- Atribute: Setul de date are 5 atribute.
- Numărul de frunze și dimensiunea arborelui descriu arborele decizional.
- Timpul necesar pentru construirea modelului: Timp pentru ieșire.
- Clasificarea completă a J48 tăiată cu atributele și numărul de instanțe.
# 5) Pentru a vizualiza arborele, faceți clic dreapta pe rezultat și selectați vizualiza arborele.
Ieșire :
Rezultatul este sub forma unui arbore de decizie. Principalul atribut este „perspectiva”.
Dacă perspectivele sunt însorite, apoi arborele analizează în continuare umiditatea. Dacă umiditatea este ridicată, atunci eticheta de clasă joacă = „da”.
Dacă perspectiva este acoperită, eticheta clasei, jocul este „da”. Numărul de cazuri care respectă clasificarea este de 4.
Dacă perspectivele sunt ploioase, are loc o clasificare suplimentară pentru a analiza atributul „vânt”. Dacă vânt = adevărat, piesa = „nu”. Numărul de cazuri care respectă clasificarea pentru perspectivă = vânt și vânt = adevărat este 2.
Concluzie
WEKA oferă o gamă largă de exemple de seturi de date pentru a aplica algoritmi de învățare automată. Utilizatorii pot efectua sarcini de învățare automată, cum ar fi clasificarea, regresia, selectarea atributelor, asocierea pe aceste exemple de seturi de date și pot învăța instrumentul folosindu-le.
WEKA explorer este utilizat pentru îndeplinirea mai multor funcții, începând de la preprocesare. Preprocesarea preia intrarea ca fișier .arff, procesează intrarea și oferă o ieșire care poate fi utilizată de alte programe de calculator. În WEKA rezultatul preprocesării oferă atributele prezente în setul de date, care pot fi utilizate în continuare pentru analiza statistică și compararea cu etichetele clasei.
WEKA oferă, de asemenea, mulți algoritmi de clasificare pentru arborele decizional. J48 este unul dintre algoritmii de clasificare populari care produce un arbore de decizie. Folosind fila Clasificare utilizatorul poate vizualiza arborele deciziei. Dacă arborele de decizie este prea populat, tăierea arborelui poate fi aplicată din fila Preproces prin eliminarea atributelor care nu sunt necesare și porniți din nou procesul de clasificare.
=> Vizitați aici pentru seria exclusivă de învățare automată
Lectură recomandată
- Tutorial Weka - Cum să descărcați, să instalați și să utilizați instrumentul Weka
- Cum se scrie scenarii complexe de testare a logicii de afaceri folosind tehnica tabelului decizional
- WEKA Explorer: Vizualizare, Clustering, Exploatarea regulilor de asociere
- Exemple de algoritmi de arborele decizional în exploatarea datelor
- Construcții de luare a deciziilor în C ++
- Structura de date B Tree și B + Tree în C ++
- Structura de date a arborelui binar în C ++
- Arborele AVL și structura de date Heap în C ++