Data Mining. Eindverslag 7 juni 2009



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

Oplossingen Datamining 2II15 Juni 2008

Data Mining: Classificatie

DATA MINING (TI2730-C)

Tentamen Data Mining

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

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

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

Smart Export data analyse

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

Het Groninger Stadspanel over LGBT. Meningen over bi- en homoseksualiteit en transgender in Groningen stad

8. Analyseren van samenhang tussen categorische variabelen

GS1 Data Source Handleiding afnemer-interface Datum: 24 juni 2015, versienummer 3.2.0

Classification - Prediction

MyDHL+ Van Non-Corporate naar Corporate

AdVISHE: Assessment of the Validation Status of Health- Economic Decision Models

MyDHL+ ProView activeren in MyDHL+

Trainingsmateriaal Osiris 6. Admission Office International Office

SPSS 15.0 in praktische stappen voor AGW-bachelors Uitwerkingen Stap 7: Oefenen I

Data mining Van boodschappenmandjes tot bio-informatica

Combinatorische Algoritmen: Binary Decision Diagrams, Deel III

ALL-CRM Gebruikershandleiding AC-DataCumulator

Global TV Canada s Pulse 2011

Meervoudige ANOVA Onderzoeksvraag Voorwaarden

Teststrategie met behulp van heuristieken

Adverteren op Linkedin

TMA 360º feedback Flexibel en online. TMA 360º feedback werkboek. Dank u voor het gebruiken van de TMA 360º feedback competentie-analyse

Dienstbeschrijving Managed Mobile. Versie: 2.0 Aantal bladen: 10

Data Mining: Opdracht 2

Help er gaat iets mis

Exact. Orbis Software. Integration Tools

Doel. Spel. Duur: - Groep - Individueel. Laat je inspireren door de voorbeeld vragen in deze spiekbrief.

Hieronder volgt een overzicht van relevante contactpersonen binnen KPN.

Location Based Media

Major Design This! Me and My. Guillaume May Studentnummer: Klas: 4A

We berekenen nog de effectgrootte aan de hand van formule 4.2 en rapporteren:

Met een LightSwitch applicatie een OData service uit de Windows Azure Marketplace consumeren

Toetsen in Blackboard

KAS-Web Handleiding Self Service Portal / Versie 0.2 KAS BANK N.V. 1

End-to-End testen: de laatste horde

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

Social Action Research Plan

KAS-Web Handleiding Self Service Portal / Version 2 KAS BANK N.V. 1

Plan van Aanpak. Plan van Aanpak. November Student Naam: David Fremeijer Studentnr:

9. Lineaire Regressie en Correlatie

Testverslag Project Design for Space Robbert Kooiman en Merlijn de Vries Playability Emiel Kampen

Rapportages instellen

LDA Topic Modeling. Informa5ekunde als hulpwetenschap. 9 maart 2015

Cloud2 Online Backup - CrashplanPRO

Gemaakt door: Lysanne Wolbers Menno Akkerman Tessa Heijerman

Module QGIS Overstromingsrisico

Trainingsmateriaal Osiris 6. Admission Office International Office

Handleiding CMS. Auteur: J. Bijl Coldfusion Consultant

W H I T E P A P E R I N 5 M I N U T E N J U N I De app in een goede mobiele strategie

Data Handling Ron van Lammeren - Wageningen UR

Data Definition Language

Sparse columns in SQL server 2008

Inhoud KAS-WEB: HANDLEIDING IDG OPERATOR

ICT en grote datasets havo wiskunde A en vwo wiskunde A/C

Firewall van de Speedtouch 789wl volledig uitschakelen?

Qlik Sense Healthcare. Document 16052

BMI lab WERKBLAD BUSINESS MODEL NAVIGATOR. University of St. Gallen

feedback Flexibel en online Robuust 360º Werkboek Robuus Hartelijk dank voor het gebruiken van Robuust 360º Haal het maximale uit 360º

Handleiding SWIFT MyStandard Readiness Portal. Juni 2016

Financial planning voor ondernemers. Heb jij al poen voor je pensioen?

Internet of Things (IoT)

NHibernate als ORM oplossing

03. Statistieken van Mobiele apps

Whitepaper. Personal Targeting Platform. De juiste content Op het juiste moment Aan de juiste persoon

smartops people analytics

Travel Survey Questionnaires

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

4.2. Evaluatie van de respons op de postenquêtes. In dit deel gaan we in op de respons op instellingsniveau en op respondentenniveau.

InforValue. Laat de waarde van Informatie uw bedrijfsdoelstellingen versterken. Informatie Management

Liefde door de sport Het ontstaan van liefdesrelaties in de sport

Workshop: Selection of the perfect S&OP software. Freek Aertsen Martin Daudey

DATAMODELLERING SCORE MATRIX

Bestaat er een betekenisvol verband tussen het geslacht en het voorkomen van dyslexie? Gebruik de Chi-kwadraattoets voor kruistabellen.

Voorspellen van webwinkel aankopen met een Random Forest

OpenText RightFax. Intuitive Business Intelligence. Whitepaper. BI/Dashboard oplossing voor OpenText RightFax

Self-Service Portal Registeren, downloaden & activeren van een soft token

DATABASEBEHEER IN EXCEL

WERKDRUK. Onderzoek op basis van de Zorgloonwijzer. in opdracht van de ABVAKABO FNV IN DE ZORGSECTOR 2004

DE CRM PAKKETSELECTIE LEIDRAAD

Transcriptie:

Data Mining Eindverslag 7 juni 2009 Naam: Mathijs de Langen 0611699 Stijn Koopal 0613671 Marvin Raaijmakers 0608141 Giel Oerlemans 0607213 Email: m.a.d.langen@student.tue.nl s.koopal@student.tue.nl m.raaijmakers@student.tue.nl g.g.oerlemans@student.tue.nl

Hoofdstuk 1 Tussentijds rapportage 1.1 Inleiding In dit tussentijds rapportage van het datamining project zullen we beginnen met een aanpassing aan de taken die we op de dataset willen verrichten. Dit heeft te maken met de keuze van de dataset. Aangezien enkel de general demographics dataset beschikbaar is via de vak-website kunnen vragen met betrekking tot privacy niet beantwoord worden. Naderhand wordt een beschrijving gegeven van de door ons gebruikte dataset, met daarbij de attribuuttypen, relaties, ontbrekende waarden, geschikte afstandsmaten en eenvoudige visualisaties van de data. Vervolgens geven we een overzicht van uit te voeren data-mining taken en de benodigde preprocessing die voor deze taken vereist is. Voor deze taken zullen wij gebruik maken van het software pakket RapidMiner [2]. 1.2 Herziening te verrichten taken Zoals in de inleiding reeds vermeld is, zijn we met de general demographics dataset niet alle onderzoeksvragen te beantwoorden. We schrappen de volgende vraag: We willen weten met welke attributen we de wens naar privacy kunnen classificeren. 1.3 Onderzoeksvragen We willen de volgende classificaties onderzoeken: k1 We willen weten met welke attributen we de redenen om niet aan online purchasing te doen kunnen classificeren. k2 We willen weten met welke attributen we het internet gebruik van een persoon kunnen classificeren. Met internet gebruik bedoelen we de tijd dat de persoon al internet gebruikt. k3 We willen weten met welke attributen we het gebruikte operating system kunnen classificeren. 1

We willen de volgende associaties onderzoeken: a1 Welke invloed heeft het geslacht op andere attributen. a2 Welke invloed heeft de sexuele voorkeur op andere attributen. a3 Welke invloed heeft het ras op andere attributen. 1.4 Beschrijving dataset De dataset die wij gebruiken komt voort uit een survey die is gehouden onder een grote populatie mensen. Dit wordt verder besproken in hoofdstuk 1.4.1. Aan de hand van deze survey is een dataset gecreëerd die wij gaan analyseren. Onze dataset bestaat uit 72 attributen en heeft geen ontbrekende waarden volgens de initiële beschrijving van de dataset. We hebben te maken met 10104 gevallen, we kunnen dus zeggen dat de dataset eruit ziet als 10104 rijen met 72 kolommen. Er zijn verschillende attribuuttypes. We hebben te maken met booleanwaarden, enumeraties en integerwaarden. Met enumeraties wordt bedoeld dat een persoon kan kiezen uit een lijst van opties. 1.4.1 Survey De dataset is verkregen uit een survey onder meer dan tienduizend personen. De complete survey is te vinden op de website van GVU (Graphics, Visualization, & Usability Center) [1]. Zoals gezegd is gekozen voor de General Demographics dataset. Hierin worden meer algemene vragen gesteld met betrekking tot internetgebruik. Verschillende onderwerpen komen aan bod, van meer persoonlijke vragen naar leeftijd en moedertaal, tot meer technische vragen over het gebruikte besturingssysteem. Enkele interessante vragen waarvan wij de antwoorden gaan proberen te beschrijven aan de hand van de overige attributen zullen hier gegeven worden: 1. Why don t you purchase more products and services on the web, either for yourself or for your work business? Deze vraag biedt een uitgebreide lijst antwoordmogelijkheden met redenen om niet meer producten via web-services te kopen. Deze vraag zal van belang zijn bij het beantwoorden van onderzoeksvraag k1. Omdat de antwoorden allen door aparte kolommen in de data-set gerepresenteerd worden, moet er nog het een en ander aan pre-processing gebeuren, voordat de antwoordenverzameling geschikt is om als target attribuut te gebruiken. 2. How long have you been using the Internet (including using email, gopher, ftp, etc.)? Bij het beantwoorden van onderzoeksvraag k2 kunnen de antwoorden op deze vraag als uitgangsclassen gebruikt worden. Het feit dat het hier om een ordinale classenindeling gaat, maakt de antwoorden uitermate geschikt als classificatie. 3. What is your primary computing platform? De mogelijke lijst antwoorden is vrij groot (en gedateerd) en is ook geschikt om als target attribuut te gebruiken bij het beantwoorden van onderzoeksvraag k3 2

4. What is your sex? Een interessante vraag voor het beantwoorden van onderzoeksvraag a1. De enige mogelijkheden zijn man of vrouw. We gaan uitzoeken of er typische mannen of vrouwen dingen bestaan met betrekking tot het internet. 5. How would you classify yourself? Deze vraag wordt pas duidelijk wanneer men de mogelijke antwoorden bekijkt. De vraag heeft betrekking op de sexuele voorkeur, mogelijke antwoorden zijn: None of your business!, heterosexual, gay male, lesbian, bisexual, transgender. De laatste is nogal dubbelzinnig, aangezien het niet duidelijk is of het hier gaat om het transseksueel zijn, of het vallen op transseksuelen. We nemen hier de eerste definitie Het transseksueel zijn. De vraag speelt een belangrijke rol bij het beantwoorden van onderzoeksvraag a2. 6. How would you classify yourself? Hoewel de vraag exact hetzelfde is als de vorige is hij toch uniek. Wederom kijken we naar de antwoorden en constateren we dat het hier gaat om de vraag tot welk ras de persoon behoort. Bij het beantwoorden van onderzoeksvraag a3 staat deze vraag centraal. 1.4.2 Data visualisatie Voordat we de data daadwerkelijk gaan minen, zullen we eerst een deel van de relevante data visualiseren aan de hand van histogrammen en schijfdiagrammen. Door deze visualisatie kunnen we de verdeling van een aantal eigenschappen binnen de dataset bekijken. We bekijken dus leeftijd, geslacht, inkomen, welk besturingssysteem er wordt gebruikt, het ras en de seksuele voorkeur van de ondervraagden, omdat dit relevante informatie is voor onze onderzoeksvragen. Zo kunnen we in Figuur 1.3 duidelijk zien dat de gemiddelde leeftijd van de ondervraagden net boven de dertig jaar zit. Ook is het duidelijk dat er meer mannen dan vrouwen zijn ondervraagd (Figuur 1.5). In Figuur 1.6 kunnen we zien dat een redelijk aantal mensen niets over hun inkomen vrij wilde geven. De meeste mensen verdienen tussen de $50.000 en $74.000. Meer dan de helft van de ondervraagden gebruikt het besturingssysteem Windows 95, wat te zien is in Figuur 1.7. Na Windows scoort Macintosch nog redelijk hoog. Als we kijken naar het ras van de ondervraagden zien we dat bijna alle ondervraagden blank zijn. Dit is te zien in Figuur 1.8. Als laatste hebben we een schijfdiagram van de seksuele voorkeur (Figuur 1.9) van de mensen die de enquette hebben ingevuld en daar is te zien dat het grootste aantal personen hetroseksueel is. Het aantal lesbiennes is drie maal zo klein als het aantal homofiele mannen. 1.4.3 Preprocessing Er is niet veel preprocessing nodig op deze dataset. Er bestaan geen (vooraf bepaalde) afhankelijkheden tussen de verschillende vragen. De enige situatie waar we we in de problemen geraken zijn vragen waarbij meerdere antwoorden gegeven kunnen worden. Deze antwoorden vertegenwoordigen allen een attribuut in de dataset, wat het classificeren van deze attributen vermoeilijkt. Een goed voorbeeld van dit probleem is de vraag waarom men niet aan online purchasing zou doen. Hierop zijn negentien antwoorden mogelijk. We zitten met drie opties: 3

1. 19 binaire classificatie taken beschouwen 2. Elke subset labelen 3. Natuurlijk hierarchy in de antwoorden ontdekken In het eerste geval zou de interpretatie van de resultaten voor veel problemen kunnen zorgen, omdat 19 verschillende classificaties erg onoverzichtelijk zijn. In het tweede geval krijgen we 2 19 subsets, wat ook niet wenselijk is. We zijn dan ook aangewezen op optie nummer drie, waarvoor het bestaan van een natuurlijke hierarchy een vereiste is. We hebben zo n hierarchy weten te ontdekken. Deze wordt afgebeeld in Figuren 1.1 en 1.2. Figuur 1.1: Hierarchy online purchasing antwoorden 4

Figuur 1.2: Hierarchy online purchasing antwoorden 5

Figuur 1.3: Box plot van de leeftijd van de ondervraagden. 6

Figuur 1.4: Histogram van de leeftijd van de ondervraagden. 7

Figuur 1.5: Schijfdiagram van het geslacht van de ondervraagden. 8

Figuur 1.6: Schijfdiagram van de inkomensverdeling van de ondervraagden. 9

Figuur 1.7: Schijfdiagram van de gebruikte besturingssystemen van de ondervraagden. 10

Figuur 1.8: Schijfdiagram van het ras van de ondervraagden. 11

Figuur 1.9: Schijfdiagram van de sexuele voorkeur van de ondervraagden. 12

Hoofdstuk 2 Mining 2.1 Introductie In de laatste fase van het project gaan we de dataset daadwerkelijk mijnen. Zoals reeds in Hoofdstuk 1 vermeldt, zullen we dit doen met behulp van de software RapidMiner. In dit hoofdstuk zal de gebruikte methodiek bij iedere onderzoeksvraag nader toegelicht worden. Vervolgens zullen kort de resultaten die de betrekkelijke methode produceert worden doorgenomen en de hieruit getrokken conclusies worden behandeld. 2.2 Classificaties algemeen Voor de classificaties wordt in RapidMiner gebruik gemaakt van de operator chain zoals weergegeven in Figure 2.1. Allereerst wordt de data ingeladen met de operator Example Figuur 2.1: The operator chain as it is used for classifications in RapidMiner Source. Daarna worden de attributen gewogen gesampled door de Equallabelweighting en 13

WeightedBootstrappingValidation operatoren. De trainingchain bevat de miningsoperator. Voor de classificaties minen we met de DecisionTree operator en de NaiveBayes operator. De validatorchain bevat een ModelApplier, die het model klaar maakt om te valideren. Dit valideren wordt gedaan door de ClassificationPerformance operator, waarbij een belangrijk criteria Accuracy is. 2.3 Classificatie één (k1) We willen weten met welke attributen we de redenen om niet aan online purchasing te doen kunnen classificeren. De data die nodig is om deze classificatie te maken is verdeeld over meerdere kolommen. Elk van deze kolommmen geeft een rede weer waarom iemand niet aan online purchasing zou doen, per rij kan dit veld 1 of 0 bevatten. 2.3.1 Preproccessing Een aantal rijen uit de dataset waren niet goed ingevuld. Het kwam namelijk voor dat voor één rij zowel Not P urchasing Not applicable als een andere reden was ingevuld. Dat zou dus betekenen dat een gebruiker wél aan online purchasing zou doen, maar toch een reden opgeeft waarom hij er niet aan doet. We zijn dus genoodzaakt deze incorrecte rijen uit de dataset weg te filteren zodat deze de classificatie niet beïnvloeden. Omdat we in RapidMiner geen operator konden vinden die dit voor ons zou doen hebben we zelf hiervoor een scriptje geschreven. Dit script kijkt per rij of Not P urchasing Not applicable samen met nog een andere reden is ingevuld en als dat het geval is zal het deze rij verwijderen. 2.3.2 Mining Deze classificatie maken was nog niet zo makkelijk omdat de data verdeeld staat over 19 kolommen. Het is dus niet mogelijk om 1 classificatie te maken als we niks met de data doen. Daarvoor hebben we gekozen om een hiërarchische classificatie te maken. Uitleg hierover is te vinden in Subsectie 1.4.3. We delen eerst de kolommen op in twee groepen: Not P urchasing Not applicable en Not P urchasing Applicable. Wat laten dus eigenlijk alle kolommen die aan Not P urchasing. voldoen weg uit de dataset (behalve Not P urchasing Not applicable) en gaan dan classificeren. Voor het weghalen van deze attributen hebben we de FeatureNameFilter operator gebruikt. Vervolgens zijn we een beslissingsboom gaan maken met de volgende parameters: criterion Gini Index minimal size for split 12 minimal leaf size 10 minimal gain 0.1 confidence 0.5 De beslissingsboom die hieruit kwam is te vinden in Figuur 2.2 14

Figuur 2.2: De beslissingsboom horende bij onderzoeksvraag k1 15

True: 0.0 1.0 class precision pred 0.0 0.347 0.010 97,27% pred 1.0 0.225 0.009 3.66% class recall 60.68% 46.67% Tabel 2.1: Accuracy resultaten voor onderzoeksvraag k1 2.3.3 Bevindingen De verkregen boom is niet overdreven groot en is daardoor goed te lezen. Toch lijkt de boom nutteloos omdat in elk blad van de boom de kansverdeling (blauw is 0.0, rood is 1.0) van de waarde rond de 50/50 ligt, wat niet erg betekenisvol is. 2.3.4 Validation Als validator wordt de standaard ClassificationPerformance gebruikt, waarbij gekeken wordt naar de accuracy en classification error. De resultaten zijn te vinden in Tabel 2.1. De totale accuracy van het model heeft een gemiddelde score van 60,32 % ± 7,18 % die kleiner is dat de baseline van 87.60 %. De range wordt veroorzaakt door de WeightedBootstrappingValidator, die zorgt voor twee validaties. Een toepassing van deze onderzoeksvraag zou te vinden kunnen zijn bij bedrijven die online producten aanbieden. Deze bedrijven zijn uiteraard enkel geïnteresseerd in bezoekers die aan online purchasing doen, dus waarbij de waarde van het label 1.0 bedraagt. Zo een bedrijf zou er voor kunnen kiezen om pop-up reclames enkel aan deze bezoekers te tonen. In dit geval is het uiteraard onwenselijk om de bezoekers die wel degelijk geïnteresseerd zijn (dus waarde 1.0 hebben), te voorspellen als personen die geen interesse hebben (voorspelling heeft dan de waarde 0.0). In de confusion matrix van Tabel 2.1 is dit resultaat echter niet bevredigend. De penalty op de cell (pred 0.0, true 1.0 ) is in bovenstaande toepassing hoger dan die van de andere cellen. Gezien het feit dat we vaker fout dan goed voorspellen wanneer de echte waarde 1.0 bedraagt, kunnen we concluderen dat het model ook voor deze toepassing niet geschikt is. 2.3.5 Conclusie Volgens ons is het verkregen model waardeloos. We hebben berekend wat de baseline van de dataset is, daarbij zijn we uitgekomen op 87.60%, de accuracy van dit model is 60.32%.Het is dus beter om altijd uit te gaan van Not P urchasing Applicable dan van ons model, aangezien er meer kans is om dan goed te voorspellen. Zoals al eerder gezegd zijn we aan de slag gegaan met een hiërarchische classificatie. We zouden dus eerst onderscheid maken tussen Not P urchasing Not Applicable en Not P urchasing Applicable, om daarna verder te gaan met onderscheid te maken met de rest van de attributen. De tegenvallende resultaten bij deze groep hebben ertoe geleid dat we de dieper gelegen delen van de hiërarchie niet meer verder uitgewerkt hebben. 16

2.4 Classificatie twee (k2) We willen weten met welke attributen we het internet gebruik van een persoon kunnen classificeren. Met internet gebruik bedoelen we de tijd dat de persoon al internet gebruikt. De mogelijke waarden voor dit nominale attribuut zijn: under 6 months 6-12 months 1-3 year 4-6 year over 7 year 2.4.1 Preprocessing De meest voorkomende (default) waarde is 1-3 year, de categorie die ook mooi in het midden van de ordening ligt. Helaas komt dit ook terug wanneer een decision-tree gebouwd wordt. Bijna alle labels komen uit op overheersend de categorie 1-3 year. Er bestaat dus een noodzaak om preprocessing uit te voeren op de dataset, zodat een degelijke classificatie gemaakt kan worden. Dit wordt gedaan door in RapidMiner eerst de EqualLabelWeighting operator toe te passen, gevolgd door de WeightedBootstrappingValidator operator. Hierdoor ontstaat een sample van de dataset, waarin alle classen voor een gelijk deel present zijn. De trainingset bestaat uit 70% van de totale dataset. 2.4.2 Mining Vervolgens wordt een normale beslissing-boom van de sample-data gebouwd. Voor de eerste mining-operatie worden de volgende parameters genomen: criterion Gain Ratio minimal size for split 6 minimal leaf size 4 minimal gain 0.1 confidence 0.5 De resulterende beslissing-boom wordt weergegeven in Figuur 2.3 2.4.3 Bevindingen Uit de beslissing-boom in Figuur 2.3 wordt duidelijk geclassificeerd op basis van het al dan niet bezig zijn met Web page creation. Opvallend is dat ongeveer de helft van de mensen in de categorie Yes valt en dat (naar verwachting) deze mensen over het algemeen reeds lang actief zijn op het internet. Zo zijn 1022 van de 3557 mensen al 4 tot 6 jaar actief en 1233 van de 3557 mensen al 7 jaar of meer actief. Wanneer iemand zich dus bezighoud met het maken van webpagina s, dan kun je vrij zeker zeggen dat deze persoon al langere tijd actief is op het internet. 17

Figuur 2.3: De beslissingsboom horende bij onderzoeksvraag k2 18

True: 1-3 yr Under 6 mo 4-6 yr 6-12 mo Over 7 yr class precision 1-3 yr 0.034 0.010 0.015 0.013 0.002 46.05% Under 6 mo 0.100 0.149 0.032 0.122 0.005 36.54% 4-6 yr: 0.027 0.002 0.024 0.006 0.007 36.73% 6-12 mo 0.020 0.010 0.009 0.019 0.003 30.89% Over 7 yr 0.096 0.013 0.112 0.026 0.036 12.70% class recall 12.26% 80.72% 12.71% 10.11% 67.74% Tabel 2.2: Accuracy resultaten voor onderzoeksvraag k2 2.4.4 Validation Als validator wordt de standaard ClassificationPerformance gebruikt, waarbij gekeken wordt naar de accuracy en classification error. De resultaten zijn te vinden in Tabel 2.2. De totale accuracy van het model is een bedroevend lage score van 29.38 % ± 6.22 %. De range wordt veroorzaakt door de WeightedBootstrappingValidator, die zorgt voor twee validaties. Zouden we alle personen classificeren in de groep 1-3 jaar, dan zouden we een accuracy van 38 % behalen, aangezien 38 % van de deelnemers tot deze groep behoort. Alle bevindingen dus ten spijt, is dit model niet geschikt om het internetgebruik te classificeren. Ook het uitvoeren van het NaiveBayes algoritme levert een model op met een accuracy van slechts 31 %. Gezien de bevindingen van deze test lijkt het samenvoegen van een aantal classen een logische stap. Allereerst hebben we drie classen ingedeeld. Onder 6 maanden en 6 tot 12 maanden worden samengevoegd, evenals de classen 4 tot 6 jaar en 7 jaar of langer. De derde classe bestaat uit 1 tot 3 jaar. De accuracy komt in na uitvoering van de test uit op een schamele 40 tot 45 %. Hoewel het beter is dan de initiële indeling, is het resultaat nog steeds niet voldoende. We hebben ervoor gekozen om vervolgens de groepen: Under 6 mo, 6-12 mo, 1-3 yr en 4-6 yr, Over 7 yr samen te voegen. Dit levert na het uitvoeren de nieuwe validatiecyclus een accuracy van om en nabij 66 % (70% met Bayes) op, wat al een significante verbetering is. Echter de baseline is ook verschoven naar zo n 75 % door het samenvoegen van classen. Uit de resulterende boom, komt wel wederom naar voren dat het creëren van webpagina s een redelijke classifier is (Zie Figuur 2.4). 2.4.5 Conclusie Het internetgebruik is niet te classificeren met behulp van een beslissingsboom of het uitvoeren van het NaiveBayes algormitme. Na het samenvoegen van een aantal classen lijkt de internetduur uit het al dan niet creëren van webpagina s af te leiden te zijn. Dit is een logisch verband in onze ogen. 2.5 Classificatie drie (k3) We willen weten met welke attributen we het gebruikte operating system kunnen classificeren. 19

Figuur 2.4: Beslissingsboom ter classificatie van het internetgebruik in twee classen verdeelt De mogelijk waarden voor dit nominale attribuut zijn: Macintosh Win95 Windows DOS OS2 Unix NT Don t know 20

PC Unix VT100 Other 2.5.1 Preproccessing De meest voorkomende (default) waarde is Windows en deze komt ook in meer dan de helft van de dataset voor. Om een degelijke classificatie te maken hebben we dus een preprocessingstap toe moeten voegen. Deze bestaat uit de EqualLabelWeighting operator, gevolgd door de WeightedBootstrappingValidator operator. Hierdoor ontstaat een sample van de dataset, waarin alle classen voor een gelijk deel present zijn. De trainingset bestaat uit 70% van de totale dataset. 2.5.2 Mining Voor deze classificatie hebben we gekozen voor het Naive Bayes algoritme. Voor de eerste mining operatie geven we de volgende parameters mee: keep example set false laplace correction true 2.5.3 Bevindingen Uit de resultaten was op het oog nagenoeg niets af te leiden. 2.5.4 Validation Als validator wordt de standaard ClassificationPerformance gebruikt, waarbij gekeken wordt naar de accuracy en classification error. De resultaten zijn te vinden in Tabel 2.3. De totale accuracy van het model is een bedroevend lage score van 35.74 %. 2.5.5 Conclusie Het gevonden model helpt niet bij het classificeren van gebruikte besturingssystemen, aangezien de baseline 43% is en de accuraatheid van het model hier bijna 10% onder ligt. 2.6 Associatie regels We hebben eerst geprobeerd om met RapidMiner rules te genereren, maar blijkbaar doet RapidMiner dit op één of andere manier verkeerd. Zo genereerde RapidMiner bijvoorbeeld regels als Gender = Male Gender = F emale. Daarom hebben we een andere tool gebruikt voor het vinden van frequente item sets en de rules. Voor het genereren van de frequente item sets hebben gebruik gemaakt van een implementatie van het LCM2 [3] algoritme. 21

True: Macintosh Win95 Windows DOS OS2 Unix NT Dont Know Don t Know PC Unix Other VT100 class precision Macintosh 294 419 50 4 13 37 83 0 0 11 2 0 32.20% Win95 70 409 35 2 8 12 24 0 5 5 1 0 71.63% Windows 74 475 88 10 4 15 27 0 21 6 7 2 12.07% DOS 0 0 0 0 0 0 0 0 0 0 0 0 0.00% OS2 0 0 0 0 0 0 0 0 0 0 0 0 0.00% Unix 0 0 0 0 0 0 0 0 0 0 0 0 0.00% NT 0 0 0 0 0 0 0 0 0 0 0 0 0.00% Dont Know 0 0 0 0 0 0 0 0 0 0 0 0 0.00% Don t Know 0 0 0 0 0 0 0 0 0 0 0 0 0.00% PC Unix 0 0 0 0 0 0 0 0 0 0 0 0 0.00% Other 0 0 0 0 0 0 0 0 0 0 0 0 0.00% VT1 0 0 0 0 0 0 0 0 0 0 0 0 0.00% class recall 67.12% 31.39% 50.87% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% Tabel 2.3: Accuracy resultaten voor onderzoeksvraag k3 22

2.6.1 Preprocessing Omdat niet alle attributen van het type boolean zijn, zetten we eerst alle attributen om naar boolean attributen. Als een attribuut met de naam a, de mogelijke waarden v 1, v 2,..., v n heeft dan wordt dit attribuut vervangen door n boolean attributen met de namen a = v 1, a = v 2,..., a = v n. Zo wordt bijvoorbeeld het attribuut Gender omgezet naar de twee attributen Gender = Male en Gender = Female. Omdat we voor alle drie onderzoeksvragen m.b.t. associaties willen onderzoeken, of een bepaald attribuut a invloed heeft op de waarde van andere atributen, zijn we dus opzoek naar associaties van het type A B met a A. Een probleem bij het vinden van regels die af zijn te leiden van bijvoorbeeld de sexuele voorkeur, is dat het overgrote deel van de ondervraagden hetero als sexuele voorkeur hebben. Zo zijn er 8869 hetero s tegenover 371 gay males (zie Figuur 1.9). Daarom zal bij het zoeken naar frequent item sets een minimal support van ten hoogste 371 moeten zijn om ook regels te kunnen vinden voor homosexuelen. Wanneer we dat doen zullen we echter ook veel meer frequente item sets krijgen voor heterosexuelen, omdat ten opzichte van 8869 een minimal support van 371 weer heel laag is. Het resultaat is dan een grote hoeveelheid frequent item sets die zelfs zo groot is dat de association rule generator deze niet aankan en crashed. Dit probleem hebben we opgelost door voor iedere classe van sexuele voorkeur ( hetero, gay male en lesbian ) eerst de dataset te filteren zodat we alleen nog maar records van die classe overhouden. Vervolgens zoeken we voor die gefilterde dataset de frequent item sets, waarbij we een minimal support kiezen die gelijk is aan 50% van de grootte van de classe. Met deze frequent item sets worden de regels gegenereerd. We hoeven slechts de gefilterde dataset te gebruiken voor het vinden van associaties voor een classe a, omdat regels A B met a A alleen gegenereerd worden met regels waarin a voor komt. De confidence van een regel wordt berekend volgens: conf(a B) = supp(a B) sup(a) (2.1) Bij deze berekening moet dus het support van de itemsets A B en A bekend zijn en in alle twee van deze itemset zit a. 2.6.2 Postprocessing Om te kijken hoe goed onze gevonden association-rules zijn, hebben we aan postprocessing gedaan. We hebben een script gemaakt om de lift uit te rekenen van de association-rules betreffende de sexuele voorkeuren van hetero, gay male en lesbians, van de rassen white, black en asian en van de geslachten male en female. 2.6.3 Resultaten Voor de verschillende association-rules hebben we de dus lift bepaald om te kijken hoe goed de gevonden regels zijn. Deze subsectie geeft voor iedere associatie-onderzoeksvraag de gevonden regels met de hoogste lift. 23

(a1) Welke invloed heeft het geslacht op andere attributen? Male: Primary Place of WWW Access = Home AND Gender=Male AND Major Geographical Location = USA Who Pays for Access Self AND Primary Language = English (sup=2045, conf=0.912539) (lift=1.3622720738443) Primary Place of WWW Access = Home AND Gender=Male AND Race = White Who Pays for Access Self AND Primary Language = English (sup=2027, conf=0.907341) (lift=1.3545123066017) Primary Place of WWW Access = Home AND Gender=Male AND Race = White AND Primary Language = English Who Pays for Access Self (sup=2027, conf=0.934963) (lift=1.3189959531054) Primary Place of WWW Access = Home AND Gender=Male AND Major Geographical Location = USA AND Primary Language = English Who Pays for Access Self (sup=2045, conf=0.933364) (lift=1.3167401691556) Female: Gender=Female AND Who Pays for Access Self AND Registered to Vote = Yes AND Primary Language = English Major Geographical Location = USA (sup=2032, conf=0.933395) (lift=1.1086670575793) Gender=Female AND Who Pays for Access Self AND Registered to Vote = Yes Major Geographical Location = USA AND Primary Language = English (sup=2032, conf=0.91408) (lift=1.1074578257222) Gender=Female AND Who Pays for Access Self AND Sexual Preference = Heterosexual AND Primary Language = English Major Geographical Location = USA (sup=2040, conf=0.931932) (lift=1.1069293367803) Gender=Female AND Who Pays for Access Self AND Primary Language = English Major Geographical Location = USA (sup=2325, conf=0.93149) (lift=1.1064043384254) (a2) Welke invloed heeft de sexuele voorkeur op andere attributen? Hetero: Who Pays for Access Self AND Registered to Vote = Yes AND Disability Not Impaired Race = White (sup=4372, conf=0.912735) (lift=1.0203094410058) Web Ordering = Yes AND Registered to Vote = Yes AND Disability Not Impaired Race = White (sup=4210, conf=0.91244) (lift=1.0199796724694) Who Pays for Access Self AND Registered to Vote = Yes Race = White (sup=4804, conf=0.910193) (lift=1.0174678422953) Web Ordering = Yes AND Registered to Vote = Yes Race = White (sup=4583, conf=0.909506) (lift=1.0166998728562) Gay male: Web Ordering = Yes AND Disability Not Impaired Race = White AND Gender=Male (sup=256, conf=0.924188) (lift=1.0296508948949) Web Ordering = Yes AND Who Pays for Access Self AND Disability Not Impaired Race = White AND Gender=Male (sup=219, conf=0.924051) (lift=1.0294982612613) Web Ordering = Yes Race = White AND Gender=Male (sup=277, conf=0.923333) (lift=1.0286983273273) Web Ordering = Yes AND Who Pays for Access Self Race = White AND Gender=Male (sup=240, conf=0.923077) (lift=1.0284131141141) Lesbian: Marital Status = Other AND Race = White Disability Not Impaired AND Registered to Vote = Yes AND Gender=Female (sup=50, conf=0.925926) (lift=1.1054422653061) Web Ordering = Yes AND Disability Not Impaired AND Gender=Female Race = White AND Registered to Vote = Yes (sup=71, conf=0.934211) (lift=1.1040675454545) Falsification of Information = Never AND Web Ordering = Yes Gender=Female AND Race = White (lift=1.1037735849057) Falsification of Information = Never AND Web Ordering = Yes AND Gender=Female Race = White (sup=50, conf=1) (lift=1.1037735849057) 24

(a3) Welke invloed heeft het ras op andere attributen? White: Who Pays for Access Self AND Registered to Vote = Yes AND Primary Language = English Major Geographical Location = USA (sup=4825, conf=0.908492) (lift=1.0748356056338) Web Page Creation = No AND Primary Language = English Major Geographical Location = USA (sup=4238, conf=0.908078) (lift=1.0743458028169) Who Pays for Access Self AND Primary Language = English Major Geographical Location = USA (sup=5545, conf=0.907529) (lift=1.0736962816901) Who Pays for Access Self AND Sexual Preference = Heterosexual AND Primary Language = English Major Geographical Location = USA (sup=4800, conf=0.906516) (lift=1.0724978028169) Black: Primary Place of WWW Access = Home Who Pays for Access Self AND Major Geographical Location = USA (sup=90, conf=0.947368) (lift=1.3398490285714) Primary Place of WWW Access = Home Who Pays for Access Self (sup=91, conf=0.957895) (lift=1.3263161538462) Primary Place of WWW Access = Home AND Major Geographical Location = USA Who Pays for Access Self (sup=90, conf=0.957447) (lift=1.3256958461538) Primary Place of WWW Access = Home AND Primary Language = English Who Pays for Access Self (sup=90, conf=0.957447) (lift=1.3256958461538) Asian: Web Ordering = Yes Disability Not Impaired (sup=158, conf=0.923977) (lift=1.0133941290323) Gender=Male Disability Not Impaired (sup=179, conf=0.92268) (lift=1.0119716129032) Primary Language = English Disability Not Impaired (sup=183, conf=0.919598) (lift=1.0085913548387) Major Geographical Location = USA Disability Not Impaired (sup=171, conf=0.919355) (lift=1.0083248387097) 2.6.4 Conclusie Zoals te zien is, zijn de hoogst gevonden lifts niet hoger dan 1.37. Hieruit kunnen we concluderen dat de gemaakte associatie regels niet heel erg nuttig zijn. We kunnen dus niet echt regels vinden die voor een specifieke groep van geslacht, sexuele voorkeur of ras gelden. 25

Bibliografie [1] GVU, GVU s General Information Questionnaire Form, http://www.cc.gatech.edu/gvu/user surveys/survey-1997-10/questions/general.html [2] Rapid Miner, Rapid Miner website, http://rapid-i.com/ [3] LCM2, Frequent Itemset Mining Implementations Repository, http://fimi.cs.helsinki.fi/src/ 26