<div dir="ltr"><div>Caros amigos,</div><div><br></div><div>Estou trabalhando com a função de log-verossimilhança da dist. q-Exponencial. A partir dela desejo obter as estimativa dos parâmetros da distribuição. Utlizo o pacote optim do R juntamente com a função Nelder-Mead. Obtenho estimativas de uma amostra controlada, ou seja uma amostra que gero através do gerador de números aleatórios dessa distribuição e que portanto conheço os parâmetros que originaram a amostra. Para alguns valores dos Parâmetros a estimativa é bem próxima dos valores dos parâmetros, entretanto quando eu ploto o gráfico da função de log verossimilhança da distribuição que estou usando os pontos que maximizam os gráficos são diferentes daes estimativas encontradas. Gostaria de saber por que isso acontece??? Se eu otimizo a função através de máxima verossimilhança era esperado que o gráfico da função de log-verossimilhança apresentasse os pontos de máximo da função bem próximos das estimativas encontradas... Alguém pode me ajudar?? será que estou construindo a função de forma errada?? Já refiz tudo e creio que a função está escrita corretamente... O que pode está acontecendo...</div><div><br></div><div>Abaixo escrevo o código em que que utilizo para gerar uma amostra aleatória, depois estimo os parâmetros dessa amostra gerada via Nelder-Mead (pacote optim) e por fim contruo o gráfico da verossimilhança... Note que os pontos que maximizam o gráfico diferem das estimativas de máxima verossimilhaça:</div><div><br></div><div>### Gerando a amostra baseando-se nos parâmetros iniciais</div><div>### Considerando um parâmetro q positivo.</div><div>q=1.5</div><div>eta=5</div><div>n=1000</div><div>u<-runif(n)<span class="" style="white-space:pre">    </span></div><div>y = eta*((1-(u)^((1-q)/(2-q)))/(1-q))</div><div><br></div><div>### Obtendo as estimativas dos parâmetros a partir da amostra gerada anteriormente</div><div>vero <- function(par,x){</div><div>q = par[1]</div><div>eta = par[2]</div><div>   saida<-((sum(log(1 - ((1 - q)*x*(1/eta)))))/(1 - q)) + ((n)*log(2 - q)) + (n*log(1/eta))</div><div>return(-saida)</div><div>}</div><div>saiday<-optim(par=c(1.8,4),fn=vero,  method= "Nelder-Mead",x=y  )</div><div>q_chap<-saiday[1]$par[1]</div><div>eta_chap<-saiday[1]$par[2]</div><div>q_chap</div><div>eta_chap</div><div><br></div><div>### Construindo os gráficos de log-verossimilhança</div><div>eta <-seq(1, 10, l = 25)</div><div>q <- seq(1.1, 1.9, l = 25)</div><div>f <- function(eta,q) { ((sum(log(1 - ((1 - q)*y*(1/eta)))))/(1 - q)) + (n*log(2 - q)) + (n*log(1/eta)) }</div><div>z <- outer(eta, q, f)</div><div>persp(eta, q, z, theta = 30, phi = 30, expand = 0.5, col = "lightblue")</div><div><br></div><div><br></div><div><br></div><div>Repito o mesmo código digitado acima, apenas com a alteração de que a amostra gerada agora é para um parâmetro q menor que 1, observe que a coisa fica ainda pior nesse caso, uma vez que, sempre o menor valor de q e o menor valor de eta são os pontos de máximo do gráfico:</div><div><br></div><div><br></div><div>### Gerando a amostra baseando-se nos parâmetros iniciais</div><div>### Considerando um parâmetro q menor que 1.</div><div>q=0.5</div><div>eta=5</div><div>n=1000</div><div>u<-runif(n)<span class="" style="white-space:pre">   </span></div><div>y = eta*((1-(u)^((1-q)/(2-q)))/(1-q))</div><div><br></div><div><br></div><div>### Obtendo as estimativas dos parâmetros a partir da amostra gerada anteriormente</div><div>vero <- function(par,x){</div><div>q = par[1]</div><div>eta = par[2]</div><div>   saida<-((sum(log(1 - ((1 - q)*x*(1/eta)))))/(1 - q)) + ((n)*log(2 - q)) + (n*log(1/eta))</div><div>return(-saida)</div><div>}</div><div>saiday<-optim(par=c(1.8,4),fn=vero,  method= "Nelder-Mead",x=y  )</div><div>q_chap<-saiday[1]$par[1]</div><div>eta_chap<-saiday[1]$par[2]</div><div>q_chap</div><div>eta_chap</div><div><br></div><div>### Construindo os gráficos de log-verossimilhança</div><div>eta <-seq(1, 10, l = 25)</div><div>q <- seq(0, 0.75, l = 25)</div><div>f <- function(eta,q) { ((sum(log(1 - ((1 - q)*y*(1/eta))),na.rm=TRUE))/(1 - q)) + (n*log(2 - q)) + (n*log(1/eta)) }</div><div>z <- outer(eta, q, f)</div><div>persp(eta, q, z, theta = 30, phi = 30, expand = 0.5, col = "lightblue")</div><div><br></div><div><br></div><div>Em tempo, coloco aqui algumas equações importantes:</div><div><br></div><div>função PDF da dist. q-Exponencial:</div><div><img src="cid:ii_iliid5kt0_1535302eca90e2b4" width="400" height="81"><br>​<br></div><div> </div><div>Verossimilhança da dist. q-Exponencial:</div><div><br></div><div><img src="cid:ii_iliidkq11_1535303382e3945e" width="406" height="86"><br>​<br></div><div>log-verossimilhança da dist. q-Exponencial:</div><div><br></div><div><img src="cid:ii_iliidvci2_15353037140b8b6d" width="456" height="68"><br>​<br></div><div><br></div><div><br></div><div>gostaria muito de entender o que está acontecendo e por que nunca bate as estimativas dos parâmetros com o máximo do gráfico!</div><div><br></div><div>Obrigado,</div><div><br></div><div>Romero.</div><div><br></div><br><div class="gmail_signature"></div>
</div>