Questions tagged «forecasting»

未来事件的预测。在[时间序列]的上下文中,这是[预测]的特例。

3
时间序列中的AIC与交叉验证:小样本案例
我对时间序列设置中的模型选择感兴趣。具体来说,假设我要从具有不同滞后顺序的ARMA模型池中选择一个ARMA模型。最终目的是预测。 型号选择可以通过 交叉验证, 使用信息标准(AIC,BIC), 在其他方法中。 Rob J. Hyndman提供了一种对时间序列进行交叉验证的方法。对于相对较小的样本,交叉验证中使用的样本大小可能与原始样本大小在质量上有所不同。例如,如果原始样本大小为200个观测值,则可以考虑通过获取前101个观测值并将窗口扩展到102、103,...,200个观测值来获得100个交叉验证结果,从而开始交叉验证。显然,对于200个观测值而言,合理地简约的模型对于100个观测值而言可能太大,因此其验证误差将很大。因此,交叉验证可能会系统地偏爱过于简约的模型。由于样本大小不匹配,这是不希望的效果。 交叉验证的替代方法是使用信息标准进行模型选择。由于我关心预测,因此我将使用AIC。尽管AIC渐近等效于最小化时间序列模型的样本外一步预测MSE(根据Rob J.Hyndman的帖子),但我怀疑这与样本有关在这里是否有意义我关心的尺寸不是很大... 问题:对于中/小样本,我应该在时间序列交叉验证中选择AIC吗? 一些相关的问题可以在这里,这里和这里找到。

1
如何分解具有多个季节性成分的时间序列?
我有一个包含双重季节性成分的时间序列,我想将该序列分解为以下时间序列成分(趋势,季节性成分1,季节性成分2和不规则成分)。据我所知,用于分解R中序列的STL过程仅允许一个季节性成分,因此我尝试了两次分解序列。首先,使用以下代码将频率设置为第一个季节性成分: ser = ts(data, freq=48) dec_1 = stl(ser, s.window="per") 然后,我dec_1通过将频率设置为第二个季节性分量来分解分解系列()的不规则分量,从而: ser2 = ts(dec_1$time.series[,3], freq=336) dec_2 = stl(ser2, s.window="per") 我对这种方法不是很自信。而且我想知道是否还有其他方法可以分解具有多个季节性的序列。另外,我注意到tbats()R 预测软件包中的函数允许一个模型适合具有多个季节性的序列,但是它并未说明如何使用它来分解一个序列。

2
平均绝对比例误差(MASE)的解释
平均绝对比例误差(MASE)是对预测准确性的一种度量,由 Koehler&Hyndman(2006)。 MASE=MAEMAEin−sample,naiveMASE=MAEMAEin−sample,naiveMASE=\frac{MAE}{MAE_{in-sample, \, naive}} 其中是实际预测产生的平均绝对误差; 而M A E i n − s a m p lMAEMAEMAE是天真预测产生的平均绝对误差(例如,积分I(1MAEin−sample,naiveMAEin−sample,naiveMAE_{in-sample, \, naive}样本内数据计算出)时间序列。I(1)I(1)I(1) (查看 Koehler&Hyndman(2006)的文章以获取精确的定义和公式。) 意味着实际的预测确实恶化了样品的比幼稚预测样品一样,在平均绝对误差的条款。因此,如果平均绝对误差是预测准确性的相关度量(取决于当前的问题),则 M A S E &gt; 1MASE&gt;1MASE&gt;1MASE>1MASE&gt;1MASE&gt;1MASE>1表示,如果我们期望超出预期范围,则应放弃实际预测,而采用幼稚的预测样本数据非常类似于样本中的数据(因为我们只知道样本中的幼稚预测执行得很好,而不是样本外)。 题: 作为在此提出一个预测竞争的标杆Hyndsight博客文章。一个明显的基准应该不是 M A S E =MASE=1.38MASE=1.38MASE=1.38吗?MASE=1MASE=1MASE=1 当然,这个问题并不特定于特定的预测竞赛。我希望在更一般的背景下帮助您理解这一点。 我猜: 我看到的唯一合理的解释是,由于结构的变化,天真的预测在样本外的表现要比样本中的表现差得多。然后可能已经太具有挑战性的实现。MASE&lt;1MASE&lt;1MASE<1 参考文献: Hyndman,Rob J.和Anne B. Koehler。“ 另一种方法是对预测准确性的度量。 ”国际预测杂志》 22.4(2006年):679-688。 Hyndsight博客文章。

1
如何从R中的线性模型的新输入预测值?
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我在R:中创建了线性模型mod = lm(train_y ~ train_x)。我想通过它的X列表,并获得其预测/估计/预测的Y。我看过了predict(),但是我认为这是用于其他目的,或者我只是不知道如何使用它。 我猜想通过获取模型的系数,我可以手动地一对一插入test_x变量,并获得预测的Y,但是我猜想有一种更有效的方法。

6
我的天气预报员准确吗?
一个困扰我一段时间的问题,我不知道该如何解决: 每天,我的气象员都会有一定百分比的降雨机会(假设计算得出的数字为9000位数,而他从未重复输入数字)。随后的每一天,要么下雨,要么不下雨。 我有多年的数据-pct机会还是下雨。考虑到这位气象员的历史,如果他今晚说明天的下雨机会是X,那么我对下雨的真正可能性的最佳猜测是什么?

2
为什么将MAE最小化会导致预测中位数而不是均值?
摘自Rob J Hyndman和George Athanasopoulos的《预测:原理和实践》教科书,特别是准确性测量部分: 最小化MAE的预测方法将导致对中位数的预测,而最小化RMSE则将导致对均值的预测 有人可以对为什么将MAE最小化导致预测中位数而不是均值给出直观的解释吗?在实践中这意味着什么? 我问一个客户:“对于您来说,使平均预测更准确或避免非常不准确的预测对您而言,更重要的是什么?” 他说,使均值预测更准确具有更高的优先级。因此,在这种情况下,我应该使用MAE还是RMSE?在阅读此引文之前,我相信MAE在这种情况下会更好。现在我怀疑。
19 forecasting  mean  median  rms  mae 

3
如何判断女友是否可以说出未来(即预测股票)?
我的女朋友最近在一家大银行找到了从事销售和交易的工作。受她的新工作的鼓舞,她认为自己可以预测月底库存是上升还是下降大于机会(她相信甚至可以做到80%的准确性!) 我很怀疑。我们已经同意做一个实验,她将选择一些股票,并在预定的时间检查它们是上升还是下降。 我的问题是:为了拥有足够的统计能力自信地告诉她可以准确预测股票,她将不得不挑选几只股票,并且必须正确选择几只股票? 例如,她必须选择几只股票才能以95%的确定性告诉她以80%的准确性选择股票? 编辑:对于我们同意的实验,她不必预测库存将增加或减少多少,而只需预测它们将增加或减少即可。

3
我们如何判断Nate Silver的预测的准确性?
首先,他给出了结果的可能性。因此,举例来说,他对美国大选的预测目前为克林顿82%,特朗普18%。 现在,即使特朗普获胜,我怎么不知道他应该赢得的不仅仅是18%的时间? 另一个问题是他的概率随时间变化。因此,在7月31日,特朗普和克林顿之间的差距几乎达到了50:50。 我的问题是,鉴于他每天在同一事件中具有相同结果并具有不同结果的概率不同,我如何衡量他根据当日可用的信息做出预测的每一天的准确性?

3
如何使用带有卡尔曼滤波的DLM进行预测
有人可以引导我看一个有关如何在时间序列上的R中使用DLM卡尔曼滤波的示例。假设我有一个这些值(季度值和年度季节性);您将如何使用DLM预测下一个值?顺便说一句,我是否有足够的历史数据(最小值是多少)? 89 2009Q1 82 2009Q2 89 2009Q3 131 2009Q4 97 2010Q1 94 2010Q2 101 2010Q3 151 2010Q4 100 2011Q1 ? 2011Q2 我正在寻找R代码食谱样式的逐步说明类型的答案。预测的准确性不是我的主要目标,即使我没有足够的数据,我只是想学习能为我提供2011年第二季度数字的代码序列。

2
VAR预测方法
我正在建立一个VAR模型来预测资产价格,并想知道我的方法在统计上是否合理,我所包括的测试是否相关,以及是否需要更多测试以确保基于输入变量的可靠预测。 下面是我当前的检查Granger因果关系并预测所选VAR模型的过程。 require("forecast") require("vars") #Read Data da=read.table("VARdata.txt", header=T) dac &lt;- c(2,3) # Select variables x=da[,dac] plot.ts(x) summary(x) #Run Augmented Dickey-Fuller tests to determine stationarity and differences to achieve stationarity. ndiffs(x[, "VAR1"], alpha = 0.05, test = c("adf")) ndiffs(x[, "VAR2"], alpha = 0.05, test = c("adf")) #Difference to achieve stationarity d.x1 …
19 r  forecasting  modeling  var 

1
模型选择中的悖论(AIC,BIC,是解释还是预测?)
阅读了加利特·斯穆利(Galit Shmueli)的“解释或预测”(2010),我为明显的矛盾感到困惑。一共有三个前提 基于AIC的与基于BIC的模型选择(第300页的结束-第301页的开始):简而言之,应使用AIC选择用于预测的模型,而应使用BIC选择用于解释的模型。另外(我们不在上面的文章中),我们知道在某些条件下BIC会在候选模型集中选择真实模型。真正的模型是我们在解释模型中寻求的(第293页末)。 简单的算法:对于大小为8或更大的样本,AIC将选择比BIC 更大的模型由于AIC与BIC的复杂度惩罚不同,因此满足)。ln(n)&gt;2ln(n)&gt;2\text{ln}(n)>2 在“真实”模型(即用正确的回归量和正确的函数形式,但不完全估计系数模型)可能不是预测的最佳模式(P 307):回归模型缺少的预测可能是一个更好的预测模型-由于缺少估计变量而导致的偏差可能会因估计不准确而导致方差减少而被抵消。 要点1.和2.表明较大的模型可能比较简约的模型更适合预测。同时,第3点给出了一个相反的例子,其中更简约的模型比较大的模型更适合预测。我感到困惑。 问题: 点之间如何出现明显的矛盾{1。和2.}和3.被解释/解决? 鉴于第3点,您能否就AIC选择的较大模型实际上比BIC选择的更简约模型更好地进行预测进行直观的解释?

1
,预测期的模拟
我有时间序列数据,我使用ARIMA(p,d,q)+XtARIMA(p,d,q)+XtARIMA(p,d,q)+X_t作为拟合数据的模型。的XtXtX_t是指示随机变量,它是0(当我没有看到一个罕见的事件)或1(当我看到的罕见的事件)。基于我对先前观察XtXtX_t,我可以使用可变长度马尔可夫链方法开发的模型XtXtX_t。这使我能够在预测期间内模拟XtXtX_t并给出零和一的序列。由于这是罕见的事件,我不会看到Xt=1Xt=1X_t=1 。我可以根据的模拟值预测并获取预测间隔XtXtX_t。 题: 如何在预测期内考虑到模拟中1的出现,开发一种有效的模拟程序XtXtX_t?我需要获取均值和预测间隔。 观察到1的概率太小,以至于我认为常规的蒙特卡洛模拟在这种情况下会很好地工作。也许我可以使用“重要性抽样”,但是我不确定到底该怎么做。 谢谢。

1
逐步AIC-关于此主题是否存在争议?
我在该网站上阅读了无数帖子,这些帖子令人难以置信地反对使用任何类型的标准(无论是基于p值,AIC,BIC等)逐步选择变量。 我理解为什么这些程序通常比较笼统,而变量选择却很差。龚可能在这里著名的帖子清楚地说明了原因;最终,我们将在用于得出假设的同一数据集上验证假设,即数据挖掘。此外,p值还受共线性和离群值之类的量的影响,这些结果会严重偏斜等。 但是,最近我一直在研究时间序列预测,并且遇到了Hyndman备受推崇的教科书,他在这里提到使用逐步选择来找到ARIMA模型的最佳顺序。实际上,在forecastR包中,众所周知auto.arima的默认算法默认使用逐步选择(对于AIC,不是p值)。他还批评了基于p值的功能选择,该功能与该网站上的多个帖子非常吻合。 最终,如果目标是开发用于预测/预测的良好模型,则最终应始终以某种方式进行交叉验证。但是,在确定p值以外的评估指标的过程本身时,在这里肯定有一些分歧。 在这种情况下,或者在这种情况下,对于使用逐步式AIC,有人是否有任何意见?我被教导要相信任何逐步的选择都是不好的,但是老实说,auto.arima(stepwise = TRUE)与样本相比,我给了我更好的结果,auto.arima(stepwise = FALSE)但是也许这只是巧合。

5
数据清理会使统计分析的结果恶化吗?
在流行期间,由于病毒传播(例如2002年美国的西尼罗河病毒),人民抵抗力下降,食物或水的污染减少,蚊子。这些流行病将以每1至5年发生一次的异常值出现。通过消除这些异常值,我们将消除流行病的证据,这些证据构成了预测和疾病理解的重要组成部分。 在处理由流行病引起的异常值时是否需要清理数据? 是要改善结果还是使统计分析结果恶化?

2
是否可以自动化时间序列预测?
我想构建一种算法,该算法能够分析任何时间序列,并“自动”为分析的时间序列数据选择最佳的传统/静态预测方法(及其参数)。 可以做这样的事情吗?如果是,您能给我一些如何解决的技巧吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.