- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
指定相同 AR(或 MA)模型由 R
中的 forecast
包中的函数 arima()
进行估计的不同方法不同的 BIC(贝叶斯信息准则)值。
为什么会发生这种情况?
考虑两种模型:
(1) AR(1)
(2) AR(2),AR2 上的系数限制为零
从表面上看,这两个模型是相同的。然而,他们的估计可能会有所不同(?)。不知道为什么它们会产生相等的系数估计、相等的对数似然值和相等的 AIC 值,但 BIC 值不同。
由于 BIC 值不同,而似然性相等并且 AIC 值相等,因此两个模型之间用于估计的观测值数量必须不同。然而,观测值数量的隐含差异不是 1 或 2,而是更多。
这是合理的,还是一个错误???
我想知道情况(2)有什么区别以及 BIC 是如何计算的。我希望能够重现结果,因此我需要了解这里的工作原理。
下面我提供了一个可重现的示例。在 R 中执行后,查看打印的 BIC 和 AICc 值 - 它们在模型之间是不同的。
library(forecast)
T=1000; seed=1; set.seed(seed); x=rnorm(T)
model1=arima(x,order=c(1,0,0) ,method="CSS-ML",transform.pars=FALSE)
model2=arima(x,order=c(2,0,0),fixed=c(NA,0,NA),method="CSS-ML",transform.pars=FALSE)
print(model1)
print(model2)
这同样适用于 AR(p) 和 MA(q) 模型,为了简单起见,我没有明确讨论它们。
如果有人能解释为什么会发生这种情况,那就太好了。谢谢!
最佳答案
AICc 和 BIC 的计算在 forecast:::print.Arima
函数中完成,而 AIC 由 arima()
返回。如果您查看 forecast:::print.Arima
的代码,您将看到以下内容:
npar <- length(x$coef) + 1
nstar <- length(x$residuals) - x$arma[6] - x$arma[7] * x$arma[5]
bic <- x$aic + npar * (log(nstar) - 2)
aicc <- x$aic + 2 * npar * (nstar/(nstar - npar - 1) - 1)
请注意,npar
不考虑非估计系数(即仅限于指定值的系数)。它假设 x$coef 中的所有系数均已估计。可以使用
npar <- length(x$coef[x$mask]) + 1
我已经修复了 github version of the package ,所以CRAN版本会在下一个版本更新。
关于r - R 中具有限制系数的 ARIMA 的 AIC、BIC 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25668101/
是否可以设置逐步线性模型来使用 BIC 标准而不是 AIC? 我一直在尝试这个,但它仍然使用 AIC 值而不是 BIC 来计算每个步骤 null = lm(data[,1] ~ 1) full = l
我正在尝试使用前向逐步算法和 BIC 准则为线性模型选择变量。正如帮助文件所示,我一如既往地写了以下内容: model.forward<-lm(y~1,data=donnees) model.forw
我为 php 函数 pregmatch 写了一个正则表达式,如下所示: ^([a-zA-Z]){4}([a-zA-Z]){2}([0-9a-zA-Z]){2}([0-9a-zA-Z]{3})?$^ 现
这个问题已经有答案了: Match exact string (3 个回答) 已关闭 5 年前。 社区 8 个月前审核了是否重新开放此问题,并将其关闭: 需要详细信息或澄清通过 editing thi
我正在尝试使用前向逐步算法和 BIC 准则为线性模型选择变量。正如帮助文件所示以及我一贯所做的那样,我编写了以下内容: model.forward。另一方面,如果您的预测变量中有 NA 值,那么您在进
我对 BIC 图与 GMM 中组件数量的关系感到非常困惑。 Python 文档说越低越好,但我在一些网站上读到,正确的簇数是局部最大值的第一个位置!!! 任何人都可以详细说明这一点,Python 是否
我不太明白为什么我无法正确计算贝叶斯信息准则,并希望有人能指出我正确的方向。 我这样做是因为我试图手动计算 BIC(对于 plm 对象,它们似乎没有与它们相关的既定例程)。我从 Wikipedia p
是否有可用于从 IBAN 银行帐号(和其他必要信息)生成 BIC 代码的现有库或脚本? 我在网上搜索过,但只找到了 IBAN 生成器。 提前致谢! 最佳答案 为所有 IBAN 帐户找到解决方案(我认为
现在 SEPA 要求让人们习惯了 BIC 和 IBAN,有些遗留系统无法处理这些新数据。是否有可用于将 BIC 和 IBAN 转换回排序代码和帐户的算法或工具? 最佳答案 下面是一个例子: 从这里 w
在我过去的研究中,我发现这些问题没有得到我喜欢的答案: Generate BIC from IBAN bank account number How to convert BIC & IBAN to
所以这是我的数据头, thickness grains resistivity 1 25.1 14.9 0.0270 2 368.4 58.1 0.0
我已经用谷歌搜索了这个并找不到解决方案。 R 似乎在 AIC/BIC 计算方面存在问题。它会产生错误的结果。一个简单的例子如下所示: link = 'https://gist.githubuserco
是否可以在 C# 中为 IBAN、BIC(可能使用 struct)创建一个非常简单的值类型?这会自动适用于 Json 序列化和 EF Core 保存等功能吗? 我想在转换为 Json 的数据对象以及通
我想知道是否可以从 GLMNet 获取 AIC 和 BIC。我发现 glmnet.cr 似乎能够做到这一点,但我的 react 是时间,而不是序数。我可以根据可能性自己计算它,但 glmnet 也不会
众所周知,在 k 均值聚类中,我们可以使用贝叶斯信息准则 (BIC) 来找出最佳聚类数。最小化BIC分数的k是根据BIC评分方案的最佳簇数。 BIC 的公式如下: BIC(C) = n*ln(RSS/
已结束。此问题不符合 Stack Overflow guidelines .它目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是无关紧要的,
指定相同 AR(或 MA)模型由 R 中的 forecast 包中的函数 arima() 进行估计的不同方法不同的 BIC(贝叶斯信息准则)值。 为什么会发生这种情况? 考虑两种模型: (1) AR(
我正在使用 GMM 来分割/聚类 800x800 像素和 4 个波段的高光谱图像数据。 我拍了一张照片并应用 GMM 来聚类像素。 现在,在我目前的情况下,我很容易手动确定图像中有多少个组件。 (草、
在 scikit-learn 中,GaussianMixture 对象具有实现贝叶斯信息准则的方法 bic(X) 来选择更适合数据的组件。这是一个用法示例: from sklearn import m
我想要得到一个像这样的图,用于选择 PCA 中的组件数量: 然而,我在尝试手动编码 BIC/AIC 时遇到了困难。 R 或 Python 中是否有任何软件包可以帮助我实现这一点?任何示例代码都会有很大
我是一名优秀的程序员,十分优秀!