Summary Business Intelligence

download Summary Business Intelligence

If you can't read please download the document

description

This is a summary of the course business intelligence of the technical university delft

Transcript of Summary Business Intelligence

Tentamen SPM2420, 28 Januari 2009Technische Universiteit Delft Faculteit van Technologie, Bestuurskunde & ManagementTentamen Business Intelligence (SPM 2420)Woensdag, 28 Januari 2009 Zaal E, Faculteit TBM 9.00 12.00 uurInstructies3.Dit tentamen bestaat uit vier vragen, beschreven op in totaal vier paginas. 4.Schrijf altijd als eerste je naam en studienummer op de antwoordvellen die je gebruikt. 4.Antwoorden mogen in het Nederlands dan wel in het Engels worden geformuleerd (Answers may be given in Dutch or English). 5.Dit betreft een 'gesloten boek' tentamen: zowel het boek als aantekeningen en collegesheets mogen NIET worden geraadpleegd. 6.Houd je antwoorden kort en bondig: irrelevante toevoegingen worden als fout beschouwd. 7.Schrijf a.u.b. leesbare zinnen. Onleesbare antwoorden zijn foute antwoorden. 9.Er zijn 100 punten beschikbaar. Het totaal aantal behaalde punten gedeeld door 10 levert het cijfer voor het deeltentamen op. Het eindcijfer komt mede tot stond op basis van het resultaat behaald voor de practicumopdracht. 10.Onderstaande tabel laat het aantal maximaal te behalen punten per vraag zien: vraag 1: 2: 3: 4: max punten 25 25 25 25 behaalde punten1-5Tentamen SPM2420, 28 Januari 2009VragenVraag 1 (25 PUNTEN)Dit vraagstuk gaat over ontwerp en implementatie van een database (db). We beschouwen daartoe een db t.b.v. het beheer van behandelingen van patinten in n ziekenhuis. We modelleren hier slechts een deel van de noodzakelijke data die moeten worden vastgelegd en wel volgens onderstaande beschrijving: Patinten kunnen (op een vast te leggen tijdstip) worden opgenomen in een afdeling van een ziekenhuis waar zij een bed krijgen. Tijdens het verblijf kunnen patinten tijdens hun verblijf meerdere behandelingen ondergaan waarvan, onder andere, het behandeltijdstip en de behandellocatie moeten worden vastgelegd. Behandelingen zijn gestandaardiseerd en, daarmee samenhangend, heeft elk type behandeling een unieke behandelcode. Bij elke behandeling van een patint kunnen meerdere medicijnen worden voorgeschreven. Ontwerp op basis van het in het college behandelde aanpak een geschikte db voor bovenomschreven situatie waarbij: a)je eerst een E/R model ontwerpt en je elke entiteit voorziet van tenminste 3 zelf te kiezen zinvolle attributen, de cardinaliteit van elke relatie aangeeft, de eventueel voorkomende zwakke entiteiten vermeldt.Antwoord (schets): entiteiten zijn binnen deze context o.a. patient, behandeling, behandellocatie, afdeling, medicijn. In de db zullen records van elk van deze entiteiten in aparte tabellen worden opgeslagen waarbij eenvoudig voor elke entiteit een unieke sleutel kan worden gedefinieerd zoals patientid, behandellocatienr, medicijncode. Aan elke entitiet moeten relevante attributen worden toegekend. Verder moet worden vastgesteld hoe de relaties zijn en de cardinaliteit ervan. 1:1 en 1:N relaties zijn verder eenvoudig te verwerken (zie de collegesheets). Als er M:N relaties zijn moet er een tussentabel gecreerd worden. Dit geldt voor de relatie tussen patient en behandeling, en ook voor de relatie tussen behandeling en medicijn (reden voor de laatste: een behandeling kan meer medicijnen betreffen, en omgekeerd kan een medicijn bij meerdere behandelingen gebruikt worden).b)je vervolgens het E/R model omzet in een relationele db en je alle relaties (tabellen) geeft met hun attributen, inclusief de keys (sleutels) en het type van de keys (primary, foreign), nagaat of de door jou ontworpen db genormaliseerd is en zo niet, de db alsnog normaliseert.Antwoord (schets): in essentie gaat het om vermijden van elke duplicatie van gegevens. Als je in a) rechttoe-rechtaan aan de slag gaat kun je duplicatie eenvoudig voorkomen. Anders helpt de normalisatiecheck: zie de colleges over 1NF, 2NF, en 3NF.Vraag 2 (25 PUNTEN) Deze vraag gaat over een tweetal basale data mining algoritmes.a) Beschrijf in het kort wat voor problemen met covering algoritmes kunnen worden opgelost; uit welke stappen het (op het college behandelde) simple covering algoritme bestaat (een schets in hoofdlijnen is2-5Tentamen SPM2420, 28 Januari 2009voldoende); waarom covering algoritmes soms worden beschreven als separate-and-conquer algoritmes en welk voordeel de separate-and-conquer technique heeft (boven b.v een divideand-conquer strategy zoals decision tree algoritmes doorgaans toepassen).Antwoord: zie het boek en/of de sheets.Gegeven is verder de (welbekende) data set m.b.t. het WillWait problem: deze is op de volgende pagina opnieuw weergegeven. Beschouw nu het (op college behandelde) Naive Bays learning algoritme waarbij jij je mag beperken tot de variabelen Pat, Price en Rain van de data set. Verder is, bij een nieuwe zoektocht naar een restaurant op een nieuwe dag, de evidence gegeven dat Pat = some, Price = $$ en Rain = T .De formule voor de likelihood of yes kan met de volgende formule worden beschreven: likelihood of yes = Pr[Pat = some|yes] * Pr[Price = $$|yes] * Pr[Rain = T |yes] * Pr[yes] b) Geef een toelichting op deze formule op basis van de regel van Bayes met hypothese H en evidence E.Antwoord: de structuur van de formule is a.v.: Pr(H|E) = Pr(E|H)*Pr(H)/Pr(E); als je de noemer weglaat voor alle hypothesen dan krijg je voor elke hypothese H: likelihood of H (given E) = Pr(E|H)*Pr(H) = (bij onafhankelijkheid) Pr(E1|H)*Pr(E2|H)*Pr(E3|H)* Pr(H)c) Bereken op basis van bovenomschreven gegevens de likelihood of yes, i.e., de likelihood van de beslissing om te wachten, gegeven de bovenbeschreven evidence.Antwoord: likelihood of yes = 4/6 * 2/6 * 2/6 * 6/12d) Bereken ook op basis van dezelfde gegevens, via een zelfde aanpak, de likelihood van de beslissing om niet te wachten.Antwoord: soortgelijk3-5Tentamen SPM2420, 28 Januari 2009e) Welke conclusies trek je uit de resultaten van je berekeningen zoals uitgevoerd bij vragen 2c) en 2d) ?Antwoord: de hypothese (yes or no) met de hoogste likelihood wordt gekozen als meest waarschijnlijke hypothese.Besloten wordt om de continue variabele Price niet in klassen te verdelen zoals gedaan is in bovenstaande dataset (met klassen $, $$, $$$), maar om de oorspronkelijk vastgestelde waardes (uitgedrukt in euros, met twee cijfers achter de komma) direct te gebruiken. f) Hoe verandert de opzet van de berekening van de beide likelihoods indien de prijs bij de nieuwe zoektocht (evidence van de nieuwe case) 38.75 euro blijkt te zijn? Maak een en ander duidelijk m.b.v. een simpel voorbeeld waarbij jezelf getallen mag kiezen (de precieze uitkomst van de berekening, die bij het voorbeeld hoort, is van minder belang: het gaat er slechts om de berekeningswijze uit te leggen).Antwoord: zie boek en/of colleges hoe om te gaan met continue variabelen. Dit betreft mean en standaardafwijking uitrekenen van alle uitkomsten, gegroepeerd per hypothese yes en no. Met veronderstelling van een normale verdeling f(x) kan elke evidence-waarde e, per hypothese, worden omgezet in een dichtheidswaarde f(e).Vraag 3(25 PUNTEN)Dit vraagstuk gaat over het overfitting problem in data mining.a) Leg in algemene termen uit wat het overfitting problem inhoudt. b) Geef vervolgens aan op welke wijze overfitting zich manifesteert bij het onjuist toepassen van respectievelijk een covering algoritme en aan neuraal netwerk algoritme voor training van een multilayer perceptron. c) Geef ook aan wat de relatie is tussen het overfitting problem en het bias-variance dilemma. d) Geef twee generieke methoden aan om het overfitting problem in de praktijk op te lossen. Geef bij elke methode aan op welke wijze overfitting wordt voorkomen, eventueel toegelicht aan de hand van zelfgekozen data mining algoritme.Antwoord: zie boek en/of colleges.Vraag 4 (25 PUNTEN) Antwoord: dit vraagstuk is behandeld op college!!Dit vraagstuk gaat over leren in een enkelvoudig perceptron waarbij als transfer function de sigmoid transfer function g(x) = 1/(1 + e x) wordt toegepast. De input-output functie van het betreffende perceptron, met initile gewichten w0 = w2 = 2 en w1 = 1, wordt gegeven door de volgende vergelijking: hw(x) = gw(- w0 + w1 x1 + w2 x2) = gw(-2 + x1 +2 x2). (1)De bijbehorende leerregel (gevonden op basis van het toepassen van de gradient descent methodiek) luidt: wjnew = wjold + . (y - hw(x)) . g'(x) . xj . (2)4-5Tentamen SPM2420, 28 Januari 2009a) Leg het principe van gradient descent uit zoals is toegepast bij het vinden van de leerregel (2) en leg ook uit wat de betekenis is van de constante . b) Geef vervolgens de formule van de lineaire lijn die de inputruime (x1, x2) zodanig scheidt in twee gebieden dat de outputwaardes in het ene gebied > 0.5, en in het andere gebied < 0.5 zijn. Teken deze lijn in een grafiek met als hoofdassen de inputvariabelen x1 en x2. Veronderstel nu dat een dataset het volgende datapaar bevat: (x, y) = ((x1, x2), y) = ((1, 1), 1). c) Bereken de fout Err = (y - hw(x)) als dat punt als trainingsvoorbeeld wordt aangeboden aan het perceptron. d) Bereken ook de afgeleide g'(x) met inputvector x = (1, 1). e) Bereken nu, op basis van vergelijking (2), de nieuwe waardes van de gewichten wjnew van het perceptron als gevolg van het aanbieden van het datapair (x, y) = ((1, 1), 1). Gebruik als waarde voor de waarde = 1. f) Bepaal nu de lineaire lijn met de nieuwe gewichtenwaardes wjnew , die de inputruime (x1, x2) zodanig scheidt in twee gebieden dat de outputwaardes in het ene gebied > 0.5, en in het andere gebied < 0.5 zijn. Teken deze lijn in dezelfde grafiek als gemaakt bij de beantwoording van vraag 3b). g) Laat zien dat door toepassing van de leerregel (2) de waarde van de fout Err is gedaald. De in dit vraagstuk gebruikte constante wordt in de praktijk meestal tijdsafhankelijk gemaakt: = (t ).h) Kan je aangeven hoe die tijdsafhankelijk er doorgaans uitziet en wat het voordeel van deze keuze is bij uitvoering van het algoritme?5-5