Sei sulla pagina 1di 141

ESTADSTICANOPARAMTRICA(2)

Regresin flexibleatravs deModelos Aditivos


Generalizados (GAM)

CarmenCadarsoSurez
Unidad deBioestadstica
UniversidaddeSantiagodeCompostela
Instituto deInvestigacin Sanitaria(IDIS)

email:carmen.cadarso@usc.es

1
Guin
1. Regresin paramtrica

Modelo Lineal(LM)
Modelo LinealGeneralizado (GLM)

2. Suavizacin yregresin:

Flexibilidad enmodelos GLM


Suavizacin tipo
p kernel
Suavizacin Spline Penalizada

3.Modelo
d l Aditivo
d Generalizado
l d (GAM)
( )

4.Aplicacin adatos reales 2


Respuesta:generalizada
Efectos :nolineales

GAM

GLM

LM

Respuesta:gaussiana Respuesta:generalizada
Efectos :lineales
: lineales Efectos :lineales

3
Unodelosprincipales objetivos delamodelizacin estadstica es
cuantificar lainfluencia
la influencia deunconjunto de p variables
de un conjunto dep
X1 , X2,, Xp llamadas covariables
enuna medida deinters, Y (llamada variable dependiente
respuesta).
respuesta).

Estos anlisis pueden llevarse acabo utilizando losmodelos de


regresin,que sehan desarrollo para diferentes tipos derespuestas.

4
1. Regresin paramtrica:

Modelo Lineal(LM)
Modelo LinealGeneralizado (GLM)

5
Modelo Lineal(LM)
Elmodelo ms clsico es el Modelo deRegresin Lineal,enelcual
lavariablerespuesta Y seasume Gaussiana ylas covariables actan
linealmente sobre larespuesta , Y.

EEnunmodelo
d l LM,asumimos
LM i l i i t ecuacin
lasiguiente i para lamedia
l di
condicionada deY :

E ( y / x1, x2 ,..., xp ) = 0 + 1x1 + 2 x2 + .... + p xp = (1.1)

Losparmetros
d d (1, 2 ,, p ) sedenominan
desconocidos d
coeficientes deregresin ydeterminan lafuerzaydireccin
de la influencia decada
delainfluencia de cada una delas
de las covariables enlarespuesta.
en la respuesta

Puesto qque ((1.1)islinealenloscoeficientes


) deregresin,lasuma
g de
loseffectos delas covariables , , sedenomina predictorlineal.
6
Estimacin MnimoCuadrtica
(
(OrdinaryLeastSquares,OLS)
y q , )

Lasestimaciones de seobtienenminimizandolafuncinobjetivo:

ResidualSumofSquares(RSS )
n
min RSS = [ yi y ] = Y X
2 2

i =1

y = 0 + 1 x

7
airquality

New York Air Quality Measurements

Description: Daily air quality measurements in New York, May to


September 1973.

Ozone: Mean ozone in parts per billion from 1300 to 1500 hours
at Roosevelt Island

Solar.R: Solar radiation in Langleys in the frequency band


40007700
4000 7700 Angstroms from 0800 to 1200 hours at Central Park

Wind: Average wind speed in miles per hour at 0700 and


1000 hours at LaGuardia Airport

Temp: Maximum daily temperature in degrees Fahrenheit at


La Guardia Airport.
[,1]Ozone numeric Ozone (ppb)
[,2]Solar.R numeric Solar R (lang)
[,3]Wind numeric Wind (mph)
[ 4]Temp
[,4] numeric Temperature (degrees F)
[,5]Month numeric Month (112)
[,6]Day numeric Day of month (131) 8
pairs(airquality[,1:4], main = "airquality data)

9
Anlisis decorrelacin

Calculamos elcoeficiente decorrelacin dePearson,por pares

cor(airquality[,1:4], use= "pairwise.complete.obs")

Ozone Solar.R Wind Temp


Ozone 1 0000000 0.34834169
1.0000000 0 3 83 169 -0.60154653
0 601 6 3 0.6983603
0 6983603
Solar.R 0.3483417 1.00000000 -0.05679167 0.2758403
Wind -0.6015465 -0.05679167 1.00000000 -0.4579879
T
Temp 0
0.6983603
6983603 0.27584027
0 27584027 -0.45798788
0 45798788 1.0000000
1 0000000

10
Airquality data
O
Ozone = 0 + 1 T
Temp + 2 Wi d + 3 SSolar
Wind l .R +
EnR,laregresin
g linealmnimocuadrtica serealiza conlafuncin lm :
air.lm<-lm(Ozone ~Temp+Wind+Solar.R, data=airquality)

summary(air.lm)
( i l )

Coefficients:
Estimate
E ti t Std
Std. Error
E t value
l Pr(>|t|)
P ( |t|)
(Intercept) -64.34208 23.05472 -2.791 0.00623 **
Temp 1.65209 0.25353 6.516 2.42e-09 ***
Wind -3.33359
3 33359 0.65441
0 65441 -5.094
5 094 1
1.52e-06
52e 06 ***
Solar.R 0.05982 0.02319 2.580 0.01124 *

Residual standard error: 21.18


21 18 on 107 degrees of freedom
(42 observations deleted due to missingness)

Multiple R
R-squared:
squared: 0.6059, Adjusted R
R-squared:
squared: 0.5948
F-statistic: 54.83 on 3 and 107 DF, p-value: < 2.2e-16
11
Efectos (lineales)parciales
op< par(mfrow=c(1,3))
op<-par(mfrow=c(1 3))
termplot(air.lm,se=T)
par(op)

Efectos parciales centrados,junto conlas bandas deconfianza puntuales al95%

12
Diagnosisdelmodelo:AnlisisdelosResiduos
Lafuncin
La funcin plot paraunmodelo
para un modelo lmnospermitehacerunadiagnosisgrfica
lm nos permite hacer una diagnosis grfica
avanzadadelmodelo.Entreotros,nosdevuelvelossiguientesgrficos:
Residuosversusvaloresajustados.
NormalQQplot.
par(mfrow=c(1,2))
plot(air.lm,
l ( i l which
hi h = 1:2)
1 2)
par(op)

13
Transformacionesnormalizantes
Una suposicin delmodelo LMes que larespuesta es gaussiana...
Puesto que Ozonees asimtrica,podramos aplicar lafuncin log...

14
air.lm.log<-lm(log(Ozone) ~Temp+Wind+Solar.R, data=airquality)

summary(air.lm.log)

Coefficients:
ffi i
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.2621323 0.5535669 -0.474 0.636798
Temp 0
0.0491711
0491711 0.0060875
0 0060875 8.077
8 077 1.07e-12
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


(42 observations deleted due to missingness)
Multiple R
R-squared:
squared: 0.6644,
0 6644 Adjusted R
R-squared:
squared: 0.655
0 655
F-statistic: 70.62 on 3 and 107 DF, p-value: < 2.2e-16

15
par(mfrow=c(1,2))
plot(air.lm.log, which = 1:2)
par(op)

16
Modelo LinealGeneralizado (GLM)
LLosModelos
M d l Lineales
Li l Generalizados
G li d (GeneralizedLinearModels,
(G li d Li M d l
GLM,McCullaghNelder,1989)suponen una extensin delosLM
a situaciones ms generales,enlas
asituaciones generales en las que larespuesta
la respuesta puede ser
binaria,derecuento,etc,
En
Enelcaso
el caso derespuesta
de respuesta gaussiana,valoresperado de y y el
gaussiana valor esperado dey el
predictorlinealcoinciden:
E (y
( / x1, x2 ,, xp ) =
Enelcaso derespuestas nogaussianas,noes posible una conexin
di
directa entreelvaloresperado
l l d dey
d l , puesto
y elpredictorlineal,
l di li
que eldominio deE(y / x1, x2 ,,xp ) ya noes larectareal.

Por tanto,senecesita una transformation, h ,para asegurar el


dominio correcto dedicho valoresperado
E ( y / x1, x2 ,..., xp ) = h ( )
17
sto es,denotando por =E (y / x1, x2 ,, xp )

= h ( 0 + 1x1 + 1x1 + .... + p xp ) = h ( ) (1.2)


equivalentemente
p p
g ( ) = = 0 + j x j = 0 + j (1.3)
j =1 j =1

siendo

g = h 1 = funcinlink
= predictorlineal
di t li l
j = j x j = efectoparcial(lineal)dex j j = 1,..., p
18
Suposiciones estructurales para GLMs
p
g ( ) = = 0 + j x j
j =1

Laestructura deunGLMsedefineatravs delasiguiente suposicin:

Larespuesta, Y,tiene una distribucin perteneciente alafamilia


exponencial (MacCullaghNelder,1989),con
(MacCullaghNelder 1989) con

Funcin Link:
g () =
Funcin Varianza ::
Var (Y ) = V ( ) ,V unafuncinde
= parmetrodedispersin
19
Clases GLM(1)
1.Modelos
1 M d l derespuesta
d continua
i
1.1.Normal:larespuesta es gaussiana. Link=Identity.
1 2 Gamma: respuesta continuanonegativa.Link=log.
1.2.Gamma: continua no negativa Link= log
2. Modelos derespuesta binomial
Conrespuestas binarias Y (0/1),elvaloresperado
Con respuestas binarias,Y de Y viene dado
(0/1) el valor esperado deY dado
por laprobabilidad p(Y=1).

2.1.Modelo Logit (logstico)


p ( Y = 1) p
ln = 0 + j x j
1 p ( Y = 1) j =1

Se derivan medidas deasociacin


Sederivan de asociacin como laOddsRatio(OR).
la Odds Ratio (OR)

2.2. Modelo Probit


Lafuncin logstica sesustituye por lafuncin dedistribucin
normaltpica. 20
Clases GLM(2)

3. Modelos para respuestas deconteo

Paradatos derecuento (Y=0,1,2,..)sepuede considerar un


modelo deregresin con
Respuesta :Poisson
Link:logaritmo natural

Alternativas almodelo dePoisson:


ZeroInflatedPoisson Model(ZIP):Eventos raros.
NegativeBinomialmodel(NB):permite
Negative Binomial model (NB): permite sobredispersion.
sobredispersion
ZeroinflatedNegativeBinomialmodel(ZINB).

21
Estimacin deunGLM:IterativelyReweightedLeastSquares(IRLS)

= 0 + 1 x1 + ... + p x p = X
Laestimacin de seobtiene maximizando elloglikelihood l()
iterativamente a travs delAlgoritmo
iterativamente,atravs del Algoritmo FisherScoring(IRLS):
Fisher Scoring (IRLS) :

=(X W X ) X TW ( k ) z ( k )
( k +1) 1
T (k )

donde W es lamatriz diagonaldelospesosdetrabajo (working


weights) ,yz es larespuesta detrabajo (working response)
pseudodatos.
W yz dependen delaestimacin actual.
Elajuste delarespuesta detrabajo por mnimos cuadrados
ponderados hasta laconvergencia,corresponde almodelo de

z N( X , W )
trabajo 1
22
Lasestimaciones finales ,
, en el modelo GLMsonaqullas
Las estimaciones finales,,enelmodelo GLM son aqullas que
minimizan una funcin objetivo basada enelcriterio delaDeviance :

Deviance ( ) W ( z X
)
2
((1.4))

Parauna respuesta gaussiana,elGLMes unLM,siendo lafuncin


objetivo (1.4)elcriterio RSS usual.

Losmodelos
L d l GLMpueden
GLM d ajustarse
j t enR
R
funcin glm

23
Grados delibertad (degreesoffreedom,df )deunGLM

Dadoelsiguiente
g modelo GLM:

= 0 + 1 x1 + ... + p x p

df = tr X ( X WX ) X T W
T 1

df = p+1 (df
( df=pp salvo
salvoconstante
constante))

sto es,df es elndeparmetros (identificables)delmodelo

24

Estimacindelparmetroescala()

ParaalgunasrespuestasdelGLM,elparmetro,,puede
conocersehadeserestimadoapartirdelosdatos:
Binomial,Poisson:
=1
Otrasrespuestas:
ejemplo para la respuesta gaussiana = 2 es deconocido
Porejemplo,paralarespuestagaussiana,,esdeconocido
Por

de
Estimadorde
Estimador
EstbasadoenelestadsticodePearson 2

( i)
2
1 1 y n
=
=
2
i

n p 1 n p 1 i =1 V ( i )
25
Inferencia enunGLM

Sobrelosparmetros
N (, ) = N (, ( X T WX ) 1 )
Si es desconocido , los IC se basarn en la distribucin tstudent
Siesdesconocido,losICsebasarnenladistribucint student

Sobrelosefectosparciales

j = X j j Var ( j ) = diag ( X j jj X Tj )

Sobrelarespuesta

= g 1 ( X )
2

AplicandoelmtodoDelta,seobtiene:
p Var ( ) diagg ( X X T )


26
Deviance deunmodeloGLM
CuandotrabajamosconunGLMenlaprctica,estil teneruna
cantidadquepuedainterpretarsedeunaformasimilaralaSumade
Residuos al cuadrado (RSS) en un modelo LM
Residuosalcuadrado(RSS)enunmodeloLM.

EstacantidadeslaDeviance ((residual)) delmodeloysedefine


y :

D = 2 l ( max ) l ( )
donde:

l ( max ) = log Verosimilitudmaximizadadelmodelo


Verosimilitud maximizada del modelo "saturado"
saturado

La deviance escalada
Ladeviance escalada

D* = D = 2 l ( max ) l ( ) n2 p 1

27
ComparativademodelosGLM(1)
a)ModelosAnidados:
H 0 : g ( ) = X 0 0
donde X 0 X 1
H1 : g ( ) = X 11
Likelihood Ratiotest (LRT):Silahiptesisnulaescierta

2 l ( 1 ) l ( 0 ) = D1* D0* 2p1 p0


Siesdesconocido, usaremoseltestF :

( D0 D1 ) ( p1 p0 ) F
D1 ( n p1 )
p p ,n p
1 0 1

28
ComparativademodelosGLM(2)

b)ModelosnoAnidados:

Elegiremosaquelmodeloconelvalor msbajodelcriterioAIC
(Akaikes Information Criterion;Akaike,1973):

AIC = 2 l ( ) + p + 1
Si es desconocido
Siesdesconocido,
Esteparmetrodebeserestimado,y

AIC = 2 l ( ) + p + 2
29
EJEMPLO:GLMconrespuestabinaria
Prevalencia delaHipertensin Arterial
Descripcin:
ElficheroHTA.sav(ficheroSPSS)contieneinformacinparcialdeunestudio sobre
lahipertensinenunapoblacinadulta.
Elficherocontienelassiguientescolumnas:
g
sexo (Varn,Mujer)
edad(aos)
imc: ndice de masa corporal (kg/m2)
imc:ndicedemasacorporal(kg/m
hta:hipertensinarterial(no,si)
Objetivos:
Entre otros estimar la prevalencia de la hipertensin (HTA) de la poblacin
Entreotros,estimarlaprevalenciadelahipertensin(HTA)delapoblacin,
ajustadaporedadysexo.

library(foreign)
HTA<-read.spss("HTA.sav",use.value.labels=T, to.data.frame=T)
names (HTA)
[1] "sexo" "edad" "imc" "hta" 30
Estimaremos los siguientes modelos GLM logsticos
EstimaremoslossiguientesmodelosGLMlogsticos:

Modelodeefectosprincipales:

p ( HTA)
log = 0 + 1 SEXO + 2 EDAD
1 p ( HTA)

Modeloincluyendointeraccin:

p ( HTA )
log = 0 + 1 SEXO + 2 EDAD + 3 SEXO EDAD
1 p ( HTA )
Esunmodelojerrquico queproduceefectoslinealesseparados
d d d
deedadparamujeresyvarones.
j
31
GLMlogsticodeefectosprincipales
hta.glm1<-glm(hta~edad+sexo, data=HTA, family=binomial)

summary(hta.glm1)
(h l 1)

Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -4.149459
4.149459 0.172311 -24.08
24.08 < 2e
2e-16
16 ***
edad 0.076991 0.003531 21.80 < 2e-16 ***
sexoMujer -0.763149 0.100151 -7.62 2.54e-14 ***

(Dispersion parameter for binomial family taken to be 1)

Null deviance: 3227.8 on 2841 degrees of freedom


Residual deviance: 2570.4 on 2839 degrees of freedom
AIC: 2576.4

Number of Fisher Scoring iterations: 5


32
Efectos parciales deEdad ySexo

OR IC95%
Edad 1.08 1.071.09
Sexo
Mujer 1.00
Varn 2.14 1.762.61

Prevalencias deHTAajustadas por Edad ySexo

33
GLMlogsticoincluyendointeraccin
hta.glm2<-glm(hta~edad*sexo, data=HTA, family=binomial)

summary(hta.glm2)
(h l 2)

Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -3.344332 0.214954 -15.558 < 2e-16 ***
edad
d d 0 058981
0.058981 0.004609
0 004609 12.796
12 796 < 2e-16
2 16 ***
sexoMujer -2.612961 0.364464 -7.169 7.54e-13 ***
edad:sexoMujer 0.038800 0.007254 5.349 8.87e-08 ***

(Dispersion parameter for binomial family taken to be 1)

Null deviance: 3227.8


3227 8 on 2841 degrees of freedom
Residual deviance: 2540.9 on 2838 degrees of freedom
AIC: 2548.9

Number of Fisher Scoring iterations: 5


34
Prevalencias deHTAajustadas por Edad ySexo
Delmodelo anterior,, hta.glm2
g ,,podemos
p obtener las p
predicciones delarespuesta
p
(es decir,laprobabilidad deHTA)enfuncin delaedad,por cada sexo:

plot(HTA$edad[HTA$sexo=="Mujer"],fitted(hta.glm2)[HTA$sexo=="Mujer"],type="n",
xlab "Edad
xlab= Edad (aos)
(aos)", ylab=
ylab "Prevalencia
Prevalencia de HTA
HTA")
)
lines(HTA$edad[HTA$sexo=="Mujer"],fitted(hta.glm2)[HTA$sexo=="Mujer"], lty=1,
lwd=3,col="red")
lines(HTA$edad[HTA$sexo=="Varn"],fitted(hta.glm2)[HTA$sexo=="Varn"], lty=2,
lwd=3 col="blue")
lwd=3,col= blue )
legend(30,0.7,c("Mujer","Varn"), col=c("red","blue"),lty=c(1,2),lwd=c(3,3))

Laprevalencia deHTAen
mujeres yvarones evoluciona
deformadiferente conlaedad
35
Comparativa delosdosmodelos (anidados)

anova (hta.glm1,hta.glm2,test="Chi")
Analysis of Deviance Table
Model 1: hta ~ edad + sexo
Model 2: hta ~ edad * sexo
Resid. Df
Resid Resid.Dev
Resid Dev Df Deviance P(>|Chi|)
1 2839 2570.4
2 2838 2540.9 1 29.463 5.7e-08 ***

anova (hta.glm2,test="Chi")
Analysis
y of Deviance Table
Model: binomial, link: logit, Response: hta
Terms added sequentially (first to last)
Df Deviance Resid.Df Resid. Dev P(>|Chi|)
NULL 2841 3227.8
edad 1 597.62 2840 2630.2 < 2.2e-16 ***
sexo 1 59.76 2839 2570.4 1.01e-14 ***
edad:sexo 1 29.46 2838 540.9 5.7e-08 ***
36
Comparativa demodelos (nonecesariamente anidados)

Modelo Deviance %Dev expl. AIC


edad+sexo 2570.402 20.3662 2576.402
edad*sexo 2540.939 21.2790 2548.939
edad+imc+sexo 2402 500
2402.500 25 5685
25.5685 2410 500
2410.500
edad*sexo+imc 2377.756 26.3346 2387.756

% Deviance explicada =porcentaje


%Devianceexplicada = porcentaje delanulldevianceexplicada
de la null deviance explicada
por elmodelo.

NullDevResDev
%Devexpl= 100%
NullDev

Concepto anlogo aR2 enmodelos LM.


37
2. Suavizacin enregresin:

Flexibilidad enunGLM:
Regresin
i polinmica
li i
Regresin Bspline

Regresin tipo ncleo (kernel)

Suavizacin Spline Penalizada

38
Aadiendo flexibilidadalosGLMs

Aunqueq elmodelo GLMes flexiblepor p lavariedad dedistribuciones


que sepueden considerar para larespuesta,dicho modelo asume que
lainfluencia delas covariables continuas endicha respuesta es lineal.

Consideremos,forsencillez,elsiguiente GLMunviariante:

= 0 + 1 x
Enmuchas situaciones prcticas,elefecto delacovariable
continua,X,puede tener una formanolinealdesconocida ,f
= 0 + f ( x )
Enelcontexto GLM,existen varias alternativas paramtricas para
estimar ff...

39
Alternativasparamtricas flexibles
Idea:Sustituir
Idea: Sustituir elefecto lineal de X por una forma
el efecto estrictamente linealdeX
flexiblenolineal(pero paramtrica) delefecto delacovariable
= 0 + f ( x ) = 0 + f ( x )
Enlaprctica,sesuelen utilizar dosalternativas paramtricas:
I.Regresin Polinmica
= 0 + 1 x + 2 x 2 ... + p x p
II.Anlisis Categrico
(a)Categorizar X,considerando m knots:
a = k1 < k2 < ... < km 1 < km = b
(b)Crear m-2 variables dummy: D1, D2 ,, Dm-2
(c) Ajustar elmodelo
(c)Ajustar el modelo deregresin
de regresin GLM
= 0 + 1 D1 + ... + m 2 Dm 2 40
Regresin polinmica

= 0 + 1x + 2 x2... + p x p
Amayorgrado
A del polinomio p ( df
mayor grado delpolinomio,p df=p+1)
p+1),mayorflexibilidad
mayor flexibilidad
enelajuste...
Ejemplo:Ajustar
Ejemplo: Ajustar elPermetro
el Permetro craneal enfuncin
en funcin delaedad,en
de la edad en
varones de0a5aos
varones de 0 a 5 aos
55
50
0
Permetro craneal

45
40
35

0 1 2 3 4 5
41
Edad
M1<-glm(craneo~poly(edad,1,raw=T), data=crec) lineal
M2<-glm(craneo~poly(edad,2,raw=T), data=crec) cuadrtico
M3<-glm(craneo~poly(edad,3,raw=T), data=crec) cbico

anova(M1,M2,M3,test="Chi")
Analysis of Deviance Table
Resid.Df Resid.Dev Df Deviance P(>|Chi|)
M1 733 4040.7
M2 732 1692.3 1 2348.39 < 2.2e-16 ***
M3 731 934.7 1 757.67 < 2.2e-16 ***
60
55
5
50
45
40

lineal (R2=0.73)
cuadrtico (R2=0.89)
cbico (R2=0.94)
(R2 0 94)
35

0 1 2 3 4 5 42
airquality
Queremosrealizarunaestimacinpolinmica,delarelacinentre
Q li ti i li i d l l i t
ozonoytemperatura.
plot(airquality$Temp,airquality$Ozone, xlab="Temperature",
ylab="Ozone", main="Airquality")

43
air.fit1<-lm(Ozone~Temp,data=airquality)
new <- data.frame(Temp =
seq(min(airquality$Temp),max(airquality$Temp),1))
plot(airquality$Temp,airquality$Ozone, xlab="Temperature",
ylab="Ozone")
lines(new$Temp,predict(air.fit1,new),lty=1,col="black",lwd=3)
air fit2< lm(Ozone poly(Temp 2) data=airquality)
air.fit2<-lm(Ozone~poly(Temp,2),data=airquality)
lines(new$Temp,predict(air.fit2,new),lty=2,col="red",lwd=3)
air.fit3<-lm(Ozone~poly(Temp,3),data=airquality)
lines(new$Temp,predict(air.fit3,new),lty=3, col="blue",lwd=3)
legend(60,120,c("p=1 (R2=0.48)", "p=2 (R2=0.53)","p=3 (R2=0.54)"),
col=c("black","red","blue"), lty=c(1,2,3),lwd=3)

44
Ejemplo:Riesgo deInfeccin Postquirrgica (POIdata)
Respuestabinaria(Y):
Infeccinpostquirrgica(POI,0=no,1=s)

Exposicinpostquirrgica(X):
Niveles de glucosa antes de la operacin (mg/dl)
Nivelesdeglucosaantesdelaoperacin(mg/dl)

GLMlogstico
g

p [ POI = 1]
ln = 0 + f ( Gluc )
p [ POI = 0]

l
logit = 0 + f ( Gluc
l )

ln OR ( Gluc, Ref=95 ) = f ( Gluc ) f ( 95 )


45
Efectolineal

logit = 0 + f 1 ( Gluc ) = 0 + 1 Gluc

46
CurvaOddsRatio(OR)

OR ( Gluc, Ref=95 ) =2aexp 1 ( Gluc 95 )


Figure

3 Reference value
(95mg/dl)
2
OR (x, xref)

1
Ln O

-1

-2

-3
50 75 100 125 150 175 200 225 250 275 300
Plasma g
glucose (mg/dl)
( g )

Relacindemasiadorgida
Resultadosnoplausiblesparavaloresbajosdeglucosa
Resultados no plausibles para valores bajos de glucosa
47
EfectoPolinmico

logit = 0 + 1 Gluc + 2 Gluc 2 + ..... + p Gluc p

Cuadrtico(p=2)
Figure 2b Cbico(p=3)
Figure 2c

4 4

3 3 Reference value
Reference value (95mg/dl)
(95 mg/dl)
2 2
Ln OR (x, xref)

Ln OR( x, xref)
1 1

-1 -1

-2 -2

-3 -3
50 75 100 125 150 175 200 225 250 275 300
50 75 100 125 150 175 200 225 250 275 300
Plasma glucose (mg/dl)
Plasma glucose (mg/dl)

Formasmsflexiblesqueelefectolineal(p=1)
Efectosnoplausiblesennuestroejemplo.
Engeneral,comportamiento
En general comportamiento artificioso,especialmente
artificioso especialmente enlas
en las
fronteras yenprocesos deextrapolacin. 48
AnlisisCategrico
Gluc co:<92,92102,103121,>121(knots
Gluc_co: 9 , 9 0 , 03 , (knots en
enloscuantiles)
los cuantiles)

logit = 0 + 1 Gluc1+ 2 Gluc2 + 3 Gluc3

Elajustefinalnoescontinuo!!
El ajuste final no es continuo!!
Efecto(riesgo)constanteencadacategora
Prdida de potencia estadstica
Prdidadepotenciaestadstica
Seleccinarbitaria deknots (puntosdecorte) 49
BasedeBsplines
Una posible base(flexible)locales laformada por
Basicsplines (orsimplemente Bsplines;Boor,1978)

Bsplines degrado l seobtienen fusionando (l + 1) polinomios de


grado l suavemente enlos
en los (l - 1) knotsinteriores.
knots interiores

Definicinmatemtica:
1 k j x < k j +1
Bsplinesdegradol = 0: B ( x ) = I k ,k ) ( x ) =
0
j
j j+
j +1
0 enotrocaso
en otro caso
LosBsplinesdeordensuperiorsedefinenrecursivamente como:
x kj k j +l +1 x
B ( x) =
l
j B l 1
j ( x) + B lj+11 ( x )
k j +l k j k j +l +1 k j +1

Clculosencillodesusderivadas.
50
Regresinspline
Paraproducir unajuste suave(como enregresin polinmica)yaltiempo
detectar comportamientos locales(como enelanlisis categrico),
podemos utilizar funciones spline.
spline
Consideremos elsiguiente ejemplo simulado:

51
f ( xi ) = sen3 ( 2xi3 ) + i , i = 1,..., 400
xi U [ 0,1] y i N ( 0, 0.1)

set.seed(90)
( )
eps<-rnorm(400,0,0.1); X<-runif(400,0,1)
X<-X[order(X)]
yteor<-(sin(2*3
yteor< (sin(2 3.141516
141516*X**3))**3
X 3)) 3
yobs<-(sin(2*3.141516*X**3))**3+eps
plot(X,yobs,pch=1,ylab="Y") 52
Podemos considerar una basede(m-1) polinomios atrozos de
grado l ,ajustados
ajustados por separado encada
en cada uno delosintervalos
de los intervalos
definidos por una secuencia deknots(puntos decorte)
a = k1 < k2 < ... < km 1 < km = b

a b
53
Knots=0.4,0.8

Knots=0.2,0.4,0.63,0.8,0.9
, , , ,

Paraasegurar
Para asegurar lacontinuidad
la continuidad delaestimacin final de f , enlas
de la estimacin finalde en las
fronteras delosintervalos senecesitan algunas restricciones!!! 54
sto nos lleva alasiguiente clase debasesdefunciones:

Unafuncinf : [a, b] esunsplinepolinmicodegradol


si satisface las siguientes condiciones:
1.f ( x) es (l -1) vecescontinuamentediferenciabley
2.f ( x) esunpolinomiodegradol parax k j , k j +1 ) ,j = 1,....m 1.

El
Elespacio
espacio desplines un espacio vectorial (m + l -1)
de splines polinmicos es unespacio 1)
dimensional,yunsubespacio delespacio defunciones (l -1)veces
contin amente diferenciables.
continuamente diferenciables

Por tanto,cada spline polinmico puede serrepresentado por un


baseded =(m + l -1) funciones,delasiguiente manera:
d
f ( x) = j Bj ( x)
j =1
55
RegresinutilizandoBsplines
Paraestimarelmodeloderegresin
= f ( x ) , f una funcin
f i (desconocida)suave
(d id )

Construir una base de (m+l 1) B splines


Construirunabasede(m+l-1)Bsplines

{B ( x ) ,,.........,, B
1 m + l 1 ( x )}
dondem =nmerodeknots,y
l =gradodelospolinomios(usualmentecbico,l=3).
d d l l ( l b l 3)
EvaluarlosBsplines
p Bj encadavalordelacovariable, x
Ajustarelsiguiente modeloGLMampliado
d
= j B j ( x ) , d = m + l -1
j =1 56
5knotsinteriores:
((0.2,0.4,0.63,0.8,0.9)
, , , , )

BaseBsplines cbicos

57
Ejemplo simulado

(a)Regresin spline para diferentes grados desuavizacin (dfs)

de df , loscorrespondientes
Para un valor dedf
Paraunvalor los correspondientes knotsestn
knots estn situados enloscuantiles.
en los cuantiles.

58
Ejemplo simulado
(b) Diferentes estimaciones delaregresin
(b)Diferentes spline, fijando df
de la regresin spline,fijando df=9
9
BS1 ,knots=c(0.3,0.4,0.7,0.75,0.85,0.9)
BS2 ,knots
BS2 , knots=c(0.2,0.3,0.4,0.45,0.7,0.8)
c(0.2,0.3,0.4,0.45,0.7,0.8)

59
Utilizamosbsplines enelejemplodepediatra.

Modelos R2 AIC
M1:poly(edad,3) 0.94 2272.466
M2: bs(edad,4) 0.95 2032.766
M3:bs(edad,6) 0.96 2014.311

60
Regresinspline
(POIdata
POI data)
logit = 0 + bs ( Gluc )
Queremos representar laGlucosa atravs deBsplines cbicos conun
nico knotinteriorenelvalor112.

Gluc B1 B2 B3 B4
B4
88
880.740.170.010.00
0 74 0 17 0 01 0 00 B1
1710.170.440.340.03
1500.280.470.230.01
B3
86
860.730.150.010.00
0 73 0 15 0 01 0 00
1470.290.470.210.01 B2
1160.530.390.070.00
102
1020.670.290.030.00
0.67 0.29 0.03 0.00
1180.510.400.070.00
950.720.230.020.00
.

61
(POIdata)

Estimamos elsiguiente GLMlogstico

logit = 0 + 1 B1 ( Gluc ) + 2 B2 ( Gluc ) + 3 B3 ( Gluc ) + 4 B4 ( Gluc )

df = 3 + 1 = 4
4

3
Reference value
2 (95 mg/dl)
/dl)
OR (x, xref)

1
Ln O

-1

-2

-3
50 75 100 125 150 175 200 225 250 275 300
Plasma glucose (mg/dl)

62
Las
LasbasesdeB
bases de Bsplines
splines estn disponibles enlamayora
en la mayora delos
de los
paquetes estadsticos ms avanzados.

Enparticular,estn implementados enlafuncin bs,dentro del


paquete splines deR.

bs sepuede utilizar dentro delafuncin glm (lm)

poi<-read.table("poi.txt", header=T)

names(poi)
[1] "age" "gender" "gluc" "diab" "poi"

library(splines)
y( p )

poi.bs<-glm(poi~s(gluc,knots=c(112)),family=binomial,data=poi)

63
B-Spline Basis for Polynomial Splines

bs(x, df =NULL, knots =NULL, degree = 3,


intercept =F,..)
Arguments
x the p
predictor variable.
df degrees of freedom; one can specify df rather than
knots; bs() then chooses df-degree (minus one
if there is
i an intercept)
i ) knots at suitable
i bl quantiles
i
of x.
knots the internal breakpoints that define the spline.
spline The
default is NULL, which results in a basis for ordinary
ppolynomial
y regression.
g
degree degree of the piecewise polynomialdefault is 3 for
cubic splines.
intercept if TRUE, an intercept is included in the basis.
64
Regresinspline enlaprctica
Cuando realizamos regresin utilizando Bsplines.
B splines
Ventajas
R
Realizamos
li una regresin
i paramtrica
t i local.
l l
Produceefectos suavesdelas covariables continuas.
Sepuede
S d aplicar
li acualquier
l i tipoi derespuesta
d (bi
(binomial,
i l
poisson,gaussiana,...),enunmodelo multivariate:
glm(poi~
l ( i bs(gluc,knots=c(112))+bs(age,df=4),
b ( l k t (112)) b ( df 4)
family=binomial,data=poi)
El
Elgrado
grado deflexibilidad
de flexibilidad (osuavizacin)sepuede
(o suavizacin) se puede controlar a
a
travs delnmero deknotsm ,oequivalentemente,atravs de
loscorrespondientes
p dff .

Limitaciones
Hemos deseleccionar
d l (d
(deuna manera subjetiva),elnmero
b ) l y
localizacin delosknots!! 65
EnnuestroejemplodeInfeccinpostquirrgica(POI)

logit = 0 + bs ( Gluc )
1knot (112) 2knots (96, 113)
4 4

3 3
Reference value Reference value
(95 mg/dl) 2 (95 mg/dl)
2

R (x, xref)
R (x, xref)

1 1

Ln OR
Ln OR

0 0

-1 -1

-2
df=4 -2
df=5
-3
3 -3
3
50 75 100 125 150 175 200 225 250 275 300 50 75 100 125 150 175 200 225 250 275 300
Plasma glucose (mg/dl) Plasma glucose (mg/dl)

Nmerodeknots ???
Localizacindelosknots???
Localizacin de los knots???
66
Tcnicas desuavizacin enregresin:
Regresin tipo ncleo

Comoalternativaalaregresinspline,puedenutilizarsetcnicasde
suavizacindelaregresin,quecorrespondenalaregresinno
paramtrica.

Estaregresinutiliza
Esta regresin utiliza suavizadores
suavizadores (smoothers)paraestimar
(smoothers) para estimar
puntoapunto,lafuncinderegresin.

ExistenvariossuavizadoresimplementadosenR.

Unodelosmssencilloseselsuavizadortiponcleo(kernel)

67
Suavizadortiponcleo

Asumiendounmodeloderegresinunivariante

yi = f ( xi ) + i , i = 1,..., n

Dadounpuntox0, lafuncin f seestimadelasiguienteforma:

Seabreunaventana, h,alrededordex0.

Elvalorajustado, f(x0), seobtienepromediandotodoslos


valoresrespuestaquecaendentrodelaventana.

Elpromedioseponderaporunafuncinkernel (porejemplo,la
densidad normal)
densidadnormal).
68
Efectodelaventanah :
h curvamuysuave
curva muy suave
h 0 curvaconmucho"ruido"

Luegoh eselparmetroquecontrolaelgradodesuavizacin.
69
Kernel Regression Smoother
Description
The NadarayaWatson kernel regression estimate.
Usage
ksmooth(x,
( , y, kernel = c("box",
( , "normal"),
), bandwidth=0.5,
,
range.x = range(x), n.points=max(100,length(x)), x.points)

Arguments
x input x values
y input y values
kernel the kernel to be used.
used
bandwidth the bandwidth.
range.x the range of points to be covered in the output.
n.points
i t number
b of
f points
i t att which
hi h to
t evaluate
l t the
th fit.
fit
x.points points at which to evaluate the fit. If missing,
n.points are chosen uniformly to cover range.x.

Value
x values at which the smoothed fit is evaluated.
Guaranteed to be in increasing order.
y fitted values corresponding to x. 70
airquality

Queremosrealizarunaestimacinnoparamtrica,dela
relacin entre ozono y temperatura
relacinentreozonoytemperatura.

Utilizaremoselsuavizadortiponcleo (ksmooth).
Funcinncleo=kernel=gaussiano=normal.
Usaremosdiferentesventanas
U dif (b d id h ) h 3 8 20
(bandwidths):h=3,8,20.

71
air<-na.omit(airquality)
with(air, {
plot(Temp,Ozone,
l t(T O main="airquality",xlab="Temperature",ylab="Ozone")
i " i lit " l b "T t " l b "O ")
lines(ksmooth(Temp,Ozone,"normal",bandwidth=3), lty=1, lwd=3,col="black")
lines(ksmooth(Temp,Ozone,"normal",bandwidth=8), lty=2, lwd=3,col="red")
lines(ksmooth(Temp,Ozone,"normal",bandwidth=20), lty=3, lwd=3,col="blue")
legend(60,120,c("h=3","h=8","h=20"),col=c("black","red","blue"),
lty=c(1,2,3),lwd=3) })

72
Tcnicas desuavizacin enregresin:
Regresin Spline Penalizada
Penalizada
Cuando utilizamos regresin spline:

Conpocos knots(df ),lossplines resultantes pueden noser


suficientemente flexibles para capturar lavariabilidad delos
datos.
Sinembargo,conunngrande
g , g deknots,lacurvas
, estimadas
tienden alsobreajuste delosdatos,obteniendo as curvas
demasiado ruidosas.

Pararesolverelproblema delaseleccin ptimadesuavizacin,


se pueden utilizar dosaproximaciones
sepueden dos aproximaciones generales:

Adaptiveknotselectionprocedures.
Aproximaciones basadas enlaPenalizacin.
73
Regresin Spline Penalizada
Por sencillez,asumimos
sencillez asumimos unmodelo
un modelo univariante
= f ( x)
Idea:
Representar f (x) como una combinacin linealdeuna base
apropiada defunciones Bj (x), (e.g.Bsplines)utilizando un
nsuficientemente grande deknots
d
f ( x) = j Bj ( x)
j =1

Ventaja principal:elmodelo seajusta aunGLM.


Penalizarlagran
g variabilidad deff conuntrmino apropiado
p p de
penalizacin, ,sobre elvectordecoeficientes.

Dicho deotro
de otro modo,penalizar
modo penalizar elgrado
el grado decurvatura de f (atravs
de curvatura def (a travs
delasegunda derivada dedicha funcin). 74
Coneste propsito,si queremos estimar elsiguiente modelo GLM
d
= j Bj ( x)
j =1

Elproblema delaregresin spline penalizada es minimizar la


siguiente funcin objetivo basada enelcriterio de la Deviance
en el criterio delaDeviance
Penalizada :
W (z X ) + ( f ( x ) ) dx
2 2
''

Elparmetro , sedenomina parmetro desuavizacin ya que


controla elequilibrio entre

Lafidelidad alosdatos ( pequeo)


y
lasuavizacin delaestimacin resultante ( grande)
75
Como f es linealenlosparmetros,, lapenalizacinsiempre
puede expresarse como una forma cuadrtica:
puedeexpresarsecomounaformacuadrtica:

( f ( x ))
1 2
''
dx = T K
0

donde K islaMatrixdePenalizacin,que es una matriz de


coeficientes conocida.
As,lafuncinobjetivopenalizadapuedereescribirsecomo:
W (z X )
2
+ T K
Elproblema deestimar elgrado desuavizacin delmodelo
(hasta ahora,entrminos delnmero ylocalizacin delosknots),
setraslada aunproblema deestimacin delparmetro de
suavizacin ,.
p p ,
Peroantesdeabordarelproblemadelaestimacinptimade,
consideremoseldelaestimacinde ,paraun fijo.
76
PenalizedIterativeReweightedLeastSquares
(P IRLS)
(PIRLS)

= f ( x)
Representando
p f ((x)como
) un spline
p penalizado,nos
p , lleva ala
estimacin por Verosimilitud Penalizada
1 T
l pen ( ) = l ( ) K
2
donde l ( ) es elloglikelihoodcorrespondiente
g p aunGLM
conpredictor
= X
Paraunvalorfijo delparmetro desuavizacin, ,laestimacin
de los sepuede
delos se puede obtener atravs
a travs deuna
de una ligera modificacin del
del
algoritmo IRLS(FisherScoring)usual
77
Estimacin PIRLS
Dadounvalor

( k +1)
=(X W X + K ) X TW ( k ) z ( k )
-1
T (k )

donde W es lamatriz diagonaldelospesosdetrabajo (working


, y z es larespuesta
weights) ,y la respuesta detrabajo
de trabajo (working response)
response)
pseudodatos.
W yyz dependen
p delaestimacin actual.
Elajuste delarespuesta detrabajo por mnimos cuadrados
ponderados hasta laconvergencia,corresponde almodelo de
trabajo

z N(X , W 1
)
78
Propiedades delosestimadores PIRLS

= f ( x)

Dado, elsuavizador spline penalizado f :

viene caracterizado por lamatriz suavizadora

S = X ( X WX + K ) X T W
T 1

es unsuavizador
i d lineal:
li l

f = S z

Sepueden
p construir intervalos deconfianza,bandas
, deconfianza
yotras cantidades,enanaloga alosmodelos deregresin GLM.
79
Basessuavizadoras
Enlaprctica,ydependiendodelabaseseleccionada,{Bj(x)} ,
existenvariossuavizadorespenalizadosdebajorango(consultar
Wood 2006 pp 146 167):
Wood2006,pp.146167):
d
f ( x) = j Bj ( x)
j =1

SSmoothingsplines
thi li (W hb 1990 H ti Tib hi i 1990)
(Wahba,1990;HastieTibshirani,1990)
Cubicregressionsplines (Wood,2006)
Thinplateregressionsplines
hi l i li (
(Wood,2003,2006)
d )
P(enalized)Splines (PSplines,EilersMarx,1996;Durbn 2008).
Psplines Bayesianos (LangyBrezger,2004),..
Veamos,porejemplo,comoseconstruyenlosPsplines,

80
Psplines
Eil
Eilers andMarx(1996)sugierenelusodeunabasedeBsplines
d M (1996) i l d b d B li
(deBoor,1978)
d
f ( x) = j Bj ( x)
j =1
con un n relativamente grande de knots (usualmente,20
conunnrelativamentegrandedeknots (usualmente 20 40)

Lafuncinobjetivoquequeremosminimizar
La funcin objetivo que queremos minimizar

W (z - X )
2
+ T K

construye con una matriz de penalizacin (penalty matrix),


seconstruyeconunamatrizdepenalizacin(penalty
se matrix) K,K
quepenalizalasdiferencias(alcuadrado)deordenr (1,2,3,)de
l t
losparmetrosadyacentes.
t d
81
Sidecidimos,porejemplo,penalizarlasdiferenciasdeorden1,
,p j p , p ,
entonceseltrminodepenalizacinvienedadopor

K = ( j +1 j ) = 12 2 1 2 + 2 22 2 2 3 + .....
T 2

y es fcil ver que la matriz de penalizacin K , es


yesfcilverquelamatrizdepenalizacin,K

1 1 0
1 2 1

K =

1 2 1
1 1

Aumentandoelordenr,aadimosflexibilidadalaestimacin
final(ensoftwareespecializadoimplementandoPsplines
( p p p se
considerar=2 3 )
82
Grados delibertad efectivos deunspline penalizado
D d
Dado,
f = S y
S = X ( X WX + K ) X T W
T 1

Enanaloga
En analoga conelGLM(nopenalizado),elcorrespondiente
con el GLM (no penalizado) el correspondiente nmero
deparmetros efectivos ( grados delibertad efectivos) del
modelo:
edf = tr X ( X T WX + K ) X T W = tr ( S )
-1
1


es,latrazadelamatrizsuavizadora(esunnmeroreal).
sto l d l i i d ( l)

Problema (aresolver)
(a resolver)
edf altossecorrespondencon pequeos curvas ruidosas
edf
df bajossecorrespondencon
b j d grandes
d curvas suaves

83
=0.905,edf=5 =0.043,edf=60

Alto Sesgo
AltoSesgo Alta Varianza
Alta

ptimo
p f) :Equilibraelsesgoylavarianza
((edf) q g y

84
Seleccin automtica delparmetro
Dado (equivalentemente,paraunvalordeedf
Dado ( equivalentemente para un valor de edf )
f = S z = Sedf z
Laseleccin delparmetro sesuavizacin ptimo ,opt ,sebasar enla
minimizacin dealgn criterio (aproximado)deerror(Wood,2006):

1.GeneralizedCrossValidation(GCV )
n Deviance
GCV ( ) = , :parmetroescalaparaevitarsaltos
n tr ( S )
2

P
Paramodelosconparmetrodeescaladesconocido(p.e.,gaussiano)
d l d l d id ( i )

2 Unbiased Risk Estimator (UBRE) : Criterio AIC reescalado


2.UnbiasedRiskEstimator re escalado
Deviance 2tr ( S )
UBRE ( ) = +
n n
Paramodelosconparmetrodeescalaconocido(binomial,poisson)
85
Loscriteriosanteriores(GCV UBRE)puedensercomputacionalmente
costosos (opt seobtieneatravsdeunabsquedarefinadaenungrid)
costosos( se obtiene a travs de una bsqueda refinada en un grid)

3 Restricted Maximum Likelihood (REML)


3.RestrictedMaximumLikelihood(REML)
Cualquier suavizador penalizado cuadrticamente ,como elPspline,
admite una representacin como unmodelo
un modelo mixto (ver,e.g.,Eilers
(ver e g Eilers y
Marx,1996;Ruppert etal,2003)delaforma
X F F + Zb where
h b N ( 0,
0 I /)
As,losPsplines
, p pueden serformulados eimplementados
p p enel
mbito delosGLMmixtos (GLMM),utilizando elcriterio
RestrictedMaximumLikelihood(REML).

Larepresentacin como unmodelo mixto permite examinar el


problema delaseleccin
de la seleccin delprametro
del prametro desuavizacin
de suavizacin (inherente a
laregresin suave)desde una perspectiva diferente. 86
Ejemplo simulado
En general, todas estas aproximaciones producen resultados similares...
Engeneral,todas

edf GCV = 23.06 edf REML = 24.59

edf GCV = 21.87 edf REML = 22.54

87
Efectosuavizado(centrado)delaGlucosa
(datos POI)
(datosPOI)

logit = 0 + f ( Gluc )
Suavizador:SmoothingSplines

spoonshape

edfUBRE = 5.25

88
CurvaOddsRatioflexibleparalaGlucosa
(Figueiras andCadarsoSurez,2001)

OR = exp f ( Gluc ) f ( 95 )
4

3 R eferen ce valu e
(95m g /dl)
2
LnOR (x,xref)

-1

-2

-3
50 75 100 125 150 175 200 225 250 275 300
P lasm a g lu co se (m g /d l)

SoftwareenR:np.OR ynp.OR.mgcv (disponible)


89
CurvaORsuavedelaGlucosa
Utilizando diferentes suavizadores yycriterios deoptimizacin...
p
Thin
Thinplate
platesplines
splines Thin plate splines

edf REML = 5.77 edfUBRE = 5.66

Psplines Psplines

edf REML = 5.32 edfUBRE = 5.46


90
3.Modelos
3 Modelos Aditivos Generalizados
(GeneralizedAdditiveModels,GAM)

HastieandTibshirani (1990)
Ruppert,Wand,andCarroll(2003)
Wood(2006)

91
Comoya sehacomentado,para las covariables continuas enelmodelo,
lasuposicin deunefecto estrictamente linealenelpredictorpuede no
serapropiada.Por ejemplo:
Algunos efectos pueden tener una formadesconocida.
Lasinteracciones
L i i entrelas
l covariables
i bl pueden d adoptar
d una
formacompleja.
Pararesolveresta situacin,enunmodelo GAM multivariante podemos
reemplazar elpredictorestrictamente linealdelGLM(en1.3)
por un
un predictoraditivo
predictor aditivo semiparamtrico delaforma:
de la forma:

= X* + f1 ( x1 ) + f 2 ( x2 ) + .... + f p ( x p ) (1.5)
donde:
X* correspondealaparteestrictamenteparamtricadelmodelo
corresponde a la parte estrictamente paramtrica del modelo
(es decir,trmino independiente,factores,efectos lineales,)

f j ( x j ) = efectoparcialsuave(desconocido)dex j enelpredictor
92
Elproblema delaidentificacin deunGAM
Asumamos,porejemplo,elsiguienteGAMcondoscovariables
= 0 + f1 ( x1 ) + f 2 ( x2 )
Elnivel delas dosfunciones noest identificado,es decir,no
podemos diferenciar entre
entre

f1 ( x1 ) + f 2 ( x2 ) yf1 ( x1 ) + f 2 ( x2 )
con
f1 ( x1 ) = f1 ( x1 ) c y
y f 2 ( x2 ) = f 2 ( x2 ) c

Esteproblemasepuedeevitarcentrando lasfuncionessuaves,
esdecir,considerandoque
E f j ( x j ) = 0
93
ElGAMes suficientemente flexiblepara acomodar interacciones :

1. Interaccin FactorporCurva:producecurvas deefecto


separadas deuna covariable continua,enlosdiferentes niveles de
unfactoru.

= 0 + 1u + uf ( x ) + ...

2 Interaccin ContinuaporContinua
2. Continua por Continua :produceunefecto
: produce un efecto conjunto
dedoscovariables continuas enelpredictor(i.e.,una superficie).

Ej
Ejemplo
l 1:
1 = 0 + f12 ( x1 , x2 ) + ....
Ejemplo 2:modelo deinteraccin tipo ANOVA
= 0 + f1 ( x1 ) + f 2 ( x2 ) + f12 ( x1 , x2 ) + ....
incluyendo losefectos
los efectos principales
principales delas
de las doscovariables
dos covariables yel
y el
efecto purodesu interaccin.
94
Herramientas estadsticas para laestimacin deunGAM

= X* + f1 ( x1 ) + f 2 ( x2 ) + .... + f p ( x p )

fj ( x j )
1. Suavizadores:,estimadores suaves delas funciones f j ( x j )
Smoothingsplines (Wahba,1990;HastieyTibshirani,1990)
Tinplateregressionsplines (Wood,2003)
PenalizedSplines (PSplines,Eilers yMarx,1996)
BayesianPSplines
y p ((LangyBrezger,2004),..
gy g , ),

2. Criterios automticos deseleccin delgrado desuavizacin


GeneralizedCrossValidation(GCV)
Generalized Cross Validation (GCV)
Akaike InformationCriterion(AIC)
UnbiasedRiskEstimator(UBRE)
R t i t dM i
RestrictedMaximumLikelihood(REML),
Lik lih d (REML)

3.Algoritmos deestimacin
Backfitting
B kfitti (HastieandTibshirani
(H ti d Tib hi i 1990)
1990)
PenalizedRegressionSpline PIRLS(Ruppert etal2003,Wood,2006)
95
Referencias relevantes ysoftwaresobre GAMs
Hastie TJ,Tibshirani RJ.Generalized Additive Models.ChapmanHall,1990.
LibreraR:gam
Algoritmo:Backfititng
g g
Suavizadores:smoothing splines,loess(bivariante)
Criteriosdeseleccindelgradodesuavizacin:AIC,GCV(noimplementados)

Ruppert D,Wand MP,CarrollRJ.Semiparametric regression.CambridgeUniversity


Press,2003.
Librera R : SemiPar
LibreraR:SemiPar
Algoritmo:Penalized Regression Spline
Suavizadores:PSplines,tensorproduct splines (interaccionestiposuperficie)
Criterios de seleccin del grado de suavizacin: REML
Criteriosdeseleccindelgradodesuavizacin:REML

Wood,SN.Generalized Additive Models.An introduction with R.CRC/Chapman


H ll 2006.
Hall,2006
LibreraR:mgcv
Algoritmo:Penalized Regression Spline
Suavizadores:thin regression splines,PSplines,tensorproduct splines,
Criteriosdeseleccindelgradodesuavizacin:GCV,AIC,UBRE,REML, 96
Elmodelo GAMcomo unGLMpenalizado
DadoelmodeloderegresinGAM
= X* + f1 ( x1 ) + f 2 ( x2 ) + .... + f p ( x p )

Cada funcin fj puede modelizarse conunspline,yentonces


con un spline y entonces
puede representarse atravs deuna basedefunciones B jk ( x j )
qj
{ }
f j ( x j ) = jk B jk ( x j )
k =1

Paracada funcin,fj , es fcil construir lamatriz dediseo del


modelo:
f j = X j j
donde
j = j1 , j 2 ,..., jq j yX jk = B jk ( x j )
T

97
ElmodeloGAMpuedereparametrizarse completamente

= X* + X1 2 + X 2 2 + .... + X p p
C
Comoya hemos
h comentado,este
d modelo
d l noest identificado,a
id ifi d
menos que las funciones suaves estn sujetas alarestriccin de
estar centradas.
centradas

Una restriccin adecuada es que lasuma (media)delos


elementos delas funciones fj sea0.As sepuede reescribir como

1T X j j = 0
Esta restriccin puede serabsorbidapor una reparametrizacin.
Especficamente podemos encontrar una matriz Z,con
Especficamente,podemos Z con qj -11
columnas ortogonales,que satisfacen

1T X j Z = 0
98
Reparametrizando lafuncin suaveentrminos delos qj -1
parmetros , j ,tal
tal que
X j = X jZ
una nueva matriz del modelo para el trmino j simo
obtenemosunanuevamatrizdelmodeloparaeltrminojsimo,
obtenemos
talque
f j = X j j
yasatisfacelarestriccindeestarcentrada.

Dadaslasmatricescentradasporcadatrminosuave,elmodeloGAM
D d l i d d i l d l GAM
= X* + X1 2 + X 2 2 + .... + X p p
puedeserreescritocomoungranmodeloGLM(identificado),
delasiguienteforma:
g
= X
donde
T
X = X : X1 :...: X p yT = T , 1T , T2 ,..., Tp
*
99
Estimacin delmodelo GAM
SiintentamosestimarelmodeloGAM
p
= X* + f j ( x j ) = X
j =1
l ( )
minimizandolalogverosimilitudusual,,sobreajustamos
elmodelo.
Anlogamentealcasounivariante,elmodeloGAMdebeserestimado
introduciendopenalizaciones(unaporcadafuncinsuave)enla
logverosimilitud,paraevitarestimacionesdemasiadoruidosas:
1 p
l pen ( ) = l ( ) j Tj K j j
2 j =1
donde
j = parmetrodesuavizacin yK j = matrizdepenalizacin
correspondientes alafuncin suave, fj
100
Estimacin delmodelo GAM

Asumamosporahoraquelosparmetrosdesuavizacinson
conocidos
conocidos

Lafuncinobjetivoquequeremosminimizar
p
W ( z - X ) W ( z - X ) j j K j j
2 2
+ K =
T
+ T

j 1
j=1

UtilizamoselalgoritmoPIRLS
Utilizamos el algoritmo P IRLS paraestimartodoslosparmetros:
para estimar todos los parmetros:

Fijadoslosparmetrosdesuavizacin,laminimizacindela
funcinobjetivoseobtienemedianteelalgoritmoPIRLS,elanlogo
alalgoritmoFisherscoring introduciendopenalizacinen
los parmetros
losparmetros.
101
EstimadoresPIRLS
Paraunvalorfijo decada parmetro desuavizacin ,j ,
los estimadores PIRLS
losestimadoresP de los parmetros son:
IRLSdelosparmetros

= ( X WX + S ) X TWz
-1
T

p
donde S = jK j
j=1

G d d lib t d f ti d
GradosdelibertadefectivosdeunmodeloGAM
d l GAM

Lamatrizdegradosdelibertadefectivoses

F = ( X WX + S ) X TWX
T -1

102
Parmetrosdesuavizacin ptimos
EnelmodeloGAM
p
= X* + f j ( x j ) = X
j =1

Elvectordeparmetrosdesuavizacinptimo
opt = ( 1 , 2 ,,....,, p )

puedeobtenerse,deformaautomtica,minimizandoversiones
p , ,
multivariantes delossiguientescriteriosdeerror:
GCV , UBRE (Hastie yTibshirani,1990;Wood,2006)
y Tibshirani 1990; Wood 2006)

REML (Ruppert etal,2003;Wood,2006,;Brezger yLang;2004).

103
Algoritmos deoptimizacin
Problemaprincipal:enunmodeloGAMhayqueimplementarun
p p f ((GCV,, UBRE,, REML),yal
criterioeficienteparaoptimizarlosedfs ), y
tiempoaplicarelalgoritmoP-IRLS paraestimarlosparmetros
(fijandolosedfs).

1. Performancealgorithm
E ti l df dentrodelalgoritmoP-IRLS.
Estimalosedfs d t d l l it P IRLS
Computacionalmente eficiente.
Problemas deconvergencia.
Problemas de convergencia

2.Outeralgorithm
Estimalosedfs fueradelalgoritmoPIRLS.MtododeNewton.
LoscriteriosGCV/UBRE sonminimizadosdirectamente.
Computacionalmentemscostoso,peromsestable.
104
Inferencia enGAMs
(Wood,2006)
p
= X* + f j ( x j ) = X
j =1

1 I t
1.IntervalosdeConfianza(frecuentistas/bayesianos)para:
l d C fi (f ti t /b i )
Coeficientes :
Efectos suaves(terms): j = f j ( xj )
Predictor (link):
Respuesta(
Respuesta (response) = g
response ):
:
1
( )

2 Contrastes de hiptesis (bayesianos)


2.Contrastesdehiptesis(bayesianos)
105
Principales componentes delamodelizacin GAM
Amododeresumen,,
cuandoqueramosestimarunGAMatravsderegresinspline
penalizada,habrquepreguntarsequhacer?,cmo?....
Qu Cmo
Convertir unGAMenunGLM Elegir basessuavizadoras ymedidas
penalizado,concoeficientes y apropiadas decurvatura
parmetrosdesuavizacin
( f '' ( x ) ) dx = T K
1

2

Seleccionar Por GCV, UBRE, AIC, REML utilizando


mtodos deNewtoneficientes yrobustos

Estimar Por P-IRLS


Construir intervalos de confianza y
Usar unmodelo desuavizacin bayesiano
creibles para (funciones de)
Contrastes dehiptesis acerca deun Usar aproximaciones bayesianas
GAM
106
Librera mgcv para elajuste deGAMs
(W d 2006)
(Wood,2006)

La funcin gam deesta


Lafuncin de esta librera:
librera:

Ajusta unModelo Aditivo Generalizado (GAM),dnde elGAM


constituye unGLMpenalizado cuadrticamente
Elgrado desuavizacin ptimo seobtiene como partedel
ajuste.

gam(formula,family=gaussian(),data=list(),...,
method GCV.Cp ,optimizer c( outer , newton ),
method="GCV.Cp,optimizer=c("outer","newton"),
scale=0,..,knots=NULL,sp=NULL, gamma=1,...)

107
Arguments (selected):

formula A GAM formula (see formula.gam and also gam.models). This


is exactly like the formula for a GLM except that smooth terms, s and
te can be added to the right hand side to specify that the linear
predictor depends on smooth functions of predictors (or linear
functionals of these).
family This is a family object specifying the distribution and link to use in
fitting etc. See glm and family for more details. A negative
binomial family is provided: see negbin.
d t
data A data
d t fframe or list
li containing
i i theh model
d l response variable
i bl andd
covariates required by the formula.
method The smoothing g pparameter estimation method. "GCV.Cp" p to use
GCV for unknown scale parameter and Mallows' Cp/UBRE/AIC for
known scale. "GACV.Cp" is equivalent, but using GACV in place of
GCV. "REML"
REML for REML estimation, including of unknown scale,
"P-REML" for REML estimation, but using a Pearson estimate of the
scale. "ML" and "P-ML" are similar, but using maximum likelihood
in place of REML
REML.
108
optimizer An array specifying the numerical optimization method to use to
optimize the smoothing parameter estimation criterion (given by
method). "perf" for performance iteration. "outer" for the
more stable direct approach.
scale If this
thi iis positive
iti then
th it isi taken
t k as the
th known
k scale
l parameter.
t
Negative signals that the scale parameter is unknown. 0 signals
that the scale parameter is 1 for Poisson and binomial and
unknown otherwise. Note that (RE)ML methods can only work
with scale parameter 1 for the Poisson and binomial cases.
knots p
this is an optional g user specified
list containing p knot values to be
used for basis construction. For most bases the user simply
supplies the knots to be used, which must match up with the k
value supplied
pp (note
( that the number of knots is not always
y jjust k).
)
sp A vector of smoothing parameters can be provided here.
Smoothing parameters must be supplied in the order that the
smooth terms appear in the model formula
formula.
gamma It is sometimes useful to inflate the model degrees of freedom in
the GCV or UBRE/AIC score by a constant multiplier.
gamma=1.4 1 4 , recommendedd d
109
Defining smooths in GAM formulae
Usage
g
s(..., k=-1, fx=FALSE, bs="tp", m=NA, by=NA,)
Arguments (selected):
... a list of variables that are the covariates that this smooth is a function of.
k the dimension of the basis used to represent the smooth term.
fx indicates whether the term is a fixed d.f. regression spline (TRUE) or a penalized regression
spline (FALSE).
bs a two letter character string indicating the (penalized) smoothing basis to use. (eg "tp" for
thin plate regression spline, "ps" for p-splines spline). see smooth.terms for an over view of
what is available.
m The order of the penalty for this term (e.g. 2 for normal cubic spline penalty with 2nd
derivatives when using default t.p.r.s basis). NA signals autoinitialization. Only some smooth
classes use this. The "ps" class can use a 2 item array giving the basis and penalty order
separately.
p y
by a numeric or factor variable of the same dimension as each covariate. In the numeric vector
case the elements multiply the smooth evaluated at the corresponding covariate values (a
varying
y g coefficient model results).) In the factor case causes a replicate
p of the smooth to be
produced for each factor level.
110
Basessuavizadoras (enmgcv)

bs="tp", thin plate regression splines


(Wood,2003),por
(Wood, 003), por defecto

bs="cr"
bs= cr , cubic regression splines
(basesspline cardinales,Wood;2006)
recomendados para basesdedatos grandes

bs="ps", P-splines
(Eil
(EilersMarx,1996)
M 1996)

bs="ad"
bs= ad , Adaptive smoothers,..
smoothers
Sonapropiadas cuando elgrado desuavizacin vara conla
covariable.siempre ycuando seasegure que losdatos
contienen suficiente informacin para poder estimar dicha
variabilidad. 111
Ejemplo simulado

x <- seq(0,1,length=200)
(0 1 l h 200)
yteor<-sin(3*pi*x)
y <- sin(3*pi*x) + 0.5*rnorm(200)
x<-order(x)
< order( )
plot(x,y)
lines(x,yteor)
#THINPLATEREGRESSIONSPLINESESTIMATION(tp)
fit.tp<gam(y~s(x,bs="tp"))
plot(x,y)
lines(x,yteor,col="black",lwd=2,lty=1);lines(x,predict(fit.tp),col="red",lty=2,lwd=3)
l
legend(0.0,1,c("terica","tp"),col=c("black","red"),lty=c(1,2),lwd=c(2,3))
d(0 0 (" i " " ") l ("bl k" " d") l ( 2) l d (2 3))

#THINPLATEREGRESSIONSPLINESBASIS
dat=as.data.frame(x)
d t d t f ( )
base=smooth.construct(s(x,bs="tp"),dat,knots=NULL)
matplot(base$X,type="l",main="thinplateregressionsplines basis)
#CUBICREGRESSIONSPLINES(cr)
fit.cr<gam(y~s(x,bs="cr"))
plot(x,y)
lines(x,yteor,col="black",lwd=2,lty=1)
li (
lines(x,predict(fit.cr),col="red",lty=2,lwd=3)
di (fi ) l " d" l 2 l d 3)
legend(0.0,1,c("terica","cr"),col=c("black","red"),lty=c(1,2),lwd=c(2,3))
#CUBICREGRESSIONSPLINESBASIS
d t
dat=as.data.frame(x)
d t f ( )
base=smooth.construct(s(x,bs="cr"),dat,knots=NULL)
matplot(base$X,type="l",main="cubicregressionsplines basis")
#P SPLINES(ps)
fit.ps<gam(y~s(x,bs="ps"))
plot(x,y)
lines(x,yteor,col="black",lwd=2,lty=1)
li (
lines(x,predict(fit.ps),col="red",lty=2,lwd=3)
di (fi ) l " d" l 2 l d 3)
legend(0.0,1,c("terica","ps"),col=c("black","red"),lty=c(1,2),lwd=c(2,3))
#PSPLINESBASIS
dat as data frame(x)
dat=as.data.frame(x)
base=smooth.construct(s(x,bs="ps"),dat,knots=NULL)
matplot(base$X,type="l",main="Psplines basis")
Bivariate tensor product smooths in GAM formulae

Usage
te (..., k=NA, bs="cr", m=NA, d=NA, by=NA, fx=FALSE, )
Arguments (selected):
k the dimension(s) of the bases used to represent the smooth term.
bs array (or single character string) specifying the type for each marginal basis. "cr" for cubic regression
spline; "cs" for cubic regression spline with shrinkage; "cc" for periodic/cyclic cubic regression spline;
"tp" for thin plate regression spline; "ts" for t.p.r.s. with extra shrinkage.
m The order of the penalty (for smooth classes that use this) for each term. If a single number is given
then it is used for all terms. NA autoinitializes. m is ignored by some bases (e.g. "cr").
d array
y of marginal
g basis dimensions. For example p if yyou want a smooth for 3 covariates made upp of a
tensor product of a 2 dimensional t.p.r.s. basis and a 1-dimensional basis, then set d=c(2,1).
Incompatibilities between built in basis types and dimension will be resolved by resetting the basis type.
by a numeric or factor variable of the same dimension as each covariate.
covariate In the numeric vector case the
elements multiply the smooth evaluated at the corresponding covariate values (a varying coefficient
model results). In the factor case causes a replicate of the smooth to be produced for each factor level.
f indicates
fx i di t whether
h th the
th term
t is
i a fixed
fi d d.f.
d f regression
i spline
li (T) or a penalized
li d regression
i spline
li (F).
(F)

112
Prediccin engam (mgcv)

predict.gam {mgcv} RDocumentation

Prediction from fitted GAM model

Description
Takes a fitted gam object produced by gam() and produces predictions
given a new set of values
g for the model covariates or the original
g
values used for the model fit. Predictions can be accompanied
by standard errors, based on the posterior distribution of the model
coefficients

predict(object,newdata,type="link",se.fit=FALSE,...)

type="link",terms,response

113
EJEMPLOSIMULADO:GAMPoisson

library(mgcv)

## Simulate Poisson data...

dat <- gamSim(1,n=4000,dist="poisson",scale=.1)

## use "cr"
cr basis to save time,
time with 4000 data...
data

fit<-gam(y~s(x0,bs="cr")+s(x1,bs="cr")+s(x2,bs="cr")+

s(x3,bs="cr"),family=poisson,data=dat,method="REML")

summary(fit)
y( )

plot(fit,pages=1)

114
summary(fit)

Family: poisson Link function: log

Formula:
y ~ s(x0, bs = "cr") + s(x1, bs = "cr") + s(x2, bs = "cr") +
s(x3, bs = "cr")

Parametric coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 0.77998 0.01094 71.32 <2e-16 ***

Approximate significance of smooth terms:


edf Ref.df Chi.sq p-value
s(x0)
( 0) 3.995
3 995 4.924
4 924 35.486
35 486 1.11e-06
1 11 06 ***
s(x1) 3.075 3.814 268.314 < 2e-16 ***
s(x2) 7.969 8.718 603.849 < 2e-16 ***
s(x3) 1
1.004
004 1.009
1 009 1.765
1 765 0.186
0 186

R-sq.(adj) = 0.207 Deviance explained = 17.9%


REML score = 6994.4
6994 4 Scale est.
est = 1 n = 4000

115
p
plot(fit,pages=1)
( ,p g )

116
EJEMPLOSIMULADO:GAMconproductos tensoriales
library(mgcv)
lib ( )
# following shows how tensor product deals nicely with
# badly scaled covariates (range of x 5% of range of z )
test1< function(x z sx 0 3 sz 0 4)
test1<-function(x,z,sx=0.3,sz=0.4)
{ x<-x*20
(pi**sx*sz)*(1.2*exp(-(x-0.2)^2/sx^2-(z-0.3)^2/sz^2)+
0 8*exp(-(x-0 7)^2/sx^2-(z-0 8)^2/sz^2)) }
0.8*exp(-(x-0.7)^2/sx^2-(z-0.8)^2/sz^2))
n<-500
old.par<-par(mfrow=c(2,2))
x< runif(n)/20;z< runif(n);
x<-runif(n)/20;z<-runif(n);
xs<-seq(0,1,length=30)/20;zs<-seq(0,1,length=30)
pr<-data.frame(x=rep(xs,30),z=rep(zs,rep(30,30)))
truth< matrix(test1(pr$x,pr$z),30,30)
truth<-matrix(test1(pr$x,pr$z),30,30)
f <- test1(x,z); y <- f + rnorm(n)*0.2; b1<-gam(y~s(x,z))
persp(xs,zs,truth);title("truth")
vis.gam(b1);title("t.p.r.s")
g ( ); ( p )
b2<-gam(y~te(x,z))
vis.gam(b2);title("tensor product: bs=cr")
b3<-gam(y~te(x,z,bs=c("tp","tp")))
vis.gam(b3);title("tensor product: bs=tp")
par(old.par) 117
118
GAMmultivariante (POIdata)
l
logit = 0 + f Age ( Age
A ) + Gender
G d + f Gluc ( Gluc
Gl ) + Diab
D b
> poi<-read.table("poi.txt", header=T)

> library(mgcv)

> fit<-gam(poi ~ s(age,bs="ps")+gender+s(gluc,bs=ps)+diab,


method="REML",data=poi,family=binomial)

Family: binomial, Link function: logit

Parametric coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.76814 0.08496 -20.812 < 2e-16 ***
gender 0.49222 0.10923 4.506 6.6e-06 ***
diab 0.09621 0.22207 0.433 0.665

Approximate significance of smooth terms:


edf Ref.df Chi.sq p-value
s(age) 1.001 1.001 41.09 1.46e-10 ***
s(gluc) 5.210 5.984 57.14 1.68e-10 ***

R-sq.(adj) = 0.0603 Deviance explained = 6.68%


REML score = 1102.3 Scale est. = 1 n = 2351 119
Grficas detodos losefectos
plot(fit shade=T,
plot(fit, shade=T scale=0,
scale=0 all.terms=T)
all terms=T)

edf REML = 1.00


1 00 edf REML = 5.21
5 21

Age Gl
Glucose

Women Men No Yes


120
Gender Diabetes
GAMincluyendo interaccin (POIdata)
Interaccin DiabetesporGlucosa:
g = 0 + Diab + Diab f Gluc ( Gluc )
logit
fit1<-gam(poi ~ diab+s(gluc,by=diab,bs="ps"),method="REML",
data=poi,family=binomial)

summary(fit1)

Parametric coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.48651 0.05576 -26.657 < 2e-16 ***
diab: YES 0.83977 0.26338 3.188 0.00145 **

Approximate significance of smooth terms:


edf Ref.df F p-value
s(gluc):diab NO 4.960 4.960 18.882 <2e-16 ***
s(gluc):diab YES 1.001 1.001 0.402 0.526
---

R sq.(adj)
R-sq (adj) = 0.0441
0 0441 Deviance explained = 4.44%
4 44%
REML score = 1128.8 Scale est. = 1 n = 2351
121
Lainteraccin diabetesporglucosaproducedosefectos funcionales
diferentes delaglucosa
de la glucosa enelriesgo
en el riesgo dePOI:
de POI:

NoDiabticos Diabticos

Pvalue<0 001
Pvalue<0.001 ns
n.s.

122
Nuevamente,tomando como valordereferencia 95,para laglucosa,
Los curvas ORseparadas
Loscurvas OR separadas por diabticos ynodiabticos
y no diabticos resultan ser:
ser:

NoDiabticos
b Diabticos
b

123
Interaccionestiposuperficie(POIdata)
CadarsoSurezetal(Statist Med,2006)

ModelodeEfectosPrincipales
logit = 0 + 1Sex + 2 Age + f 3 ( Gluc ) + f 4 ( Lymph% )
2 .3 R e f e r e n c e V a lu e

0 .8
R e f e r e n c e V a lu e
Log (OR)

Log (OR)
1
0

-0 .3 -0 .8
45 95 145 195 2 9 1 6 2 3 3 0 3 7 4 4

Glucose Lymphocites (%)

ModelodeinteraccintipoAnova
logit = 0 + 1Sex + 2 Age + f 3 ( Gluc ) + f 4 ( Lymph% ) + f34 ( Gluc,Lymph% )

124
Estudiodehipertensinarterial
EstimaremoslossiguientesmodelosGAMlogsticos:
Modelodeefectosprincipales
p ( HTA)
log = 0 + 1 SEXO + f1 ( EDAD ) + f 2 ( IMC )
1 p ( HTA)

Modeloincluyendointeraccinedadporimc
M d l i l d i i d d i
p ( HTA )
log = 0 + 1 SEXO + f12 ( EDAD, IMC )
1 p ( HTA )

Modeloincluyendointeraccin
Modelo incluyendo interaccin edad
edadporimcporsexo
por imc por sexo

p ( HTA )
log = 0 + 1 SEXO + 1 SEXO f12 ( EDAD, IMC )
1 p ( HTA )
125
p ( HTA)
log = 0 + 1 SEXO + f1 ( EDAD ) + f 2 ( IMC )
1 p ( HTA )
hta.gam1<-gam(hta~ s(edad, bs="cr")+s(imc,bs="cr")+sexo,
family binomial data=HTA)
family=binomial, data HTA)

summary(hta.gam1)

Family: binomial Link function: logit

P
Parametric
t i coefficients:
ffi i t
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.09531 0.07643 -14.331 < 2e-16 ***
sexoMujer -0.72944
0 72944 0
0.10662
10662 -6.841
6 841 7.85e-12
7 85e 12 ***

Approximate significance of smooth terms:


edf Ref.df
Ref df Chi.sq
Chi sq p
p-value
value
s(edad) 3.411 4.196 330.7 <2e-16 ***
s(imc) 2.306 2.912 157.5 <2e-16 ***

R-sq.(adj) = 0.288 Deviance explained = 26.2%


UBRE score = -0.1561 Scale est. = 1 n = 2842 126
op<-par(mfrow=c(1,3))
plot(hta.gam1,shade=T,scale=0,all.terms=T)
par(op)

127
p ( HTA )
log = 0 + 1 SEXO + 1 SEXO f12 ( EDAD, IMC )
1 p ( HTA )
hta.gam2<-gam(hta~ te(edad, imc,bs=c("cr","cr"))+ sexo,
family binomial data=HTA)
family=binomial, data HTA)

summary(hta.gam2)

Family: binomial Link function: logit

Parametric coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept)
( p ) -1.10785 0.07827 -14.155 < 2e-16 ***
sexoMujer -0.73140 0.10659 -6.862 6.79e-12 ***

Approximate
pp significance
g of smooth terms:
edf Ref.df Chi.sq p-value
te(edad,imc) 8.63 10.81 565.4 <2e-16 ***

R-sq.(adj) = 0.289 Deviance explained = 26.4%


UBRE score = -0.15674 Scale est. = 1 n = 2842
128
Representacingrficadesuperficiesdeinteraccin
Predictor Lineal(
Lineal (link)
link )

vis.gam(hta.gam2,view=c("edad","imc"),plot.type="persp",
color "heat"
color= heat ,n.grid=50,theta=-25,
n grid 50 theta 25
ticktype="detailed", type="link")

129
Representacingrficadesuperficiesdeinteraccin
Respuesta (response)
Respuesta( response )

vis.gam(hta.gam2,view=c("edad","imc"),plot.type="persp",
color="heat",n.grid=50,theta=-25,
ticktype="detailed", type=response")

130
p ( HTA )
log = 0 + 1 SEXO + 1 SEXO f12 ( EDAD, IMC )
1 p ( HTA )
hta.gam3<-gam(hta~ te(edad, imc,bs=c("cr","cr"),by=sexo)+ sexo,
family binomial data=HTA)
family=binomial, data HTA)
summary(hta.gam3)

Family: binomial Link function: logit

Parametric coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.07612 0.08287 -12.99 < 2e-16 ***
sexoMujer
j -0.97205 0.14358 -6.77 1.29e-11 ***

Approximate significance of smooth terms:


edf Ref.df Chi.sq p-value
te(edad,imc):sexoVarn 7.562 9.696 216.9 <2e-16 ***
te(edad,imc):sexoMujer 8.630 8.931 334.1 <2e-16 ***

R-sq.(adj) = 0.297 Deviance explained = 27.5%


UBRE score = -0.16369 Scale est. = 1 n = 2842
131
Representacingrficadelmodelohta.gam3por cada sexo
Queremos representar grficamente lasuperficie
la superficie edad
edad ximc
x imc
separadamenteparavaronesymujeres.

DadoqueMujereselprimerniveldelfactorsexoalaplicar
d l ld lf l l
directamentelafuncingrficavis.gam,lasuperficieedadx imc
que se representa es la del nivel de factor (sexo =Mujer)
queserepresentaesladelniveldefactor(sexo= Mujer )::
vis.gam(hta.gam3,view=c("edad","imc"), plot.type="persp",
color="terrain",
color terrain , n.grid
n.grid=50,theta=25,
50,theta 25, phi=40,
phi 40,
ticktype="detailed", type="response", border=NA, nCol=100,
shade=0.50, zlim=c(0,1), main="Mujer", zlab="prob(HTA)")

Pararepresentarlasuperficieparalosvarones,debemosaadir
cond=list(sexo="Varn):
vis.gam(hta.gam3,view=c("edad","imc"),plot.type="persp",
color="terrain", phi=40n.grid=50,theta=25,ticktype="detailed",
type="response",
yp p , cond=list(sexo="Varn"),
( ), border=NA,
, nCol=100,
,
shade=0.50, zlim=c(0,1), main="Varn", zlab="prob(HTA)")
132
PerspectivePlot

133
ContourPlot
op<-par(mfrow=c(1,2))
vis.gam(hta.gam3,view=c("edad","imc"),
i (ht 3 i (" d d" "i ") plot.type="contour",
l t t " t "
color= "terrain", n.grid=200, type="response", nCol=100,
main="prob(HTA) - MUJER)
vis.gam(hta.gam3,view=c(
vis gam(hta gam3 view=c("edad"
edad ,"imc")
imc ), plot.type=
plot type="contour"
contour ,
color= "terrain", n.grid=200, type="response",
cond=list(sexo="Varn"), nCol=100, main=" prob(HTA) - VARN")
p ( p)
par(op)

134
Comparativa demodelos

Datos HTA
M d l
Modelo D i
Deviance %D expl.
%Dev l AIC
edad+sexo 2570.40 20.37 2576.40
edad*sexo
edad sexo 2540 94
2540.94 21 28
21.28 2548 94
2548.94
edad+imc+sexo 2402.50 25.57 2410.50
edad*sexo+imc
edad sexo imc 2377.76 26.33 2387.76
s(edad,2.8)+s(imc,2.0)+sexo 2385.25 26.10 2398.97
te(edad,imc)+sexo 2375.28 26.40 2396.54
s(edad,by=sexo)+s(imc)+sexo 2365.58 26.70 2382.90
te(edad,imc,by=sexo)+sexo 2340.40 27.50 2376.79

135
Referencias
Brezger, A. and Lang, S. (2006). Generalized structured additive regression
based on Bayesian Psplines. Computational Statistics and Data Analysis, 50,
96 99
967991.

CadarsoSurez,C.,RocaPardias,J.,andFigueiras,A.(2006).Effectmeasures
in nonparametric regression with interactions between continuous exposures
innonparametricregressionwithinteractionsbetweencontinuousexposures.
StatisticsinMedicine,25,60321.

d B
deBoor,C.(1978).APracticalGuidetoSplines.Springer,Berlin.
C (1978) A P ti l G id t S li S i B li

Durbn,M.(2008).Splines conPenalizaciones (Psplines).Ediciones


UniversidadPblica deNavarra(Ed.DoloresUgarte).

Eilers,P.H.C.andMarx,B.D.(1996).FlexiblesmoothingusingBsplines and
penalties.StatisticalScience,11,89121.

g , , ( ) pp p
Figueiras,A.andCadarsoSurez,C.(2001).Applicationofnonparametric
modelsforcalculatingoddsratiosandtheirconfidenceintervalsforcontinuous
exposures.AmericanJournalofEpidemiology,154,26475 136
Hastie,T.J.andTibshirani,R.J.GeneralizedAdditiveModels.ChapmanandHall:
London,1990.

McCullagh,P.andNelder,J.A.GeneralizedLinearModels,2nded.Chapmanand
Hall:London,1989.

Ruppert,D.,Wand,M.P.,andCarroll,R.J.Semiparametric regression.Cambridge
UniversityPress,2003.

Wood,S.N.(2003).Thinplateregressionsplines.J.R.Stat.Soc.,B,65,95114.

Wood,S.N.GeneralizedAdditiveModels.AnintroductionwithR.
CRC/ChapmanHall,2006.

137