Я пытаюсь оценить mle параметров обобщенного гамма-распределения.
Я использую функцию optim с нижней границей, равной единице (поскольку параметры должны быть положительными), и метод BFGS.
Первоначально Я оцениваю функцию правдоподобия журнала следующим образом:
negloglikgengamma<-function(thet,dat) {
alpha<-thet[1]
kappa<-thet[2]
lamda<-thet[3]
-sum(dggamma(y,scale=alpha,shape1=kappa,shape2=lamda,log=T))
}
Я использую функцию правдоподобия минус, чтобы использовать «optim» и найти минимум.
Затем я использую функцию optim.
fitggamma<-optim(c(0.4,0.5,2),negloglikgengamma,hessian=TRUE,method="L-BFGS- B",dat=y,lower=1)
Результаты следующие:
$par
[1] 1.000000 1.000000 2.165561
$value
[1] -0.1214229
$counts
function gradient
6 6
$convergence
[1] 0
$message
[1] "CONVERGENCE: REL_REDUCTION_OF_F <= FACTR*EPSMCH"
$hessian
[,1] [,2] [,3]
[1,] -9.998753e-01 1.0000003 -2.924863e-05
[2,] 1.000000e+00 1.2063171 -9.530030e-02
[3,] -2.924863e-05 -0.0953003 4.402082e-02
Я пытаюсь оценить se и замечаю, что Var (alpha) = - 9.998753e-01 <0. Почему это происходит? Что я должен изменить? </p>