为什么我使用RandomFields包获得不一致的结果?

时间:2015-07-20 02:38:03

标签: r optimization geospatial

我很想知道其他用户是否有类似的结果或建议为什么会发生这种情况。我从JSS论文here第5节中提取了这段代码,并且我在不同平台上获得了不同的结果。该算法是确定性的(不依赖于种子),我似乎无法找到导致差异的模式。只是一些背景 - 以下代码行的目的是使用最大似然估计模型中的参数:

library(RandomFields)
data(weather)
nug <- RMmatrix(M = matrix(nc = 2, c(NA, 0, 0, NA)), RMnugget())
pars.model <- nug + RMbiwm(nudiag = c(NA, NA), 
                           scale = NA, 
                           cdiag =   c(NA, NA), 
                           rhored = NA)
Dist.mat <- as.vector(RFearth2dist(weather[, 3:4]))
PT <- weather[, 1:2]
pars <- RFfit(pars.model, distances = Dist.mat, dim = 3, data = PT)
print(pars)

上述输出相当长,但足以比较显示的AIC值,这反映了RFfit例程找到的最佳值。在不同的平台上,我得到两组AIC值,非常与实际观点不同

  

CentOS 6 64位64GB内存英特尔(R)Xeon(R)CPU E5-2620 v2 @ 2.10GHz R   版本3.2.0(2015-04-16)x86_64-redhat-linux-gnu(64位)AIC:   2547.474

     

CentOS 6 64位256GB内存AMD Opteron(tm)处理器6376 R版本   3.2.0(2015-04-16)x86_64-redhat-linux-gnu(64位)AIC:2562.027

     

Ubuntu 14.04 64位8GB RAM Intel(R)Celeron(R)CPU N2820 @ 2.13GHz   R版本3.0.2(2013-09-25)x86_64-pc-linux-gnu(64位)AIC:   2547.474

     

Windows 7 64位8GB RAM Intel(R)Core(TM)i7-3632QM CPU @ 2.20GHz R   版本3.1.2补丁(2014-11-25 r67060)i386-w64-mingw32 / i386   (32位)AIC:2547.474

     

Windows 7 64位8GB RAM Intel(R)Core(TM)i7-3632QM CPU @ 2.20GHz R   版本3.1.2已修补(2014-11-25 r67060)x86_64-w64-mingw32 / x64   (64位)AIC:2562.027

     

Windows 7 64位8GB RAM Intel(R)Core(TM)i7-3632QM CPU @ 2.20GHz R   版本3.0.2(2013-09-25)x86_64-w64-mingw32 / x64(64位)AIC:   2562.027

冒险进入内部我发现底层优化路由是标准的R optim例程。任何优化者都会得到如此截然不同的结果吗?下面的一些使用OpenBLAS,但OpenBLAS不是这个的原因。从下面我不能弄清楚它是OS,R版本,软件包版本(它们都是相同的)还是CPU架构......对此有任何想法。感谢。

0 个答案:

没有答案