Está en la página 1de 90

Métodos Monte Carlo para Estadı́stica Inferencial

1 Estudio de Simulación para Propiedades de Prueba de Hipótesis

2 Estudio de Simulación - Librerı́a MonteCarlo

2 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Estudio de Simulación para Propiedades de Prueba de Hipótesis

Existen dos tipos de errores que pueden ocurrir cuando se toma una
decisión en pruebas de hipótesis. Esto se muestra en la siguiente tabla.
Tipo de error Descripcion Probabilidad de error
Error tipo 1 Rechazar H0 cuando es verdadera α
Error tipo 2 No rechazar H0 cuando es falsa β

α es llamado el nivel de significación del test o máxima probabilidad


que puede tomar el error tipo I.

β, es la probabilidad de error tipo II que depende del tamaño de mues-


tra, el nivel de significación, el nivel de significación del test y la hipóte-
sis alternativa.

La probabilidad 1 − β, llamado el poder de la prueba, esto es, la


probabilidad de rechazar H0 cuando realmente es falso resulta más
conveniente para analizar.
3 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Estudio de Simulación para Propiedades de Prueba de Hipótesis

Para estudiar el desempeño de una prueba de hipótesis se debe considerar:


Nivel de Significancia: Evaluar si una prueba de hipótesis cumple
con el valor de α que ha sido postulado. Como α es la probabilidad
de Rechazar H0 cuando H0 es verdadera, en un estudio de simulación
debemos seguir los siguientes pasos:

1 Generar M conjuntos de datos bajo el supuesto que H0 es verdadera.

2 Calcular la estadı́stica de prueba T para cada conjunto de datos: (T1 , ..., TM )

3 Calcular el nivel de la prueba:

[ = #(Ti ∈ Región crı́tica)


nivel
M

4 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Estudio de Simulación para Propiedades de Prueba de Hipótesis

Poder: El poder de una prueba de hipótesis es la probabilidad de Re-


chazar H0 cuando H0 es falsa, para evaluarlo por simulación debemos
seguir los siguientes pasos:

1 Generar M conjuntos de datos bajo el supuesto que H0 es falsa.

2 Calcular la estadı́stica de prueba T para cada conjunto de datos: (T1 , ..., TM )

3 Calcular el poder de la prueba:

\ = #(Ti ∈ Región crı́tica)


poder
M

5 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Ejemplo 3

Objetivo: Estudiar si el nivel de significancia de la prueba ANVA se


mantiene cuando se viola el supuesto de homogeneidad de variancias.

Factores :
Tamaño de muestra : n = 20 y 60.

Homocedasticidad : (1) Se cumple y (2) no se cumple.

Número de Simulaciones: M = 10000

6 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Diseño de una vı́a: ANOVA

yij : el valor de la variable Y medida bajo el tratamiento i y en el


individuo o unidad experimental j, i = 1, ..., ni e i = 1, ..., k

k : el número de tratamientos.

ni : el tamaño de la muestra del tratamiento i.

Modelo:
yij = µ + τi + ij
µ es la media general, τi es el efecto del tratamiento y ij es el error.
Supuesto: ij ∼ N (0, σ 2 ) independientes entre sı́. Esto es se asume
(1) independencia, (2) normalidad y (3) homocedasticidad: la variancia
en cada tratamiento es la misma.

7 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Diseño de una vı́a: ANOVA


Las hipótesis a contrastar serı́an:

H0 : τ1 = ... = τk = 0
H1 : al menos un τi 6= 0

FV GL SC CM F

SCT r CM T r
T ratamientos k−1 SCT r CM T r = k−1 F = CM E

SCE
Error N −k SCE CM E = N −k

T otal N −1 SCT

Bajo H0 F ∼ F (k − 1, N − k)

Regla de Decisión: Rechazar H0 si F > F1−α


8 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Ejemplo 3
En el estudio de simulación para estudiar el efecto de la violación del su-
puesto de homocedasticidad consideraremos lo siguiente:
Tratamientos: Consideraremos solamente k = 2 tratamientos.

Tamaño de Muestra: Consideramos tamaños de muestra diferentes


para cada tratamiento:
1 n1 = 15 y n2 = 5.
2 n1 = 45 y n2 = 15.

Homocedasticidad : Sea σi2 la variancia para cada tratamiento


1 Se cumple: σ12 = σ22 = 1.
2 No se cumple: σ12 = 1 y σ22 = 100.

Además sobre H0 ambos tratamientos tienen la misma media que con-


sideraremos igual 0.
9 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Ejemplo 3
Programa en R
# Número de Simulaciones
M<-1000

# Tama~
nos de Muestra
# Fila 1: n=20, Fila 2: n=60
n<-matrix(c(15,5,45,15),2,2,byrow=T)

# Parámetros
# Fila 1: Homocedasticidad, Fila 2: Heterocedasticidad

mu<-0
sigma<-matrix(c(1,1,1,10),2,2,byrow=T)

# Matriz de resultados

T<-matrix(0,M,4)

# i=1 (n=20), i=2 (n=60)


# j=1 (homocedasticidad), j=2 (heterocedasticidad)
cont<-0

10 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis
# Estudio de Simulación

for(i in 1:2){
for(j in 1:2){

cont<-cont+1
for(h in 1:M){
# Generar datos tratamiento 1
y1<-rnorm(n[i,1],mu,sigma[j,1])

# Generar datos tratamiento 2


y2<-rnorm(n[i,2],mu,sigma[j,2])

# Creando variable respuesta


y<-c(y1,y2)

# Creando factor
x<-c(rep(1,length(y1)),rep(2,length(y2)))
x<-factor(x)

# Calculo de la Estadı́stica de Prueba


temp<-summary(aov(y~x))[[1]]
T[h,cont]<-temp[1,4]
}

}
} 11 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Ejemplo 3

# Análisis de Resultados

# Se rechaza H0 si F> F(1,n-2)0.95

nivel<-numeric(4)

cont<-0
for(i in 1:2){
for(j in 1:2){
cont<-cont+1
nivel[cont]<-mean(T[,cont]>qf(0.95,1,sum(n[,i])-2))
}
}

nivel

12 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Resultados

Nı́vel de la Prueba ANVA

n Homocedasticidad Heterocedasticidad
20 0.051 0.326
60 0.046 0.243

13 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Conclusiones

En este estudio de simulación se consideraron 2 escenarios: (1) Homo-


cedasticidad y (2) Heterocedasticidad. Además se consideró solamente
2 tratamientos con tamaños de muestra distintos.

Cuando se cumple el supuesto de homocedasticidad observamos que la


prueba ANVA cumple el nivel de significancia postulado.

Cuando se viola el supuesto de homocedasticidad, el nivel es mayor que


el postulado para ambos tamaños de muestra estudiados.

Lo que significa que esta prueba es fuertemente afectada por la violación


del supuesto de homocedasticidad tanto para muestras pequeñas como
grandes.

14 / 34
Estudio de Simulación para Propiedades de P. de Hipótesis

Ejercicio

En el contexto del ejemplo anterior, estudie ahora que pasa si se viola


el supuesto de normalidad. Considere:

Tamaño de Muestra: Considere tamaños de muestra diferentes para


cada tratamiento:
1 n1 = 15 y n2 = 5.
2 n1 = 45 y n2 = 15.
Distribución:
1 Normal con µ = 1 y σ = 1.
2 Exponencial con parámetro λ = 1.

En ambas distribuciones se tiene que la media es 1 y la variancia es 1,


de modo que se cumple el supuesto de homocedasticidad.

15 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Librerı́a MonteCarlo

La librerı́a MonteCarlo permite realizar estudios de simulación y resu-


mirlos en una tabla en LaTeX.
Solamente es necesario crear una función que realice la simulación y el
calculo de las estadı́sticas de interés.
Incluso es posible realizar la simulación en paralelo.

16 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Librerı́a MonteCarlo

La función que realiza la simulación es MonteCarlo(), sus principales


argumentos son
func: función que debe realizar la generación de la muestra, la aplica-
ción del método interés y el cálculo de las estadı́sticas de interés. para
una única repetición.
Además, los argumentos de esta función deben ser escalares y debe
retornar una lista de escalares.
param_list: es una lista con los valores de los parámetros, debe ser una
lista con los mismos nombre de los argumento de func, los elementos
de la lista deben ser vectores o escalares.
nrep: El número de simulaciones a realizar.

17 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Librerı́a MonteCarlo

La función que construye una tabla resumen de los resultados obtenidos


de MonteCarlo() es MakeTable()
Esta función genera el resumen en código LaTeX, que es un lenguaje
para elaboración de textos cientı́ficos.
Para ejecutarlo debe tener instalado una distribución y un editor de
LaTeX, por ejemplo, puede usar MiKTeX (https://miktex.org/) y
TeXStudio (https://www.texstudio.org/) respesctivamente. Otra
opción es usar un editor online como https://latexbase.com/

18 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo

Consideremos el ejemplo en el que se compararon estimadores para la


media bajo diversos escenarios.
Distribución generadora de los datos: Normal y t-Student con 3
grados de libertad.
Tamaño de muestra: n = 30, 50, 100.
Estimadores: Media y mediana.
Media: µ = 5.
Varianza: σ 2 = 102
En total tenemos 12 escenarios. Usaremos para la comparación los criterios
de sesgo y error cuadrático medio.
La función que definamos debe tener como argumentos los valores de los
escenarios y como salida una lista con el cálculo para una simulación de los
criterios.

19 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo

f=function(dist,n,est,mu,sigma){

# Simulación de un conjunto de datos para


# distribución, n, mu y sigma
if(dist=="N"){x=rnorm(n,mu,sigma)}
if(dist=="t"){x=mu+sigma*rt(n,3)}

# Calculo del estimador


if(est=="media"){T=mean(x)}
if(est=="mediana"){T=median(x)}

#Calculo de criterios
return(list(sesgo=T-mu,ecm=(T-mu)^2))
}

20 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo

Una ejecución de la función generará un conjunto de datos bajo el


escenario, calculará el estimador y luego los criterios.

> f(dist="t",n=50,est="mediana",mu=5,sigma = 10)


$sesgo
[1] 1.171453

$ecm
[1] 1.372303

21 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo
Luego, debemos crear una lista con los valores de los parámetros para los
escenarios
# definir los parámetros de los escenarios
dist_grid=c("N","t")
n_grid<-c(30,50,100)
est_grid=c("media","mediana")
mu_grid<-5
sigma_grid<-10

# lista con los valores de los escenarios


param_list=list("dist"=dist_grid,
"n"=n_grid,
"est"=est_grid,
"mu"=mu_grid,
"sigma"=sigma_grid)
22 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo

> param_list
$dist
[1] "N" "t"

$n
[1] 30 50 100

$est
[1] "media" "mediana"

$mu
[1] 5

$sigma
[1] 10
23 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo
Para realizar la simulación usamos la función MonteCarlo()
> MC_result<-MonteCarlo(func=f, nrep=10000, param_list=param_l
Grid of 12 parameter constellations to be evaluated.
Progress:
|=====================================================| 100%
Podemos ver un resumen de la simulación con
> summary(MC_result)
Required time: 4.64 secs for nrep = 10000 repetitions on 1 CP

Parameter grid:
dist : N t
n : 30 50 100
est : media mediana
mu : 5
sigma : 10
24 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo
Con la función MakeTable() podemos generar el resumen de la simulación
en LaTeX
> MakeTable(MC_result,rows=c("n","dist"),cols = c("est"))
\begin{table}[h]
\centering
\resizebox{ 1 \textwidth}{!}{%
\begin{tabular}{ rrrrr }
\hline\hline\\\\
dist & n/est & & media & mediana \\
& & & & \\
\multirow{ 3 }{*}{ N } & 30 & & -0.0075 & 0.0020 \\
& 50 & & 0.0156 & 0.0102 \\
& 100 & & -0.0033 & -0.0128 \\
& & & & \\
\multirow{ 3 }{*}{ t } & 30 & & -0.0078 & 0.0132 \\
& 50 & & 0.0300 & -0.0151 \\
& 100 & & 0.0129 & -0.0202 \\
\\
\\
\hline\hline
\end{tabular}%
}
\caption{ sesgo mu=5,sigma=10 }
\end{table}

25 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo

\begin{table}[h]
\centering
\resizebox{ 1 \textwidth}{!}{%
\begin{tabular}{ rrrrr }
\hline\hline\\\\
dist & n/est & & media & mediana \\
& & & & \\
\multirow{ 3 }{*}{ N } & 30 & & 3.3104 & 4.9788 \\
& 50 & & 2.0616 & 3.0584 \\
& 100 & & 0.9717 & 1.5418 \\
& & & & \\
\multirow{ 3 }{*}{ t } & 30 & & 9.8296 & 6.0579 \\
& 50 & & 5.7558 & 3.7098 \\
& 100 & & 3.0161 & 1.9248 \\
\\
\\
\hline\hline
\end{tabular}%
}
\caption{ ecm mu=5,sigma=10 }
\end{table}

26 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo

dist n/est media mediana

30 -0.0075 0.0020
N 50 0.0156 0.0102
100 -0.0033 -0.0128

30 -0.0078 0.0132
t 50 0.0300 -0.0151
100 0.0129 -0.0202

Cuadro: sesgo mu=5,sigma=10

27 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo

dist n/est media mediana

30 3.3104 4.9788
N 50 2.0616 3.0584
100 0.9717 1.5418

30 9.8296 6.0579
t 50 5.7558 3.7098
100 3.0161 1.9248

Cuadro: ecm mu=5,sigma=10

28 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo
En el mismo R podemos usar la función MakeFrame() y summaryBy()
para generar un resumen de la simulación.
> # Crear data.frame con las simulaciones
> r=MakeFrame(MC_result)
>
> # Error Cuadratico Medio
> summaryBy(ecm~dist+est+n, data=r, FUN=c(mean))
dist est n ecm.mean
1 dist=N est=media 30 3.3104436
2 dist=N est=media 50 2.0616187
3 dist=N est=media 100 0.9717255
4 dist=N est=mediana 30 4.9788050
5 dist=N est=mediana 50 3.0584414
6 dist=N est=mediana 100 1.5417569
7 dist=t est=media 30 9.8295688
8 dist=t est=media 50 5.7557697
9 dist=t est=media 100 3.0161046
10 dist=t est=mediana 30 6.0579360
11 dist=t est=mediana 50 3.7097978
12 dist=t est=mediana 100 1.9248066

29 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo

> # Sesgo
> summaryBy(sesgo~dist+est+n, data=r, FUN=c(mean))
dist est n sesgo.mean
1 dist=N est=media 30 -0.007456754
2 dist=N est=media 50 0.015558603
3 dist=N est=media 100 -0.003296663
4 dist=N est=mediana 30 0.002033605
5 dist=N est=mediana 50 0.010245915
6 dist=N est=mediana 100 -0.012750898
7 dist=t est=media 30 -0.007793678
8 dist=t est=media 50 0.030004096
9 dist=t est=media 100 0.012936304
10 dist=t est=mediana 30 0.013163720
11 dist=t est=mediana 50 -0.015093477
12 dist=t est=mediana 100 -0.020211133

30 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo
# Gráfico ECM
me = summaryBy(ecm~dist+est+n, data=r, FUN=c(mean))

par(mfrow=c(1,2))

m=me[me$dist=="dist=N",]

plot(m$n,m$ecm.mean,type = "n",
xlab="Tama~
no de muestra",
ylab="Error Cuadrático Medio",
main="Distribución Normal"
)
h=0
for(j in unique(m$est)){
i=(m$est==j)
h=h+1
lines(m$n[i],m$ecm.mean[i],lty=h,col=h,lwd=2)
}

m=me[me$dist=="dist=t",]

plot(m$n,m$ecm.mean,type = "n",
xlab="Tama~
no de muestra",
ylab="Error Cuadrático Medio",
main="Distribución t"
)
h=0
for(j in unique(m$est)){
i=(m$est==j)
h=h+1
lines(m$n[i],m$ecm.mean[i],lty=h,col=h,lwd=2)
} 31 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo
Distribución Normal Distribución t

10
5

8
4
Error Cuadrático Medio

Error Cuadrático Medio

6
3

4
2

2
1

30 40 50 60 70 80 90 100 30 40 50 60 70 80 90 100

Tamaño de muestra Tamaño de muestra


32 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo
# Gráfico Sesgo
me = summaryBy(sesgo~dist+est+n, data=r, FUN=c(mean))

par(mfrow=c(1,2))

m=me[me$dist=="dist=N",]

plot(m$n,m$sesgo.mean,type = "n",ylim=c(-0.5,0.5),
xlab="Tama~
no de muestra",
ylab="Error Cuadrático Medio",
main="Distribución Normal"
)
h=0
for(j in unique(m$est)){
i=(m$est==j)
h=h+1
lines(m$n[i],m$sesgo.mean[i],lty=h,col=h,lwd=2)
}

m=me[me$dist=="dist=t",]

plot(m$n,m$sesgo.mean,type = "n",ylim=c(-0.5,0.5),
xlab="Tama~
no de muestra",
ylab="Error Cuadrático Medio",
main="Distribución t"
)
h=0
for(j in unique(m$est)){
i=(m$est==j)
h=h+1
lines(m$n[i],m$sesgo.mean[i],lty=h,col=h,lwd=2)
} 33 / 34
Estudio de Simulación - Librerı́a MonteCarlo

Ejemplo
Distribución Normal Distribución t
0.4

0.4
0.2

0.2
Error Cuadrático Medio

Error Cuadrático Medio


0.0

0.0
−0.2

−0.2
−0.4

−0.4

30 40 50 60 70 80 90 100 30 40 50 60 70 80 90 100

Tamaño de muestra Tamaño de muestra


34 / 34
Estimación por Máxima Verosimilitud

1 Introducción
Función de Verosimilitud
Estimador de Máxima Verosimilitud

2 Métodos Numéricos para Optimización


Método de Newton - Raphson
Método de Scoring de Fisher
Otros Métodos de Optimización

2 / 58
Introducción Función de Verosimilitud

Función de verosimilitud

Sean Y1 , Y2 , ..., Yn variables aleatorias con valores observados y1 , y2 , ..., yn .


Sea su función de densidad o de probabilidad conjunta dada por

f (Y1 = y1 , ..., Yn = yn | θ)

que depende del vector de parámetros desconocidos θ = (θ1 , ..., θk )T ∈


Θ que tiene que ser estimado.

3 / 58
Introducción Función de Verosimilitud

Función de verosimilitud

Para un conjunto de valores observados y1 , ..., yn el valor que toma esta


función de densidad o de probabilidad es considerado como una función
de θ y es denominada como función de verosimilitud, denotada por
L(θ)
L(θ) = f (Y1 = y1 , ..., Yn = yn | θ).

4 / 58
Introducción Función de Verosimilitud

Ejemplo
Sea Y ∼ Binomial(n, θ) entonces su función de probabilidad es dada
0.25
0.20
0.15 f (Y = y | θ) = Cyn θy (1 − θ)n−y , y = 0, ..., n.
f(Y=y)

0.10
0.05
0.00

2 4 6 8 10

y 5 / 58
Introducción Función de Verosimilitud

Ejemplo
Si consideramos que hemos observado Y = y, entonces la función de
verosimilitud es dada por
0.25
0.20
0.15
L(θ) = Cyn θy (1 − θ)n−y , 0 < θ < 1
L(θ)

0.10
0.05
0.00

0.0 0.2 0.4 0.6 0.8 1.0

θ
6 / 58
Introducción Estimador de Máxima Verosimilitud

Estimador de Máxima Verosimilitud

El principio de máxima verosimilitud postula que el estimador de máxi-


ma verosimilitud (EMV) θb para θ es el valor que θb que maximiza la
verosimilitud L(θ) esto es

θb = arg max L(θ).


θ∈Θ

En el caso discreto este principio dice que el EMV θb s tal que la proba-
bilidad de la probabilidad de obtener los valores observados y1 , ..., yn
asume su máximo en θ = θb haciendo que estos valores sean los más
plausibles de ser obtenidos.

7 / 58
Introducción Estimador de Máxima Verosimilitud

Estimador de Máxima Verosimilitud

En la mayor parte de los casos, en particular para los modelos a ser


estudiados en este capı́tulo, la verosimilitud L(θ) es diferenciable con
respecto a θ y el máximo puede ser determinado igualando las primeras
derivadas a cero y resolviendo el sistema de ecuaciones.
Por razones técnicas la maximización usualmente no es llevada acabo
en la verosimilitud si no en la función de log-verosimilitud

`(θ) = log(L(θ))

que es obtenida tomando el logaritmo de la función de verosimilitud.


Desde que el logaritmo es una función estrictamente positiva, `(θ)
alcanza su máximo en el mismo valor que L(θ).

8 / 58
Introducción Estimador de Máxima Verosimilitud

Estimador de Máxima Verosimilitud

Por lo tanto, la metodologı́a usual para encontrar el EMV θb consiste


en derivar `(θ) y obtener un sistema de ecuaciones:


`(θ) = 0
∂θ1
..
.

`(θ) = 0
∂θk
encontrar la solución de estas ecuaciones, denominada, de ecuaciones
de verosimilitud, θb y verificar que sea un punto de máximo.

9 / 58
Introducción Estimador de Máxima Verosimilitud

Estimador de Máxima Verosimilitud


En el más simple de los casos tendremos , Y1 , ..., Yn son variables alea-
torias independientes e idénticamente distribuidas (muestra aleatoria)
de f (y | θ), esto es tiene la misma distribución que una variable alea-
toria Y ∼ f (y | θ).
Como Y1 , ..., Yn son independientes, su función de densidad o de proba-
bilidad conjunta es el producto de las f (yi | θ), por lo tanto la función
de verosimilitud en este caso es
n
Y
L(θ) = f (yi | θ)
i=1

y la función de log-verosimilitud es dada por


n
X
`(θ) = log f (yi | θ)
i=1

10 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Distribución Poisson

Sea Y1 , ..., Yn una muestra aleatoria de Y ∼ P oisson(θ)


La función de verosimilitud está dada por
n
Y
L(θ) = f (yi | θ)
i=1
n
Y e−θ θyi
=
yi !
i=1
n
P
1 yi
= n e−nθ θi=1
Q
yi !
i=1

11 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Distribución Poisson

El logaritmo de la función de verosimilitud es:


n
X n
X
`(θ | x) = log L(θ | x) = −nθ + yi log θ − log(yi !)
i=1 i=1

Derivamos `(θ) con respecto a θ e igualamos a 0,


n
d X 1
`(θ) = −n + yi = 0
dθ θ
i=1

ası́ obtenemos θ = y.

12 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Distribución Poisson

Derivamos por segunda vez


n
d2 X 1
`(θ) = − yi 2
dθ2 θ
i=1

d2
como `(θ) < 0 ∀θ > 0 concluimos que el EMV es dado por
dθ2
θb = y

13 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo; Regresión Lineal Simple

El modelo de regresión lineal simple es dado por

Yi = α + βxi + i , i = 1, 2, .., n
donde se asume que: i ∼ N (0, σ 2 ) independientes entre sı́.
Por lo tanto
Yi | xi ; α, β ∼ N (α + βxi , σ 2 )

14 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Regresión Lineal Simple

La correspondiente función de verosimilitud considerando que y1 , ..., yn


son los valores observados de Y1 , ..., Yn y x1 , ..., xn son contantes co-
nocidas es:
n n
1 1 2
e− 2σ2 (yi −α−βxi ) .
Y Y
L(α, β) = fYi (yi | α, β) = √
i=1 i=1
2πσ

15 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Regresión Lineal Simple

La función de log-verosimilitud es dada por

n 2 n


X 1 yi − α − βxi X
`(α, β) = − × − log( 2πσ)
2 σ
i=1 i=1
n
1 X √
=− 2 (yi − α − βxi )2 − n log( 2πσ)

i=1

donde n log( 2πσ) no depende de α y β.

16 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Regresión Lineal Simple

La función de log-verosimilitud es dada por

n 2 n


X 1 yi − α − βxi X
`(α, β) = − × − log( 2πσ)
2 σ
i=1 i=1
n
1 X √
=− 2 (yi − α − βxi )2 − n log( 2πσ)

i=1

donde n log( 2πσ) no depende de α y β.
Para encontrar α
b y βb debemos maximizar:
n
1 X
`(α, β) ∝ − (yi − α − βxi )2
2σ 2
i=1

17 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Regresión Lineal Simple


Derivamos `(α, β) con respecto a α y β e igualamos a 0


`(α, β; x, y) = 0
∂α

`(α, β; x, y) = 0
∂β
Ası́ obtenemos

n
1 X
− (yi − α − βxi )(−1) = 0
σ2
i=1
n
1 X
− (yi − α − βxi )(−xi ) = 0
σ2
i=1

18 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Regresión Lineal Simple

Despejando estas ecuaciones,

b = y − βx
α b

n
X n
X n
X
yi x i − α
b xi − βb x2i = 0
i=1 i=1 i=1
n
P
xi yi − nxy
i=1
βb = n
x2i − n(x)2
P
i=1

Estimadores que coinciden con los obtenidos por el método de MCO


(Mı́nimos Cuadrados Ordinarios).

19 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Distribución Gamma


Consideremos una muestra aleatoria y1 , y2 , ...., yn de una Gamma (α, β).
Tenemos que cada elemento de la muestra tiene la siguiente función
de densidad:

β α α−1 −βyi
f (yi | α, β) = y e , i = 1, ..., n
Γ(α) i
Como existe independencia, por lo tanto:

n
Y
L(α, β) = f (yi | α, β)
i=1
n
Y β α α−1 −βyi
= y e
Γ(α) i
i=1
n
n
β nα Y α−1 −β i=1 yi
P
= yi e
Γ(α)n
i=1
20 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Distribución Gamma

tomando logaritmo obtenemos la función de log-verosimilitud

n
X n
X
`(α, β; x) = nα log β − n log Γ(α) + (α − 1) log yi − β yi
i=1 i=1

Para encontrar el EMV derivamos con respecto a α y β e igualamos a


0,

∂ ∂
`(α, β) = 0 `(α, β) = 0
∂α ∂β

21 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Distribución Gamma

Entonces tenemos que resolver el siguiente sistema de ecuaciones:

n
∂ log Γ(α) X
n log β − n + log yi = 0
∂α
i=1
n
nα X
− yi = 0
β
i=1

De la segunda ecuación:
n
nα X nα α
= yi entonces β = Pn =
β i=1 yi y
i=1

22 / 58
Introducción Estimador de Máxima Verosimilitud

Ejemplo: Distribución Gamma

Reemplazando en la primera ecuación,


n
X
n log(α) − n log(ȳ) + log(yi ) − nψ(α) = 0
i=1

No es posible despejar α en la ecuación anterior. Como no es posible


encontrar una forma analı́tica para el estimado de máxima verosimilitud
de α y β es necesario utilizar métodos numéricos.
d
Nota: ψ(α) = dα log(Γ(α)) es denominada la función digamma.

23 / 58
Introducción Estimador de Máxima Verosimilitud

Ejercicios

Sea Y1 , ..., Yn una m.a. de Y ∼ exp(θ). Hallar el EMV de θ.

Sea Y1 , ..., Yn una m.a. de Y ∼ Bernoulli(θ). Hallar el EMV de θ.

Sea Y1 , ..., Yn v.a. independientes tal que Yi ∼ P oisson(θxi ), donde


xi > 0 son constantes conocidas. Hallar el EMV de θ.

24 / 58
Métodos Numéricos para Optimización

Métodos Numéricos para Optimización

Cuando una solución analı́tica de las ecuaciones de verosimilitud no


es posible. Deberemos utilizar algún procedimiento de optimización
numérica para encontrar θ.
b
Entre los métodos más utilizados par encontrar el EMV tenemos:
Método de Newton-Raphson
Método de Scoring de Fisher
Otros métodos de optimización

25 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Método de Newton - Raphson

Consideremos primero el caso uniparamétrico. Definimos



g(θ) = `(θ)
∂θ
La función g(θ) es denominada de función score. El objetivo es en-
contrar las raı́ces o soluciones de la función score

g(θ) = 0

26 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Método de Newton - Raphson

Si θ∗ es una solución y si se cumple que

∂g(θ)
|θ=θ∗ < 0
∂θ
entonces θ∗ es un punto máximo local. Si θ∗ es único, entonces es
máximo global.

27 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Método de Newton - Raphson

Consideremos primero una expansión de Taylor de g(θ) en el punto θ0


0 00
g(θ) = g(θ0 ) + (θ
P∞ − θ0 )g (θ0 ) + (θ − θ0 )2 g (θ0 ) + .....
= g(θ0 ) + j=1 (θ − θ0 )j g j (θ0 )
Si consideramos despreciables las contribuciones de los términos a partir
00
de (θ − θ0 )2 g (θ0 ) tenemos que
0
g(θ) ' g(θ0 ) + (θ − θ0 )g (θ0 )

28 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Método de Newton - Raphson

Si consideramos despreciables las contribuciones de los terminos a partir


00
de (θ − θ0 )2 g (θ0 ) tenemos que
0
g(θ) ' g(θ0 ) + (θ − θ0 )g (θ0 )

Consideremos θ∗ un máximo de `(θ) entonces se cumple que g(θ∗ ) = 0

29 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Método de Newton - Raphson

Evaluando la expresión anterior en θ = θ∗ se tiene que:


0
g(θ∗ ) ' g(θ0 ) + (θ∗ − θ0 )g (θ0 )
0
0 = g(θ0 ) + (θ∗ − θ0 )g (θ0 )
0
(θ∗ − θ0 )g (θ0 ) = −g(θ0 )

luego obtenemos que

g(θ0 )
θ ∗ = θ0 −
g 0 (θ0 )
.

30 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Método de Newton - Raphson

Esta relación induce el siguiente algoritmo:

g(θj−1 )
θj = θj−1 −
g 0 (θj−1 )
donde

dg(θ)
0 ∂ 2 `(θ)
g (θ) =
=
dθ ∂θ2
el algoritmo continúa hasta un pequeño valor ε tal que

|θj − θj−1 | < ε.

31 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Poisson Truncada

Considere una muestra aleatoria (Y1 , ..., Yn ) de la distribución Poisson


truncada en cero
λy e−λ
f (y | θ) = , y = 1, 2, ...
y!(1 − e−λ )

Como existe independencia entre las observaciones, tenemos que


n
P
yi
λi=1 e−nλ
L(λ) = n
(1 − e−λ )n
Q
yi !
i=1
n
X n
X
`(λ) = yi log λ − n log(1 − e−λ ) − log(yi !) − nλ
i=1 i=1

32 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Poisson Truncada

Entonces,
n
1X n e−λ
g(λ) = yi − n −
λ 1 − e−λ
i=1
n
0 1 X n e−λ
g (λ) = − 2 yi +
λ (1 − e−λ )2
i=1

33 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Poisson Truncada

Entonces,
n
1X n e−λ
g(λ) = yi − n −
λ 1 − e−λ
i=1
n
0 1 X n e−λ
g (λ) = − 2 yi +
λ (1 − e−λ )2
i=1

34 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Poisson Truncada


#Poisson Truncada

#Newton-Raphson
y<-rpois(50,5)
y<-y[y>0]

#Funcion score
g<-function(lambda,y){
n<-length(y)
sum(y)/lambda-n/(1-exp(-lambda))
}

#Hessiana
H<-function(lambda,y){
n<-length(y)
-sum(y)/lambda^2+n*exp(-lambda)/(1-exp(-lambda))^2
}
35 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Poisson Truncada

#Algoritmo de NR
theta0<-10 # valor inicial
res<-matrix(theta0,1,1)

cont<-0
h<-0
while(cont==0){
h<-h+1
theta.old<-res[h,]
theta.new<-c(theta.old-g(theta.old,y)/H(theta.old,y))
res<-rbind(res,theta.new)
if(sum((theta.new-theta.old)^2)<1e-20){cont<-1}
}

res

36 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Poisson Truncada

theta.new
10.0000000
theta.new 0.3117353
theta.new 0.6103590
theta.new 1.1663173
theta.new 2.1098051
theta.new 3.4002958
theta.new 4.5393431
theta.new 5.0003865
theta.new 5.0485872
theta.new 5.0490312
theta.new 5.0490312
theta.new 5.0490312

37 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Newton-Raphson: Caso Multivariado

La función score es dada por:


 

∂θ1 `(θ)

∂θ2 `(θ)
 
 
g(θ) =  .. 
.
 
 

∂θp `(θ)

la matriz hessiana
∂2 ∂2 ∂2
 
∂θ12
`(θ) ∂θ1 θ2 `(θ) ··· ∂θ1 θp `(θ)
 ∂ 2 ∂2 ∂2


∂θ2 θ1 `(θ) ∂θ22
`(θ) ··· ∂θ2 θp `(θ)

H(θ) = 
 
.. .. .. .. 

 . . . . 

∂2 ∂2 ∂2
∂θp θ1 `(θ) ∂θp θ2 `(θ) · · · ∂θ2p
`(θ)

38 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Newton-Raphson: Caso Multivariado

En este caso el algoritmo de Newton-Raphson es dado por

θj = θj−1 − H(θj−1 )−1 g(θj−1 )

39 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Gamma

n
n
β nα Y α−1 −β i=1 yi
P
L(θ) = yi e
Γ(α)n
i=1
n
X n
X
`(θ) = nα log β + (α − 1) log yi − β yi − n log Γ(α)
i=1 i=1
 Pn 
n log β + i=1 log yi − n log ψ(α)
n
g(θ) =  nα P 
β − yi
i=1
0
!
n
−nψ (α) β
H(θ) = n
β − nα
β2

40 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Gamma


#Gamma
y<-rgamma(20,2,2)

g<-function(theta,y){
alpha<-theta[1]
beta<-theta[2]
n<-length(y)
a<-n*log(beta)+sum(log(y))-n*digamma(alpha)
b<-n*alpha/beta-sum(y)
c(a,b)
}
H<-function(theta,y){
alpha<-theta[1]
beta<-theta[2]
n<-length(y)
a2<--n*trigamma(alpha)
b2<--n*alpha/beta^2
ab<-n/beta
matrix(c(a2,ab,ab,b2),2,2) 41 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Gamma

theta0<-c(1,1)
res<-matrix(theta0,1,2)

cont<-0
h<-0
while(cont==0){
h<-h+1
theta.old<-res[h,]
theta.new<-c(theta.old-solve(H(theta.old,y))%*%g(theta.old,y))
res<-rbind(res,theta.new)
if(sum((theta.new-theta.old)^2)<1e-20){cont<-1}
}

res

42 / 58
Métodos Numéricos para Optimización Método de Newton - Raphson

Ejemplo: Distribución Gamma

[,1] [,2]
1.000000 1.000000
theta.new 1.469790 1.646428
theta.new 1.889453 2.244432
theta.new 2.076692 2.516114
theta.new 2.100381 2.550897
theta.new 2.100694 2.551362
theta.new 2.100694 2.551362
theta.new 2.100694 2.551362

43 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Método de Scoring de Fisher

En el método de Scoring de Fisher se reemplaza la matriz Hessiana


H(θ) por el negativo de la matriz de información de Fisher −IF (θ).
Donde
IF (θ) = −E [H(θ)]
Entonces el método de Scoring de Fisher es dado por:

θj = θj−1 + IF (θj−1 )−1 g(θj−1 )

44 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Ejemplo: Modelo genético

En un modelo genético, se conoce que la probabilidad que un animal


pertenezca a uno de cuatro genotipos (AB, Ab, aB, ab) es dada por
 
1 θ 1 1 θ
+ , (1 − θ), (1 − θ),
2 4 4 4 4

respectivamente, donde 0 < θ < 1.


Sea Y = (Y1 , Y2 , Y3 , Y4 ) el número de animales de cada fenotipo de n
seleccionados al azar, entonces
  
1 θ 1 1 θ
Y ∼ M ultinomial n, + , (1 − θ), (1 − θ),
2 4 4 4 4

45 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Ejemplo: Modelo genético

 y1  y2  y3  y4


n! θ+2 1−θ 1−θ θ
L(θ) =
y1 !y2 !y3 !y4 ! 4 4 4 4

`(θ) = y1 log(θ + 2) + y2 log(1 − θ) + y3 log(1 − θ) + y4 log(θ) + C

y1 y2 + y3 y4
g(θ) = + −
θ+2 1−θ θ

0 y1 y2 + y3 y4
g (θ) = − 2
− 2
− 2
(θ + 2) (1 − θ) θ

46 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Ejemplo: Modelo genético

0
IF (θ) = E(−g (θ))
E(Y1 ) E(Y2 ) + E(Y3 ) E(Y4 )
= 2
+ +
(θ + 2) (1 − θ)2 θ2
θ+2 1 1−θ 1 θ 1
=n + 2n +n 2
4 (θ + 2)2 4 (1 − θ)2 4θ
 
n 1 2 1
= + +
4 θ+2 1−θ θ

47 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Ejemplo: Modelo genético

#Modelo Genetico

y<-c(125,18,20,34)

#Funcion score
g<-function(theta,y){
y[1]/(theta+2)-(y[2]+y[3])/(1-theta)+y[4]/theta
}

#Hessiana
H<-function(theta,y){
-y[1]/(theta+2)^2-(y[2]+y[3])/(1-theta)^2-y[4]/theta^2
}

48 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Ejemplo: Modelo genético

#Algoritmo de NR
theta0<-.2 # valor inicial
res<-matrix(theta0,1,1)

cont<-0
h<-0
while(cont==0){
h<-h+1
theta.old<-res[h,]
theta.new<-c(theta.old-g(theta.old,y)/H(theta.old,y))
res<-rbind(res,theta.new)
if(sum((theta.new-theta.old)^2)<1e-20){cont<-1}
}

res

49 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Ejemplo: Modelo genético

theta.new
0.2000000
theta.new 0.3917428
theta.new 0.6130034
theta.new 0.6270999
theta.new 0.6268216
theta.new 0.6268215
theta.new 0.6268215

50 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Ejemplo: Modelo genético

#Informacion de Fisher
IF<-function(theta){
n<-sum(y)
.25*n*(1/(theta+2)+2/(1-theta)+1/theta)
}

51 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Ejemplo: Modelo genético

#Algoritmo de Scoring de Fisher


theta0<-0.2 # valor inicial
res<-matrix(theta0,1,1)

cont<-0
h<-0
while(cont==0){
h<-h+1
theta.old<-res[h,]
theta.new<-c(theta.old+g(theta.old,y)/IF(theta.old))
res<-rbind(res,theta.new)
if(sum((theta.new-theta.old)^2)<1e-20){cont<-1}
}

res

52 / 58
Métodos Numéricos para Optimización Método de Scoring de Fisher

Ejemplo: Modelo genético

theta.new
0.2000000
theta.new 0.6577230
theta.new 0.6254688
theta.new 0.6268824
theta.new 0.6268188
theta.new 0.6268216
theta.new 0.6268215
theta.new 0.6268215
theta.new 0.6268215
theta.new 0.6268215

53 / 58
Métodos Numéricos para Optimización Otros Métodos de Optimización

Otros Métodos de Optimización


Existen otros métodos de optimización. Por ejemplo el R tiene la fun-
ciones optim y nlminb que permite minimizar funciones, incluso sin
necesidad de brindar la función score o hessiana.
En la función optim utilizaremos el método L-BFGS-B que permite dar
lı́mites a los parámetros que iremos a estimar.
La sintaxis es:
optim(par, fn,method = "L-BFGS-B",lower = -Inf, upper = Inf)
par es el valor inicial.
fn es la función a ser minimizada.
method es el método a ser utilizado.
lower son los limites inferiores.
upper son los limites superiores.

La función a ser minimizada debe siempre retornar valores reales o la


función optim puede dar un error.
54 / 58
Métodos Numéricos para Optimización Otros Métodos de Optimización

La función nlminb selecciona automáticamente un método adecuado


y permite dar lı́mites a los parámetros que iremos a estimar.
La sintaxis es:
nlminb(start, objective,lower = -Inf, upper = Inf)
start es el valor inicial.
objective es la función a ser minimizada.
lower son los limites inferiores.
upper son los limites superiores.

La función a ser minimizada no necesita retornar siempre valores reales,


puede tomar valores como Inf o NaN y la función nlminb continuará
funcionando.

55 / 58
Métodos Numéricos para Optimización Otros Métodos de Optimización

Ejemplo; Modelo genético

y<-c(125,18,20,34)

log.like<-function(theta){
ll<-y[1]*log(theta+2)+(y[2]+y[3])*log(1-theta)+y[4]*log(theta)
-ll
}

optim(0.3,log.like,lower=0.0001,upper=.9999,method="L-BFGS-B")

nlminb(0.3,log.like,lower=0,upper=1)

56 / 58
Métodos Numéricos para Optimización Otros Métodos de Optimización

Ejercicio

Implemente los método de optimización presentados anteriormente pa-


ra el ejemplo de la distribución Poisson Truncada.

Implemente los métodos de optimización presentados anteriormente


para el ejemplo de la distribución Gamma.

57 / 58
Métodos Numéricos para Optimización Otros Métodos de Optimización

Ejercicio

Implemente los métodos de Newton-Raphson, Scoring de Fisher y los


métodos de optimización implementados en R para la distribución de
Gumbel
−αy
f (y) = αe−αy e−e , y ∈ <
1 π2
 
 2 −αy  2
E y e = 2 − 2γ + γ
α 6

γ = −ψ(1) = 0.5772157 es la constante de Euler.

Considere una muestra alaeatoria de tamaño n.

58 / 58

También podría gustarte