invatare supervizata. clasificare

37
Ruxandra Stoean [email protected] http://inf.ucv.ro/~rstoean Invatare supervizata. Modele liniare

Upload: duongdieu

Post on 01-Feb-2017

323 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Invatare supervizata. Clasificare

Ruxandra Stoean

[email protected]

http://inf.ucv.ro/~rstoean

Invatare supervizata. Modele liniare

Page 2: Invatare supervizata. Clasificare

Invatare supervizata

Concept

Date de intrare cu iesiri puse la dispozitie

De invatat modul de asociere intrare-iesire

Predictie asupra iesirii unor date noi

Clasificare

Iesiri grupate in doua sau mai multe clase

Iesiri calitative (discrete, factori, categoriale, categorialeordonate) [1]

Predictie asupra clasei unor noi date

Regresie

Iesiri cantitative (continue) [1]

Predictie asupra valorii de iesire pentru intrari noi

[1] Florin Gorunescu, Data Mining: Concepts, Models and Techniques, Intelligent Systems Reference Library, Volume 12,

Springer, 2011

Page 3: Invatare supervizata. Clasificare

Clasificare

A

A

B

?

Intrari Iesiri

Asociere

Page 4: Invatare supervizata. Clasificare

Regresie

0.2

?

Intrari Iesiri

Asociere

0.4

0.9

Page 5: Invatare supervizata. Clasificare

Clasificare, regresie

Date de antrenament

(iesiri cunoscute)

Date de test

(iesiri necunoscute)

ModelInvatare

P

r

e

d

i

c

t

i

e

Page 6: Invatare supervizata. Clasificare

Invatare supervizata. Definitie [1]

O multime de date - perechi de tip (intrare, iesire)

Intrarea este o secventa de valori pentru atributele datelor

Iesirea este o decizie confirmata

Fiecare inregistrare (obiect, exemplu, vector) este descrisa de un

numar de atribute cu domeniu de definitie discret sau continuu.

Iesirile sunt toate fie discrete (clasificare), fie continue (regresie).

[1] Catalin Stoean, Ruxandra Stoean, Support Vector Machines and Evolutionary Algorithms for Classification: Single or

Together?, Intelligent Systems Reference Library, Volume 69, Springer, 2014

Page 7: Invatare supervizata. Clasificare

Invatare supervizata. Definitie [1]

Multimea de date se imparte in trei submultimi distincte:

Multimea de antrenament (training)

Multimea de validare

Multimea de test (iesirile datelor sunt ascunse)

Algoritmul invata asocierile dintre fiecare data de antrenament siiesirea sa (faza de antrenament).

Modelul obtinut:

testat pe multimea de validare pentru a ii masura eroarea de predictie

testat pe multimea de test pentru a ii masura abilitatea de generalizare

[1] Catalin Stoean, Ruxandra Stoean, Support Vector Machines and Evolutionary Algorithms for Classification: Single or

Together?, Intelligent Systems Reference Library, Volume 69, Springer, 2014

Page 8: Invatare supervizata. Clasificare

Exemple

Clasificare – Pima Indians diabetes [1]

Clasa:

pozitiv pentru diabet (clasa 0) – 268 de cazuri

negativ (clasa 1) – 500 de cazuri

Numar

sarcini

Conce

ntratie

glucoz

a la 2

ore

Presiu

ne

diastoli

ca a

sangel

ui

Grosim

e

cutelor

de

piele

de pe

triceps

Insulin

a serica

la 2 ore

Index

masa

corpor

ala

Functie

mostenire

diabet

Varst

a

Clasa

6 148 72 35 0 33.6 0.627 50 1

1 85 66 29 0 26.6 0.351 31 0

8 183 64 0 0 23.3 0.672 32 1

[1] UCI Machine Learning Repository http://archive.ics.uci.edu/ml/

Page 9: Invatare supervizata. Clasificare

Exemple Regresie - Boston housing [1] – 506 instante

Valoarea medie a caselor in mii de dolari americani

Rata

crime

i

Prop

ortia

de

zone

rezid

ential

e

Prop

ortia

de

maga

zine

mici

Rau

in

apro

piere

Conc

entra

tia de

noxe

Numa

rul

medi

u de

came

re

Prop

ortia

de

cladir

i

ridica

te

inaint

e de

1949

Dista

nta

pana

la

centr

ele de

angaj

are

Acces

ibilit

ate

autos

trazi

Taxe Rapo

rtul

elev-

profe

sor

Prop

ortia

de

afro-

ameri

cani

Proce

ntul

popu

latiei

sarac

a

Val

0.00

632

18.0

0

2.31

0

0 0.53

80

6.57

50

65.2

0

4.09

00

1 296.

0

15.3

0

396.

90

4.98 24.0

0

0.02

731

0.00 7.07

0

0 0.46

90

6.42

10

78.9

0

4.96

71

2 242.

0

17.8

0

396.

90

9.14 21.6

0

0.02

729

0.00 7.07

0

0 0.46

90

7.18

50

61.1

0

4.96

71

2 242.

0

17.8

0

392.

83

4.03 34.7

0

[1] UCI Machine Learning Repository http://archive.ics.uci.edu/ml/

Page 10: Invatare supervizata. Clasificare

Modele liniare

Suficient de performante pentru un numar mic de date de

antrenament

Regresie

Modelul liniar

Clasificare

Regresia logistica (Logistic regression)

Masini liniare cu suport vectorial

Page 11: Invatare supervizata. Clasificare

Regresia liniara multipla

m date de antrenament de tipul (X, Y):

X = (X1, X2, …, Xn) un vector de intrare n atribute - variabile independente, explicative, predictive

Y – iesirea (outcome) Variabila dependenta, functie de celelalte variabile, variabila raspuns

Y ia valori continue

Ecuatia de regresie: f(X) = b0 + b1X1+b2X

2 + … + bnXn

b1, b2, …, bn – coeficientii (parametrii) de regresie

b0 – interceptorul, constanta de regresie

Page 12: Invatare supervizata. Clasificare

Estimarea parametrilor

Metoda celor mai mici patrate (least squares)

Determina coeficientii bj, j = 0, 1, 2,…, n, a.i. sa minimizeze

suma reziduurilor la patrat (SR) pentru datele de

antrenament (xi, yi), i = 1, 2, …, m

𝑆𝑅 = 𝑖=1𝑚 (𝑦𝑖 −𝑓(𝑥𝑖))

2

Reziduul (eroarea) este diferenta dintre valoarea de iesire

reala si cea prognozata prin f.

Page 13: Invatare supervizata. Clasificare

Exemplu R – regresie liniara simpla

Problema: estimarea duratei de reparatie a unor componente de calculator (in minute) pe baza numarului de componente de reparat[1]

unitati <- c(1, 2, 3, 4, 4, 5, 6, 6, 7, 8, 9, 9, 10, 10)

minute <- c(23, 29, 49, 64, 74, 87, 96, 97, 109, 119, 149, 145, 154, 166)

# Reprezentam grafic x versus y

plot(unitati, minute)

myModel <- lm(minute ~ unitati)

abline(myModel)

[1] S. Chatterjee, A.S. Hadi, Regression Analysis by Example (4th ed.), Wiley, 2006.

Page 14: Invatare supervizata. Clasificare

Rezultat

e

Y

Ypred

Page 15: Invatare supervizata. Clasificare

Regresia liniara multipla

Problema: Boston housing

In pachetul mlbench ce trebuie instalat si inclus

Iesirea: medv

Functia lm()

#pentru Boston housing

library(mlbench)

mlm <- lm(medv ~ ., data=BostonHousing)

summary(mlm)

Page 16: Invatare supervizata. Clasificare

Rezultate si

interpretare

(1/4)

Modelul este:

Y = 36.46 – 0.11*crim + 0.05*zn + 0.21*indus + 2.69*chas –

17.77*nox + 3.81*rm + 0.0007*age – 1.48*dis + 0.31*rad –

0.01*tax – 0.95*ptratio + 0.009*black – 0.52*lstat

Page 17: Invatare supervizata. Clasificare

Rezultate si interpretare (2/4) Ipoteza: Reziduurile

trebuie sa aiba distributienormala, cu media la 0 sivalorile gresite cat maiaproape de medie si nu la marginea intervalului

Coeficientii de regresie

Eroarea standard a uneicoeficient masoara preciziamodelului in estimareavalorilor necunoscutepentru coeficient (valoaremai mica este mai buna)

Page 18: Invatare supervizata. Clasificare

Rezultate si interpretare (3/4)

Masura a semnificatieivariabilei

*** semnificatie ridicata

Valoarea p cat mai mica

Deviatia standard a reziduurilor – ideal proportionala cu prima sia treia cuantila (1.5 +/-eroarea standard)

Gradele de libertate –diferenta intre numarul de observatii (date) sinumarul de variabile(coeficienti + interceptor)

Page 19: Invatare supervizata. Clasificare

Rezultate si interpretare (4/4)

R2 evalueaza gradul de

potrivire al modelului cu

datele – ideal aproape de

1.

Modelul explica 74% din

variabilitatea originala, iar

26% e din cauza

variabilitatii reziduurilor.

Testul F compara modelul

cu toti parametrii cu unul

cu mai putini.

Valorea p sugereaza ca

modelul cu toti e potrivit.

Page 20: Invatare supervizata. Clasificare

Alte ipoteze asupra modelului de regresie

1. ValorileY trebuie sa fie exprimate ca o functie liniara a

variabilelor X.

2. Variatia observatiilor in jurul dreptei de regresie este

constanta (homoscedasticitate).

3. ValorileY (sau erorile) au o distributie normala.

Toate aceste ipoteze pot fi verificate examinand reziduurile [1].

[1] Mike Marin, Checking Linear Regression Assumptions in R, https://www.youtube.com/watch?v=eTZ4VUZHzxw

Page 21: Invatare supervizata. Clasificare

Grafice de diagnostic

(1/4)

R poate plota graficele de

diagnostic pentru

modelul pe care l-am

potrivit datelor.

Util in mod special cand

regresia este multipla

Nu este posibila

vizualizarea grafica a

modelului

Adaugam la program:

par(mfrow=c(2,2))

plot(mlm, which=1:4)

Page 22: Invatare supervizata. Clasificare

Grafice de diagnostic

(2/4)1. Graficul reziduurilor vs.

valorileY prognozate

verifica liniaritatea si

homoscedasticitatea

modelului.

i. Liniaritate – linia rosie ar

trebui sa fie aprox.

orizontala, fara curburi

ii. Homoscedasticitate –

varianta observatiilor in

jurul dreptei y=0 este

constanta (constant

variance).

Page 23: Invatare supervizata. Clasificare

Grafice de diagnostic

(3/4)

2. Verificarea ipotezei de

normalitate a

distributiei

reziduurilor (normal

errors)

i. Punctele ar trebui sa

cada pe o linie

diagonala.

3. O alta verificare a

liniaritarii si

homoscedasticitatii.

ii. Reziduurile pentru

fiecare atribut sunt

standardizate

Page 24: Invatare supervizata. Clasificare

Grafice de diagnostic

(4/4)

4. Distanta Cook este o

masura a influentei

fiecarei date asupra

coeficientilor de

regresie.

i. Masoara marimea

schimbarii modelului

daca data respectiva este

omisa.

ii. Orice data pentru care

distanta Cook este >=1

sau mult mai mare decat

pentru celelalte puncte

e influenta pentru

model.

Page 25: Invatare supervizata. Clasificare

Predictia pe date noi

#medv = 12.70

nou <- data.frame(crim = 1.13081, zn = 0.00, indus = 8.140, chas = 0, nox = 0.5380, rm = 5.7130, age = 94.10, dis = 4.2330, rad = 4, tax = 307.0, ptratio = 21.00, black = 360.17, lstat = 22.60)

predict(mlm, nou)

Page 26: Invatare supervizata. Clasificare

Regresia logistica

m date de antrenament de tipul (X, Y):

X = (X1, X2, …, Xn) un vector de intrare

Y – iesirea (outcome)

Y variabila binara (2 clase)

Problema de clasificare

Regresia logistica

Forma similara cu regresia

Sens diferit

Predictie asupra unei transformari a luiY

Page 27: Invatare supervizata. Clasificare

Regresia logistica

Transformarea logit

p – proportia de date cu o anumita caracteristica

Ex.: proportia pacientilor cu diagnostic pozitiv pentru o boala

logit 𝑦 = ln𝑝

1−𝑝

p – proportia datelor de clasa y

1-p – proportia datelor de clasa opusa

Modelul logit presupune ca noua iesire este o combinatie liniara

a variabilelor predictive

logit(y) = 𝛼 = b0 + b1X1+b2X

2 + … + bnXn

Page 28: Invatare supervizata. Clasificare

Regresia logistica

De indata ce rezolvam problema

Calculam 𝛼 pentru un exemplu nou

p=𝑒𝛼

1+𝑒𝛼pentru un exemplu nou

Daca p>= 0.5 atunci clasa = 1; altfel clasa = -1

p – probabilitatea de a apartine primei clase

Ex.: probabilitatea ca un pacient sa fie diagnosticat pozitiv

Estimarea parametrilor

Metoda verosimilitatii maxime (maximum likelihood)

Page 29: Invatare supervizata. Clasificare

Functia glm() in R

glm - generalized linear model – model liniar generalizat (non-

normal errors, non-constant variance)

Trebuie setat family = binomial pentru ca R sa apeleze regresia

logistica.

#pentru Pima Indians Diabetes

library(mlbench)

mlr <- glm(diabetes ~ ., family=binomial,

data=PimaIndiansDiabetes)

summary(mlr)

Page 30: Invatare supervizata. Clasificare

Rezultate si

interpretare

(1/5)

Modelul este:

logit(p)=-8.40 + 0.12*pregnant + 0.03*glucose - 0.01*pressure +

0.0006*triceps – 0.001*insulin + 0.09*mass + 0.95 * pedigree + 0.01

* age

Page 31: Invatare supervizata. Clasificare

Rezultate si interpretare (2/5)

Masura a semnificatiei

variabilei

O valoare z mai mare

decat 2 in modul e

semnificativ la nivelul de

p = 0.05.

Coeficientul pentru o

variabila (ca argument al

functiei exponentiale) da

schimbarea proportionala

in variabila raspuns

pentru o schimbare cu o

unitate a valorii variabilei.

Page 32: Invatare supervizata. Clasificare

Rezultate si interpretare (3/5)

Potrivirea modelului se poate determina princalculul diferentei privinddevianta reziduala (residual deviance) dintre un model cu predictori fata de modelul nul (doar cu interceptor).

Se aplica testul chi-patratcu gradele de libertate date de diferenta intre gradelemodelului curent si ale celui nul (i.e. numarul de variabile predictive).

Page 33: Invatare supervizata. Clasificare

Rezultate si interpretare (4/5)with(mlr, null.deviance - deviance)

with(mlr, df.null - df.residual)

with(mlr, pchisq(null.deviance - deviance, df.null -

df.residual, lower.tail = FALSE))

Valoarea p obtinuta confirma faptul ca modelul este

semnificativ mai bun decat unul nul.

Page 34: Invatare supervizata. Clasificare

Rezultate si interpretare (5/5) AIC (Akaike information

criterion) este folosit

pentru a compara mai

multe modele pentru

aceeasi multime de date.

Avand astfel si alte

modele (in viitor), vom

putea compara valoarea

AIC de 741.45 cu ale

celorlalte, cel cu valoarea

minima fiind

castigatorul.

Page 35: Invatare supervizata. Clasificare

Predictia pe date noi p>=0.5, clasa=0; altfel clasa=1

# caz pozitiv cf bazei de date

nou <- data.frame(pregnant=11, glucose=143, pressure=94, triceps=33, insulin=146, mass=36.6, pedigree=0.254, age=51)

predict(mlr, nou, type="response")

# caz negativ

nou2 <- data.frame(pregnant=13, glucose=145, pressure=82, triceps=19, insulin=110, mass=22.2, pedigree=0.245, age=57)

predict(mlr, nou2, type="response")

Page 36: Invatare supervizata. Clasificare

Predictia pe date noi p>=0.5, clasa=0; altfel clasa=1

# inca un caz negativ

nou3 <- data.frame(pregnant=0, glucose=102, pressure=78, triceps=40,

insulin=90, mass=34.5, pedigree=0.238, age=24)

predict(mlr, nou3, type="response")

Page 37: Invatare supervizata. Clasificare

Exercitii

Implementati in R un model liniar pentru predictia

cuantumului bacsisului de la restaurant conform problemei

7.1 Tips, pagina 153 [1].

Aplicati in R un model de regresie logistica pentru

discriminarea intre o piesa rock si una clasica conform

problemei 7.12 Music, pagina 171 [1].

[1] Dianne Cook, Deborah F. Swayne, Graphics for Data Analysis. Interactive and Dynamic With R and Ggobi, Springer, 2007