MLE Parameter Instability
Check the sensitivity of MLE
> binom.mle.vin <- function(param, data) { + k <- param[1] + p <- param[2] + loglik <- sum(data) * log(p) + (k * 5 - sum(data)) * log(1 - + p) + sum(log(choose(k, data))) + return(-loglik) + } |
Starting with the following data
> data <- c(16, 18, 22, 25, 27) > optim(par = c(40, 0.1), fn = binom.mle.vin, method = "L-BFGS-B", + lower = c(27, 1e-06), upper = c(1100, 0.99999), data = data)$par [1] 98.4332928 0.2194390 |
Tweak the data with just one addition
> data <- c(16, 18, 22, 25, 28) > optim(par = c(40, 0.1), fn = binom.mle.vin, method = "L-BFGS-B", + lower = c(27, 1e-06), upper = c(1100, 0.99999), data = data)$par [1] 180.6084976 0.1207055 |
With the change of 1 element from 27 to 28, the MLE estimate of total trials has shot up from 98 to 180
Parameters are extremely sensitive.