簡體   English   中英

如何找到下面 function 中參數的 MLE 估計值?

[英]How can I find MLE estimates for the parameters in the function below?

我有一個新的 function,我想估計它的參數; a,b,alpha,vartheta 使用 MLE。 如何進行估算?

EMHL<-function(a,b,alpha,vartheta) {
  (2*a*b*alpha*vartheta*
    (x^(vartheta-1))* exp(-x^vartheta) *
    ((1-exp(-x^vartheta))^(a-1)) * 
    ((1 - (1 -( 1 - exp(-x^vartheta))^a)^b)^(alpha-1)) * 
    (1- (1 - exp(-x^vartheta))^a )^(-b*(alpha+1))
}

對於給定的數據集

x<- c(1.1, 1.4, 1.3, 1.7,1.9, 1.8, 1.6, 2.2, 
      1.7, 2.7, 4.1, 1.8, 1.5, 1.2, 1.4, 3, 
      1.7, 2.3, 1.6, 2.0)

問題中顯示的 function 存在語法錯誤,因此我們使用了最后注釋中的那個。

如果 function 是一個密度,並且您希望最小化相應的負對數似然性,那么嘗試一些不同的起始值似乎會導致收斂。

(對於問題list(a = 1, b = 1, alpha = 575, vartheta = 0.01)似乎可以作為起始值。)

NLL <- function(par) -sum(log(EMHL(par[1], par[2], par[3], par[4])))
st <- list(a = 1, b = 1, alpha = 525, vartheta = .2)
res <- optim(st, NLL); res

給予:

$par
           a            b        alpha     vartheta 
8.845296e-01 1.211526e+00 5.315759e+02 1.326975e-03 

$value
[1] -10904.36

$counts
function gradient 
     327       NA 

$convergence
[1] 0

$message
NULL

筆記

EMHL<-function(a,b,alpha,vartheta) {
  2*a*b*alpha*vartheta*(x^(vartheta-1))* exp(-x^vartheta) *((1-exp(-x^vartheta))^(a-1)) * ((1 - (1 -( 1 - exp(-x^vartheta))^a)^b)^(alpha-1)) * (1- (1 - exp(-x^vartheta))^a )^(-b*(alpha+1))
}
x<- c(1.1, 1.4, 1.3, 1.7,1.9, 1.8, 1.6, 2.2, 1.7, 2.7, 4.1, 1.8, 1.5, 1.2, 1.4, 3, 1.7, 2.3, 1.6, 2.0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM