Introduzone al Machne Learnng Note dal corso d Machne Learnng Corso d Laurea Magstrale n Informatca aa 2010-2011 Prof Gorgo Gambos Unverstà degl Stud d Roma Tor Vergata
2 Queste note dervano da una selezone e relaborazone dalle seguent font: - CM Bshop Pattern recognton and machne learnng, Sprnger - J Fredman, T Haste, R Tbshran The elements of statstcal learnng, Sprnger - CM Bshop Neural networks for pattern recognton, Oxford Unversty Press - ME Tppng Bayesan Inference: An Introducton to Prncples and Practce n Machne Learnng, n Advanced lectures n machne learnng, LNAI 3176, Sprnger - Note dal corso CS229 Machne learnng, Stanford Unversty, Prof A Ng, 2008 - Note dal corso CS340 Machne learnng, Unversty of Brtsh Columba, Prof KP Murphy, 2007
1 Introduzone 11 Obettv e applcazon de metod d machne learnng Per learnng s ntende l processo d ndvduare, a partre da un nseme d dat, un modello che l descrva Per esempo, nel caso del supervsed learnng s vuole ndvduare una corrspondenza tra nput e output Un modo per fare cò è postulare l esstenza d un qualche tpo d meccansmo parametrco per la generazone de dat, d cu non conoscamo però valor esatt de parametr Questo processo fa tpcamente rfermento a tecnche d tpo statstco L estrazone d legg general a partre da un nseme d dat osservat vene denomnata nduzone, e s contrappone alla deduzone n cu, a partre da legg general, s vuole prevedere l valore d un nseme d varabl L nduzone è l meccansmo fondamentale alla base del metodo scentfco, n cu s vuole dervare legg general (tpcamente descrtte n lnguaggo matematco) a partre dall osservazone d fenomen, osservazone che comprende la msurazone d un nseme d varabl, e qund l acquszone d dat che descrvono fenomen osservat Il modello ottenuto potrà qund essere utlzzato per effettuare prevson rspetto a ulteror dat, e l processo complessvo nel quale, a partre da un nseme d osservazon, s vuole effettuare prevson rspetto a nuove stuazon prende l nome d nferenza Fgura 1 Schema generale d machne learnng 12 Classfcazone de problem d learnng I problem d learnng vengono dvs n due tpologe prncpal: supervsed learnng e unsupervsed learnng 121 Supervsed learnng Il supervsed learnng è l problema pù studato nel machne learnng Esso s pone l obettvo d prevedere, dato un elemento d cu s conoscono un nseme d parametr (features), l valore d un dverso parametro d output relatvo all elemento stesso
4 1 Introduzone Per far cò, nel supervsed learnng vene defnto (medante apprendmento da nsem d esemp) un modello Fgura 2 Schema generale d supervsed learnng Il problema è defnto a partre da un unverso d element (descrtt da valor assunt da un nseme x d features consderate come nput del problema): ad ogn elemento è po assocato un valore y d output (o target) Quel che s vuole è, a partre dalla conoscenza d un nseme T d element (denomnato tranng set), cascuno descrtto da una coppa (x,y ), dove x è l vettore de valor delle d features x (1),x (2),,x (d) e y è l relatvo output, dervare un modello della relazone (sconoscuta) tra features e valor d output, che consenta, dato un nuovo elemento x, d predre l corrspondente valore d output y Ad esempo, problem d questo tpo possono essere: predre la presenza o meno d una malatta n presenza de rsultat d un nseme d anals clnche, prevedere una quotazone sulla borsa d doman a partre dall andamento de gorno precedent, prevedere l possble gradmento d un flm da parte d uno spettatore a partre dalle preferenze rspetto ad altr flm gà vst, etc S not che valor assunt dalle sngol features possono essere d vara natura: Quanttatv: fornscono la msura d una grandezza Qualtatv: specfcano una classe d appartenenza Qualtatv ordnat: specfcano l appartenenza ad un ntervallo Allo stesso modo, valor d output possono essere: Quanttatv: n questo caso l valore resttuto è la predzone d una msura, e s parla d regressone Se y è un vettore, s parla d regressone multvarata Qualtatv: n questo caso l valore resttuto è l assegnazone ad una classe (categora), e s parla d classfcazone o pattern recognton In partcolare, se l numero d possbl class è 2, s parla d classfcazone bnara, altrment d classfcazone mult-classe Qualtatv ordnat: n questo caso s parla d regressone ordnale In fgura 3 vene mostrato un tranng set con features nir 2 e classfcazone bnara (rosso/banco), Ad esempo, due ass potrebbero rportare valor d
12: Classfcazone de problem d learnng 5 nsulna e colesterolo e le class potrebbero essere Sano (banco) e Malato (rosso), per un nseme d pazent osservat A destra è mostrato un esempo d classfcatore lneare: una separazone delle due class medante una lnea retta S not che tre element del tranng set (due ross e un banco) sono classfcat male A snstra, le class sono separate da una curva pù complessa: non c sono error d classfcazone, ma la separazone potrebbe essere eccessvamente dpendente dal tranng set (overfttng) Fgura 3 Esempo d classfcazone bnara Per la rappresentazone del tranng set, assumamo che sano dsponbl n osservazon ognuna data dal valore d d features Allora: per ogn osservazone, abbamo un vettore x (1 n) d dmensone d: x (j) (1 j d) ndca l valore della j-esma feature nell osservazone x una feature classfcatora (dscreta) z che può assumere valor 1,,K sarà n generale rappresentata per mezzo d K varabl z 1,,z K n modo tale che x = se e solo se z = 1,z j = 0 j abbamo noltre un un vettore y d dmensone n, dove y (1 n) ndca l valore dell output corrspondente alla -ma osservazone Il tutto è rappresentable da una coppa: matrce X delle osservazon - vettore y de rsultat x T 1 x T 2 x T n dove qund s ha che (per ogn 1 n,1 j d) x j = x (j) y 1 y 2 y n x 11 x 21 x d1 x 12 x 22 x d2 x 1n x 2n x dn Per brevtà, ndcheremo a volte la coppa X,y (e qund l tranng set) come T Un approcco comune al problema (e che sarà consderato nel seguto) è quello d dervare dal tranng set una funzone h tale che y(x) sa una buona (n qualche modo da defnre) prevsone del valore sconoscuto y Un approcco alternatvo è dervare, a partre dal tranng set, una dstrbuzone d probabltà p(y x) per l output, che consenta ad esempo d ottenere anche de valor d confdenza Quella che n effett verrà utlzzata è la dstrbuzone a posteror p(y x, T ), dove a posteror ndca successvamente all osservazone del tranng set y 1 y 2 y n
6 1 Introduzone In effett, la dstrbuzone che fornsce una descrzone completa della stuazone è la dstrbuzone d probabltà congunta p(x,y), che nel caso voglamo dervare a partre dal tranng set, e qund come p(x,y T ) Rcordando che p(x, y) = p(y x)p(x) vedamo come determnare p(y x) equvale a determnare la probabltà congunta nel caso n cu la probabltà p(x) degl nput è assunta unforme Una volta dervato un modello, una possble msura della sua qualtà nell effettuare predzon è la verosmglanza a posteror, che msura, su un nseme d test d element (features e output), la probabltà che l modello assegna a valor corrett, a partre dalle features L(M T ) = n p(y x,t,m) =1 dove n è la dmensone del test set Tpcamente, vene consderato, per semplctà l logartmo (n una qualche base) d tale grandezza, che prende l nome d log-lkelhood n l(m T ) = logp(y x,t,m) =1 Una msura pù semplce della qualtà del modello è naturalmente la percentuale d errore 122 Modell parametrc e non parametrc In un modello parametrco, l modello stesso è preventvamente caratterzzato da un vettore θ d parametr: quel che qund accade è che vene potzzato che la relazone tra features e nput sa rappresentable all nterno d una famgla d relazon (modell) parametrc rspetto a θ, e qund tal che una assegnazone d valor a θ defnsca uno specfco modello della famgla Gl element nel tranng set sono successvamente utlzzat per dervare tale assegnazone d valor a parametr (o una dstrbuzone d probabltà per tal valor), dopo d che non sono pù utlzzat Il processo d dervare p(θ T) è detto apprendmento (o learnng) Spesso, per semplctà, nvece d dervare la dstrbuzone d θ, vene stmato un buon valore ˆθ(T ) per parametr, medante una stma d punto Data p(θ T ), la prevsone su y può essere formulata n termn d valore atteso p(y x,t ) = p(y x, θ)p(θ T)dθ In presenza della stma d punto ˆθ(T ), la prevsone può essere approssmata come p(y x,t ) p(y x,ˆθ(t )) In un modello non parametrco, l numero d parametr cresce con la dmensone del tranng set: sostanzalmente, ogn sngola prevsone, n questo caso, rchede l utlzzo dell ntero tranng set Un esempo d approcco non parametrco sono classfcator d tpo nearest neghbor, n cu la prevsone y d x è determnata ponendola uguale al valore y dell elemento x del tranng set pù vcno a x
12: Classfcazone de problem d learnng 7 123 Modell generatv e dscrmnatv Possamo consderare due mod per apprendere la dstrbuzone p(y x) da utlzzare per la prevsone: 1 effettuare drettamente una stma d p(y x) dal tranng set; questo approcco è detto dscrmnatvo, perchè, a partre da T, vene dervata una caratterzzazone dell output n funzone delle features, n modo tale da dscrmnare, dato un elemento, l pù probable tra possbl valor dell output 2 effettuare una stma d p(x y) dal tranng set; questo approcco è detto generatvo, perchè, a partre da T, vene dervata una caratterzzazone delle features n funzone dell output, n modo tale da generare, dato un possble output, un elemento che con buona probabltà potrà essere assocato a quell output Sostanzalmente, n un approcco generatvo, vene dervato, per ogn possble output, un modello (sotto forma d dstrbuzone d probabltà) degl element assocat a quell output Il teorema d Bayes consente, a partre da p(x y), e nota la dstrbuzone a pror p(y), d ottenere p(y x), n quanto 124 Unsupervsed learnng p(y x) = p(x y)p(y) p(x) Nel caso del learnng unsupervsed dat consstono soltanto d un nseme d features x, senza varabl d output y Quel che s vuole è ndvduare un modello che s adatt a dat, al fne d scoprre propretà nteressant d ess Ad esempo, un algortmo d unsupervsed learnng applcato a dat a snstra nella fgura 4 (che rappresentano coppe altezza-peso) c può mostrare l esstenza d due cluster nella dstrbuzone, corrspondent a masch e femmne, e l assegnazone de var element all uno o all altro cluster I due cluster sono mostrat, n color dvers, a destra nella fgura Fgura 4 Esempo d clusterng In un problema d unsupervsed learnng, n assenza d un valore corretto d output che funga da rfermento, non è possble msurare la correttezza della soluzone trovata rspetto ad una soluzone corretta (almeno nel tranng set e nel test set) Quel che è possble effettuare è una valutazone del modello ottenuto, sulla base della lkelhood meda d tutt gl n element dell nseme L(M T ) = 1 n n p(x M,T ) =1 che msura la verosmglanza dell nseme d element consderato, rspetto al modello ottenuto