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

Rodrigo Coster rcoster em gmail.com
Quarta Julho 18 08:44:26 BRT 2012


Benilton,

rodando na mesma maquina o resultado do R32 e R64 é diferente, foi com base
nisso (R's da mesma maquina) que eu fiz o gráfico que mandei... tentei
desinstalar o R e reinstalar, mas não resolveu


[]'s

2012/7/18 Benilton Carvalho <beniltoncarvalho em gmail.com>

> 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.
> _______________________________________________
> 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.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20120718/3b32ff86/attachment.html>


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