Data Mining: Opdracht 2



Vergelijkbare documenten
Data Mining: Classificatie

2. Geef een voorbeeld van hoe datamining gebruikt kan worden om frauduleuze geldtransacties te identificeren.

Invloed van MetaCost op imbalanced classificatie problemen

Tentamen Data Mining

Tentamen Data Mining. Algemene Opmerkingen. Opgave L. Korte vragen (L6 punten) Tijd: 14:00-17:00. Datum: 4januai20l6

Uitwerking Tentamen Datamining (2II15) 26/06/09

Oplossingen Datamining 2II15 Juni 2008

Classification - Prediction

Continuous Learning in Computer Vision S.L. Pintea

Tentamen Kunstmatige Intelligentie (INFOB2KI)

Transparanten bij het vak Inleiding Adaptieve Systemen: Introductie Machine Leren. M. Wiering

Tentamen Kunstmatige Intelligentie (INFOB2KI)

Twaalfde college complexiteit. 11 mei Overzicht, MST

Afstudeerproject Bachelor AI. Nicolaas Heyning en Wouter Suren


Toets deel 2 Data-analyse en retrieval Vrijdag 1 Juli 2016:

De statespace van Small World Networks

Combinatorische Algoritmen: Binary Decision Diagrams, Deel III

Cover Page. The handle holds various files of this Leiden University dissertation.

Halma Bot: Monte Carlo versus Alpha-Beta

Summary in Dutch 179

Bij herhaalde metingen ANOVA komt het effect van het experiment naar voren bij de variantie binnen participanten. Bij de gewone ANOVA is dit de SS R

Voorspellen van webwinkel aankopen met een Random Forest

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Tentamen Statistiek voor T (2S070) op vrijdag 8 oktober 1999, uur De u

HOOFDSTUK 6: INTRODUCTIE IN STATISTISCHE GEVOLGTREKKINGEN

DATA MINING (TI2730-C)

Enkelvoudige ANOVA Onderzoeksvraag Voorwaarden

Neurale Netwerken en Deep Learning. Tijmen Blankevoort

We zullen in deze les kijken hoe we netwerken kunnen analyseren, om bijvoorbeeld de volgende vragen te kunnen beantwoorden:

User Profile Repository Testrapportage kwaliteit

Hoofdstuk 12: Eenweg ANOVA

Hoeveel vertrouwen heb ik in mijn onderzoek en conclusie? Les 1

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms

HOOFDSTUK 7: STATISTISCHE GEVOLGTREKKINGEN VOOR DISTRIBUTIES

INZET VAN MACHINE LEARNING

Samenvatting (in Dutch)

Implementations of Tests on the Exogeneity of Selected Variables and Their Performance in Practice M. Pleus

en-splitsingen: een aantal alternatieven worden parallel toegepast, of-splitsingen: van een aantal alternatieven wordt er één toegepast,

Hoofdstuk 7: Statistische gevolgtrekkingen voor distributies

Hoofdstuk 8: Algoritmen en Complexiteit

Robuustheid regressiemodel voor kapitaalkosten gebaseerd op aansluitdichtheid

Herkansing Inleiding Intelligente Data Analyse Datum: Tijd: , BBL 508 Dit is geen open boek tentamen.

Proeftuinplan: Meten is weten!

n-queens minimale dominantie verzamelingen Chessboard Domination on Programmable Graphics Hardware door Nathan Cournik

Toetsende Statistiek Week 5. De F-toets & Onderscheidend Vermogen

Stochastiek 2. Inleiding in the Mathematische Statistiek. staff.fnwi.uva.nl/j.h.vanzanten

1. De volgende gemiddelden zijn gevonden in een experiment met de factor Conditie en de factor Sekse.

Hiermee rekenen we de testwaarde van t uit: n. 10 ( x ) ,16

EWMA Control Charts in Statistical Process Monitoring I.M. Zwetsloot

AI en Software Testing op de lange termijn

Uitwerking tentamen Analyse van Algoritmen, 29 januari

Samenvatting Nederlands

9. Strategieën en oplossingsmethoden

Cover Page. The handle holds various files of this Leiden University dissertation.

Cover Page. The handle holds various files of this Leiden University dissertation.

Inl. Adaptieve Systemen

Het classificeren van hoortoestel modaliteiten m.b.v. een Big Data benadering: Latent Class Trees analyse

SPSS Introductiecursus. Sanne Hoeks Mattie Lenzen

twee partijen zijn. Aangezien het bij data mining gaat om grote hoeveelheden data is het belangrijk om praktische oplossingen te hebben.

BSc Kunstmatige Intelligentie. : Bachelor Kunstmatige Intelligentie Studiejaar, Semester, Periode : semester 1, periode 2

Modeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag 11 Januari 2013

Plan van Aanpak. project Tetris Packing

Data Mining: Classificatie

Meervoudige ANOVA Onderzoeksvraag Voorwaarden

Data mining Van boodschappenmandjes tot bio-informatica

Data analyse Inleiding statistiek

Living Labs : NFI & RvdK Samen onderweg naar meer grip op data. JenV I-tour presentatie 24 april 2018

Kenmerk ontheffing in de Bijstands Uitkeringen Statistiek 2009 Versie 2

G0N11a Statistiek en data-analyse: project Eerste zittijd Modeloplossing

Hoofdstuk 5: Steekproevendistributies

Project Paper: Tiling problem

College 6 Eenweg Variantie-Analyse

Hoofdvraag. Hoe kan interne en externe data gebruikt worden voor ziektepreventie bij klanten van DFZ?

Inhoud. Neuronen. Synapsen. McCulloch-Pitts neuron. Sigmoids. De bouwstenen van het zenuwstelsel: neuronen en synapsen

Artificial Intelligence in uw dagelijkse praktijk. Hilversum, 22 September 2016

Toets deel 2 Data-analyse en retrieval Vrijdag 30 Juni 2017:

Bijlage 2: 3.2 onderzoek

introductie Wilcoxon s rank sum toets Wilcoxon s signed rank toets introductie Wilcoxon s rank sum toets Wilcoxon s signed rank toets

In de door ons gebruikte demo verloopt het herkennen van beelden in feite in 2 fasen:

Masterscriptie Business Analytics. Op tijd vertrekken. Verklaringen voor ADC dispunctualiteit op ICA vluchten. Nivard van Wijk

TW2020 Optimalisering

Oefenvragen bij Statistics for Business and Economics van Newbold

2WO12: Optimalisering in Netwerken

Percentage afwijkingen groter dan vijf decibel

From Alife Agents to a Kingdom of Queens

1 Complexiteit. of benadering en snel

Opdracht 1 Topics on Parsing and Formal Languages - fall 2010

Inhoud. Data. Analyse van tijd tot event data: van Edward Kaplan & Paul Meier tot David Cox

Toetsende Statistiek, Week 2. Van Steekproef naar Populatie: De Steekproevenverdeling

Inleiding statistiek

Kunstmatige Intelligentie (AI) Hoofdstuk 18.7 van Russell/Norvig = [RN] Neurale Netwerken (NN s) voorjaar 2016 College 9, 19 april 2016

Figuur 1. Schematisch overzicht van de structuur van het twee-stadia recourse model.

Cerium CMS versie 4.0. Wat is nieuw in versie

Cover Page. Author: Zhiwei Yang Title: Meta-heuristics for vehicle routing and inventory routing problems Issue Date:

TW2020 Optimalisering

11. Meerdere gemiddelden vergelijken, ANOVA

8. Complexiteit van algoritmen:

2WO12: Optimalisering in Netwerken

werkcollege 6 - D&P10: Hypothesis testing using a single sample

Datastructuren Uitwerking jan

Transcriptie:

Data Mining: Opdracht 2 7 juli 2006 Egbert Kroese (#0134252) Paul Lammertsma (#0305235)

Inhoudsopgave 1. De datasets...3 1.1 Iris...3 1.2 Vote...3 1.3 Autos...4 2. De algoritmen...4 2.1 Naive Bayes...4 2.2 C4.5...5 2.3 Ripper...5 2.4 Support Vector Machine...6 2.5 Boosting...6 2.5.1 Adaboost met C4.5...7 2.5.2 Adaboost met Decision Stumps...7 2.6 Intermezzo: Bagging...8 3. Conclusies...8 3.1 Conclusie Naive Bayes...8 3.2 Conclusies C4.5 en Adaboost met C4.5...8 3.3 Conclusie Ripper...9 3.4 Conclusie Support Vector Machine...9 3.5 Conclusie Adaboost met Decision Stumps...10 3.6 Conclusies Algemeen...10 4. Appendix...12 5. Referenties...16

1. De datasets De drie opgegeven datasets, iris, vote en autos, hebben zowel met betrekking tot hun instanties als hun attributen opvallende verschillen. Een analyse is gedaan naar de drie meegeleverde datasets en is uitgezet in Tabel 1. Bij deze analyse gaat voornamelijk om het aantal klasses, de attribuuttypes en het aantal attributen met ontbrekende waardes. De verschillende algoritmes waar straks naar gekeken zal worden gaan immers anders om met deze eigenschappen, en kunnen daarom de classificatie beïnvloeden. Naam Instanties Classes Attribuuttypes # attributen met Num. Nom. Int. missende waardes Iris 150 3 4 0 Vote 435 2 17 15 Autos 205 7 15 10 1 7 Tabel 1 1.1 Iris De dataset iris heeft twee karakteristieke eigenschappen. Ten eerste valt het op dat deze dataset uitsluitend numerieke waarden bevat. Gezien het feit dat verschillende algoritmen anders omgaan met numerieke of nominale waarden, zal deze eigenschap ongetwijfeld invloed hebben op de classificatie en uiteindelijk het meest geschikte algoritme. Ten tweede maakt deze dataset het de meeste algoritmen wat makkelijker omdat er geen attributen zijn met ontbrekende waarden. Wij hoeven dus hier geen rekening mee te houden. 1.2 Vote Ook deze dataset is kenmerkend doordat alle attributen van dezelfde soort zijn. Het gaat deze keer niet om numerieke waarden, maar juist allemaal om nominale. Willen wij het beste algoritme vinden, zullen we een algoritme moeten zoeken dat hierop toegespitst is. Ook interessant is dat vote geheel binair is: alle attributen en met name de uitkomst kunnen precies twee waarden aannemen.

1.3 Autos Tijdens het eerste practicum hebben we deze dataset onderzocht, en ontdekt dat deze zowel numeriek, nominaal als integerwaarden bevat. De attributen zijn afwisselend sterk samenhangend of geheel onsamenhangend, en er lijkt veel sprake van noise te zijn. Mogelijk zullen sommige algoritmes moeite hebben met classificatie doordat instanties uiteindelijk zeven verschillende waarden aan kunnen nemen, en dat er in sommige gevallen attribuutwaarden ontbreken. 2. De algoritmen Wij hebben circa vijftig experimenten uitgevoerd op de datasets met vijf verschillende algoritmes: Naive Bayes, C4.5, Ripper en Adaboost met C4.5 en Decision Stumps. Voordat we onze conclusies presenteren, willen we een korte analyse doen van de werking van deze algoritmes. 2.1 Naive Bayes Naive Bayes classificeert een willekeurige instantie met attributen x volgens Vergelijking 1. p( C = c) n i= 1 p( X i = x i C = c) Vergelijking 1 C is de getoetste klasse en X zijn de gegeven attributen van een bepaalde instantie. c een van de mogelijke uitkomsten is en x de attributen die bij deze uitkomst horen. [3] Deze berekening wordt uitgevoerd voor alle mogelijke klassen; van deze uitkomsten kiest Naive Bayes het beste resultaat. Kort gezegd berekent het algoritme dus de uitkomst door het beste resultaat te kiezen uit een vermenigvuldiging van het aantal voorkomens van elke uitkomst en zijn onderlinge aantal keer dat ieder attribuut voorkomt. Terwijl deze methode bijna té simpel lijkt, levert het vaak een verrassend goede oplossing. Door zijn eenvoud, is Naive Bayes weerbaar tegen geïsoleerde ruispunten omdat uitspringers statistisch wegvallen. Naive Bayes werkt alleen het beste in twee extreme gevallen [5]:

Datasets die uitsluitend geheel onafhankelijke features hebben, of Datasets die uitsluitend functioneel afhankelijke features hebben. Gevallen die tussen deze extremen liggen verslechtert de prestatie van het algoritme. Kortom, bij datasets die attributen bevatten die afwisselend samenhangend of onafhankelijk zijn, levert een classificatie door Naive Bayes geen goed resultaat op. 2.2 C4.5 C4.5 is de opvolger van J. Ross Quinlan s ID3 decision tree algoritme. Het algoritme begint met een set van instanties en maakt aan de hand daarvan een boomstructuur waarin nieuwe instanties kunnen worden geclassificeerd. Elke interne knoop van de boom bevat een test waarvan het resultaat bepaalt welke tak te volgen vanuit die knoop (de zogenaamde divide-and-conquer algoritme ). De bladeren bevatten class labels in plaats van testen. Wanner tijdens het classificeren een instantie een blad bereikt zal C4.5 die instantie classificeren met de class van dat blad. Onder de verschillende algoritmen is C4.5 een van de beste doordat deze zorgt voor kleine accurate bomen, resulterend in snelle betrouwbare classifiers. Tijdens het testen kiest C4.5 de test welke het maximum aan informatie uit de instanties haalt, gegeven de voorwaarde dat maar één attribuut getest wordt. Een (grote) boom die 100% van de instanties goed classificeert hoeft niet per se beter te zijn dan een kleine boom waarin niet alle instanties passen. Daarom maakt C4.5 gebruik van pruning; het laten groeien van een grote boom om er vervolgens stukjes weer van te verwijderen. C4.5 s pruning methode is gebaseerd op het schatten van de error-rate van elke sub-boom en deze te vervangen met een blad als de geschatte fout lager is. Schat de error-rate van elke knoop in de boom, beginnend onderaan de boom. Als de schatting aangeeft dat de boom accurater zal zijn als de kinderen van knoop n verwijderd worden (en dat n een blad wordt) dan zal C4.5 n s kinderen verwijderen. Als de schatting perfect is zal dit altijd tot een betere boom leiden. In praktijk (bij niet perfecte tot zelfs grove schattingen) leidt dit toch tot een beter resultaat. 2.3 Ripper Repeated Incremental Pruning to Produce Error Reduction (RIPPER) bouwt de regelset één regel per ronde. Aan elke regel wordt door divide and conquer propositionele condities toegevoegd, net zoals bij C4.5. Ook voert Ripper hierna pruning uit om overfitting te verminderen.

Er geldt zowel bij C4.5 als Ripper dat de splitsing bij numerieke attributen anders werkt. Gezien het algoritme een splitsing over n takken moet maken, moet hij weten hoe de data gespreid ligt. In principe zou het algoritme alle instanties moeten doorwerken om dit te ontdekken, maar dit zou te lang duren; het zou immers O(n 2 ) tijd kosten om enkel de spreiding van alle numerieke attributen te bepalen! Een eenvoudige oplossing is dat deze algoritmes uitgaan van een normale verdeling. Vaak leidt dit tot een redelijk resultaat, maar het is onbetrouwbaar. Ripper en C4.5 zijn daarom vaak niet goed te gebruiken bij datasets met veel numerieke attribuuttypes. [7] De tweede stap van het algoritme is waar Ripper van C4.5 verschilt. Daar waar C4.5 regels verwijdert, past Ripper ze aan in het belang van optimalisatie [2]. Er wordt per regel twee alternatieve candidaten gemaakt: de zogenaamde vervangingsregel, die vanuit een lege regel groeit, en revisieregel, die vanuit de huidige regel groeit. Samen met het orgineel wordt de regel met de kortste omschrijving gekozen en vervangt deze de oorspronkelijke regel. 2.4 Support Vector Machine Het Support Vector Machine-algoritme (SVM) berust op het principe van het classificeren van data in een R n ruimte door een hyperplane, en de margin tussen deze hyperplane en de punten te maximaliseren. Het kan echter soms moeilijk zijn om deze hyperplane te bepalen. SVM maakt gebruik van kwadratisch programmeren (QP) om per dimensie de margin te vergroten. Dit is een ingewikkelde berekening die vaak veel tijd kost, waardoor het bekend staat als een traag algoritme. Tevens is de classificatie ondoorzichtig; in tegen stelling tot C4.5 die een boom bouwt of Naive Bayes die de kansen op alle uitkomsten uitzet, moet men maar aannemen dat de berekening van de hyperplane uit de trainingset in SVM tot een optimaal resultaat levert. Ondanks dat de variant van SVM die geïmplementeerd is in Weka, (SMO), geoptimaliseerd is, zijn we sceptisch over het nut van deze oplossing omdat hij aanzienlijk trager is dan de anderen. 2.5 Boosting Boosting is een algemene methode om weak learning algoritmes te verbeteren. Dit door middel van het herhaaldelijk rerunnen van een gegeven weak learning algoritme en daarvan de berekende classifiers combineren. Wat boosting doet is

dat het een hypothese genereert met weinig fouten in de training set. Dit doet hij uit de verschillende hypotheses (met veel fouten, maar beter dan ½) door ze te combineren. Boosting is nuttig als de dataset een variërende graad van moeilijkheid van classificatie heeft. Het boosting algoritme neemt als input een training set van m instanties. Daarnaast maakt boosting gebruik van een weak learning algoritme (in ons geval C4.5 en Decision Stumps). Het boosting algoritme roept herhaaldelijk het weak learning algoritme aan in verschillende rondes. Elke ronde voorziet de booster het weak learning algoritme van een verdeling instanties van de training set. Op zijn beurt geeft het weak learning algoritme een classifier voor die distributie van de training set. Deze classifier classificeert een fractie van de training set juist met grote waarschijnlijkheid ten opzichte van de verdeling. Het doel van het weak learning is om een hypothese te vinden welke de training error minimaliseert. Dit proces herhaalt zich een aantal ronden en uiteindelijk combineert de booster de verschillende zwakke hypothesen tot één laatste hypothese bijvoorbeeld door middel van stemmen. Door fout geclassificeerde instanties een groter gewicht te geven zullen ze bij opvolgende ronden eerder aan bod komen. Op deze manier focust boosting op de instanties die voor de weak classifier het moeilijkst zijn. 2.5.1 Adaboost met C4.5 Adaboost is de afkorting van Adaptive Boosting, en maakt dus gebruik van boosting. Omdat C4.5 ongewogen training instanties verwacht moeten deze eerst geresampled worden. Dit is een methode waar je van de set van voorbeeld instanties er een x aantal random pakt met terugleggen, op deze manier kan één instantie dus ook vaker voorkomen. Het voordeel van C4.5 is dat je in ieder geval wel zeker weet dat deze een error rate kleiner dan ½ zal hebben. Het gevaar bij Adaboost zit in het teveel gewicht leggen op noisy instanties, waar de classificatie onder lijdt. [1] 2.5.2 Adaboost met Decision Stumps Het decision stump-algoritme berust op een classificatie volgens single attribute discrimination. In feite is het een beslisboom met maar één enkele knoop met de aan- of afwezigheid van een enkele term als predikaat. Voor elk attribuut A, toetst het algoritme een binaire splitsing en meet de score volgens score(a). De beste classificatie, splitsing door attribuut A i, betekent volgens decision stumps dat score(a i ) maximaal is. [6]

2.6 Intermezzo: Bagging Bootstrap aggrigating ( bagging ) is een methode die herhaaldelijk willekeurige samples van een dataset neemt, met teruglegging, en een reeks classifiers maakt C 0 t/m C N. Tot slot worden deze classifiers gecombineerd door middel van voting tot een enkele classifier C. Wordt N groot genoeg gekozen, is de kans dat een instantie uit de dataset gekozen wordt ca. 0.632 [1]. Het gevolg hiervan is dat naar verwachting een classifier gebouwd wordt die gebaseerd is op een willekeurige reeks van 63,2% unieke instanties uit de dataset. Deze methode zullen we niet toetsen, maar is een interessant alternatief op boosting, gezien deze zich minder focust op afwijkende waardes en dus minder gevoelig is voor ruis. 3. Conclusies 3.1 Conclusie Naive Bayes Naive Bayes is een buitengewoon snel algoritme die eenvoudig te implementeren is. Dit is al een flink voordeel, en bovendien is de classificatie vaak vrij redelijk. Bij de iris dataset leverde dit algoritme een verrassend goed resultaat op. De reden hiervoor is dat iris uitsluitend uit sterk samenhangende, numerieke attributen bestaat; daar waar Naive Bayes juist goed op presteert. Als we de data visualiseren in Weka, blijkt er hier en daar wat ruis zichtbaar. Uit de analyse van Naive Bayes weten we dat dit weinig invloed maakt op de classificatie. Op de vote en autos dataset doet Naive Bayes het significant slechter, dit komt doordat deze datasets noch sterk samenhangend noch sterk onsamenhangende attributen bevat. 3.2 Conclusies C4.5 en Adaboost met C4.5 C4.5 is zwakker als er een overwicht is aan continue (numerieke) waarden ten opzichte van de discrete (nominale) waarden [4]. Dit is het geval in de dataset autos. Waar C4.5 een (optimale) score van 83.52 haalt kan Adaboost dit nog boosten tot 86.39. Dit is een redelijke score, maar ten opzichte van de andere

datasets doen C4.5 en Adaboost met C4.5 het slecht op de autos dataset. Als we C4.5 of Adaboost met C4.5 uitvoeren op deze dataset, steekt het wél met kop en schouders uit boven de andere algoritmen. De reden hiervoor is dat C4.5 een sterk basis algoritme is; hij kan goed om gaan met noise (in tegenstelling tot Adaboost met Decision Stumps) en bouwt een betrouwbare classificatie zoals wij in practicum 1 waargenomen hebben. Aan de andere kant, presteert C4.5 bij iris niet bepaald goed. Onze analyse van deze dataset is dat deze zowel ruis als numerieke waarden bevat. Ruis is geen probleem voor dit algoritme, maar numerieke waarden wel. Wij bekeken nogmaals de werking van C4.5 en zagen dat hij tijdens de split er vanuit kan gaan dat numerieke waarden normaal verdeeld zijn. Dit is echter vaak niet het geval, waardoor hij een relatief slechtere classificatie zal geven. Of Weka daadwerkelijk deze assumptie maakt, wordt niet helemaal duidelijk uit zijn documentatie. 3.3 Conclusie Ripper Uit de dataset iris blijkt dat Ripper slecht presteert met numerieke waarden. Dit heeft kennelijk iets te maken met de manier waarop dit algoritme attributen van dit type probeert te splitten. We weten dat Ripper en C4.5 dezelfde methode gebruiken voor de initiële split, en vermoeden dat hetzelfde probleem optreedt als eerder genoemd bij de conclusie van C4.5: Weka gaat uit van een normaal verdeelde dataset bij numerieke attributen. Uit de prestatie van deze algoritmes vergeleken met de anderen, kunnen we concluderen dat er bij iris echter geen sprake is van normaal verdeelde numerieke attributen. 3.4 Conclusie Support Vector Machine Het idee achter SVM is dat data in R n te classificeren is door middel van een hyperplane. Soms is het niet mogelijk om volgens dit eenvoudige principe data te scheiden. Bij iris is er een lineair verband zichtbaar tussen de meeste attributen. SVM slaagt erin om deze lineaire hyperplane zo te trekken dat het beste resultaat behaald wordt.

Bij vote en autos is er iets anders aan de hand. Hoewel we dit niet kunnen zien, vermoeden wij dat er kennelijk geen goed classificeerbaar lineair verband, polynomiaal verband of verband volgens een RBF-kernel mogelijk is. 3.5 Conclusie Adaboost met Decision Stumps Adaboosting met Decision Stumps als basis algoritme doet het op autos zo slecht omdat er veel noise aawezig is. Het is opmerkelijk om te zien dat AdaBoost met decision stumps in de iris klasse het beter doet dan Adaboost met C4.5 omdat we er van uit gaan dat dit een beter basisalgoritme is. Toch doet Decision stumps het hier beter, waarschijnlijk door het al eerder genoemde probleem dat C4.5 slecht om kan gaan met een overwicht aan numerieke waarden. In iris is de ratio numeriek ten opzichte van nominaal 4:0 (zie tabel Tabel 1). 3.6 Conclusies Algemeen Zoals in de tabel te zien is zijn voor veel classes gecombineerd met de verschillende algoritmen de standaard instellingen het beste. Dit komt omdat dit al redelijk optimale instellingen zijn. Het is wel mogelijk om wat class afhankelijke aanpassingen te maken, maar dit geeft toch maar minimale, zeker geen significante, verschillen. Het overall slechte presteren van de algoritmes op autos is waarschijnlijk te danken aan het feit dat deze zeven classes heeft (immers -3 t/m +3). De data is dan veel lastiger te classificeren. Op de iris dataset presteert SVM het allerbeste (zie Appendix, Figuur 1) met een classificatie van 96.27%. Echter, met 96.20% is Naive Bayes een goede tweede, en deze is aanzienlijk sneller in zijn berekening. Daar waar SVM 46 seconden aan het rekenen is doet Naive Bayes er slechts 1 seconde over om de dataset te classificeren. Dit in acht genomen, concluderen wij dat bij numerieke datasets zoals iris, Naive Bayes het beste algoritme is. Op de vote dataset presteert C4.5 het allerbeste (zie Appendix, Figuur 2) met de instelling dat er maar een minimum van één item per blad vereist is scoort hij 96.62%. Zoals we in het eerste practicum gezien hebben zorgt dit tevens voor een grotere boom. Adaboost me Decision Stumps, SVM, Ripper en Adaboost me C4.5 volgen snel met respectievelijk 96.39%, 95.86%, 95.75% en 95.72%. Alleen Naive Bayes scoort hier significant slechter. Op de autos dataset presteert Adaboost met C4.5 het allerbeste (zie Appendix, Figuur 3) met 20 in plaats van 10 iteraties en met een confidence

factor van 0.5. Adaboost met C4.5 doet het hier iets beter dan C4.5 los (83.52%) en Ripper (82.24%). Deze 3 algoritmen zijn alledrie significant beter dan SVM (76.84%), Naive Bayes (65.17%) en Adaboost met Decision Stumps (44.90%). Al onze resultaten zijn uitgezet in Tabel 2 van de Appendix.

4. Appendix Iris 96.50 96.27 96.20 96.00 95.50 95.40 95.00 94.80 94.50 94.00 94.33 94.07 Iris 93.50 93.00 92.50 Figuur 1 SVM RAW NB -K Adaboost Ds C4.5 Unpruned Adaboost J48 Jrip -F 4 1. SVM Raw Small Vector Machine met standaard instellingen 2. NB K Naive Bayes met Kernel estimator voor numerieke waarden in plaats van nominale distributie 3. Adaboost DS Adaboost met Decision Stumps als weak learning algoritme en standard instellingen 4. C4.5 Unpruned C4.5 met een unpruned boom 5. Adaboost J48 Adaboost met J48 (C4.5 implementatie van Weka) als weak learning algoritme en standaard instellingen 6. Jrip F 4 Ripper met 4 folds en de rest standaard instellingen

Vote 98.00 96.00 96.62 96.39 95.86 95.75 95.72 94.00 92.00 Vote 90.00 90.02 88.00 86.00 C4.5 minnumobj 1 Adaboost DS -P 80 -I 40 SVM -C -1.5 Ripper Adaboost J48 -P 80 NB RAW Figuur 2 1. C4.5 minnumobj 1 C4.5 Algoritme met een minimum van 1 object per blad 2. Adaboost DS P 80 I 40 Adaboost met Decisions Stumps als weak learning algoritme met als bodemgrens van het gewicht tijdens het prunen op 80 en 40 iteraties 3. SVM C -1.5 Small Vector Machines met complexiteit parameten 1.5 4. Ripper Ripper met standaard instellingen 5. Adaboost J48 P 80 Adaboost met J48 (C4.5 implementatie van Weka) als weak learning algoritme met als bodemgrens van het gewicht tijdens het prunen op 80 6. NB Raw Naive Bayes met standaard instellingen

Autos 100 90 80 86.39 83.52 82.24 76.84 70 65.17 60 50 40 30 20 10 44.90 Autos 0 Adaboost J48 conf 0.5 -I 20 C4.5 minnumobje 1 Jrip -F 3 -N 2.0-0 4 -S 1 -P SVM -E 2.0 NB -D Adaboost DS Figuur 3 1. Adaboost J48 conf 0.5 I 20 Adaboost met J48 (C4.5 implementatie van Weka) als weak learning algoritme met confidence factor 0.5 en 20 iteraties 2. C4.5 minnumobje 1 C4.5 Algoritme met een minimum van 1 object per blad 3. Jrip F 3 N 2.0 O 4 S 1 P Ripper met 3 folds, minimum van 2 objecten per blad (standaard), 4 optimaliseer runs, 1 seed voor de random data (standaard) en unpruned 4. SVM E 2.0 Small Vector Machines met als exponent van de polynomiale kernel 2.0 5. NB D Naive Bayes met supervized discretization om numerieke attributen nominaal te maken 6. Adaboost DS Adaboost met Decision Stumps als weak learning algoritme en standard instellingen

Algoritme Instelling Iris Vote Autos Naive Bayes Standaard 95.53 90.02 57.41 Kernel Estimator 96.20 90.02 61.33 Supervized Discretization 93.33 90.02 65.17 Support Vector Standaard 96.27 95.77 71.34 Machine Complexity 1.5 95.93 95.93 71.08 RBF Kernel met Gamma 0.01 88.07 94.69 44.80 RBF Kernel met Gamma 0.10 95.13 95.59 62.94 RBF Kernel met Gamma 0.01 Complexity 1.5 89.00 94.94 49.20 Exponent voor de Polynomiale Kernel 0.5 95.53 94.92 61.51 Exponent voor de Polynomiale Kernel 1.5 95.53 95.86 76.30 Exponent voor de Polynomiale Kernel 2.0 95.53 94.50 76.84 Exponent voor de Polynomiale Kernel 2.5 93.73 94.66 76.69 Ripper Standaard 93.93 95.75 73.62 4 Folds 94.07 95.63 74.64 5 Folds 93.80 95.68 74.08 Min. 3 inst. per blad 93.13 95.52 69.56 Min. 4 inst. per blad 93.07 95.47 68.33 3 optimalisatie ronde 93.73 95.75 74.30 4 optimalisatie ronde 94.07 95.75 75.25 4 optimalisatie ronde, Unpruned 92.60 94.87 82.24 C4.5 Standaard 94.73 96.57 81.77 Unpruned 94.80 95.76 82.40 Confidence factor 0.50 94.73 96.57 81.86 Confidence factor 0.75 94.80 95.86 82.59 Confidence factor 1.00 94.80 95.86 82.59 Minimale # instanties in 1 blad op 1 94.13 96.62 83.52 Adaboost met Decision Stumps Adaboost met C4.5 Tabel 2 Binary split op nominale attributen 94.73 96.57 78.90 Standaard 95.40 95.43 44.90 Min. gewicht = 80 93.93 95.79 44.90 Min. gewicht = 120 94.23 95.51 44.90 Min. gewicht = 80 en 40 96.39 Resampling i.p.v. Reweighting 94.00 95.12 43.39 Resampling i.p.v. Reweighting, 5 iteraties 94.20 94.57 43.39 Resampling i.p.v. Reweighting, 15 iteraties 94.07 94.98 43.39 20 iteraties 96.39 40 iteraties 96.23 Standaard 94.33 95.51 85.46 Unpruned 94.27 95.05 84.33 Min. 1 inst. per blad, Min. gewicht 80, 40 iteraties 95.47 - Confidence factor 0.5 94.27 95.35 86.04 Confidence factor 0.5 en 20 iteraties 95.37 86.39 Confidence factor 0.5 en 40 iteraties 95.40 86.39 Confidence factor 0.5, Resampling i.p.v. 85.16 Reweighting, 20 iteraties Confidence factor 0.5, Resampling i.p.v. 86.59 Reweighting, 40 iteraties Min. 1 inst. per blad 94.07 95.40 85.67 Binary split 94.33 95.51 84.73 Min. gewicht 80 93.93 95.72 84.44 Min. gewicht 120 94.33 95.51 84.73 5 iteraties 94.20 95.40 84.48 15 iteraties 94.20 95.21 85.08

5. Referenties [1] Bauer, E., & Kohavi, R. (1999). An empirical comparison of voting classification algorithms: Bagging, boosting and variants. Machine Learning. 36 (1999) 105-139. [2] Frank, E., & Witten, I. H. (1998). Generating accurate rule sets withoug global optimization. Proc 15 th International Conference on Machine Learning. 144-151. [3] John, G. H. & Langley, P. (1995). Estimating Continuous Distributions in Bayesian Classifiers. Stanford University. [4] Quinlan, J. R. (1996). Improved use of Continuous Attributes in C4.5. Journal of Artificial Intelligence Research. 4 (1996) 77-90. [5] Rish, I., Hellerstein, J., & Thathacher, J. (2001). An analysis of data characteristics that affect naive Bayes performance. IBM TJ. Watson Research. [6] Wayne Ida, Pat Langley (1992). Induction of One-Level Decision Trees. NASA Ames Research Center (1992). [7] Yıldız, T., & Alpaydın, E. (2004). Learning Rules from Data. Boğaziçi University.