Логарифмическая вероятность распределения Накагами бесконечна в R

Я подгоняю нормализованную гистограмму моего набора данных $ x \ in [60,80] $ к распределению Накагами. Сначала я оценил параметры масштаба и формы, используя dnaka из VGAM пакета с помощью следующего кода MLE:

ll <- function(par) {
  if(par[1]>0 & par[2]>0) {return(-sum(log(dnaka(x, scale = par[1], shape = par[2]) ) ) )}  # m=shape, ohm or spread = scale
  else return(Inf)
}
mle = optim(c(1000,1), ll)

Затем я оцениваю значение логарифма правдоподобия на основе оцененных параметров с помощью следующего кода:

lik = sum(log(dnaka(x, shape = mle$par[1], scale = mle$par[2]) ) )

Но значение правдоподобия составляет -Inf. Я понимаю, что это бесконечное значение связано с членом exp (.) В уравнении PDF распределения Накагами. Есть ли способ оценить конечное значение логарифмической вероятности для распределения Накагами для моего набора данных $ x \ in [60,80] $? Спасибо.


person MM Khan    schedule 12.10.2017    source источник
comment
Вы уверены, что хотите подогнать распределение Накагами к своим данным в диапазоне 60 ‹x‹ 80? Распределение не будет иметь почти никакой массы в этом диапазоне, поэтому я не удивлен, что вы получите некоторые странные результаты. Если я чего-то не упускаю, это не имеет для меня смысла. Кроме того, параметр формы определен для shape >= 0.5, поэтому ваша функция логарифма правдоподобия неверна.   -  person Maurits Evers    schedule 12.10.2017


Ответы (1)


См. Мой комментарий к исходному вопросу.

Вот рабочий пример с использованием смоделированных данных с scale = 1.5 и shape = 1

set.seed(2017);
x <- rnaka(10^4, scale = 1.5, shape = 1);

ll <- function(par) {
    if (par[1] >= 0.5 && par[2] > 0) {
        return(-sum(log(dnaka(x, scale = par[1], shape = par[2]))));
    }
    else return(Inf);
}

mle <- optim(c(0.5, 1), ll);

mle$par;
#[1] 1.4833965 0.9938022

ll(mle$par);
#[1] 7946.478
person Maurits Evers    schedule 12.10.2017