Data mining:
Schatgraven in Gegevensbergen
LAPP-Top
Informatica,
Peter van der Putten (putten-at-liacs.nl), April 2004
Practicumopdrachten
Opdracht 1: Beestenbomen
In deze opdracht werken met een data set van dieren en hun kenmerken. Met
behulp van een beslisboom voorspellingsmodel leert de computer dieren in te
delen in soorten/families (zoogdieren, vissen, reptielen etc.).
1.1 Hier kun je de dieren
data set bekijken in Excel formaat. Bedenk en teken zelf een beslisboom van
drie tot max zes ‘vragen’ diep die een dier indeelt in een soort/familie,
gegeven de kenmerken van de dieren die bekend zijn in de data set.
1.2 We gaan nu de computer
zelf een beslisboom laten maken. Download eerst deze zip met data
sets naar je computer en pak hem uit. Open de zoo.arff data set in WEKA
door er op te dubbelklikken (of kies start menu – weka – weka-3-4 – Weka
Explorer – Open file).
1.3 Hoeveel beesten zitten
er in de data set? Hoeveel kenmerken zijn er bekend van elk beest? Met visualize all kun je eventueel een
overzicht van de kenmerken en hun relatie met de doelvariabele (soort/familie,
de te voorspellen variabele) bekijken.
1.4 Ga naar de classifier
tab en klik choose-trees-j48 om aan te geven dat we een
voorspellingsmodel (classifier) van het type beslisboom-j48 willen maken. Teken de
gevonden beslisboom na.
1.5 Welk percentage van de
instances wordt correct geclassificeerd? Welke soorten/families worden met
elkaar verward (tip: zie de confusion matrix).
1.6 Er zijn veel
instellingen waar we mee kunnen experimenteren. Bvb: klik op J48 etc... naast choose, het instellingenscherm
verschijnt, verander binarySplits in false naar true (klik more voor uitleg) en bouw een nieuwe beslisboom. Wat is het
verschil?
1.7 Experimenteer met een
aantal ander classifiers en probeer een beter classificatie percentage te
krijgen. Noteer het beste classificatie percentage.
Opdracht 2: Beestenregels
In deze opdracht gaan we met behulp van een associatieregel algoritme op
zoek naar opvallende regelmatigheden in de zoo data set.
2.1 Het associatie algoritme
dat we gebruiken kan alleen omgaan met nominale variabelen dus we moeten de
numerieke variabele ‘aantal poten’ omzetten in discrete klassen (bvb 0, 2, 4,
>4 poten etc). Dit soort ‘data preprocessing’ kan gedaan worden in de preprocess tab dmv het kiezen van
het juiste filter
(Discretize of PKIDistcretize) en dan Apply. Check het verschil
voor en na het toepassen van het filter.
2.2 Doe een run van het
associatieregel algoritme (associate-start). Welke regel(s) zijn altijd waar volgens de data (hint:
let op de confidence)?
2.3 Noteer een of meerdere
voorbeelden van interessante regels. Noteer ook een voorbeeld van een regel die
wel erg triviaal is of nergens op slaat.
Opdracht 3: Pima indianen,
paddenstoelen & politici
De zip file
uit opdracht 1 bevat een aantal verschillende data sets varierend van het
voorspellen van diabetes bij indianen tot het herkennen van klinkers of het
onderscheiden van eetbare en giftige paddenstoelen. De meeste data sets
bevatten een korte beschrijving in de ‘header’ (open met notepad). Kies een of
meerdere data sets die je interesseert. Voor elke data set noteer je:
Opdracht 4: Mine Yourself
Aan het begin van het practicum heb je een aantal vragen over jezelf
beantwoord. In deze opdracht gaan we de data set van alle LAPP-Toppers analyseren
om verschillende interessen en kenmerken te voorspellen en regels in de data te
ontdekken.
4.1 Bouw een decision tree
classifier die voorspelt of iemand liever naar Idols of Nova kijkt. Wat is de
voorspelkwaliteit van het model? Wat zijn belangrijke onderscheidende
kenmerken?
4.2 Bouw vervolgens
classifiers voor andere kenmerken. Geef een voorbeeld van een goed en een
slecht te voorspellen kenmerk. Als je een interessant of grappig profiel vindt,
maak er dan een aantekening van zodat we aan het eind van het practicum de
leukste voorbeelden kunnen bespreken.
4.3 Leid vervolgens met het
associatieregels interessante kenmerken van de data set af.