[R-br] Diferença de resultados entre 64 e 32 bits

Benilton Carvalho beniltoncarvalho em gmail.com
Quarta Julho 18 07:11:07 BRT 2012


Eu comecaria por garantir que as versoes do R e dos demais pacotes
sejam as mesmas nos diferentes ambientes.

Em teoria, a maquina que tem o R 64 bits tambem tem o 32 bits (algum
usuario de windows pode te ajudar melhor q eu nesse caso), vc poderia
tentar executar o R32 na mesma maquina...

b

2012/7/18 Rodrigo Coster <rcoster em gmail.com>:
> Benilton,
>
> os teus resultados são iguais aos meus no R 64 bits. Por resultado antigo tu
> diz carregar alguma área de trabalho? Se sim, isso não esta acontecendo.
>
> Leonard,
>
> É um i5 3450 com windows 7, R 2.15.1 e os pacotes são as versões mais
> recentes. A outra maquina (que é só 32 bits) eu sei que é um Core 2 Quad com
> WinXP, R e pacotes desatualizados
>
>
> []'s
>
>
> 2012/7/17 Leonard de Assis <assis.leonard em gmail.com>
>>
>> Eu aqui tenho linux, rodei uma vm windows pra simular o 32 bits e comparei
>> com o meu linux (64 bits) deu que os resultados não diferem
>>
>> Seria bom apresentar maiores detalhes, como versões do R, do pacote,
>> máquina, etc
>>
>> []s
>> Leonard de Assis
>> assis <dot> leonard <at> gmail <dot> com
>>
>> Em 17/07/2012 12:18, Rodrigo Coster escreveu:
>>
>> Benilton,
>>
>> olha, acho muito pouco provável (até pq os 2 são windows, então acho que
>> nem existe essa opção). No computador aqui de casa os 2 R divergem no
>> resultado (o gráfico que eu mandei foi rodando no R 32 e 64 bits no mesmo
>> computador, Windows 7).
>>
>> Abri a imagem que tu mandou e rodei o comando, deu que os 2 objetos são
>> iguais.
>>
>>
>> []'s
>>
>> 2012/7/17 Benilton Carvalho <beniltoncarvalho em gmail.com>
>>>
>>> Alguma chance de algum dos computadores q vc tenha usado estar
>>> utilizando alguma "compilacao propria" do R ou algum esquema de
>>> otimizacao?
>>>
>>> Executei o seu codigo no meu computador e tudo parece OK (ie., o
>>> objeto 'a' eh identico entre arquiteturas)... O arquivo a seguir
>>> possui 2 elements: a32 e a64, resultantes do codigo q vc enviou.
>>>
>>> https://www.dropbox.com/s/srn0bhtmen4fd6u/R64x32.Rda
>>>
>>> Experimente o comando a seguir ao carregar o arquivo:
>>>
>>> all.equal(a32, a64)
>>>
>>> A unica coisa q consigo imaginar e' se alguma "otimizacao" ao compilar
>>> o R e qq outro acessorio utilizado nao tiver dado certo.
>>>
>>>
>>> b
>>>
>>>
>>> 2012/7/17 Rodrigo Coster <rcoster em gmail.com>:
>>> > Caros,
>>> >
>>> > programei uma rotina para estimar por máxima verossimilhança os
>>> > parâmetros
>>> > de uma cópula e para ver se estava certo comparei os resultados com o
>>> > comando do pacote copula. Encontrei diferenças apenas na 5a casa
>>> > decimal em
>>> > diante, que considerei como sendo por causa do método numérico
>>> > utilizado. Só
>>> > que, ao fazer a mesma comparação num computador 64 bits os resultados
>>> > são
>>> > bastante divergentes (o meu código muda o valor estimado, enquanto o
>>> > pacote
>>> > copula mantem), mudando na 2a casa decimal (no caso o parâmetro é a
>>> > correlação, então a 2a casa decimal é bem importante). Dai me bateu a
>>> > seguinte dúvida: em qual confiar?
>>> >
>>> > Código:
>>> > require(copula)
>>> > require(MASS)
>>> > set.seed(31415)
>>> >
>>> > normCop <- function(param,data) {
>>> >  n <- nrow(data)
>>> >  if (length(param) != n) { param <- rep(param,nrow(data)) }
>>> >  cop <- mapply(normalCopula,param=param,MoreArgs=list(dim=2))
>>> >  datalist <- apply(data,1,list)
>>> >  for (i in 1:n) { datalist[[i]] <- datalist[[i]][[1]] }
>>> >  out <- -sum(log(mapply(dcopula,copula=cop,u=datalist)))
>>> >  if (out == Inf) { out = exp(100) }
>>> >  return(out)
>>> > }
>>> > a <- matrix(0,20,2)
>>> > n <- 100
>>> > Sigma <- matrix(c(10,3,3,2),2,2)
>>> > for (j in 1:20) {
>>> >  data <- mvrnorm(n=n, rep(0, 2), Sigma)
>>> >  data <- apply(data,2,rank)/(n+1)
>>> >
>>> >  fitNormCop <- function(data) {
>>> >   optim(cor(data)[2],normCop,data=data, lower = 0, upper =
>>> > .9999,method="L-BFGS-B")
>>> >  }
>>> >  a[j,1] <- fitNormCop(data)$par # Meu
>>> >  a[j,2] <- fitCopula(normalCopula(.2,2), data, method="ml")@estimate #
>>> > Pacote copula
>>> > }
>>> >
>>> > E aqui um gráfico de dispersão comparando todos:
>>> > http://img411.imageshack.us/img411/7527/92588280.png
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > []'s
>>> >
>>> > _______________________________________________
>>> > R-br mailing list
>>> > R-br em listas.c3sl.ufpr.br
>>> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>>> > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>>> > código
>>> > mínimo reproduzível.
>>> _______________________________________________
>>> R-br mailing list
>>> R-br em listas.c3sl.ufpr.br
>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>>> código mínimo reproduzível.
>>
>>
>>
>>
>> _______________________________________________
>> R-br mailing list
>> R-br em listas.c3sl.ufpr.br
>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>> código mínimo reproduzível.
>>
>>
>>
>>
>> _______________________________________________
>> R-br mailing list
>> R-br em listas.c3sl.ufpr.br
>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>> código mínimo reproduzível.
>
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código
> mínimo reproduzível.


Mais detalhes sobre a lista de discussão R-br