DLMはクールですが、たとえばARIMAや他の方法ほど単純ではありません。他の方法では、データをプラグインしてから、アルゴリズムのいくつかのパラメーターを調整します。おそらく、さまざまな診断を参照して設定をガイドします。
DLMを使用すると、基本的には隠れマルコフモデルのようなものを実装するいくつかのマトリックスで構成される状態空間マシンを作成します。一部のパッケージ(sspir
とりわけ、私は思う)は、概念とマトリックスの機能を理解していることを期待しています。dlm
パッケージから始めることを強くお勧めします。@ RockScienceが推奨しているように、ビネットをご覧ください。
dlm
:あなたは基本的にいくつかの手順を取るつもりです
シリーズを説明するのはどのようなコンポーネントですか?トレンド?季節性?外生変数?これらのコンポーネントを実装するdlm
ようなツールを使用dlmModPoly
し、+
演算子を使用してそれらを1つのモデルに結合します。
このモデルに必要なパラメーターの数が多いRサブルーチンを作成し、それらのパラメーターを使用してコンポーネントを作成し、それらを一緒に追加して、結果のモデルを返します。
dlmMLE
適切なパラメーターを見つけるための検索/最適化を行うために使用します(基本的に最適化であるMLEを使用して、最適化で発生する可能性のある落とし穴を使用)。dlmMLE
候補パラメーターを指定してRサブルーチンを繰り返し呼び出してモデルを作成し、テストします。
作成したRサブルーチンとステップ3で見つけたパラメーターを使用して、最終モデルを作成します。
でデータをフィルタリングしてdlmFilter
から、おそらくでスムーズにしdlmSmooth
ます。
dlmModReg
モデルに時変パラメーターを持たせる原因となる何かを使用または実行する場合dlmForecast
、系列の予測に使用することはできません。時変モデルになった場合は、入力データにNAを入力し、NAを入力することをお勧めしdlmFilter
ます(貧しい人の予測)。これdlmForecast
は、時変パラメーターでは機能しないためです。
コンポーネントを個別に調べる場合(季節性とは別にトレンドなど)、マトリックスと各列の内容を理解する必要があり、さらにdlm
それらをどのように組み合わせるかを理解する必要があります(順序が重要です!)。
別のパッケージがありますが、その名前は私をエスケープし、これらのパッケージのいくつかを使用できるフロントエンド(dlm
バックエンドとして含む)を作成しようとします。残念ながら、私はそれがうまくいくことは一度もありませんでしたが、それは私だけかもしれません。
DLMに関する本を入手することをお勧めします。私はそれらをいくつか手に入れ、自分がいるdlm
場所にたどり着くために多くのことをしました。私は決して専門家ではありません。