Big data analytics johan quist

134
(Big) Data Analyse Johan Quist 23 maart 2015

Transcript of Big data analytics johan quist

Page 1: Big data analytics johan quist

(Big) Data Analyse

Johan Quist23 maart 2015

Page 2: Big data analytics johan quist

Inhoud1 Big data en analytics; waarom big data de vraag naar analytics vergroot

2 Big data, BI en analytics; van datawarehouse naar datamining

3 Soorten Statistische analyse;– univariate analyse (samenvatting statistiek)– bivariate analyse (oa regressie)– multivariate analyse (supervised en

unsupervised)Big Data sessie 23 maart 2015

Page 3: Big data analytics johan quist

Deel 1 big data en analyticsDefinitie big data:"Er bestaat geen exacte definitie van big data (...) De term ‘big data’ verwijst naar dingen die je op een grote schaal kunt  doen en op kleinere schaal niet mogelijk zijn, en waarmee je  nieuwe inzichten verkrijgt of nieuwe vormen  van economische waarde creëert op een manier die invloed heeft op (..) markten, organisaties en de relatie  tussen burgers en overheden”.

"data die niet meer in een normale database past"   (door grootte, structuur en snelheid)  Boek: Mayer/Cukier de big data revolutie

Big Data sessie 23 maart 2015

Page 4: Big data analytics johan quist

Definitie de 3Vs

• Volume : veel, heel veel• Variety : gevarieeerd, lees

ongestructureerd• Velocity : hoge omloopsnelheid (denk aan

tweets en facebookgegevens)

Big Data sessie 23 maart 2015

Page 5: Big data analytics johan quist

Big data en analytics

 • Hardware  • Softwarecapaciteiten(statistiek/analytics) 

-> twee nieuwe uitdagingen

Big Data sessie 23 maart 2015

Twee componenten  

Page 6: Big data analytics johan quist

Analytics• Analyses op data om tot inzicht te

komen

Andere namen• Data analytics, Datamining,

Statistical learning, Machine learning, Data Science

Big Data sessie 23 maart 2015

Page 7: Big data analytics johan quist

Big data en Analytics

 om hier grip op te krijgen -> analytics

Big Data sessie 23 maart 2015

Door Big data krijgen organisaties beschikking over zeer veel data

Page 8: Big data analytics johan quist

Analytics en big data/dwh

 ook op data in datawarehouses

Big Data sessie 23 maart 2015

Analytics mogelijk op alle data

Page 9: Big data analytics johan quist

Business cases big dataTypische branchespecifieke doelstellingen

Banken:             lening acceptatie                           identificeren verdachte transacties                           beurskoersvoorspellingVerzekeraars:   polisacceptatie                           detectie valse claims                           risicoanalyse                           premiebepaling  Retail:               basket analyse 

                optimaliseren winkelindeling

Big Data sessie 23 maart 2015

Page 10: Big data analytics johan quist

Business cases big data (vervolg)

Telecom: churn analyse op basis v. belgedrag

identificeren fraudeursUitgevers, reclamebureau’s:  modelleren Web surfgedrag media strategie bepaling oplage voorspelling publishing on demandOverheid:  daderprofilering (politie), detectie belastingfraudeBig Data sessie 23 maart 2015

Page 11: Big data analytics johan quist

Big data en traditionele data• Big data kan in combinatie met traditionele data een  completer  beeld geven 

• Vervangen of aanvulling van relationele databases? Aanvulling! salarisadministratie doe je niet met Hadoop

• de puur praktische zaken waar mensen relationele  databases voor gebruiken.  Dat is niet waar de kracht ligt van Hadoop.

• Big data biedt kansen voor BI-ers

Big Data sessie 23 maart 2015

Page 12: Big data analytics johan quist

2.0 ‘term’ ook bij big data• Internet 1.0 (bedrijven gaan op internet)• -> 2.0 (gaan internet gebruiken in

strategie)

• Big Data 1.0 (bedrijven leren omgaan met BD)

• -> 2.0 (bedrijven gaan Big Data gebruiken om dingen beter te gaan den of nieuwe dingen te gaan doen.

Data Science for business Provost/FawcettBig Data sessie 23 maart 2015

Page 13: Big data analytics johan quist

Deel 2 Big data, BI en analyticsGewenst is dat de twee werelden bijeen worden gebracht.  ‘best of both worlds’ De plek van Big Data in de BI architectuur is eigenlijk niet anders dandie van gestructureerde data.  Het enige verschil is dat je niet de luxe hebt om de traditionele implementatie te volgen. BI-ers zullen aan de big data moeten.“ Klanten zullen  dashboards bv willen verrijken met bv het aantal  tweets,  facebookvermeldingen. Het meten van allerlei bedrijfs-processen zal steeds meer gepaard gaan met big data.BI-ers moeten hier op in springen.”

Big Data sessie 23 maart 2015

Page 14: Big data analytics johan quist

DBDatawarehouse

Datamarts

Data Informatie kennis

Werkgebied BIDB

(Huidig) Werkgebied BI = data enginering= omzetten van data in informatie, zodat anderen er informatie uit kunnen halen

Data enginering en data analyse

Big Data sessie 23 maart 2015

Page 15: Big data analytics johan quist

Opkomst Big Data

Werkgebied BI

Data Informatie kennis

‘Big Data’

Uitdaging 1: Big Data verwerkingstechnieken

Grip op big data

Uitdaging 2:Data analyse

DBDatawarehouse

Datamarts

DB

Big Data sessie 23 maart 2015

Page 16: Big data analytics johan quist

Kennis-Pyramide

Big Data sessie 23 maart 2015

Data Enginering: data omzetten om informatie te verkrijgen (‘klassieke’ BI)

Data Analytics: statistische analyse gebruiken om kennis te verkrijgen

Page 17: Big data analytics johan quist

Data driven decision making

Big Data sessie 23 maart 2015

Data Science for business Provost/Fawcett

Page 18: Big data analytics johan quist

Grip op (big) dataVerschillende namen voor ongeveer het zelfde:• Data analytics• Datamining• KDD knowlegde discovery from data• Analytical learning• Machine Learning• Data scienceVan informatie naar kennis

What’s in a name: Big data is nu sexy, datamining niet, over 2 jaar ….

Big Data sessie 23 maart 2015

Page 19: Big data analytics johan quist

Grip op (big) data

Uitdaging 1 Bigdata verwerkingstechnieken:• Hadoop• Map Reduce• NoSQL • Inmemory• Virtualisatie etc-> Andere cursus

Big Data sessie 23 maart 2015

Page 20: Big data analytics johan quist

Opkomst Big Data

Werkgebied BI

Data Informatie kennis

‘Big Data’

Uitdaging 2:Data analyse

DBData

warehousedatamarts

DB

Datamining engineData

marts

Knowlegde base

Big Data sessie 23 maart 2015

Page 21: Big data analytics johan quist

DWH en analytics

Big Data sessie 23 maart 2015

Page 22: Big data analytics johan quist

Ingredienten statistical learning

Machine Learning/Pattern

Recognition

Statistics/AI

Statistical Learning

Database systems

Big Data sessie 23 maart 2015

Page 23: Big data analytics johan quist

De driehoek van de BI-er

DS

Domein kennis

ScienceStatistics, Analytics

Big Data sessie 23 maart 2015

EngineeringDWH, Hadoop Java

Page 24: Big data analytics johan quist

Grip op alle data

• Grip op data; niet alleen big data

• Om big data betekenisvol te krijgen is analyse nodig. Technieken werken ook bij ‘gewone data’

Big Data sessie 23 maart 2015

Page 25: Big data analytics johan quist

Van datawarehouse naar datamining

Werk vooraf aan analyse

• Omgaan met missende waarden• Omgaan met duplicaten• Data voorbehandelen• Aggregatie/integratie

Big Data sessie 23 maart 2015

Page 26: Big data analytics johan quist

Vb. Omgaan met missende waarden

Strategiën:1. Negeren2. Handmatig invullen3. Vervangen door constante (bv

‘Onbekend’)4. Vervangen door gemiddelde5. Vervangen door gemiddelde van zelfde

klasse6. Vervangen door meest waarschijnlijke

waardeDatamining concepts and techniquesBig Data sessie 23 maart 2015

Page 27: Big data analytics johan quist

Data preprocessing

Werk dat wij (BI-ers) doen! Zijn wij goed in!!

Data op orde krijgen is vaak 50% van het werk bij data analyse

Big Data sessie 23 maart 2015

Page 28: Big data analytics johan quist

CRISP-DM

Breekt het proces van datamining in zes fases.

Big Data sessie 23 maart 2015

CRoss Industry Standard Process for Data Mining

Page 29: Big data analytics johan quist

Fases in datamining-project

• Business understanding• Data understanding• Data preparation• Modeling• Evaluation• Deployment

Big Data sessie 23 maart 2015

Page 30: Big data analytics johan quist

studiebronnencursus• Erasmus academie: masterclass grip op big data• Coursera: introduction to data science (gratis)

Boeken o.a.• Intro. to statistical learning with applications in R

by James e.a.• Data science for Business by Provost/Fawcett• Datamining, concepts and techniques by

Han/Kamber• Vele, vele anderen (gratis op het internet)

Big Data sessie 23 maart 2015

Page 31: Big data analytics johan quist

Mijn achtergrond

• Ik vind statistiek leuk en interessant• Lange tijd niets mee gedaan (veel vergeten)• Half jaar geleden weer begonnen• Ik houd van puzzelen

Big Data sessie 23 maart 2015

Page 32: Big data analytics johan quist

Deel 3 Overzicht statistische analyse

• Overzicht van verschillende methodes

• No free lunch! ->Afwegen welke methode het meest geschikt is

Big Data sessie 23 maart 2015

Page 33: Big data analytics johan quist

METHODEN

• Er bestaan heel veel methoden voor analyse van data

• Sommige heel eenvoudig• Sommige heel ingewikkeld • Het is niet zo dat er voor ieder probleem slechts

1 juiste methode bestaat. • Er bestaat geen methode die voor alle

problemen de oplossing is. Bovendien, voordat er gedacht kan worden over “de juiste methode”: Zonder goede vraag is het geven van een goed antwoord onmogelijk.

• Maar kennis van analytische methoden kan helpen de juiste vraag te stellen

Big Data sessie 23 maart 2015

Page 34: Big data analytics johan quist

Door meer te weten over analytische methoden, zul je beter in staat zijn “goede” vragen te formuleren.

Het is leuk!

Big Data sessie 23 maart 2015

Page 35: Big data analytics johan quist

Doel: weg vinden in het woudKunnen plaatsen van o.a. volgende termen

Univariaat bivariaat multivariaat supervised unsupervised trainingset testset statistiek gemiddelde standaardeviatie boxplot regressie classificatie desision trees neurale netwerken ensembles overfitting pruning Support Vector Machines clusteranalyse dimension reduction SPSS R accuracy precision recall nearest neightbor Bayes Discriminant Analyse etc.

Big Data sessie 23 maart 2015

Page 36: Big data analytics johan quist

Historie statistische analyse

Big Data sessie 23 maart 2015

jaar persoon ontwikkelingBegin 19e eeuw

GaussLegendre

Kleinste kwadraatLineaire regressie

1936 Fischer Lineaire discriminant analyse

+- 1940 diversen Logistieke regressie

1980 Opkomst niet lineaire methoden (dankzij computercapaciteit)Machine learning

1980 Opkomst DWH’s;  

2010 Verdere toename hoeveelheid dataBig dataVerdere opkomst freeware R(democratisering van de data-analyse)

Page 37: Big data analytics johan quist

RProgrammeertaal voor statistische analyseGratis :http:/www.r-project.org/Veel tutorialsGebruikers delen hun code

Big Data sessie 23 maart 2015

Page 38: Big data analytics johan quist

Werken met R R in combinatie met R studio

Integraties R en andere tools (bv Tableau)

Taal/syntax redelijk ingewikkeld, zal wel makkelijker worden (democratiseren analytics)

Kennis van de algoritmes zal noodzakelijk blijven!

Big Data sessie 23 maart 2015

Page 39: Big data analytics johan quist

Big Data sessie 23 maart 2015

Werken met R• Packages beschikbaar• Data eenvoudig te laden• Printmogelijkheden (plotten)

Page 40: Big data analytics johan quist

R en big dataHadoop; packages RHadoop, Rhipe, SparkR 

In-memory; package h2o  MongoDB; packages rmongodb, Rmongo

http://www.rdatamining.com/big-data/r-hadoop-setup-guide

Big Data sessie 23 maart 2015

Page 41: Big data analytics johan quist

Big Data sessie 23 maart 2015

Page 42: Big data analytics johan quist

Soorten analyse

• Univariaat een enkele kansvariabele beschrijvende statistiek• Bivariaat twee kansvariabele verbanden tussen twee• Multivariaat meerdere kansvariabele verbanden tussen meerdere variabelen

Big Data sessie 23 maart 2015

Page 43: Big data analytics johan quist

Univariaat(Samenvatting statistiek)• Gemiddelde (meest gebruikte)• Mediaan• Standaarddeviatie• Normaalverdeling• Variantie• Boxplot

Big Data sessie 23 maart 2015

Page 44: Big data analytics johan quist

Gemiddelde, Mediaan, Modus• Gemiddelde de meest gebruikte meetwaarde

is erg gevoelig voor uitschieters. • Mediaan waarde van middelste, centrummaat• Modus waarde die meest voorkomt

Big Data sessie 23 maart 2015

Page 45: Big data analytics johan quist

Range, Variantie• Range is het verschil tussen de max. en de min.• De variantie / standaardeviatie; meetwaarde om

spreiding weer te geven.

 

Big Data sessie 23 maart 2015

Page 46: Big data analytics johan quist

Normaalverdeling

meest voorkomende continue verdeling

Big Data sessie 23 maart 2015

Of Gauss-verdeling door Carl Friedrich Gauss (+- 1920)

Page 47: Big data analytics johan quist

Visualisatie; box plot• Box Plots

– Uitgevonden door J. Tukey– Manier om verdeling in data weer te

geven – Following figure shows the basic part of a

box plot

outlier

10th percentile

25th percentile

75th percentile

50th percentile

10th percentile

Big Data sessie 23 maart 2015

Page 48: Big data analytics johan quist

R studio

Schermen opbouw R studio• Source en save• Console• Environment/History• Files/Plots/Package/Help/viewer

Big Data sessie 23 maart 2015

Page 49: Big data analytics johan quist

R Voorbeeld

Big Data sessie 23 maart 2015

Voorbeeld 1

Page 50: Big data analytics johan quist

Bivariate analyse• Twee dimensionale data• Univariaat: beschrijvend Bivariaat:

verklarend

• Visualisatie: scatterplot

Big Data sessie 23 maart 2015

Page 51: Big data analytics johan quist

RegressieStatistische techniek om samenhang tussen gegevens weer te geven.

Big Data sessie 23 maart 2015

Voor het eerst gebruikt door Francis Galton in +- 1870

Page 52: Big data analytics johan quist

Regressie en correlatieBij correlatie vergelijkt men de variaties van twee variabelen gemeten op interval- of ratio-niveau. De correlatiecoëfficiënt (R) is een maat voor het gezamenlijk variëren van twee variabelen

Bij enkelvoudige regressieanalyse stelt de onderzoeker eerst vast welke variabele afhankelijk is en welke onafhankelijk. Regressieanalyse veronderstelt dus causaliteit tussen de variabelen.

Big Data sessie 23 maart 2015

Page 53: Big data analytics johan quist

RegressieSamenhang wordt weergegeven in een functie.Enkelvoudig: Y = ax + bMeervoudig: Y = a1 x1 + a2 x2 + an xn + b

Het gaat om correlaties/verbanden weergegeven van 0 (geen verband tussen X en Y) tot1 (volledig verband)

Big Data sessie 23 maart 2015

Page 54: Big data analytics johan quist

Berekeningswijze Regressie

Gauss berekende er de baan van de pas ontdekte planetoïde Ceres mee

Big Data sessie 23 maart 2015

Kleinste kwadraatmethodeOntdekt door Gauss en Legendre (tegelijkertijd)

Page 55: Big data analytics johan quist

R Voorbeeld: regressie

Big Data sessie 23 maart 2015

Page 56: Big data analytics johan quist

Verschillende types attributen• Nominaal

Voorbeelden: ID nummers, oogkleur, codes• Ordinaal

Voorbeelden: rankings (b.v. smaak van chips op schaal van 1-10), graden, hoogte in {groot, medium, kort}

• IntervalVoorbeelden: kalender data, temperatuur in Celsius of Fahrenheit.

• RatioVoorbeelden: temperatuur in Kelvin, lengte, tijd, aantallen

Big Data sessie 23 maart 2015

Page 57: Big data analytics johan quist

Regressie bij dichotome variabelen

Big Data sessie 23 maart 2015

Wat als de verklarende variabelen dichotoom is?

Bijvoorbeeld: hangt bloeddruk af van het geslacht?Geen probleem. Eventueel dummy-waardes nodig

Kleur: rood-geel-blauw (dummy-waardes per kleur)

Nr Kleur Rood Geel blauw

1 Blauw 0 0 1

2 Rood 1 0 0

3 geel 0 1 0

Page 58: Big data analytics johan quist

Regressie bij dichotome variabelen

Big Data sessie 23 maart 2015

Continu: okDichotoom: okNominaal met meer dan twee categorieën: maak dummy’s (hulpvariabelen)Ordinaal: als er sprake lijkt van een lineaire trend: ok, anders dummy’s

Wat als verklaarde variabele dichotoom is:Dan lineaire regressie niet mogelijk, wel logistieke regressie (komt verderop)

Page 59: Big data analytics johan quist

Multivariate analyseRelaties tussen meerdere variabelen opsporen.

Big Data sessie 23 maart 2015

Twee groepen• Supervised learning • Unsupervised learning

Page 60: Big data analytics johan quist

Wat is Supervised learning?Er is sprake van een afhankelijke, te voorspellen variabele

Aan de hand van gegevens zoeken we een functie/algoritme die de gegevens (onafhankelijke variabelen) omzet naar een uitkomst “klasse”

Bv. welke klanten zullen niet in staat zijn hun lening af te lossen. (kijken naar bv leeftijd, geslacht, afkomst)

Y zo goed mogelijk schatten aan de hand van X

Big Data sessie 23 maart 2015

Page 61: Big data analytics johan quist

Test en trainingData wordt gesplitst in een • Training set• Test set

• Trainingset wordt gebruikt om functie te vinden

• Testset wordt gebruikt om vast te stellen hoe goed de functie het doet.

Big Data sessie 23 maart 2015

Page 62: Big data analytics johan quist

Test en training

Apply Model

Induction

Deduction

Learn Model

Model

Tid Attrib1 Attrib2 Attrib3 Class

1 Yes Large 125K No

2 No Medium 100K No

3 No Small 70K No

4 Yes Medium 120K No

5 No Large 95K Yes

6 No Medium 60K No

7 Yes Large 220K No

8 No Small 85K Yes

9 No Medium 75K No

10 No Small 90K Yes 10

Tid Attrib1 Attrib2 Attrib3 Class

11 No Small 55K ?

12 Yes Medium 80K ?

13 Yes Large 110K ?

14 No Small 95K ?

15 No Large 67K ? 10

Test Set

Learningalgorithm

Training Set

Big Data sessie 23 maart 2015

Page 63: Big data analytics johan quist

Wat is Unsupervised Learning?• Geen sprake van afhankelijke, te

voorspellen waarde

• We zoeken naar structuren/verbanden

• Bv. hoe (in welke groepen) kunnen we onze klanten onderverdelen

Big Data sessie 23 maart 2015

Page 64: Big data analytics johan quist

Wat is Unsupervised learning? 2• Proberen structuur te brengen in

ogenschijnlijk ongestructureerde gegevens

• Kan als aanzet dienen bij opstellen van verdere onderzoeksvragen.

• Maar dat hoeft niet

(voorbeelden later)

Big Data sessie 23 maart 2015

Page 65: Big data analytics johan quist

Supervised LearningRegressie voor meer variabelenMultiple regressie Y = a1 x1 + a2 x2 + an xn + b

Confounder: wat is de (echt) bepalende factor?

Big Data sessie 23 maart 2015

Page 66: Big data analytics johan quist

relatie studieuren en cijfer

Big Data sessie 23 maart 2015

Linear Regr ession

2, 50 5, 00 7, 50 10, 00 12, 50

s tu d ie u re n

5, 00

6, 00

7, 00

8, 00

9, 00c

ijfe

r

ci j f er = 7, 76 + - 0, 09 * st udi eurenR- Square = 0, 09

Hoe langer je studeert hoe lager je cijfer ??

Page 67: Big data analytics johan quist

Vooropleiding meegenomen

Big Data sessie 23 maart 2015

hoog laag

v o o ro p le id in g

2, 50 5, 00 7, 50 10, 00 12, 50

s tu d ie u re n

0, 00

4, 00

8, 00

12, 00

cij

fer

Page 68: Big data analytics johan quist

Confounder

Big Data sessie 23 maart 2015

• In beide groepen, gevormd op grond van de vooropleiding, is een positief effect van studie-uren op het cijfer

• Dit effect is in beide groepen ongeveer gelijk

• Als we geen rekening houden met de vooropleiding, schatten we het effect van studie-uren op het cijfer totaal verkeerd

• Vooropleiding wordt een confounder genoemd

Page 69: Big data analytics johan quist

Lineaire Regressie mogelijk?Regressie gaat uit van interval of ratio-nivoDe afhankelijke variabelen zijn continue van aard. Ook wel kwantitatieve analyse genoemd

Wat als afhankelijke variabelen nominaal of ordinaal zijn?Lineaire Regressie is dan niet mogelijk. Wel mogelijk zijn kwalitatieve analysemethodes

Big Data sessie 23 maart 2015

Page 70: Big data analytics johan quist

Logistieke regressieAlternatief: Logistieke regressieRegressie geschikt voor variabelen die dichotoom van aard zijn

niet de dichotome uitkomst zelf wordt gemodelleerd, maar de kans op die uitkomst. http://www.ru.nl/socialewetenschappen/rtog/tips/onderdelen/logistische/

Big Data sessie 23 maart 2015

Page 71: Big data analytics johan quist

R Voorbeeld logistieke regressie

Big Data sessie 23 maart 2015

Page 72: Big data analytics johan quist

Classificatieindelen of het  van objecten, verschijnselen of processen in groepen op grond van overeenkomsten of verwandschap in eigenschappen of kenmerken

Waarden zijn niet kwantitatief, zoals bij regressie

Big Data sessie 23 maart 2015

Page 73: Big data analytics johan quist

Voorbeelden bij classificatie• Zegt een klant zijn abonnement op?• Wordt er gefraudeerd?• Krijgt een schip een ongeluk?

Hoe classificeren we de opzeggers, fraudeurs, zinkende schepen?

Big Data sessie 23 maart 2015

Page 74: Big data analytics johan quist

Classificatie technieken• Decision Tree methoden• Ensembles • Nearest neigthbors• Rule-based methoden• Discriminant analyse• Neurale netwerken• Naïve Bayes and Bayesian Belief Networks• Support Vector Machines

Big Data sessie 23 maart 2015

Page 75: Big data analytics johan quist

Vergelijken methodesRegressie is bv sterk vereenvoudigd, eenvoudig te schatten, eenvoudig te interpreteren, maar tamelijk beperkt.

Andere methodes zijn soms moeilijker te interpreteren maar voorspellen weer beter

Keuze bij methode:Trade-off tussen simplicity en accuracyInterpreteerbaarheid - Voorspelbaarheid

Big Data sessie 23 maart 2015

Page 76: Big data analytics johan quist

Interpreteerbaar - Flexibel

flexibiliteitlaag hoog

inte

rpre

trrba

arho

ogla

ag

Trees

Regressieanalyse

Bagging/boosting

Support vector machines

Big Data sessie 23 maart 2015

Page 77: Big data analytics johan quist

Model evaluatie

Big Data sessie 23 maart 2015

PREDICTED CLASS

ACTUALCLASS

C(i|j) Class=Yes Class=No

Class=Yes C(Yes|Yes) C(No|Yes)

Class=No C(Yes|No) C(No|No)

FNFPTNTPTNTP

dcbada

Accuracy

Page 78: Big data analytics johan quist

Beperkingen accuracyEr zijn bijvoorbeeld 2-klassen• aantal van klasse A = 9990• Aantal van klasse B = 10

Als een model altijd klasse A voorspelt, is de accuracy 9990/10000 = 99.9 %

-> Accuracy is misleidend omdat het model geen klasse B voorspelt (vb. Alle schepen zullen blijven drijven)

Big Data sessie 23 maart 2015

Page 79: Big data analytics johan quist

Andere maten

Big Data sessie 23 maart 2015

baa

caa

(r) Recall

(p)Precision

Precision: (aantal werkelijke positieven) /(totaal aantal voorspelde positieve)

Recall: (aantal werkelijke positieven) /(aantal werkelijke positieven + foute negatieven)

Page 80: Big data analytics johan quist

Decision trees• Intuïtief• Qua rekenwerk eenvoudig• Eenvoudig interpreteerbaar

• Voorbeeld: spelletje • Ik heb een beroemd persoon in mijn hoofd• Jullie mogen vragen stellen ik antwoord

alleen met ja of nee• Wat zijn goede vragen

Big Data sessie 23 maart 2015

Page 81: Big data analytics johan quist

Voorbeeld decision tree

Refund

MarSt

TaxInc

YESNO

NO

NO

Yes No

Married Single, Divorced

< 80K > 80K

Splitting Attributes

Training Data Model: Decision Tree

Tid Refund MaritalStatus

TaxableIncome Cheat

1 Yes Single 125K No

2 No Married 100K No

3 No Single 70K No

4 Yes Married 120K No

5 No Divorced 95K Yes

6 No Married 60K No

7 Yes Divorced 220K No

8 No Single 85K Yes

9 No Married 75K No

10 No Single 90K Yes10

categoric

al

categoric

al

contin

uous

class

Big Data sessie 23 maart 2015

Page 82: Big data analytics johan quist

Decision treesEssensiële vragen• Hoe bepalen welke variabelen we

gebruiken om te splitsen• Wanneer stoppen we met splitsen

Big Data sessie 23 maart 2015

Page 83: Big data analytics johan quist

Decision Trees: puurheid• Impurity• Maximale impurity: van iedere klasse

evenveel waarnemingen in een knoop• Minimale impurity: blad komt precies

overeen met een klasse

• We willen van impure naar pure • Maten voor impurity : bv. Gini,

EntropyBig Data sessie 23 maart 2015

Page 84: Big data analytics johan quist

Wanneer stoppen met opsplitsen

• Teveel splitsen : overfitting• werkt dan wel goed voor de

trainingsdata• Maar niet meer voor de testdata

• stopcriteria

Big Data sessie 23 maart 2015

Page 85: Big data analytics johan quist

R voorbeeld Decision trees

Big Data sessie 23 maart 2015

Page 86: Big data analytics johan quist

Ensembles van Decision Trees• Overfitting voorkomen -> snoeien• Gaat ook voorspelkracht achteruit

• Methode die goede voorspelkracht heeft en niet zo variabel

• -> essembles• Idee “wisdom of the crowds

Big Data sessie 23 maart 2015

Page 87: Big data analytics johan quist

Bootstrap• In plaats van 1 voorspeller , meerdere

• Bootstrap: meerdere steekproeven• Steekproeven gebruiken om tot

betere voorspeller te komen.

• Essemble van voorspellers

Big Data sessie 23 maart 2015

Page 88: Big data analytics johan quist

Bagging• Trek B bootstrap samples (bv 500)• Maak voor iedere sample een boom• Combineer de resultaten

• Dit heet Bagging (bootstrap aggragating)

• Andere methode: Random Forest

Big Data sessie 23 maart 2015

Page 89: Big data analytics johan quist

R voorbeeld random forest

Big Data sessie 23 maart 2015

Page 90: Big data analytics johan quist

Nearest neightbors• Basis idee

Als het er uit ziet als een eend en kwaakt als een eend dan is het waarschijnlijk een eend

Unknown record

Big Data sessie 23 maart 2015

Page 91: Big data analytics johan quist

Werkwijze– Bereken afstand tot andere training records

Euclidean distance – Identiceer k nearest neighbors – Label ze

Big Data sessie 23 maart 2015

Page 92: Big data analytics johan quist

Vgl lineair model en nearest neightbors

• k-NN classifiers zijn langszame leerders • NN- Modellen worden niet expliciet opgebouwd• Het linear model maakt veel assumpties over

de structuur van het probleem, maar is vrij stabiel

• Nearest neighbors is vrijwel assumptie-vrij,maar resultaten kunnen vrij instabiel zijn

• Beide methoden kunnen krachtiger zijn in verschillende settings door verschillende redenen

Big Data sessie 23 maart 2015

Page 93: Big data analytics johan quist

R voorbeeld nearest neightbors

Big Data sessie 23 maart 2015

Page 94: Big data analytics johan quist

Ruled based classificatie

R1: (Give Birth = no)  (Can Fly = yes)  BirdsR2: (Give Birth = no)  (Live in Water = yes)  FishesR3: (Give Birth = yes)  (Blood Type = warm)  MammalsR4: (Give Birth = no)  (Can Fly = no)  ReptilesR5: (Live in Water = sometimes)  Amphibians

Name Blood Type Give Birth Can Fly Live in Water Classhuman warm yes no no mammalspython cold no no no reptilessalmon cold no no yes fisheswhale warm yes no yes mammalsfrog cold no no sometimes amphibianskomodo cold no no no reptilesbat warm yes yes no mammalspigeon warm no yes no birdscat warm yes no no mammalsleopard shark cold yes no yes fishesturtle cold no no sometimes reptilespenguin warm no no sometimes birdsporcupine warm yes no no mammalseel cold no no yes fishessalamander cold no no sometimes amphibiansgila monster cold no no no reptilesplatypus warm no no no mammalsowl warm no yes no birdsdolphin warm yes no yes mammalseagle warm no yes no birds

Big Data sessie 23 maart 2015

Page 95: Big data analytics johan quist

Discriminant analyseUit 1936 ! Door R.A. Fischer

Een beslissingsprocedure om van een nieuwe waarneming uit te maken bij welk van een aantal gegeven sets waarnemingen deze het beste past. In een eenvoudig geval is van elk van twee populaties een steekproef bekend. Van een nieuwe waarneming is weliswaar bekend dat deze uit een van de beide populaties afkomstig is, maar niet uit welke.

Big Data sessie 23 maart 2015

Page 96: Big data analytics johan quist

Neurale netwerken

-het knooppunt: Te vergelijken met het neuron in een menselijk brein.

-de koppeling: Te vergelijken met de verbindingen tussen deze neuronen

http://gekkoquant.com/2012/05/26/neural-networks-with-r-simple-example/

Big Data sessie 23 maart 2015

Een neuraal netwerk is in enige mate gebaseerd op de organisatie van het menselijke brein en de manier waarop de hersenen leren. Er zijn twee belangrijke structuurelementen in het neurale netwerk:

Page 97: Big data analytics johan quist

Neurale netwerken

Qua prestaties blijkt uit de literatuur dat neurale netwerken een grotere voorspelkracht hebben dan de klassieke statistische methoden als regressie- en discriminantanalyse, vooral indien de onderliggende relaties niet-lineair zijn. De prestaties van meer-geavanceerde statistische methoden zijn echter vergelijkbaar met die van neurale netwerken.

Big Data sessie 23 maart 2015

Page 98: Big data analytics johan quist

R voorbeeld neuraal netwerk

Big Data sessie 23 maart 2015

Page 99: Big data analytics johan quist

Naïve Bayes

Gebaseerd op theorema van Bayes: kans op gebeurtenis uitgedrukt in voorwaardelijke kansen bij elk van de mogelijkheden

Big Data sessie 23 maart 2015

Page 100: Big data analytics johan quist

Idee Bayes Bayesiaanse statistiek <-> Frequentische statistiek

Bayes gedachte:kennis uit het verleden toe passen om statistische voorspellingen te maken. Krijg je eerlijkere voorspellingen, die niet blind zijn voor de wereld naast de statistiek, zoals dat bij de gewone (frequentistische) statistiek wel is.

Big Data sessie 23 maart 2015

Page 101: Big data analytics johan quist

Bayes theorema : een voorbeeld

Big Data sessie 23 maart 2015

Gegeven: – Een dokter weet dat meningitis in 50% van de

gevallen nekpijn veroorzaakt– De kans dat een patient meningitis heeft is

1/50,000– De kans dat een patient nekpijn heeft is 1/20

• Als een patient nekkramp heeft, wat is dan de kans dat hij meningitis heeft?

0002.020/150000/15.0

)()()|()|(

SPMPMSPSMP

Page 102: Big data analytics johan quist

Voorbeeld Naïve Bayes: reumatestP(Z)=0,01 (kans dat iemand de ziekte heeft)P(+|Z)= 0,70 (de kans op een positieve uitslag als de ziekte aanwezig is)P(-|niet Z)=0,80 (de kans op een negatieve uitslag als de ziekte afwezig is)

P(Z|+) = P(+|Z)P(Z) . = 0,70x0,01 . P(+|Z)P(Z)+P(+|niet Z)P(niet Z) 0,70x0,01+0,20x0,99 = 0,034

Dus zelfs bij een positieve uitslag van de test is de kans dat de onderzochte persoon de ziekte heeft maar iets meer dan drie procent.

Conclusie: De "reumatest" is in deze situatie nagenoeg onbruikbaar.

Big Data sessie 23 maart 2015

Page 103: Big data analytics johan quist

Naïve Bayes - samenvatting• Robuust mbt afwijkende punten• Ontbrekende waarden zijn eenvoudig op te

vangen• Maakt sterke veronderstellingen:

Onafhankelijkheid, Continue data met normale distributie(preprocessing vaak noodzakelijk)

Big Data sessie 23 maart 2015

Page 104: Big data analytics johan quist

Voorbeeld Bayes

Big Data sessie 23 maart 2015

Page 105: Big data analytics johan quist

Support Vector Machines• Bedacht in jaren 60 (Vapnik)

• Methode van data classificeren• Binair classificeren in een

vectorruimte

Big Data sessie 23 maart 2015

Page 106: Big data analytics johan quist

Support Vector Machines

Big Data sessie 23 maart 2015

Doel : scheidslijn vinden om data te scheiden

Page 107: Big data analytics johan quist

Support Vector Machines

Een mogelijkheidBig Data sessie 23 maart 2015

B1

Page 108: Big data analytics johan quist

Support Vector Machines

Big Data sessie 23 maart 2015

B2

Een andere mogelijkheid

Page 109: Big data analytics johan quist

Support Vector Machines

Welke is beter? B1 or B2?Hoe definieer je wat beter is?

Big Data sessie 23 maart 2015

B1

B2

Page 110: Big data analytics johan quist

Support Vector Machines

Support Vectors: Punten die door de ‘dikke lijn’geraakt worden

Big Data sessie 23 maart 2015

Page 111: Big data analytics johan quist

Unsupervised LearningGeen sprake van afhankelijke, te voorspellen waarde. We zoeken naar structuren/verbanden. Geen voorspellingen. We zoeken bijvoorbeeld naar gelijksoortige groepen.

Voorbeelden:• Clusteranalyse• Dimensie reductie

Big Data sessie 23 maart 2015

Page 112: Big data analytics johan quist

Clusteranalyse

Observaties in “homogene” groepen indelen

Zoek naar clusters van waarnemingen die gelijksoortig zijn en interpreteer de clusters door te kijken naar de verschillen/overeenkomsten m.b.t. geobserveerde variabele waarden in de verschillende clusters.

Big Data sessie 23 maart 2015

Page 113: Big data analytics johan quist

Clusteranalyse

Big Data sessie 23 maart 2015

Soorten:• Hierarchisch• K-means

Page 114: Big data analytics johan quist

Hierarchische Cluster Analyse• Beschouw iedere waarneming als een cluster• Bereken de afstanden tussen alle clusters• Voeg clusters die het dichts bij elkaar liggen

samen• Ga door tot er één cluster over is (of een van te

voren bepaald aantal)

Er zijn verschillende maten om de afstanden te bepalen- Euclidisch, Minkowski, Manhattan, Cosine en vele andere

Big Data sessie 23 maart 2015

Page 115: Big data analytics johan quist

Hierarchische clusering

Big Data sessie 23 maart 2015

p4 p1

p3

p2

p4p1 p2 p3

Traditional Hierarchical Clustering Traditional Dendrogram

Page 116: Big data analytics johan quist

K-means

• Bij hierarchische clustering moeten de afstanden tussen alle punten berekend worden

• Kan snel een probleem worden• Partieel clusteren is hiervoor een oplossing:

K-means

Big Data sessie 23 maart 2015

Page 117: Big data analytics johan quist

K-means• Ieder cluster heeft een centroide

(gemiddeld punt in een cluster• Idee: voeg waarnemingen toe aan het

cluster wiens centroide het dichtst bij zit• Maar centroide hangt af van de punten in

het cluster

Big Data sessie 23 maart 2015

Page 118: Big data analytics johan quist

Clustering: K-meansAlgoritme1. Maak k clusters (wijs punten bijvoorbeeld

willekeurig toe aan 1 van de k clusters2. Bereken voor ieder punt de afstanden tot

de k cluster centroides. Wijs punten toe aan dichtstbijzijnde cluster

3. Je hebt nu nieuwe clusters. Bereken daar weer de centroides bij en ga terug naar stap 2. Herhaal tot er niets meer veranderd.

Big Data sessie 23 maart 2015

Page 119: Big data analytics johan quist

Cluster analyse: aantal clusters• Hoe bepalen we hoeveel clusters we zoeken?• Bij hierarchische clustering kun je het hele

dendogram bekijken en daarop je keue baseren• Bij K-means moet je aangeven hoeveel clusters

• Kies de maat van de ‘cluster kwaliteit’ . Bereken die maat voor verschillende K en kijk welke K optimaal is

• Cluster kwaliteit: bv variantie binnen clusters moet klein zijn. Variantie tussen de clusters moet groot zijn.

Big Data sessie 23 maart 2015

Page 120: Big data analytics johan quist

ClusteranalyseSSE-methodeVoor verschillende waarde van K berekenen we de som van de gekwadrateerde afstanden (SSE)

Andere methode : Calinski-Harabasz(kijkt naar de variantie tussen de clusters)

Big Data sessie 23 maart 2015

Page 121: Big data analytics johan quist

R Voorbeeld Cluster analyse

Big Data sessie 23 maart 2015

Page 122: Big data analytics johan quist

Dimensie reductie• Als er heel veel variabelen zijn dan is het

lastig om middels eenvoudige statistiek het overzicht te behouden

• Kleinere set van variabelen wenselijk• Dimensie reductie methoden zoeken naar

zo’n kleinere set

Big Data sessie 23 maart 2015

Page 123: Big data analytics johan quist

Dimensie reductie• Methode om een (liefs klein) aantal

samengestelde variabelen te vinden die de data goed beschrijven

• Voorbeeld methode: Principale component analyse (PCA)

PCA = zoeken naar laag-dimensionele presentatie van de observatiesClustering = zoeken naar homogene subgroepen

Big Data sessie 23 maart 2015

Page 124: Big data analytics johan quist

Voorbeeld inleiding Rn<-15 #waarde wordt toegekend aan variabele nn # laat n zien, [1] betekent: het eerste element5->n # anderso kan ooknn<-2+10 #optellenn<-rnorm(1) # random variabele met gem. 0 n #komt (random) dus steeds andere waarde uit?rnorm # hulp over rnorm

x <- c(3, 7, 10, 20) # definieren van een vector xmean(x) # gemiddeldemedian(x) # mediaansqrt(x) # wortely <- x^2 # we definieren een vector yx # laat x zieny # laat y ziencor(x,y) # correlatie tussen x en yboxplot(x) # mediaan, 1e en 3e kwartiel (mediaan van 1e en 2e helft) # kleinste en grootste waarnemingplot(x, y, main="Scatterplot Example", xlab="x as", ylab="y as", pch=19)summary(x) # allerlei statistische gegevens over x

Big Data sessie 23 maart 2015

#dubbelen verwijderenx2 <- c (1 , 1, 1, 2, 2, 2, 3, 3, 3, 3)duplicated (x )x2 <- x[! duplicated (x )]x2

#normaalverdelingx <- rnorm(50); y <- rnorm(50) #random normhist(x, main="histogram") boxplot(x, main="boxplot")text(0,5,"histogram") # print "histogram" in het punt (0,5)plot(x,y,main="figuur 1")

qqnorm(x, main="qq-plot") # qq-ploty <- 0:30plot(y, dbinom(y, 30, 0.25), type = "h")

Page 125: Big data analytics johan quist

Voorbeeld packages# voorbeeld laden packagesinstall.packages('party') # package installerenlibrary(party) # party laden# irisdataset, bevat 150 irissen die behoren tot drie soorten# Setosa, Versicolor en Viginica# Irissen zijn beschreven adhv vier eigenschappen# lengte en breedte van bloemblaadjes(petal) en kelkblaadjes (sepal)str(iris) # iris laten zien, structuursummary(iris) # belangrijke gegevens table(iris$Species)pie(table(iris$Species))var(iris$Sepal.Length) # variatie in lengtehist(iris$Sepal.Length) # normaalverdeling lengte

Big Data sessie 23 maart 2015

Page 126: Big data analytics johan quist

Voorbeeld regressieyear <- rep(2008:2010, each = 4)quarter <- rep(1:4, 3)cpi <- c(162.2, 164.6, 166.5, 166, 166.2, 167, 168.6, 169.5, 171, 172.1, 173.3, 174)plot(cpi, xaxt = "n", ylab = "CPI", xlab = "")axis(1,labels=paste(year,quarter,sep="Q"), at =1:12, las =3)cor(year,cpi) ##serke correlatie jaar en cpicor(quarter,cpi) ##minder sterke corr. quarter en cpifit <- lm(cpi ~ year + quarter) # lineair modelfitcpi2011 <- fit$coefficients[[1]] + fit$coefficients[[2]] * 2011 + fit$coefficients[[3]] * (1:4)cpi2011 ##voorspellen 2011##3d plotlibrary(scatterplot3d)s3d <- scatterplot3d(year, quarter, cpi, highlight.3d = T, type = "h", lab = c(2, 3)) # lab: number of tickmarks on x-/y-axess3d$plane3d(fit) # draws the fitted plane

Big Data sessie 23 maart 2015

Page 127: Big data analytics johan quist

Voorbeeld logistieke regressie# voorbeeld logistieke regressielibrary("MASS")data(menarche) str(menarche) # str geft structuur van de datamenarche # leeftijd, totaal aantal meisjes, leeftijd eerste mens.summary(menarche)plot(Menarche/Total ~ Age, data=menarche) # plot %dat menache heeft gehad , 1 = 100%# voorbeeld log. regressie# lineair verband tussen leeftjd en menstruatieleeftijd# uitkomst is dichotoom per indivdu (wel/niet), vandaar geen lin.regressie mogelijk

glm.out = glm(cbind(Menarche, Total-Menarche) ~ Age, family=binomial(logit), data=menarche)#logit -> logistieke regressielines(menarche$Age, glm.out$fitted, type="l", col="red")title(main="Menarche Data with Fitted Logistic Regression Line")# lijn volgt heel goed de puntensummary(glm.out)

Big Data sessie 23 maart 2015

Page 128: Big data analytics johan quist

Voorbeeld Decision Treetree.modelmy.prediction <- predict(tree.model, test.set)my.predictioninstall.packages('tree')library(tree)plot(tree.model)text(tree.modelrpart.tree <- rpart(Species ~ ., data=train.set)plot(rpart.tree, uniform=TRUE, branch=0.6, margin=0.05)text(rpart.tree, all=TRUE, use.n=TRUE)title("Training Set's Classification Tree")

predictions <- predict(rpart.tree, test.set, type="class")table(test.set$Species, predictions)confusion<-table(predictions,irisdata)yprediction

plot(iris$Petal.Length, iris$Petal.Width, main="Edgar Anderson's Iris Data"))

test_sample = sample(1:150, 50)test_data = iris[test_sample, ]training_data = iris[-test_sample, ]fit_tree = tree(iris.type ~ ., data = training_data)test_predictions = predict(fit_tree, test_data, type = "class")test_error = sum(test_predictions != test_data$iris.type)/nrow(test_data)test_errorBig Data sessie 23 maart 2015

str(iris)irislibrary("party")iris_ctree <- ctree(Species ~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width, data=iris)print(iris_ctree)plot(iris_ctree)fancyRpartPlot(iris_ctree, cex=.7)

predict<-predict(iris_ctree,type="prob")irisdata<-irisy<-irisdata$typeconfusion<-table(predict,y)confusionirisdatapredict

table(predict())

set.seed(101)alpha <- 0.7 # percentage of training setinTrain <- sample(1:nrow(iris), alpha * nrow(iris))train.set <- iris[inTrain,]test.set <- iris[-inTrain,]train.settest.settree.model <- tree(Species ~ Sepal.Width + Petal.Width, data=train.set))

Page 129: Big data analytics johan quist

Voorbeeld random forest# split into two subsets: training (70%) and test (30%)ind <- sample(2, nrow(iris), replace=TRUE, prob=c(0.7, 0.3))train.data <- iris[ind==1,]test.data <- iris[ind==2,]# use all other variables to predict Specieslibrary(randomForest)rf <- randomForest(Species ~ ., data=train.data, ntree=100, proximity=T)table(predict(rf), train.data$Species)print(rf)plot(rf, main = "")importance(rf)varImpPlot(rf)irisPred <- predict(rf, newdata = test.data)table(irisPred, test.data$Species)plot(margin(rf, test.data$Species))

Big Data sessie 23 maart 2015

Page 130: Big data analytics johan quist

Voorbeeld Nearest Neightbors## voorbeeld nearest neightbors# 3 punten in klasse AA1=c(0,0) A2=c(1,1) A3=c(2,2) # 3 punten in Klasse B B1=c(6,6)B2=c(5.5,7) B3=c(6.5,5)# bouwt de classificatietrain=rbind(A1,A2,A3, B1,B2,B3)plot(train) # laat de punten zien in een plotcl=factor(c(rep("A",3),rep("B",3)))#kijken bij welke klasse een punt valttest=c(4,4)library(class)# call knn() and get its summarysummary(knn(train, test, cl, k = 1))# valt dus in klasse b, (daar staat 1)# ander punt testen, dat in a blijkt te vallentest=c(3.5, 3.5)summary(knn(train, test, cl, k = 1))

Big Data sessie 23 maart 2015

Page 131: Big data analytics johan quist

Voorbeeld Neural Networksinstall.packages('neuralnet')library("neuralnet")

#Maken van een neural network dat vierkantswortel berekend#Type ?neuralnet voor meer info

#Genereer 50 random nummers uniform gedistr. tussen 0 and 100#en bewaar het als een dataframetraininginput <- as.data.frame(runif(50, min=0, max=100))trainingoutput <- sqrt(traininginput)

#Column bind the data in een variabeletrainingdata <- cbind(traininginput,trainingoutput)colnames(trainingdata) <- c("Input","Output")

#Train het neurale network#10 hidden layers#Threshold is a numeric value specifying the threshold for the partial#derivatives of the error function as stopping criteria.net.sqrt <- neuralnet(Output~Input,trainingdata, hidden=10, threshold=0.01)print(net.sqrt)

#Plot het neurale networkplot(net.sqrt)

#Test neural network met trainingsdatatestdata <- as.data.frame((1:10)^2) #Generate some squared numbersnet.results <- compute(net.sqrt, testdata) #Run them through the neural network

#Lets see what properties net.sqrt hasls(net.results)

#zie resultatenprint(net.results$net.result)

#Lets display a better version of the resultscleanoutput <- cbind(testdata,sqrt(testdata), as.data.frame(net.results$net.result))colnames(cleanoutput) <- c("Input","Expected Output","Neural Net Output")print(cleanoutput)/

Big Data sessie 23 maart 2015

Page 132: Big data analytics johan quist

Voorbeeld Bayesinstall.packages("e1071")library(e1071)# bouwen van naiveBayesdata(iris)# m <- naiveBayes(Species ~ ., data = iris)m <- naiveBayes(iris[,-5], iris[,5])mtable(predict(m, iris), iris[,5])

Big Data sessie 23 maart 2015

Page 133: Big data analytics johan quist

Voorbeeld Clusteranalyse# voorbeeld clusteringset.seed(8953) # random nummer generatoriris2 <- iris# remove class IDsiris2$Species <- NULL# k-means clustering met 3 clustersiris.kmeans <- kmeans(iris2, 3)# check resultaatiris.kmeans # 3 clusters met grootte 38,50 en 62table(iris$Species, iris.kmeans$cluster)# plot clusters and their centers

# resultaat laat zien dat cluster “setosa” eenvoudig te scheiden is van andere clusters,# en dat clusters “versicolor” en “virginica” licht over overlappen

plot(iris2[c("Sepal.Length", "Sepal.Width")], col=iris.kmeans$cluster)points(iris.kmeans$centers[, c("Sepal.Length", "Sepal.Width")], col=1:3, pch="*", cex=5)

#hierarchische clusteringidx <- sample(1:dim(iris)[1], 40)irisSample <- iris[idx,]irisSample$Species <- NULLhc <- hclust(dist(irisSample), method="ave")plot(hc, hang = -1, labels=iris$Species[idx])irisSample

Big Data sessie 23 maart 2015

Page 134: Big data analytics johan quist

BoekenAanraders

Technisch• An introduction to statistical learning with R / James e.a. Voor managers• Data science for business / Provost e.a.Over relatie met DWH• Datamining concepts and techniques / Han e.a.

• Introduction to data sience / Coursera university• Bayesiaanse statistiek in de rechtspraak / Jenneke IJzerman• Neurale netwerken versus statistische methoden: een vergelijking /

Huizingh e.a.

Alles gratis op het internet!!

Big Data sessie 23 maart 2015