1. Estimación de máxima verosimilitud para una distribución gamma

Anuncio
GUIÓN DE LA PRÁCTICA 3 (1a parte)
1. Estimación de máxima verosimilitud para una distribución gamma
La distribución gamma de parámetros α > 0 y β > 0, Γ(α, β), tiene función de densidad
f (x; α, β) =
1
xα−1 e−x/β ,
Γ(α)β α
donde
∞
Z
Γ(α) =
0 < x < ∞,
tα−1 e−t dt
0
es la función gamma.
El parámetro α se denomina parámetro de forma porque es el que determina el grado de asimetrı́a
√
y apuntamiento de la densidad (por ejemplo, el coeficiente de asimetrı́a de una Γ(α, β) es 2/ α).
El parámetro β se denomina parámetro de escala porque donde más influye es en la dispersión
de la distribución. Si X ∼ Γ(α, β) se puede probar que
E(X) = αβ
V(X) = αβ 2 .
y
La distribución gamma se utiliza en diversos contextos: fiabilidad, análisis de supervivencia,
gestión de riesgos, hidrologı́a, . . . Sirve, por ejemplo, para modelizar el coste económico que
supone una reclamación para una compañı́a de seguros, el volumen de precipitación (de lluvia)
mensual en una localizaciónel tiempo de vida útil de un componente o de una maquinaria, . . .
Comprobar (en casa) que la función de logverosimilitud de la Γ(α, β) es
log L(α, β) = −n log Γ(α) − nα log β + (α − 1)
n
X
i=1
n
1X
xi ,
log xi −
β
(1)
i=1
y que las ecuaciones de verosimilitud son
n
X
∂
Γ0 (α)
log L(α, β) = −n
− n log β +
log xi
∂α
Γ(α)
i=1
!
n
1
1X
∂
log L(α, β) =
−nα +
xi .
0=
∂β
β
β
0=
(2)
(3)
i=1
Es evidente que podemos despejar β de la ecuación (3) obteniendo:
β=
donde x̄ =
Pn
i=1 xi /n
x̄
,
α
(4)
es la media muestral. Si sustituimos (4) en (2) obtenemos la ecuación
0 = −nψ(α) − n log x̄ + n log α +
n
X
log xi ,
(5)
i=1
donde
d
Γ0 (α)
ψ(α) :=
log Γ(α) =
=
dα
Γ(α)
Z
0
∞ −t
e
e−αt
−
t
1 − e−t
dt
es la llamada función digamma.
Observemos que es imposible obtener una expresión explı́cita para α̂, el e.m.v. de α, que es raı́z
de la ecuación (5). Pero sı́ podemos aproximar el valor de α̂ por métodos numéricos. Denotemos
g(α) = −nψ(α) − n log x̄ + n log α +
n
X
i=1
log xi ,
de manera que la ecuación (5) es 0 = g(α). El método de Newton aproxima la raı́z de esta
ecuación mediante la sucesión
g(αm−1 )
ψ(αm−1 ) + log x̄ − log(αm−1 ) − log x
αm = αm−1 − 0
,
(6)
= αm−1 1 +
g (αm−1 )
1 − αm−1 ψ 0 (αm−1 )
P
donde log x := ni=1 log xi /n y
n
g 0 (α) = −nψ 0 (α) + .
α
La función ψ 0 es la función trigamma. Tanto ψ como ψ 0 están implementadas en R. Se puede
tomar como valor inicial de la iteración el estimador de α por el método de los momentos
α0 = x̄2 /s2 .
Se puede probar el procedimiento ejecutando el script Practica3Script1.R. En la función
GammaNewton.R se ha programado la sucesión (6). La función emvalphaGamma.R calcula el e.m.v.
del parámetro α.
> source(’GammaNewton.R’)
> source(’emvalphaGamma.R’)
> source(’Practica3Script1.R’)
Practica3Script1.R
n = 50
alpha = 5
beta = 2
X = rgamma(n,shape=alpha,scale=beta)
m = mean(X)
emvalpha = emvalphaGamma(X)
emvbeta = m/emvalpha
writeLines(paste(’n =’,n))
writeLines(paste(’alpha =’,alpha,’ e.m.v.(alpha) =’,round(emvalpha,digits=4)))
writeLines(paste(’beta =’,beta,’ e.m.v.(beta) =’,round(emvbeta,digits=4)))
emvalphaGamma.R
emvalphaGamma = function(muestra){
# Calcula el e.m.v. del parametro alpha de una Gamma
m = mean(muestra)
v = var(muestra)
alpha0 = m^2/v # punto de inicio = estimador de los momentos
error = 1
while(error>1E-4){
alpha1 = GammaNewton(muestra,alpha0)
error = abs(alpha1-alpha0)
alpha0 = alpha1
}
alpha1
}
GammaNewton.R
GammaNewton = function(muestra,alpha0){
# Sucesion que converge al e.m.v. del parametro alpha de la gamma
m = mean(muestra)
mlog = mean(log(muestra))
alpha1 = alpha0 *(1+(digamma(alpha0)+log(m/alpha0)-mlog)/(1-alpha0*
trigamma(alpha0)))
}
Descargar