• No se han encontrado resultados

Métodos de suavizado eficientes con P-splines. Universidad Carlos III de Madrid

N/A
N/A
Protected

Academic year: 2022

Share "Métodos de suavizado eficientes con P-splines. Universidad Carlos III de Madrid"

Copied!
92
0
0

Texto completo

(1)

M´etodos de suavizado eficientes con P-splines

Mar´ıa Durb´ an

Universidad Carlos III de Madrid

(2)

´ Indice general

1. Introducci´on 3

1. Modelos lineales generalizados . . . 6

1.1. La familia exponencial . . . 9

1.2. Estimaci´on de Modelos Lineales Generalizados . . . 10

2. M´etodos de suavizado 13 1. Regresi´on polinomial local: Lowess/Loess . . . 15

2. Suavizado con kernels . . . 17

3. Splines . . . 18

3.1. N´umero y posici´on de los nodos . . . 18

3.2. Splines de suavizado (smoothing splines) . . . 19

3. Splines con penalizaciones (P-splines) 23 1. Bases y Penalizaciones . . . 23

1.1. Bases y nodos . . . 25

1.2. Penalizaciones y coeficientes . . . 28

1.3. Estimaci´on de par´ametros y grados de libertad . . . 31

1.4. Selecci´on del par´ametro de suavizado . . . 32

2. P-splines como modelos mixtos . . . 33

3. P-splines para datos multidimensionales . . . 35

3.1. P-splines multidimensionales como modelos mixtos . . . 37

4. Modelos additivos generalizados . . . 40

4.1. Modelos aditivos generalizados con P-splines . . . 40

4.2. Inferencia sobre las funciones suaves . . . 40

4. Software 42 5. Aplicaciones 49 1. Modelos Aditivos . . . 49

1.1. Ejemplo: Calidad del aire . . . 49

2. Modelos Semiparam´etricos . . . 60

3. P-splines para datos longitudinales . . . 64

3.1. Modelo con ordenada en el origen aleatoria . . . 64

3.2. Modelo aditivo mixto . . . 66

3.3. Modelo con diferencias individuales lineales . . . 67

(3)

3.4. Interacci´on de curva por factor . . . 69

3.5. Curvas espec´ıficas para cada individuo . . . 71

4. Datos correlados . . . 75

5. Datos multidimensionales . . . 77

5.1. Ejemplo 1: Tendencias espaciales en experimentos de campo . . . 77

5.2. Ejemplo 2: An´alisis de datos de mortalidad . . . 79

5.3. Ejercicio: Infecci´on post-operatoria . . . 82

5.4. Ejercicio: Kiphosis data . . . 84

5.5. Ejemplo 3: Aplicaciones en disease mapping . . . 85

(4)

Cap´ıtulo 1 Introducci´ on

Un modelo lineal es deseable porque es simple de ajustar, se entiende f´acilmente, y exis- ten muchas t´ecnicas disponibles para contrastar las hip´otesis del modelo. Sin embargo, en muchos casos, los datos no est´an relacionados de forma lineal, por lo que no tiene sentido utilizar los modelos de regresi´on lineal.

Un modelo de regresi´on no-lineal cl´asico tendr´ıa la siguiente forma:

y = f (Xβ) + 

donde β = (β1, . . . βp)0 es un vector de par´ametros, que han de ser estimados, y X es la matriz que contiene las variables predictoras. La funci´on f (.), relaciona el valor medio de la variable respuesta y con las variables predictoras, y su forma est´a especificada a priori . Por ejemplo, en muchos modelos biol´ogicos, existe una dependencia de tipo exponencial:

f (Xβ) = eβ01x.

Pero en algunas situaciones, la estructura de los datos es tan complicada que es muy dif´ıcil encontrar una funci´on que estime la relaci´on existente de forma correcta (ver por ejemplo la siguiente figura):

Una posible soluci´on es: regressi´on no-param´etrica. El modelo general de regresi´on no-param´etrica ise escribe de forma similar al anterior, pero f no tiene una forma expl´ıcita:

y = f (X) +  = f (x1, . . . xp) + 

La mayor´ıa de los m´etodos de regresi´on no-param´etrica asumen que f (.) es una funci´on continua y suave, y que i ∼ NID(0, σ2) (aunque esto ´ultimo puede relajarse de forma sencilla).

Un caso importante de el modelo general, es la regresi´on no-param´etrica simple, donde s´olo hay una variable predictora

y = f (x) + 

A la regresi´on no-param´etrica simple tambi´en se le llama Nonparametric simple regression is often called scatterplot smoothing, porque una aplicaci´on importante es dibujar una curva an un diagrama de y sobre x.

(5)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−1

−0.5 0 0.5 1

Fixed weights of differences

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−1

−0.5 0 0.5 1

Exponentially varying weights of differences

Figure 13: Smoothing of simulated data (dots) with and without exponentially varying weights on the differences in the penalty. Upper: uniform weights; lower:

varying weights. Parameters optimized with grid search and leave-one-out cross- validation. Full line: fitted curve (100 cubic B-splines, second order penalty); broken line: true curve.

position k. It follows, for large λ, ˆα will be a smooth series, except for a kink at position k. If both v

k

and v

k−1

are zero, ˆα will be smooth, except for a jump at α

k

. Depending on the number of knots, the kink or jump will show up in a more or less smoothed way in the fitted curve. Of course, combinations of multiple kinks and jumps can be introduced this way.

In some application a gradually changing smoothness may be sufficient. This can be accomplished by taking v

k

= e

γk

. Both λ and γ are optimized by cross-validation or AIC. Of course, this applies equally well to TPF. An example of smoothing with an exponential change of the weights in the penalty is shown in Figure 13, using simulated data: a sine function with changing frequency and amplitude. If we use uniform weights and optimize λ with leave-one-out cross-validation (which gives optimal λ

?

= 0.1), we get a result that gives rather strong fluctuations of the fitted curve in the low-frequency part and misses the data in the high-frequency part. If we introduce weights e

γk

and optimize both γ and λ, we get a more reasonable result.

A grid search gave (approximate) optimal values γ

?

= 0.2 and λ

?

= 3 × 10

−4

. This means that, with the 100 knots used here, the largest weight is about 5 × 10

8

times larger than the smallest.

Sometimes it is fruitful to have multiple difference penalties, of different orders, or to add an extra ridge penalty. Marx and Eilers (2002) found, in the context of multivariate calibration by penalized signal regression, markedly improved cross- validation behavior. Aldrin (2006) investigated the use of both first and second order penalties in additive models based on P-splines, and found improved prediction.

Figura 1: Figura cortes´ıa de Paul Eilers (Splines, knots and penalties, 2011) Ejemplo: Calidad del aire

Los datos curresponden a medias de la calidad del aire en Nueva York de Mayo a Sep- tiembre de 1979, Las variables son:

Ozone: Cantidad de ozono media en partes por billon entre las 13:00 y las 15:00 horas en la Isla de Roosvelt

Solar.R: Radiaci´on solar (en Langleys) entre las 08:00 y las 12:00 en Central Park wind: Velocidad media del viento (en millas por hora) entre las 07:00 y las 10:00 en el aeropuerto de la Guardia

Temp: Temperatura m´axima (en grados Fahrenheit) en el aeropuerto de la Guardia Empezamos por ajustar el siguiente modelo:

Ozone = β0+ β1× T emp + β2× W ind + β3× Solar.R + ε aire.lm=lm(Ozone~Temp+Wind+Solar.R,data=airquality)

Coefficients:

Estimate Std. Error t value Pr(>|t|) (Intercept) -64.34208 23.05472 -2.791 0.00623

Temp 1.65209 0.25353 6.516 2.42e-09

Wind -3.33359 0.65441 -5.094 1.52e-06 Solar.R 0.05982 0.02319 2.580 0.01124 ---

Residual standard error: 21.18 on 107 degrees of freedom (42 observations deleted due to missingness)

Multiple R-squared: 0.6059, Adjusted R-squared: 0.5948 F-statistic: 54.83 on 3 and 107 DF, p-value: < 2.2e-16

4

(6)

En principio todas las variables son significativas, aunque el R2 es bajo. Hacemos un gr´afico de los efectos lineales parciales: Los resultados sin, aparentemente coherentes: a m´as tem-

60 70 80 90

−40−2002040

Temp

Partial for Temp

5 10 15 20

−40−2002040

Wind

Partial for Wind

0 100 250

−40−2002040

Solar.R

Partial for Solar.R

Figura 2: Gr´afico de efectos lineales parciales

peratura y m´as radiaci´on solar m´as ozono, y al contrario cuando aumenta la velocidad del viento. Pero algo no funciona ya que el R2 = 0,59. Si hacemos gr´aficos de residuos:

par(mfrow=c(1,2))

plot(aire.lm,which=1:2)

−20 0 20 40 60 80 100

−50050100

Fitted values

Residuals

●●

●●

●●

Residuals vs Fitted

117

3062

●●

●●

−2 −1 0 1 2

−2−1012345

Theoretical Quantiles

Standardized residuals

Normal Q−Q

117

3062

Figura 3: Gr´aficos de residuos

¿Qu´e nos dicen estos gr´aficos?.

Podemos ver de otra forma si los datos siguen una distribuci´on Normal:

(7)

hist(airquality$Ozone) hist(log(airquality$Ozone))

Histogram of airquality$Ozone

airquality$Ozone

Frequency

0 50 100 150

0102030

Histogram of log(airquality$Ozone)

log(airquality$Ozone)

Frequency

0 1 2 3 4 5

05101520

Figura 4: Histograma de datos originales y transformados

Podemos repetir el modelo con la variable transformada y analizar de nuevo los residuos:

aire2.lm=lm(log(Ozone)~Temp+Wind+Solar.R,data=airquality) summary(aire2.lm)

Coefficients:

Estimate Std. Error t value Pr(>|t|) (Intercept) -0.2621323 0.5535669 -0.474 0.636798 Temp 0.0491711 0.0060875 8.077 1.07e-12 Wind -0.0615625 0.0157130 -3.918 0.000158 Solar.R 0.0025152 0.0005567 4.518 1.62e-05 ---

Residual standard error: 0.5086 on 107 degrees of freedom Multiple R-squared: 0.6644, Adjusted R-squared: 0.655 F-statistic: 70.62 on 3 and 107 DF, p-value: < 2.2e-16 plot(aire2.lm,which=1:2)

A´un hay algo que no funciona.... ¿Qu´e pasa si hacemos un gr´afico entre el Ozono y el viento?.

1. Modelos lineales generalizados

Los modelos lineales generalizados (GLMs) extienden el modelo lineal para acomodar las variables respuestas que no siguen una distribuci´on Normal, bajo un enfoque unificado. Es

(8)

1.5 2.0 2.5 3.0 3.5 4.0 4.5

−2−101

Fitted values

Residuals

●●

Residuals vs Fitted

21 24

117

●●

●●

●●

−2 −1 0 1 2

−4−3−2−10123

Theoretical Quantiles

Standardized residuals

Normal Q−Q

21

24 117

Figura 5: Gr´afico de residuos con los valores transformados

bastante com´un encontrarse en siatuaciones en las que la variable resuesta no cumple las hip´otesis est´andar del modelo lineal (datos Normales, varianza constante, etc.), por ejemplo:

datos de conteo, datos dicot´omicos, datos truncados, etc. Los GLMs se basan en la teor´ıa de Nelder and Wedderburn (1972) y McCullagh and Nelder (1989), desde entonces, con los avances del software estad´ıstico, estos modelos se han convertido en una herramienta b´asica para muchos investigadores.

Hay dos temas fundamentales en la noci´on de los modelos lineales generalizados: la distri- buci´on de la variable respuesta, y c´omo el modelo establece la relaci´on entre la media de la variable respuesta y las variables explicativas. variables.

Ejemplo de motivaci´on: Experimento de toxicidad

El experimento intenta establecer la relaci´on entre la concentraci´on de un agente t´oxico (nicotina) y el n´umero de insectos (mosca de la fruta) que mueren: Los datos siguen una

x

Concentraci´on n y

(g/100cc) N´umero de insectos N´umero de muertos Porcentaje de muertos

0.1 47 8 17.0

0.15 53 14 26.4

0.20 55 24 43.6

0.30 52 32 61.5

0.50 46 38 82.6

0.70 54 50 92.6

0.95 52 50 96.2

Cuadro 1: Datos del experimento de toxicidad

(9)

distribuci´on Binomial

yi ∼ B(ni, pi) E[yi] = nipi(xi) V ar[yi] = nipi(1− pi)

Claramente, la varianza y la media est´an relacionadas entre s´ı, y tambi´en con las variables predictoras. Usando regresi´on lineal ordinaria para predecir el procentaje de moscas que mueren, estar´ıamos asumiendo que los datos vienen de una distribuci´on Normal, lo que es falso, y adem´as, con este tipo de datos tenemos la siguiente restricci´on: 0 ≤ pi ≤ 1, la cual no es tenida en cuenta en el modelo de regresi´on. Ajustando el modelo pi = β0+ β1xi + εi obtenemos

(lm(perc~Concentration))$fitted

1 2 3 4 5 6

0.3066231 0.3532890 0.3999550 0.4932869 0.6799507 0.8666145

7 1.0999442

El valor ajustado del ´ultimo punto es mayor que 1!!!. Adem´as, como se ve en la Figura 6, el modelo es claramente no-lineal

0.2 0.4 0.6 0.8

0.20.40.60.8

x

perc

Figura 6: Gr´afico de la concentraci´on de nicotina frente al procentaje de animales muertos y la recta ajustada.

Aqu´ı hemos usado un modelo de regresi´on ordinario:

y(= π) = Xβ + ε E[y|x] = Xβ

(10)

Dado que la probabilidad s´olo toma valores en el intervalo (0, 1). Podemos buscar una nueva forma de representar E[y—x], de modo que la probabilidad est´e en (0, 1). Una forma de conseguirlo es utilizar la funci´on log´ıstica:

π = e

1 + e = 1 1 + e−Xβ y

Xβ = log

 π

1− π



Es decir, Xβ = g(E[y|x]) 6= E[y|x]. La idea es relacionar una transformaci´on de la media de los datos, µ = E[y|x] con las variables explicatibas X.

1.1. La familia exponencial

Un concepto importante que unifica todos los GLms es la familia exponencial de distribuciones . Todas las distribuciones pertenecientes a la familia exponencial tiene una funci´on de densidad (o de probabilidad) que se puede expresar de la siguiente forma:

f (y; θ, φ) = exp yθ− b(θ)

a(φ) + c(y, φ)



(1.1) donde, en cada caso, a(.), b(.) y c(.) ser´an funciones espec´ıficas. El par´ametro θ es lo que se llama par´ametro can´onico de localizaci´on y φ es un par´ametro de dispersi´on. La distribucion Binomial, Poisson y Normal (entre otras) son miembros de la familia exponencial.

Componentes de un modelo lineal generalizado En un modelo de regresi´on est´andar:

y = Xβ + ε ε∼ N(0, σ2I) E(y) = µ = Xβ

donde Xβ es una combinaci´on lineal de las variables predictoras llamada predictor lineal (el cual se representa como η), en este caso la media µ est´a directamente relacionada con el predictor lineal, ya que en este caso µ = η. Usando este modelo sencillo, podemos ver que hay dos componentes en el modelo: la funci´on de probabilidad de la variable respuesta y la estructura lineal del modelo. En general, un modelo lineal generalizado tendra los siguientes componentes:

1. Componente aleatorio: y es un vector aleatorio procedente de una distribuci´on que pertenece a la familia exponencial y cuya media es µ.

2. Componente sistem´atico: es el predictor lineal η = Xβ.

3. La funci´on link : es una funci´on mon´otona, derivable que establece la relaci´on entre la media y el predictor lineal

η = g(µ) E(y) = µ = g−1(η) (1.2)

(11)

En el caso del modelo de regresi´on ordinaria, µ = η, por lo tanto la funci´on link es la identidad. Hay muchas opciones par la funci´on link. La funci´on link canonica es una funci´on que transforma la media en el par´ametro can´onico θ

η = g(µ) = θ⇒ g es una funci´on link can´onica Hay muchas opciones par la funci´on link.

Distribuci´on Link

Normal η = µ (identidad)

Binomial η = ln 1−PP  (logist´ıstica) Poisson η = ln(µ) (logar´ıtmica) Exponential η = µ (rec´ıproca)1 Gamma η = µ (rec´ıproca)1

Cuadro 2: Funciones link m´as usadas en los GLMs

DISTRIBUCIÓN RESPUESTA EJEMPLOS

La respuesta es continua Longitudes y pesos ( de peces, crustáceos,  moluscos )

Gaussiana La distribución de los datos es  simétrica

moluscos...)

Diámetros (árboles, erizo de mar)

Temperatura, salinidad, altura de las olas,…

La respuesta es continua (no 

negativa) Abundancias expresadas como porcentaje.

Gamma negativa)

la distribución de los datos es  asimétrica

Porcentaje de percebe por unidad de  muestreo, cobertura algal,…

La respuesta es categórica (binaria) Presencia de una especie  Binomial La respuesta es categórica (binaria) 

Presenta 2 niveles de respuesta  (0/1)

(0=ausencia,1=presencia)

Sexo (0=macho, 1=hembra),…

La respuesta es discreta (0,1,2,…)

Recuento de un suceso en el tiempo Nº de capturas por mes.

Poisson Recuento de un suceso en el tiempo,  espacio, volumen.

Varianza=Media.

Nº de individuos por unidad de muestreo.

Nº de individuos por hectárea,..

La respuesta es discreta (0 1 2 ) Binomial Negativa

La respuesta es discreta (0,1,2,…)

Presencia de sobredispersión:

Varianza>Media

Similares a Poisson, presentado  sobredispersión.

ZIP La respuesta es discreta (0 1 2 )

Frecuencia de especies escasas, raras o difíciles  de muestrear

ZIP (Zero‐Inflated Poisson)

La respuesta es discreta (0,1,2,…)

Exceso de ceros.

de muestrear

Abundancia de especies en estudios  multiespecíficos

La respuesta es categórica 

(multinomial) índices de abundancia “cualitativos”

Multinomial (multinomial)

Presenta K≥2 niveles de respuesta  (0,..,K) 

índices de abundancia  cualitativos 0=bajo, 1=medio, 2=alto, 3=muy alto.

Figura 7: Distribuciones m´as comunes

(12)

1.2. Estimaci´ on de Modelos Lineales Generalizados

En el caso de la familia exponencial, dado un vector de observaciones y = (yi, y2, . . . , yn)0. El logaritmo de la verosimilitud es

l(θ|y) =

n

X

i=1

((yiθi− b(θi)/a(φ) + c(yi, φ)) (1.3)

Cuando usamos el link can´onico: θ = η = Xβ, de modo que podemos estimar los par´ametros de inter´es β: Por lo tanto, la funci´on score:

∂l

∂β = ∂l

∂θi

∂θi

∂β Es posible probar que:

∂l

∂β =

n

X

i=1

(yi− µi) g0i)Vi xi donde Vi = V ar(yi) = a(φ)b00i).

Necesitamos igualar esa ecuaci´on a cero, pero no existe una soluci´on exacta, y utlizamos una versi´on de algoritmo de Newton-Rapson, llamado Fisher Scoring Algorithm. Es un al- goritmo iterativo cuya soluci´on es:

βnew= (X0W X)−1X0W z

donde z = Xβold+ (y− µold)g0old) (llamado working vector ), y W es una matriz diagonal cuyos elementos wii = 1/g0i).

En la p´agina web: http://halweb.uc3m.es/esp/Personal/personas/durban/esp/web/

GLM/GLM.html se encuentra el material de mi curso sobre GLM.

Ejemplo : Riesgo de infecci´on post-quir´urgica

Utlizamos los datos del archivo POI.txt que contiene informaci´on de un estudio de sobre el riesgo de infecci´on postquir´urgica en pacientes con diabletes. Las variables son:

poi, presencia de infecci´on age, edad en a˜nos

gender, sexo

gluc, nivel de glucosa

Para este ejemplo vamos a utilizar solo el nivel de glucosa como variable predictora log

 p

1− p



= β0+ β1gluc

(13)

POI=read.table("POI.txt", header=TRUE)

poi.glm=glm(poi~gluc, family=binomial,data=POI) summary(poi.glm)

Coefficients:

Estimate Std. Error z value Pr(>|z|) (Intercept) -2.514401 0.171859 -14.631 < 2e-16 ***

gluc 0.009592 0.001380 6.952 3.6e-12 ***

---

Null deviance: 2335.6 on 2350 degrees of freedom Residual deviance: 2289.5 on 2349 degrees of freedom AIC: 2293.5

50 100 150 200 250 300

−0.50.00.51.01.52.0

gluc

Partial for gluc

Para comprobar si el nivel de glucosa es significativo:

anova(poi.glm,test="Chi")

Df Deviance Resid. Df Resid. Dev Pr(>Chi)

NULL 2350 2335.6

gluc 1 46.13 2349 2289.5 1.107e-11 ***

El modelo nos dice:

ˆ p

1− ˆp= e−2,5+ e0,009

¿Cu´anto aumenta la posibilidad de tener una infecci´on al aumentar en 5 unidades la cantidad de glucosa?

(14)

Cap´ıtulo 2

M´ etodos de suavizado

Aunque los modelos GLM son bastante flexibles ya que pueden ajustarse para gran variedad de distribuciones, estos modelos asumen que la influencia de las variables continuas en la variable respuesta es lineal, es decir:

η = β0+ β1x

pero en muchas ocasiones el efecto de x puede tener una forma desconocida:

η = β0+ f (x)

Una primera aproximaci´on ser´ıa utilizar regresi´on polin´omica:

= β0+ β1x + β2x2+ . . . + βpxp Ejemplo: datos de pretigio

El siguiente conjunto de datos contiene datos sobre el nivel de prestigio que tienen 102 profesiones en Canada en los a˜nos 70. Las variables son:

prestige: prestigio medio, con rango de 0 a 100 income: salario medio de cada profesi´on, en d´olares.

education: N´umero medio de a˜nos de educaci´on.

type: Una variable categ´orica con tres niveles:

• bc (directivos)

• wc (obreros)

• prof (profesionales liberales)

(15)

Ejemplo : Prestigio

Podemos estar interesados en ajustar un polinomio a la relaci´on el salario medio y el pretigio, en el archivo poli.R

library(car)

plot(Prestige$income, Prestige$prestige,xlab="sueldo",ylab="Prestigio") prestigio1.fit<-lm(prestige~income,data=Prestige)

Prestige2 <- data.frame(income =seq(min(Prestige$income),max(Prestige$income),1)) lines(Prestige2$income,predict(prestigio1.fit,Prestige2),lty=1,col="black",lwd=2) prestigio2.fit<-lm(prestige~poly(income,2),data=Prestige)

lines(Prestige2$income,predict(prestigio2.fit,Prestige2),lty=2,col="blue",lwd=2) prestigio6.fit<-lm(prestige~poly(income,3),data=Prestige)

lines(Prestige2$income,predict(prestigio3.fit,Prestige2),lty=3, col="red",lwd=2) legend(17500,40,c("p=1", "p=2","p=3"),col=c("black","blue","red"), lty=c(1,2,3), lwd=2)

●●

0 5000 10000 15000 20000 25000

20406080

sueldo

Prestigio

p=1 p=2 p=3

Una opci´on m´as flexible es el uso de un suavizador o smoother es una herramienta que representa la tendencia de la variable respuesta y como funci´on de uno o m´as predictores lineales x. Ya que es una estimaci´on de la tendencia, tendr´a menos variabilidad que y, por eso se le llama suavizador (en este sentido, incluso la regresi´on lineal es una suavizador llevado al extremo).

Hay diversas formas de realizar la regresi´on no param´etrica, pero todas ellas tienen en com´un que se basan en los propios datos para especificar la forma que tiene el modelo: la curva en un punto dado s´olo depende de las observaciones en ese punto y de las observaciones vecinas.

Est´as son algunas de las t´ecnicas de regresi´on no-param´etrica existentes

(16)

1. Regresi´on polinomial local con pesos, lowess.

2. Kernels 3. Splines

4. Splines con penalizaciones (Psplines)

1. Regresi´ on polinomial local: Lowess/Loess

La idea de regresi´on local fue propuesta por Cleveland (1979). Intentamos ajustar el modelo,

yi = f (xi) + i siguiendo los siguientes pasos:

1. definimos el ancho de ventana (m): Incluye a los vecinos m´as cercanos. En este ejemplo utilizamos m = 50, es decir, para cada punto selecionamos los 50 vecinos m´as cercanos (una ventana que incluye a los 50 vecinos de x(80) se muestra en la Figura 2(a)).

0 5000 15000 25000

20406080

(a)

Average Income

Prestige

●●

0 5000 15000 25000

0.00.40.8

(b)

Average Income

Tricube Weight

0 5000 15000 25000

20406080

(c)

Average Income

Prestige

●●

● ●

● ●

● ●

● ●

0 5000 15000 25000

20406080

(d)

Average Income

Prestige

Figura 1: Lowess smoother

2. Asignar pesos a los datos: Se utiliza una funci´on kernel para dar m´as peso a los puntos m´as cercanos a la observaci´on de inter´es x0. En la pr´actica se utiliza normalmente la funci´on de pesos tric´ubica:

W (z) = (1 − |z|3)3 for |z| < 1

0 for |z| ≥ 1

(17)

donde zi = (xi − x0)/h, y h es la mitad de la longitud de la ventana. Observaciones que est´an m´as lejos de la distancia h de x0 reciben peso 0. Lo normal es elegir h de modo que cada regresi´on local incluya a una proporci´on fija de puntos, s, y a esto se le llama el span del suavizador. La Figura 2(b) muestra los pesos de la funci´on tric´ubica para observaciones en una vecidad.

3. M´ınimos cuadrados poderados locales: Ahora, ajustamos una regresi´on polinomial usan- do m´ınimos cuadrados ponderados (con pesos) sobre x0, pero s´olo utilizando las obser- vaciones m´as cercanas para minimizar la suma de residuos al cuadrados ponderados.

Normalmente se utiliza regresi´on polin´omica de grado 1 (lineal) ´o 2 (cuadr´atica), pero se puede utilizar polinomios de cualquier orden.

yi+ bi(xi− x0) + b2(xi− x0)2+ . . . + bp(xi− x0)p+ ei

A partir de esta regresi´on, calculamos el valos ajustado correspondiente a x0 y lo dibujamos en el diagrama. La Figura 2 (c) muestra el ajuste lineal local para los datos en la vecindad de x0, el valor ajustado ˆy|x(80) se representa en el gr´afico por un punto en negrita.

4. Curva no-param´etrica:Los pasos 1-3 se repiten para cada observaci´on de los datos. Por lo que estamos haciendo un regresi´on local para cada valor de x, y los valores ajustados de cada una de ellas se dibuja y se une (ver Figura 2 (d)).

En R podemos hacer esto de forma sencilla:

library(car) attach(Prestige)

plot(income, prestige, xlab="Average Income", ylab="Prestige", main="(d)")

lines(lowess(income, prestige, f=0.5, iter=0), lwd=2)

En regresi´on no-param´etrica no tenemos par´ametros estimados, el inter´es est´a en la curva, por lo que el ´enfasis est´a en c´omo de bien la curva ajustada representa la curva poblacional.

Las hip´otesis bajo el modelo lowess son mucho menos restrictivas que las del modelo de regresi´on lineal, no hay ninguna hip´otesis restrictiva sobre model µ, sin embargo, asumimos que alrededor de cada punto x0, µ debe ser, aproximadamente, una funci´on local. Los errores

i se suponen independientes y con media 0. Finalmente, un cierto n´umero de decisiones han de ser tomadas: el span, el grado del polinomio, el tipo de funci´on de ponderaci´on; estas opciones afectar´an el equilibrio entre el sesgo y la varianza de la curva.

Ventana-span

Recordamos que el span s es el porcentaje de observaciones utilizadas dentro del rango de x. El valor de s tiene un efecto importante en la curva. Un span demasiado peque˜no (esto significa que muy pocas observaciones caen dentro de la ventana) da lugar a una curva con mucho ruido, y por lo tanto con mucha varianza. Si el span es muy grande la curva

(18)

estar´a sobre-suavizada, por lo que puede que no ajuste bien los datos y haya una p´erdida de informaci´on y por lo tanto, el sesgo ser´a alto.

Podemos elegir la ventana de diferentes formas:

1. Constante: h es constante, por lo tanto una parte de rango de x es utilizado para elegir las observaciones para la regresi´on local. Este es un m´etodo apropiado si la distribuci´on de x es aproximadamente uniforme y/o el tama˜no muestral el grande. Sin embargo, si x tiene una distribuci´on no-uniforme, este m´etodo puede fallar, ya que habr´a casos en los que puede no haber vecinos o muy pocos. Esto es particularmente relevante en la frontera del rango de x.

2. Vecinos m´as pr´oximos: Este m´etodo resuelve el problema anterior. El span s se elige de modo que cada vez se est´e utilizadon una determinada proporci´on del total de los valores de x. La proporci´on se elige probando hasta que eliminamos el ruido de la curva. En la funci´on loess(), el span por defecto es s = 0,5.

0 5000 10000 15000 20000 25000

20406080

Average Income

Prestige

s=0.1 s=0.37 s=0.63 s=0.9

Figura 2: Efecto del span en la curva ajustada

2. Suavizado con kernels

Un suavizador tipo kernel utiliza pesos que decrecen de forma suave cuando la l´ınea se aleja del punto de inter´es x0. El peso para la observaci´on j − th utilizada para el punto de

(19)

inter´es x0 viene dado por:

S0j = c0 λd



x0− xj

λ



donde d(t) es una funci´on decreciente en|t|, λ es el ancho de ventana , y c0 es una constante elegida de modo que la suma de los pesos sea 1. T´ıpicamente d(.) es la funci´on de densidad de una Normal para el llamado kernel Gaussiano.

Estos suavizadores, en general, se comportan peor que el lowess en los puntos de frontera

3. Splines

Los splines son funciones polin´omicas a trozos sobre las que se imponen restricciones en los puntos de uni´on llamados nodos, estos puntos dividen el rango de x en regiones. Los splines dependen de tres elementos:

1. Grado del polinomio 2. N´umero de nodos

3. Localizaci´on de los nodos

Aunque hay muchas combinaciones posibles, una elecci´on popular consiste en polinomios a trozos de grado tres, continuos y con primera y segunda derivada continua en los nodos (esto fuerza a los polinomios a unirse de forma suave en estos puntos, ver Figura 3).

Un spline c´ubico con dos nodos c1 y c2 tiene la siguiente forma:

y = β0+ β1x + β2x2+ β3x3+ β4(x− c1)3++ β5(x− c1)3+,

donde (u)+ = u si u > 0 y 0 en otro caso. Si hay k nodos, la funci´on necesitar´a k + 4 coeficientes de regresi´on.

Splines c´ubicos naturales Restringen el spline de modo que es lineal m´as all´a de los nodos que est´an en la frontera, por lo tanto, necesita k + 2 par´ametros, esto es debido a que ahora no se impone que la derivada se a continua en c1 y ck , por lo que se eliminan 2 par´ametros al final de los datos

y = β0+ β1x + β2(x− c1)3++ β3(x− c1)3+,

3.1. N´ umero y posici´ on de los nodos

Los splines c´ubicos dependen de los nodos, por lo que es necesario seleccionar cu´antos y d´onde estar´an situados. Es m´as importante la elecci´on del n´umero que de la posici´on.

Siempre se pueden colocar en los cuantiles de x.

Una elecci´on t´ıpica es 3 ≤ k ≤ 7. En los casos en los que el tama˜no muestral es grande (n ≥ 100) y la variable respuesta es continua, k = 5 es un buen compromiso entre flexibi- lidad y precisi´on. Para tama˜nos muestrales peque˜nos (n≤ 30), k = 3 es una buena opci´on para empezar. El Akaike Information Criteria (AIC) puede ser utilizado para elegir k.

(20)

Figura 3: Una series de polinomios a trozos de orden 3, con ´ordenes de continuidad creciente

library(splines)

natspl=lm(prestige~ns(income,df=5))

plot(income, prestige, xlab="Average Income", ylab="Prestige") lines(income[ord],natspl$fitted[ord])

3.2. Splines de suavizado (smoothing splines)

Los smoothing splines son la soluci´on al problema de minimizar la suma de residuos al cuadrado penalizados:

RSS(f, λ) =

n

X

i=1

(yi− f(xi))2+ λ Z xn

x1

f00(x)2dx

El primer t´ermino mide la proximidad a los datos y el segundo penaliza la curvatura de la funci´on. Aqu´ı, λ es el par´ametro de suavizado , y controla el balance entre el sesgo y la varianza de la curva ajustada. Si λ = 0, la curva interpola los datos, y si λ→ ∞, la segunda derivada se hace 0, por lo que tenemos un ajuste lineal.

Los splines de suavizado, son splines c´ubicos naturales en los que hay tantos nodos como observaciones ´unica de x. Esto podr´ıa parecer un modelo sobreparametrizado, sin embargo, el t´ermino de penalizaci´on asegura que los coeficientes se reduzcan hacia la linealidad, limi- tando el n´umero de grados de libertad utilizados.

El spline de suavizado es un suavizador lineal, en el sentido de que para cada valor ´unico xi,

(21)

0 5000 10000 15000 20000 25000

20406080

Average Income

Prestige

Figura 4: Spline c´ubico natural con 4 nodos en los cuantiles de income.

hay una base de funciones h(xi) tal que,

fλ(x) =

n

X

i=1

h(xi)yi

Podemos reescribir la suma de cuadrados residuales como:

RSS(θ, λ) = (y− hθ)0(y− hθ) + λθ0Ωθ La soluci´on es,

θ = (hˆ 0h + λΩ)−1h0y

Es obvio el paralelismo con la regresi´on ridge, recordad que en este tipo de regresi´on, cuanto mayor era λ, m´as peque˜nos se hac´ıan los coeficientes; lo mismo ocurre en el caso de los splines de suavizado. El modelo ajustado viene dado por:

f (x) =ˆ

h

X

j=1

hj(x)ˆθj

Pero este tipo de suavizadores tiene un problema: ¿C´omo calculamos el valor apropiado del par´ametro de suavizado λ para un conjuto de datos determinado?

Elecci´on del par´ametro de suavizado

La elecci´on del par´ametro de suavizado utilizamos:

(22)

1. Validaci´on cruzada

La validaci´on cruzada deja cada vez un punto (xi, yi) fuera, y estima el valor de nuevo en xi basado en los restantes n1 puntos, y se construye la suma de cuadrados:

CV (λ) = n−1

n

X

i=1

(yi− ˆfλ−i(xi))2

donde ˆfλ−i(xi) indica el ajuste en xi calculado dejando la observaci´on i fuera. Utiliza- mos CV para la elecci´on del par´ametro de suavizado de la siguiente forma: calculamos CV (λ) para ciertos valores de λ y selecionamos aquel que minimiza CV (λ).

En el caso de un suavizador lineal,

CV (λ) = n−1

n

X

i=1

yi− ˆfλ(xi) 1− Sii(λ)

!2

donde S(λ) es la matriz de proyecci´on del modelo, es decir, ˆy = Sy.

spline1=smooth.spline(income,prestige,cv=TRUE)

> spline1$cv.crit [1] 127.4208

> spline1$lambda [1] 0.01474169 spline1$fit

lines(spline1$x,spline1$y,col=2) 2. Validaci´on cruzada generalizada

Hasta hace pocos a˜nos, no se sab´ıa c´omo calcular los elementos de las diagonal de S de una forma eficiente, y esto llev´o a introducir la validaci´on cruzada generalizada (GCV), la cual reemplaza Sii por su valor medio, T raza(S)/n, que es m´as f´acil de calcular,

GCV (λ) = n−1

n

X

i=1

yi− ˆfλ(xi) 1− T raza(S)/n

!2

En la mayor´ıa de los casos, CV y GCV se comportan de manera similar, sin embargo, en algunas ocasiones CV tiende a infra-suavizar los datos en comparaci´on con GCV.

spline2=smooth.spline(income,prestige) lines(spline2$x,spline2$y,col=4)

Referencias

Documento similar

Entre los modelos en los que los sindicatos y las empresas negocian el salario hay que resaltar: el modelo del sindicato m o n ~ p ó l i c o ' ~ donde los sindicatos y

Pero en todo caso, pensamos que sólo cuando la estudiante hace este tipo de crítica, tanto a su propio modelo, como al de los demás, cuando es capaz de contrastar sus propios puntos

Al igual que suced´ıa con la WEB1, para obtener aun m´ as informaci´ on acerca de la transacci´ on se puede utilizar la web Indyscan, pudiendo ver tanto el mensaje de solicitud como

El principio del argumento permite averiguar si una cierta funci´ on holomorfa tiene ra´ıces n-´ esimas holomorfas, es decir, si existe una funci´ on holomorfa g tal que g n = f.. Sea

Figura 5.9 Comparaci´ on del ranking la mejor soluci´ on encontrada hasta cada iteraci´ on, entre el algoritmo de b´ usqueda y su respectiva b´ usqueda aleatoria, para cada funci´

Ademais, a introduci´ on dunha funci´ on (de densidade) sobre a variedade permite modificar a medida e xorde as´ı o concepto de variedades con densidade. Para m´ ais informaci´ on

El inconveniente operativo que presenta el hecho de que la distribuci´ on de probabilidad de una variable aleatoria es una funci´ on de conjunto se resuelve mediante el uso de

En [2] determinamos experimentalmente el comporta- miento de la longitud promedio ¯ L de las cadenas en funci´on de la frecuencia de la perturbaci´on f p , el tiempo de aplica- ci´on