weka dataset classifier
Denna handledning förklarar WEKA Dataset, Classifier och J48 Algorithm for Decision Tree. Ger också information om exempel på ARFF-datamängder för Weka:
I Föregående handledning , vi lärde oss om Weka Machine Learning-verktyget, dess funktioner och hur man laddar ner, installerar och använder programvaran Weka Machine Learning.
WEKA är ett bibliotek med maskininlärningsalgoritmer för att lösa problem med datautvinning på riktiga data. WEKA tillhandahåller också en miljö för att utveckla många maskininlärningsalgoritmer. Den har en uppsättning verktyg för att utföra olika uppgifterbrytningsuppgifter som dataklassificering, datakluster, regression, attributval, frekvent utvinning av artiklar och så vidare.
Alla dessa uppgifter kan utföras på sample.ARFF-filen som finns i WEKA-arkivet eller användare kan förbereda sina datafiler. Exempel .arff-filer är datamängder som har inbyggd historisk data som samlats in av forskare.
=> Läs igenom hela serien för maskininlärning
I den här självstudien kommer vi att se några exempel på datamängder i WEKA och kommer också att utföra beslutsträdalgoritmdatautvinning med hjälp av weather.arff dataset.
Vad du kommer att lära dig:
Utforska WEKA-datauppsättningar
WEKA: s maskininlärningsverktyg tillhandahåller en katalog med några exempel på datamängder. Dessa datamängder kan laddas direkt in i WEKA så att användare kan börja utveckla modeller omedelbart.
WEKA-datauppsättningarna kan utforskas från länken 'C: Program Files Weka-3-8 data'. Datauppsättningarna är i .arff-format.
Exempel på WEKA-datauppsättningar
Några exempel på datamängder som finns i WEKA är listade i tabellen nedan:
S.No. | Exempel på datamängder |
---|---|
7. | diabetes |
1. | flygbolag.arff |
2. | bröstcancer.affär |
3. | kontaktlins.affär |
Fyra. | cpu.arff |
5. | cpu.with-vendor.arff |
6. | kredit-g.arff |
8. | glas.affär |
9. | hypothyroid.arff |
10. | jonospehre.arff |
elva. | iris.2D.arff |
12. | iris.arff |
13. | labor.arff |
14. | ReutersCorn-train.arff |
femton. | ReutersCorn-test.arff |
16. | ReutersGrain-train.arff |
17. | ReutersGrain-test.arff |
18. | segment-challenge.arff |
19. | segment-test.arff |
tjugo. | sojabönor |
tjugoett. | stormarknad.affär |
22. | obalanserad.affär |
2. 3. | vote.arff |
24. | weather.numeric.arff |
25. | weather.nominal.arff |
Låt oss ta en titt på några av dessa:
kontaktlins.affär
contact-lens.arff dataset är en databas för montering av kontaktlinser. Det donerades av givaren Benoit Julien år 1990.
Databas: Denna databas är komplett. Exemplen som används i denna databas är fullständiga och bullerfria. Databasen har 24 instanser och 4 attribut.
Attribut: Alla fyra attribut är nominella. Det saknas attributvärden. De fyra attributen är som följer:
# 1) Patientens ålder: Attributets ålder kan ta värden:
- ung
- pre-presbyopisk
- presbyopisk
#två) Spectacle recept: Detta attribut kan ta värden:
- närsynt
- hypermetrop
# 3) Astigmatiskt: Detta attribut kan ta värden
- Nej
- ja
# 4) Rivningshastighet: Värdena kan vara
- nedsatt
- vanligt
Klass: Tre klassetiketter definieras här. Dessa är:
- patienten ska vara försedd med hårda kontaktlinser.
- patienten ska ha mjuka kontaktlinser.
- patienten ska inte förses med kontaktlinser.
Klassfördelning: De instanser som klassificeras i klassetiketter listas nedan:
Klassetikett | Antal instanser | |
---|---|---|
1. | Hårda kontaktlinser | 4 |
2. | Mjuka kontaktlinser | 5 |
3. | Inga kontaktlinser | femton |
iris.arff
iris.arff dataset skapades 1988 av Michael Marshall. Det är databasen Iris Plants.
vad gör en betatestare
Databas: Denna databas används för mönsterigenkänning. Datauppsättningen innehåller 3 klasser om 50 instanser. Varje klass representerar en typ av irisväxt. En klass är linjärt separerbar från den andra 2 men den senare kan inte separeras linjärt från varandra. Den förutspår till vilken art av 3-irisblomman observationen tillhör. Detta kallas en klassificeringsdatauppsättning i flera klasser.
Attribut: Den har fyra numeriska, prediktiva attribut och klassen. Det saknas attribut.
Attributen är:
- sepal längd i cm
- sepal bredd i cm
- kronbladets längd i cm
- kronbladets bredd i cm
- klass:
- Iris Setosa
- Iris Versicolor
- Iris Virginica
Sammanfattande statistik:
Min | Max | Betyda | SD | Klasskorrelation | |
---|---|---|---|---|---|
sepal längd | 4.3 | 7.9 | 5,84 | 0,83 | 0,7826 |
sepal bredd | 2,0 | 4.4 | 3.05 | 0,43 | -0,4194 |
kronbladets längd | 1.0 | 6.9 | 3,76 | 1,76 | 0,9490 (högt!) |
kronbladets bredd | 0,1 | 2.5 | 1.20 | 0,76 | 0.9565 (hög!) |
Klassfördelning: 33,3% för var och en av tre klasser
Några andra datamängder:
diabetes
Databasen för denna dataset är Pima Indians Diabetes. Denna dataset förutsäger om patienten är benägen att bli diabetiker de närmaste fem åren. Patienterna i denna dataset är alla kvinnor som är minst 21 år gamla från Pima Indian Heritage. Den har 768 instanser och 8 numeriska attribut plus en klass. Detta är en binär klassificeringsdataset där den förutsagda outputvariabeln är nominell bestående av två klasser.
jonosfär.affär
Detta är en populär dataset för binär klassificering. Instansen i den här datasetet beskriver egenskaperna för radarreturer från atmosfären. Den används för att förutsäga var jonosfären har någon struktur eller inte. Den har 34 numeriska attribut och en klass.
Klassattributet är 'bra' eller 'dåligt' vilket förutses baserat på 34 attributobservation. De mottagna signalerna behandlas av autokorrelationsfunktion som tar tidspuls och pulsnummer som argument.
Regressionsdatamängder
Regressionsdatauppsättningarna kan laddas ner från WEKA-webbplatsen “ Samlingar av datamängder ”. Det har 37 regressionsproblem som erhållits från olika källor. Den nedladdade filen skapar numerisk / katalog med regressionsdatamängder i .arff-format.
De populära datamängder som finns i katalogen är: Longley ekonomisk dataset (longley.arff), Boston husprisdatauppsättning (Housing.arff) och sömn i däggdjursuppsättning (sleep.arff).
Låt oss nu se hur man identifierar verkligt värderade och nominella attribut i datasetet med hjälp av WEKA explorer.
Vad är verkligt värderade och nominella attribut
Verkliga värderade attribut är numeriska attribut som endast innehåller verkliga värden. Dessa är mätbara mängder. Dessa attribut kan intervallskalas, såsom temperatur eller förhållande, såsom medelvärde, median.
Nominella attribut representerar namn eller en viss representation av saker. Det finns ingen ordning på sådana attribut och de representerar någon kategori. Till exempel, Färg.
Följ stegen nedan för att använda WEKA för att identifiera verkliga värden och nominella attribut i datasetet.
# 1) Öppna WEKA och välj ”Explorer” under ”Applications”.
#två) Välj fliken 'Förbehandling'. Klicka på 'Öppna fil'. Med WEKA-användare kan du komma åt WEKA-exempelfiler.
# 3) Välj inmatningsfilen från WEKA3.8-mappen som är lagrad på det lokala systemet. Välj den fördefinierade .arff-filen 'credit-g.arff' -filen och klicka på 'Öppna'.
# 4) En attributlista öppnas till vänster. Vald attributstatistik visas på den högra panelen tillsammans med histogrammet.
Analys av datasetet:
I den vänstra panelen visar den aktuella relationen:
- Relationsnamn: german_credit är exempelfilen.
- Instanser: 1000 antal datorrader i datasetet.
- Attribut: 21 attribut i datasetet.
Panelen under nuvarande relation visar namnet på attribut.
I den högra panelen, den valda attributstatistiken visas. Välj attribut 'kontrollstatus'.
Det syns:
- Attributets namn
- Saknas: Eventuella värden som saknas för attributet i datasetet. 0% i detta fall.
- Distinkt: Attributet har fyra olika värden.
- Typ: Attributet är av den nominella typen det vill säga det tar inget numeriskt värde.
- Räkna: Bland de 1000 instanserna skrivs räkningen för varje distinkt klassetikett i räknekolumnen.
- Histogram: Det visar utgångsklassetiketten för attributet. Klassetiketten i denna dataset är antingen bra eller dålig. Det finns 700 förekomster av bra (markerade i blått) och 300 förekomster av dåliga (markerade i rött).
- För etiketten<0, the instances for good or bad are almost the same in number.
- För etikett, 0<= X<200, the instances with decision good are more than instances with bad.
- På samma sätt, för etikett> = 200, uppträder maxinstanser för gott och ingen kontrolletikett har fler instanser med beslutsgodt.
För nästa attribut 'varaktighet'.
Den högra panelen visar:
- Namn: Detta är attributets namn.
- Typ: Attributets typ är numerisk.
- Värde saknas: Attributet saknar inget värde.
- Distinkt: Den har 33 distinkta värden i 1000 instanser. Det betyder att det i 1000 fall har 33 olika värden.
- Unik: Den har 5 unika värden som inte matchar varandra.
- Lägsta värde: Attributets minsta värde är 4.
- Maximalt värde: Attributets maximala värde är 72.
- Betyda: Medelvärde är att lägga till alla värden dividerat med förekomster.
- Standardavvikelse: Stddeviation av attributets varaktighet.
- Histogram: Histogrammet visar varaktigheten på fyra enheter, de maximala instanserna uppstår för en bra klass. När varaktigheten ökar till 38 enheter minskar antalet instanser för bra klassetiketter. Varaktigheten når 72 enheter som bara har en instans som klassificerar beslut som dåligt.
Klassen är klassificeringsfunktionen för den nominella typen. Den har två distinkta värden: bra och dåligt. Den goda klassetiketten har 700 instanser och den dåliga klassetiketten har 300 instanser.
För att visualisera alla attribut i datasetet, klicka på “Visualisera alla”.
# 5) För att ta reda på endast numeriska attribut, klicka på knappen Filter. Därifrån klickar du på Välj -> WEKA> FILTER -> Oövervakad typ -> Ta bort typ.
WEKA-filter har många funktioner för att omvandla attributvärdena för datasetet för att göra det lämpligt för algoritmerna. Till exempel, den numeriska omvandlingen av attribut.
Filtrering av de nominella och verkligt värderade attributen från datasetet är ett annat exempel på att använda WEKA-filter.
# 6) Klicka på Ta bort typ i filterfliken. Ett fönster för objektredigerare öppnas. Välj attribut Skriv “Ta bort numeriska attribut” och klicka på OK.
# 7) Applicera filtret. Endast numeriska attribut visas.
Klassattributet är av nominell typ. Det klassificerar utdata och kan därför inte raderas. Således ses det med det numeriska attributet.
Produktion:
Attributen med verkligt värde och nominella värden i datasetet identifieras. Visualisering med klassetiketten ses i form av histogram.
Weka Beslutsträdklassificeringsalgoritmer
Nu kommer vi att se hur man implementerar beslutsträdklassificering på datasetet weather.nominal.arff med hjälp av J48-klassificeraren.
weather.nominal.arff
Det är ett exempel på en datauppsättning som finns direkt från WEKA. Denna dataset förutsäger om vädret är lämpligt för att spela cricket. Datauppsättningen har 5 attribut och 14 instanser. Klassetiketten 'play' klassificerar utdata som 'ja' eller 'nej'.
Vad är beslutsträd
Beslutsträd är klassificeringstekniken som består av tre komponenter rotnod, gren (kant eller länk) och bladnod. Rot representerar testvillkoren för olika attribut, grenen representerar alla möjliga resultat som kan finnas där i testet och bladnoder innehåller etiketten för den klass som den tillhör. Rotnoden är i början av trädet som också kallas trädets topp.
J48 klassificerare
Det är en algoritm att generera ett beslutsträd som genereras av C4.5 (en förlängning av ID3). Det är också känt som en statistisk klassificering. För klassificering av beslutsträd behöver vi en databas.
Stegen inkluderar:
# 1) Öppna WEKA explorer.
#två) Välj weather.nominal.arff-fil från 'välj fil' under alternativet fliken förbehandling.
# 3) Gå till fliken 'Klassificera' för klassificering av oklassificerade data. Klicka på knappen 'Välj'. Välj 'träd -> J48' från detta. Låt oss också titta snabbt på andra alternativ i knappen Välj:
- Bayes: Det är en densitetsuppskattning för numeriska attribut.
- Meta: Det är en linjär regression med flera svar.
- Funktioner: Det är logistisk regression.
- Lat: Det ställer in blandningsentropin automatiskt.
- Regel: Det är en regelstudent.
- Träd: Trees klassificerar data.
# 4) Klicka på Start-knappen. Klassificeringsutgången visas på den högra panelen. Det visar körinformationen i panelen som:
- Schema: Klassificeringsalgoritmen som används.
- Instanser: Antal datarader i datasetet.
- Attribut: Datauppsättningen har 5 attribut.
- Antalet löv och trädets storlek beskriver beslutsträdet.
- Det tog tid att bygga modellen: Tid för produktionen.
- Fullständig klassificering av J48 beskuren med attribut och antal instanser.
# 5) För att visualisera trädet, högerklicka på resultatet och välj visualisera trädet.
Produktion :
Resultatet är i form av ett beslutsträd. Huvudattributet är 'outlook'.
Om utsikterna är soliga, sedan analyserar trädet fuktigheten ytterligare. Om luftfuktigheten är hög då klass etikett play = “ja”.
Om utsikterna är mulna, klassetiketten, spel är 'ja'. Antalet fall som följer klassificeringen är 4.
Om utsikterna är regniga, ytterligare klassificering sker för att analysera attributet 'blåsigt'. Om blåsigt = sant, är spelet = “nej”. Antalet fall som följer klassificeringen för outlook = blåsigt och blåsigt = sant är 2.
Slutsats
WEKA erbjuder ett brett utbud av exempeldataset för att tillämpa maskininlärningsalgoritmer. Användarna kan utföra maskininlärningsuppgifter som klassificering, regression, attributval, associering på dessa exempeluppsättningar och kan också lära sig verktyget med dem.
WEKA explorer används för att utföra flera funktioner, från och med förbehandling. Förbehandlingen tar inmatning som en .arff-fil, bearbetar inmatningen och ger en utdata som kan användas av andra datorprogram. I WEKA ger produktionen av förbehandling de attribut som finns i datasetet som kan användas vidare för statistisk analys och jämförelse med klassetiketter.
WEKA erbjuder också många klassificeringsalgoritmer för beslutsträd. J48 är en av de populära klassificeringsalgoritmerna som matar ut ett beslutsträd. Med hjälp av fliken Klassificera kan användaren visualisera beslutsträdet. Om beslutsträdet är för befolkat kan trädbeskärning tillämpas från fliken Förprocess genom att ta bort de attribut som inte krävs och starta klassificeringsprocessen igen.
=> Besök här för den exklusiva maskininlärningsserien
Rekommenderad läsning
- Weka-handledning - Hur man laddar ner, installerar och använder Weka-verktyget
- Hur man skriver komplexa affärslogiska testscenarier med hjälp av beslutstabellsteknik
- WEKA Explorer: Visualisering, klustring, Association Rule Mining
- Beslutsträdalgoritmsexempel i Data Mining
- Beslutsfattande konstruktioner i C ++
- B Tree och B + Tree Datastruktur i C ++
- Datastruktur för binärt träd i C ++
- AVL-träd- och högdatastruktur i C ++