Eksamen - INF 283 Maskinlæring 23 feb. 2016 Tid: 3 timer Eksamen inneholder 15 oppgaver, som vil bli vektet likt ved evaluering. 1
Table 1 attributt antall personer forsørget av låntaker månedlig inntekt annen gjeld lånebeløp termineringsgrunn datatype heltall reelt tall reelt tall reelt tall kategorisk: misligholdt eller innfridd Figure 1: Histogram over attributtverdier 1. En bank ønsker å benytte maskinlæring til å klassifisere lånetakere som høyrisiko lånetakere (stor sannsynlighet for mislighold) eller lavrisiko lånetakere (liten sannsynlighet for mislighold). Banken har en database over terminerte lån med informasjon om lånetaker for søknadstidspunkt, samt termineringsgrunn. Se tabell 1. Banken vurderer metoder som antar uavhengighet mellom variable, men er bekymret for at målattributten er betinget avhengig av de tre attributtene: inntekt, annen gjeld og lånebeløp, ettersom man kan forvente at en lånetaker med høy inntekt kan betjene en større total gjeld. (a) Foreslå en variabel som kan benyttes i stedet for inntekt, annen gjeld og lånebeløp, som er en funksjon av disse tre. Variabelen kan være kontinuerlig, du vil håndtere diskretisering i neste oppgave. (b) Anta at variabelen du har definert er kontinuerlig og fordelt som vist i Figur 1. Ut i fra dette, foreslå en kategorisk attributt som kan representere denne variabelen. (c) En naiv Bayes klassifikator beregner mest sannsynlig verdi for målattributt v NB, for tupler av attributtverdier a 1, a 2...a n, ved hjelp av uttrykket: v NB = argmax v V P (v) n P (a i v) hvor V er alle mulige verdier for målattributt, og alle sannsynligheter er estimert fra treningsdata. Anta at noen av de misligholdte lånene ikke har verdien 5 for attributten antall personer forsørget av låntaker, mens noen av de innfridde lånene har denne verdien for denne attributten. Forklar hvorfor dette er problematisk når de betingede sannsynlighetene estimeres, og foreslå en løsning. i=1 Page 2
2. En maskinlærer skal trenes til å klassifisere numeriske vektorer i to klasser. Den skal lære en vektor w og en skalar b, og klassifisere nye tilfeller, for eksempel x, til en av disse klassene basert på fortegnet til w x b. Anta at dette er implementert som en støttevektormaskin (support vector machine, SVM). Du kan anta den enklere formuleringen av SVM, uten slingringsmonn (slack variables), slik at en løsning minimerer 1 2 w 2, begrenset av y i ( w x i b) 1, hvor x i og y i er treningseksempler. y i betegner klassifikasjonen til x i som enten 1 eller 1. Husk også at induktive antagelser for en maskinlærer (inductive bias) kan være både hypoteseromsrestriksjoner (restriction bias), som definerer hvilke hypoteser som tillates av maskinlæreren, og hypotesepreferanser (preference bias) som definerer hvilke tillatte hypoteser som foretrekkes. (a) Formulér hypoteseromsrestriksjonenene for denne maskinlæreren. definert i to dimensjoner ( w og x har nøyaktig to komponenter). Du kan anta at problemet er (b) Formulér hypotesepreferansene for denne maskinlæreren. Du kan anta at problemet er definert i to dimensjoner. (c) Trenigseksempler x, som tilfredsstiller y i ( w x i b) = 1 kalles støttevektorer (support vectors). Hvor sensitive er verdiene w og b til at treningseksempler som ikke er støttevektorer legges til eller taes bort fra treningssettet? Page 3
Figure 2 3. Problemet beskrevet i oppgave 2 kan også løses gjennom avviksminimering (error minimisation). For enkelhets skyld, anta en endimensjonal problemformulering. I det tilfeller kan w og x betraktes som skalare verdier, med w konstant. Da må kun b bestemmes. Anta at gradientminimering (gradient descent) skal benyttes. Vi vil da starte med et tilfeldig valg av verdi for b. For hver iterasjon vil b så tilegnes en ny verdi i henhold til: ( N ) b b + η b E( x i) i=1 hvor η er læringsraten (learning rate), x i er et treningseksempel, N er antall treningseksempler og E er avviksfunksjonen (error function). (a) Foreslå en definisjon for avviksfunksjonen E. Du kan la y i betegne korrekt klassifisering (1 eller 1) som før, og p i kan betegne klassifiseringen beregnet av maskinlæreren. (b) Anta at avviksgrafen (error surface) for dette endimensjonale klassifikasjonsproblemet er som vist i Figur 2. Forklar hvordan den tilfeldige verdien valgt for b før minimering, påvirker den endelige verdien bestemt av maskinlæreren. (c) Forklar hvorfor løsningen som ville blitt bestemt av en SVM (oppgave 2) kan forventes å generalisere bedre enn den bestemt av gradientminimering, for tilfellet illustrert i Figur 2. Page 4
Figure 3 A B 4. (a) Figur 3 illustrerer et avgjørelsestre (decision tree). For hver node estimeres informativitet (information gain) for attributten assosiert til noden. Forklar hvorfor et slikt estimat har høyere usikkerhet for node B enn for node A. (b) Når avviksbeskjæring (reduced error pruning) benyttes for å unngå overtrening (overfitting) av et avgjørelsestre, blir noder iterativt tatt vekk fra treet dersom dette øker nøyaktigheten målt over et valideringssett. Dette gjentas inntil et stoppkriterie inntreffer. Hva er dette stoppkriteriet? (c) Forklar hvorvidt nøyaktigheten estimert fra valideringssettet som ble brukt til avviksbeskjæring er et forventningsrett (unbiased) estimat på nøyaktigheten til treet over usette tilfeller. Page 5
5. I belønningslæring (reinforcement learning) benyttes ofte en teknikk kalt Q-læring. Målfunksjonen, Q(s, a) relaterer en tilstand (state) s, og en handling (action) a, til maksimal kumulativ belønning som kan oppnås fra s, om man utfører a som første handling. For enhver tilstand kan Q derfor brukes til å velge en optimal handling med hensyn på en kumulativ belønningsfunksjon. En slik funksjon er forsinkelsesjustert kumulativ belønning (discounted cumulative reward) V : V (s t ) γ i r i+1 i=0 hvor s t er tilstanden hvor første handling er utført, r 1 er belønning gitt for første handling, r 2 er belønningen for andre handling, og så videre. γ er en faktor mellom 0 og 1. Algoritmen for Q-læring estimerer Q for hver mulige kombinasjon av tilstand og handling. Dette estimatet kaller vi ˆQ(s, a). For hver iterasjon av algoritmen blir følgende steg utført: I Velg en handling a, og utfør denne. II Motta belønning r. III Observér ny tilstand s IV Oppdatér ˆQ(s, a). (a) Gi regelen for å bestemme oppdatert verdi av ˆQ(s, a) i steg IV i algoritmen over, når forsinkelsesjustert kumulativ belønning benyttes. (b) Funksjonen for forsinkelsesjustert kumulativ belønning definerer en agent som foretrekker en serie handlinger som gir tidlig belønning (belønning etter få handlinger). Definér en alternativ kumulativ belønningsfunksjon som vekter alle de neste h handlingene likt og ignorerer senere handlinger. (c) I steg I i algoritmen kan en handling velges tilfeldig med ulik sannsynlighet for forskjellige handlinger i henhold til: P (a i s) = k ˆQ(s,a i) j k ˆQ(s,a j) hvor P (a i s) er sannsynligheten for å velge handling a i i tilstand s og k > 0 er en konstant. Forklar hensikten med parameteren k. Page 6