タグ付けされた質問 「forecasting」

将来のイベントの予測。これは、[時系列]のコンテキストでは、[予測]の特殊なケースです。

3
過去1か月の記録に基づいて売上を予測するための適切な時系列モデルを開発する
今から2年連続でオンラインビジネスを営んでいるので、毎月の売上データが約2年あります。毎月の私のビジネスは、確かに季節変動(クリスマスなどのパフォーマンスが良い)と、おそらく私が気付いていない他のいくつかの要因の影響を受けています。 今後の売上をより正確に予測し、私の販売キャンペーンの効果、または新しい競合他社の影響を測定するために、適切な時系列モデルを開発して、現在の売上データを将来に推定できるようにしたいと考えています。これは、予測結果と実際の結果を比較するときに、販売キャンペーンの効果や競合他社の影響を定量的にテストできるようにするためです。 私の質問は、私には2年分の販売データがあることを考えると、とにかくこれについて予測時系列モデルを定式化できるかどうかです。 注:ブラックボックスツールではなく、背景の概念と理論にもっと興味があります。ツールと言えば、mathematica、matlab、R、Excel、Googleスプレッドシート...という名前です。

2
毎日、毎週、毎年の周期性を持つ時間ごとの時系列の予測
主な編集:Dave&Nickの対応に感謝します。良い知らせは、ループが機能するようになったことです(原則として、バッチ予測に関するHydnman教授の投稿から借用しました)。未解決のクエリを統合するには: a)auto.arimaの最大反復回数を増やすにはどうすればよいですか。外生変数が多数あるため、auto.arimaは最終モデルに収束する前に最大反復回数に達しているようです。これを誤解している場合は訂正してください。 b)Nickからの1つの回答は、時間間隔の私の予測はそれらの時間間隔のみから導き出され、その日の早い段階での発生に影響されないことを強調しています。このデータを処理することから、本能は、これがしばしば重大な問題を引き起こすべきではないことを教えてくれますが、これをどのように処理するかについての提案を受け入れます。 c)Daveは、予測変数を取り巻くリードタイムとラグタイムを特定するには、より高度なアプローチが必要であることを指摘しました。Rのこれに対するプログラムによるアプローチの経験はありますか?もちろん制限はあると思いますが、できる限りこのプロジェクトを進めたいと思っています。これが他の人にも役立つことは間違いありません。 d)新しいクエリですが、当面のタスクに完全に関連しています-注文を選択するときにauto.arimaはリグレッサを考慮しますか? 来店を予測しようとしています。移動する休日、うるう年、散発的なイベント(本質的には外れ値)を説明する機能が必要です。これに基づいて、私はARIMAXが私の最善の策であると収集し、外因性変数を使用して、複数の季節性と前述の要因を試してモデル化します。 データは1時間ごとに24時間記録されます。これは私のデータにゼロの量があるため、特に訪問数が非常に少ない1日の時間帯に問題があることが判明しています。また、営業時間は比較的不安定です。 また、3年以上の履歴データを持つ1つの完全な時系列として予測する場合、計算時間は膨大です。毎日の時間を別々の時系列として計算することで、それがより速くなると考えました。そして、忙しい時間帯でこれをテストすると、より高い精度が得られるようですが、早朝/後期の時間で問題になることが判明しましたt常に訪問を受ける。auto.arimaを使用するとプロセスにメリットがあると思いますが、最大反復回数に達する前にモデルに収束できないようです(そのため、手動での適合とmaxit句を使用しています)。 訪問数= 0の場合の外生変数を作成して、「欠落」データを処理しようとしました。繰り返しますが、これは、訪問がない唯一の時間である1日の店舗が閉まっているときだけ、忙しい1日の時間帯に最適です。これらの例では、外生変数は前向きに予測するためにこれを正常に処理するようであり、以前に閉じられた日の影響を含みません。ただし、店が開いているが、常に訪問を受けるとは限らない静かな時間を予測することに関して、この原則を使用する方法がわかりません。 Rでのバッチ予測についてのHyndman教授の投稿を利用して、24シリーズを予測するループを設定しようとしていますが、午後1時以降は予測したくなく、その理由を理解できません。「optim(init [mask]、armafn、method = optim.method、hessian = TRUE、:non-finite finite-difference value [1]のエラー」というエラーが表示されますが、すべての系列の長さが等しく、基本的に同じマトリックスですが、なぜこれが起こっているのか理解できません。これは、マトリックスがフルランクではないことを意味しますか?このアプローチでこれを回避するにはどうすればよいですか? https://www.dropbox.com/s/26ov3xp4ayig4ws/Data.zip date() #Read input files INPUT <- read.csv("Input.csv") XREGFDATA <- read.csv("xreg.csv") #Subset time series data from the input file TS <- ts(INPUT[,2:25], f=7) fcast <- matrix(0, nrow=nrow(XREGFDATA),ncol=ncol(TS)) #Create matrix of exogenous …

1
動的因子分析と状態空間モデル
RのMARSSパッケージは、動的因子分析のための機能を提供します。このパッケージでは、動的因子モデルは、状態空間モデルの特殊な形式として記述され、共通の傾向がAR(1)プロセスに従うと想定しています。私はこれらの2つの方法にあまり詳しくないので、2つの質問が出てきます。 動的因子分析は、状態空間モデルの特別な形式ですか?これら2つの方法の違いは何ですか? さらに、動的因子分析は、AR(1)プロセスとして一般的な傾向を想定する必要はありません。季節的なARIMA(またはその他の)プロセスとして共通の傾向を可能にするパッケージはありますか?

3
存在しないデータや欠落しているデータをどのように処理しますか?
予測方法を試しましたが、自分の方法が正しいかどうかを確認したいと思います。 私の研究は、さまざまな種類の投資信託を比較することです。GCCインデックスをそのうちの1つのベンチマークとして使用したいのですが、問題は2011年9月にGCCインデックスが停止し、私の研究は2003年1月から2014年7月までであるということです。線形回帰を作成しますが、問題は、MSCIインデックスに2010年9月のデータが欠落していることです。 これを回避するために、私は次のことを行いました。これらの手順は有効ですか? MSCIインデックスには2010年9月から2012年7月までのデータがありません。5つの観測値に移動平均を適用することで、「提供」しました。このアプローチは有効ですか?その場合、いくつの観測を使用する必要がありますか? 欠落データを推定した後、相互に利用可能な期間(2007年1月から2011年9月)のGCCインデックス(従属変数として)とMSCIインデックス(独立変数として)で回帰を実行し、すべての問題からモデルを修正しました。毎月、xを残りの期間のMSCIインデックスのデータで置き換えます。これは有効ですか? 以下は、行ごとに年、列ごとに月を含む、カンマ区切り値形式のデータです。データはこのリンクからも入手できます 。 シリーズGCC: ,Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec 2002,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,117.709 2003,120.176,117.983,120.913,134.036,145.829,143.108,149.712,156.997,162.158,158.526,166.42,180.306 2004,185.367,185.604,200.433,218.923,226.493,230.492,249.953,262.295,275.088,295.005,328.197,336.817 2005,346.721,363.919,423.232,492.508,519.074,605.804,581.975,676.021,692.077,761.837,863.65,844.865 2006,947.402,993.004,909.894,732.646,598.877,686.258,634.835,658.295,672.233,677.234,491.163,488.911 2007,440.237,486.828,456.164,452.141,495.19,473.926,492.782,525.295,519.081,575.744,599.984,668.192 2008,626.203,681.292,616.841,676.242,657.467,654.66,635.478,603.639,527.326,396.904,338.696,308.085 2009,279.706,252.054,272.082,314.367,340.354,325.99,326.46,327.053,354.192,339.035,329.668,318.267 2010,309.847,321.98,345.594,335.045,311.363,299.555,310.802,306.523,315.496,324.153,323.256,334.802 2011,331.133,311.292,323.08,327.105,320.258,312.749,305.073,297.087,298.671,NA,NA,NA MSCIシリーズ: ,Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec 2007,NA,NA,NA,NA,1000,958.645,1016.085,1049.468,1033.775,1118.854,1142.347,1298.223 2008,1197.656,1282.557,1164.874,1248.42,1227.061,1221.049,1161.246,1112.582,929.379,680.086,516.511,521.127 2009,487.562,450.331,478.255,560.667,605.143,598.611,609.559,615.73,662.891,655.639,628.404,602.14 2010,601.1,622.624,661.875,644.751,588.526,587.4,615.008,606.133,NA,NA,NA,NA 2011,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA 2012,NA,NA,NA,NA,NA,NA,NA,609.51,598.428,595.622,582.905,599.447 2013,627.561,619.581,636.284,632.099,651.995,651.39,687.194,676.76,694.575,704.806,727.625,739.842 2014,759.036,787.057,817.067,824.313,857.055,805.31,873.619,NA,NA,NA,NA,NA

1
指数平滑法とARIMAを使用する場合
私は最近、毎月の予測に取り組み、Rob Hyndmanの本を読みながら、予測の知識を更新していますが、私が苦労しているのは、指数平滑化モデルとARIMAモデルのどちらを使用するかです。ある方法論と別の方法論のどちらを使用するべきかという経験則はありますか? また、AICを使用して2つを比較することはできないので、RMSE、MAEなどを使用する必要がありますか? 現在、それぞれをいくつか作成してエラー測定値を比較していますが、より良いアプローチがあるかどうかはわかりません。

4
Statsmodelsは、ARIMAはシリーズが静止していないため適切ではないと述べていますが、それをどのようにテストしていますか?
Pythonのstatsmodels ARIMA APIでモデル化しようとしている時系列があります。以下を適用した場合: from statsmodels.tsa.arima_model import ARIMA model = ARIMA(data['Sales difference'].dropna(), order=(2, 1, 2)) results_AR = model.fit(disp=-1) 次のエラーが発生します。 ValueError: The computed initial AR coefficients are not stationary You should induce stationarity, choose a different model order, or you can pass your own start_params. しかし、私はすでにデータを区別しています: data['Sales'] = data['Sales'] - data['Sales'].shift() 定常性を誘発するためにこれ以上何ができますか? …

1
モデルの検索をいつ停止する必要がありますか?
エネルギーのストックプライスと天気のモデルを探しています。私は、ヨーロッパの国々の間で購入したMWattの価格と、天気に関する多くの価値を持っています(Gribファイル)。5年(2011-2015)の各時間。 価格/日 これは1年間、1日あたりです。私はこれを5時間に1時間ごとに持っています。 天気の例 ケルビンでの1時間の3Dscatterplot。1時間あたりのデータごとに1000個の値と、クレビン、風、地理ポテンシャルなどの200個のデータがあります。 私は、MWの1時間あたりの平均価格を予測しようとしています。 天気に関する私のデータは非常に密度が高く、1時間あたり10000値を超えるため、高い相関関係があります。これは、短いビッグデータの問題です。 私は、ラッソー、リッジ、SVRの方法を試し、MWattの平均価格を結果として、天気のデータを収入として使用しました。トレーニングデータとして70%、テストとして30%を使用しました。テストのデータが予測されていない場合(トレーニングデータ内のどこかにある場合)、適切な予測が得られます(R²= 0.89)。しかし、私は自分のデータを予測したいと思います。 したがって、テストデータが私のトレーニングデータの後に時系列である場合、何も予測されません(R²= 0.05)。時系列なので、普通だと思います。そして、多くの自己相関があります。 ARIMAのようなタイムセリエモデルを使わないといけないと思いました。メソッドの順序(セリエが静止している)を計算してテストしました。しかし、それは動作しません。つまり、予測のr²は0.05です。テストデータに対する私の予測は、テストデータに対する予測とはまったく異なります。私は自分の天気をリグレッサとしてARIMAXメソッドを試しました。つまり、情報は追加されません。 ACF / PCF、テスト/トレーニングデータ だから私は一日あたり、そして週あたりの季節のカットをしました 日 最初のトレンドの週 そして、私の株価のトレンドの傾向を事前に判断できれば、これを得ることができます: 青は私の予測であり、赤は実際の値です。 天気のローリング平均を収入として、株価のトレンドのトレンドを結果として回帰を行います。しかし、今のところ、私はどんな関係も見つけていません。 しかし、相互作用がない場合、何もないことをどうやって知ることができますか?多分それは私がそれを見つけていないだけのことです。

1
AICの値が低く、ほぼ等しい場合はどうすればよいですか?
(1)で私が読書を楽しんだ質の高い本や論文を数多く提供しているChris Chatfieldは、次のアドバイスを提供しています。 たとえば、AICの値が低い値とほぼ等しいARIMA時系列モデルを選択する必要があります。これは、たまたま最小のAICを与えるのではなく、直近の年のデータの最良の予測を与えるものです。 そのようなアドバイスの根拠は何ですか?それが健全である場合、なぜforecast :: auto.arimaおよび他の予測ルーチンがそれに従っていないのですか?まだ実装されていませんか?すでにここで議論されているだけで最小を与えるために起こっモデルを探すために、AICはおそらく良いアイデアではないこと。 ARIMAモデルに低いがほぼ等しい(たとえば、最小AICの値が1または2以内)オプションは、多くの時系列予測ソフトウェアのデフォルトではないのはなぜですか?N ≥ 1ん≥1n\ge1 (1)Chatfield、C.(1991)。統計上の落とし穴を回避します。Statistical Science、6(3)、240–252。オンラインで入手可能、URL:https : //projecteuclid.org/euclid.ss/1177011686。

1
R / mgcv:なぜte()とti()テンソル積が異なる表面を生成するのですか?
のmgcvパッケージにRは、テンソル積の相互作用をフィッティングするための2つの関数がte()ありti()ます。私は2つの作業の基本的な分業を理解しています(非線形の相互作用を当てはめるか、この相互作用を主効果と相互作用に分解するか)。私が理解していないのは、なぜte(x1, x2)、そしてti(x1) + ti(x2) + ti(x1, x2)(わずかに)異なる結果を生成するのかということです。 MWE(から適応?ti): require(mgcv) test1 <- function(x,z,sx=0.3,sz=0.4) { x <- x*20 (pi**sx*sz)*(1.2*exp(-(x-0.2)^2/sx^2-(z-0.3)^2/sz^2)+ 0.8*exp(-(x-0.7)^2/sx^2-(z-0.8)^2/sz^2)) } n <- 500 x <- runif(n)/20;z <- runif(n); xs <- seq(0,1,length=30)/20;zs <- seq(0,1,length=30) pr <- data.frame(x=rep(xs,30),z=rep(zs,rep(30,30))) truth <- matrix(test1(pr$x,pr$z),30,30) f <- test1(x,z) y <- f + rnorm(n)*0.2 par(mfrow = c(2,2)) # …
11 r  gam  mgcv  conditional-probability  mixed-model  references  bayesian  estimation  conditional-probability  machine-learning  optimization  gradient-descent  r  hypothesis-testing  wilcoxon-mann-whitney  time-series  bayesian  inference  change-point  time-series  anova  repeated-measures  statistical-significance  bayesian  contingency-tables  regression  prediction  quantiles  classification  auc  k-means  scikit-learn  regression  spatial  circular-statistics  t-test  effect-size  cohens-d  r  cross-validation  feature-selection  caret  machine-learning  modeling  python  optimization  frequentist  correlation  sample-size  normalization  group-differences  heteroscedasticity  independence  generalized-least-squares  lme4-nlme  references  mcmc  metropolis-hastings  optimization  r  logistic  feature-selection  separation  clustering  k-means  normal-distribution  gaussian-mixture  kullback-leibler  java  spark-mllib  data-visualization  categorical-data  barplot  hypothesis-testing  statistical-significance  chi-squared  type-i-and-ii-errors  pca  scikit-learn  conditional-expectation  statistical-significance  meta-analysis  intuition  r  time-series  multivariate-analysis  garch  machine-learning  classification  data-mining  missing-data  cart  regression  cross-validation  matrix-decomposition  categorical-data  repeated-measures  chi-squared  assumptions  contingency-tables  prediction  binary-data  trend  test-for-trend  matrix-inverse  anova  categorical-data  regression-coefficients  standard-error  r  distributions  exponential  interarrival-time  copula  log-likelihood  time-series  forecasting  prediction-interval  mean  standard-error  meta-analysis  meta-regression  network-meta-analysis  systematic-review  normal-distribution  multiple-regression  generalized-linear-model  poisson-distribution  poisson-regression  r  sas  cohens-kappa 

2
ログ差分時系列モデルは成長率よりも優れていますか?
多くの場合、著者が「対数差」モデルを推定しているのを見ます。たとえば、 ログ(yt)− ログ(yt − 1)= ログ(yt/ yt − 1) = α + βバツtログ⁡(yt)−ログ⁡(yt−1)=ログ⁡(yt/yt−1)=α+βバツt\log (y_t)-\log(y_{t-1}) = \log(y_t/y_{t-1}) = \alpha + \beta x_t これは、log (y t)がI (1 )であるをy tの変化率に関連付けるのに適切であることに同意します。バツtバツtx_tytyty_tログ(yt)ログ⁡(yt)\log (y_t)私(1 )私(1)I(1) しかし、対数差は近似値であり、対数変換なしでモデルを推定することもできます。たとえば、 yt/ yt − 1− 1 = (yt− yt − 1)/ yt − 1= α + βバツtyt/yt−1−1=(yt−yt−1)/yt−1=α+βバツty_t/y_{t-1} -1 = (y_t - …

1
(線形回帰)予測の調整
完全な開示:私は統計学者ではありません。私はあまりIT管理者ではありません。私と優しく遊んでください。:) 私は、企業のディスクストレージの使用量を収集および予測する責任があります。ストレージの使用量は毎月収集され、予測には単純なローリング12か月の線形回帰が使用されます(つまり、予測を行う際には、過去12か月のデータのみが考慮されます)。たとえば、「このモデルに基づいて、ニーズを満たすためにyか月以内に保管する場合はxの金額を購入する必要があります」など、この情報を割り当てと資本支出の計画に使用します。これはすべて、私たちのニーズに合わせて十分に機能します。 定期的に、予測をスローする数字の大きな一時的な動きがあります。たとえば、誰かが不要になった500 GBの古いバックアップを見つけて削除したとします。スペースを取り戻すために彼らのために良い!しかし、私たちの予測は現在、この1か月の大幅な下落によって大きく歪んでいます。このような低下がモデルから抜け出すには9〜10か月かかることを常に受け​​入れてきましたが、資本支出計画のシーズンに入った場合、それは本当に長い時間になる可能性があります。 これらの1回限りの変動を処理して、予測値がそれほど影響を受けない(たとえば、ラインの傾きがそれほど大きく変化しない)方法を考えていますが、それらは考慮されています(たとえば特定の時点に関連するy値の1回限りの変化)。これに取り組む私たちの最初の試みは、いくつかの醜い結果をもたらしました(例えば、指数関数的成長曲線)。必要に応じて、SQL Serverですべての処理を行います。

4
時系列の予測可能性の評価
Jan'05からDec'11に及ぶ月間時系列が2万を少し超えると想定します。これらはそれぞれ、異なる製品のグローバル販売データを表しています。それぞれの予測を計算するのではなく、「実際に重要」な少数の製品のみに焦点を当てたい場合はどうなりますか? 私はそれらの製品を総年間収益でランク付けし、古典的なパレートを使用してリストを切り詰めることができました。それでも、最終的な収益にはあまり貢献していませんが、一部の製品は予測が非常に簡単なので、除外しないと悪い判断になると思われます。過去10年間に毎月50ドル相当の売り上げを上げた製品は、あまり聞こえないかもしれませんが、将来の売り上げを予測するのにほとんど労力を要しません。 したがって、製品を4つのカテゴリに分類するとします。高収益/予測が容易-低収益/予測が容易-高収益/予測が困難-低収益/予測が困難。 第4グループに属する時系列のみを残しておくのが妥当だと思います。しかし、「予測可能性」をどのように正確に評価できますか? 変動係数は良い出発点のようです(これについて少し前にいくつかの論文を読んだことも覚えています)。しかし、私の時系列が季節性/レベルシフト/カレンダー効果/強い傾向を示している場合はどうなりますか? 「生の」データではなく、ランダムなコンポーネントの変動性のみに基づいて評価を行うべきだと想像します。それとも何か不足していますか? 誰かが以前に同様の問題に遭遇しましたか?あなたたちはどうやってそれについて行きますか? いつものように、どんな助けでも大歓迎です!

1
「まばらな事前」という用語は(FBProphet Paper)を何と言いますか?
論文「大規模予測」(FBProphet予測ツール、https: //peerj.com/preprints/3190.pdfを参照)を読んで、「まばらな事前」という用語に出くわしました。著者は、ロジスティック成長モデルのモデルパラメーターであるスカラーレートkからのレート偏差δδ\mathbf{\delta}ベクトルをモデリングする際に、そのような「スパースな事前」を使用していたと説明しています。kkk δj∼Laplace(0,τ)δj∼Laplace(0,τ)\delta_j \sim\text{Laplace}(0,\tau)ττ\taukkkττ\tau また、ラプラス分布を使用して事前共通を生成していますか?なぜ正規分布よりも好まれるのかわかりません。

2
時系列データのボラティリティの測定?
定常時系列データのボラティリティまたはノイズの測定値を計算したいと思います。これは、単一の時系列のメジャー、または複数の時系列を一緒に比較する相対メジャーにすることができます。Dickey-Fuller検定がすでに実行されており、すべての時系列に単位根がないと仮定します。 ノイズ/ボラティリティを測定するためのそのようなメトリックのいくつかの例は何ですか?SD /平均である単純な「変動係数」を検討しました。しかし、私はこれを測定する他の方法があるのだろうかと思っています。それが役立つ場合は、Rを使用します。 これは漠然とした要求であることは承知しており、お詫び申し上げます。このトピックについて学ぶための提案や情報源があれば、本当にありがたいです。

1
R予測パッケージのTBATSを使用した時系列分解の解釈
以下の時系列データを季節性、トレンド、残差成分に分解したいと思います。データは、商業ビルの1時間ごとの冷却エネルギープロファイルです。 TotalCoolingForDecompose.ts <- ts(TotalCoolingForDecompose, start=c(2012,3,18), freq=8765.81) plot(TotalCoolingForDecompose.ts) したがって、次のアドバイスに基づいて、日ごとと週ごとに明らかな季節的影響があります。複数の季節的要素を持つ時系列を分解する方法 、私tbatsはforecastパッケージの関数を使用しました: TotalCooling.tbats <- tbats(TotalCoolingForDecompose.ts, seasonal.periods=c(24,168), use.trend=TRUE, use.parallel=TRUE) plot(TotalCooling.tbats) その結果: このモデルのlevelおよびslopeコンポーネントは何を説明していますか?このパッケージで参照されている論文(De Livera、Hyndman、Snyder(JASA、2011))に似たtrendおよびremainderコンポーネントを入手するにはどうすればよいですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.