invatare supervizata. clasificareinf.ucv.ro/documents/rstoean/invataresupervizata.pdf · invatare...

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

Upload: others

Post on 28-Jan-2020

36 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Ruxandra Stoean

[email protected]

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

Invatare supervizata. Modele liniare

Page 2: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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, categoriale ordonate) [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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Clasificare

A

A

B

?

Intrari Iesir

i

Asocier

e

Page 4: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Regresie

0.

2

?

Intrari Iesir

i

Asocier

e

0.

4

0.

9

Page 5: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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) estedescrisa 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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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 si iesirea 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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Exemple

Clasificare – Pima Indians diabetes [1]

Clasa: pozitiv pentru diabet (clasa 0) – 268 de cazuri

negativ (clasa 1) – 500 de cazuri

Numar

sarcin

i

Conce

ntratie

glucoz

a la 2

ore

Presiu

ne

diasto

lica a

sangel

ui

Grosi

me

cutelo

r de

piele

de pe

tricep

s

Insuli

na

serica

la 2

ore

Index

masa

corpor

ala

Functie

mostenir

e diabet

Varst

a

Clas

a

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Exemple Regresie - Boston housing [1] – 506 instante

Valoarea medie a caselor in mii de dolari americani

Rata

crim

ei

Prop

ortia

de

zone

rezid

entia

le

Prop

ortia

de

mag

azine

mici

Rau

in

apro

piere

Conc

entra

tia

de

noxe

Num

arul

medi

u de

cam

ere

Prop

ortia

de

cladi

ri

ridic

ate

inain

te de

1949

Dista

nta

pana

la

centr

ele

de

anga

jare

Acce

sibili

tate

auto

straz

i

Taxe Rapo

rtul

elev-

profe

sor

Prop

ortia

de

afro-

amer

icani

Proc

entul

popu

latiei

sara

ca

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Estimarea parametrilor

Metoda celor mai mici patrate (least squares)

Determina coeficientii bj, j = 0, 1, 2,…, n, a.i. saminimizeze suma reziduurilor la patrat (SR) pentru datele de antrenament (xi, yi), i = 1, 2, …, m

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

2

Reziduul (eroarea) este diferenta dintre valoareade iesire reala si cea prognozata prin f.

Page 13: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Exemplu R – regresie liniara simpla

Problema: estimarea duratei de reparatie a unorcomponente de calculator (in minute) pe baza numaruluide 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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Rezultat

e

Y

Ypred

Page 15: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Rezultate si interpretare (2/4) Ipoteza: Reziduurile

trebuie sa aibadistributie normala, cu media la 0 si valorilegresite cat mai aproapede medie si nu la marginea intervalului

Coeficientii de regresie

Eroarea standard a uneicoeficient masoaraprecizia modelului in estimarea valorilornecunoscute pentrucoeficient (valoare maimica este mai buna)

Page 18: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Rezultate si interpretare (3/4) Masura a semnificatiei

variabilei *** semnificatie ridicata Valoarea p cat mai

mica

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

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

Page 19: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Rezultate si interpretare (4/4) R2 evalueaza gradul de

potrivire al modeluluicu datele – ideal aproape de 1.

Modelul explica 74% din variabilitateaoriginala, iar 26% e din cauza variabilitatiireziduurilor.

Testul F comparamodelul cu totiparametrii cu unul cu mai putini. Valorea p sugereaza

ca modelul cu toti e potrivit.

Page 20: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Alte ipoteze asupra modelului de regresie

1. Valorile Y trebuie sa fie exprimate ca o functie

liniara a variabilelor X.

2. Variatia observatiilor in jurul dreptei de regresie

este constanta (homoscedasticitate).

3. Valorile Y (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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Grafice de diagnostic

(1/4)

R poate plotagraficele de diagnostic pentrumodelul pe care l-am potrivit datelor.

Util in mod special cand regresia estemultipla Nu este posibila

vizualizarea graficaa modelului

Adaugam la program:

par(mfrow=c(2,2))

plot(mlm, which=1:4)

Page 22: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Grafice de diagnostic

(2/4)1. Graficul reziduurilor

vs. valorile Y prognozate verificaliniaritatea sihomoscedasticitateamodelului.

i. Liniaritate – linia rosiear trebui sa fie aprox. orizontala, faracurburi

ii. Homoscedasticitate –varianta observatiilorin jurul dreptei y=0 este constanta(constant variance).

Page 23: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Grafice de diagnostic

(3/4)

2. Verificarea ipotezeide normalitate a distributieireziduurilor(normal errors)

i. Punctele ar trebuisa cada pe o liniediagonala.

3. O alta verificare a liniaritarii sihomoscedasticitatii.

ii. Reziduurile pentrufiecare atribut suntstandardizate

Page 24: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Grafice de diagnostic

(4/4)

4. Distanta Cook esteo masura a influentei fiecareidate asupracoeficientilor de regresie.

i. Masoara marimeaschimbariimodelului dacadata respectivaeste omisa.

ii. Orice data pentrucare distanta Cook este >=1 sau multmai mare decatpentru celelaltepuncte e influentapentru model.

Page 25: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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 lui Y

Page 27: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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 + b1X

1+b2X2 + … + bnX

n

Page 28: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Functia glm() in R

glm - generalized linear model – model liniargeneralizat (non-normal errors, non-constant variance)

Trebuie setat family = binomial pentru ca R saapeleze regresia logistica.

#pentru Pima Indians Diabetes

library(mlbench)

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

summary(mlr)

Page 30: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Rezultate si interpretare (2/5) Masura a semnificatiei

variabilei

O valoare z mai mare decat 2 in modul e semnificativ la nivelulde p = 0.05.

Coeficientul pentru o variabila (ca argument al functieiexponentiale) da schimbareaproportionala in variabila raspunspentru o schimbare cu o unitate a valoriivariabilei.

Page 32: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Rezultate si interpretare (3/5) Potrivirea modelului se

poate determina princalculul diferenteiprivind deviantareziduala (residual deviance) dintre un model cu predictori fata de modelul nul (doar cu interceptor).

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

Page 33: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

Rezultate si interpretare (5/5) AIC (Akaike

information criterion) este folosit pentru a compara mai multemodele pentruaceeasi multime de date.

Avand astfel si altemodele (in viitor), vomputea comparavaloarea AIC de 741.45 cu ale celorlalte, cel cu valoarea minima fiindcastigatorul.

Page 35: Invatare supervizata. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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. Clasificareinf.ucv.ro/documents/rstoean/Invataresupervizata.pdf · Invatare supervizata Concept Date de intrare cu iesiri puse la dispozitie De invatat modul

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