[時系列の相互相関 (Time Series Cross Correlation)]ツールは、時空間キューブの各位置における 2 つの時系列 (一次分析変数と二次分析変数と呼ばれる) を、それぞれの時系列の対応する値間の Pearson の相関係数を計算することによって比較します。 さらに、二次分析変数では、一時分析変数を基準としてタイム ラグ (時間のシフト) が発生し、さまざまなタイム ラグに対して新しい相関が計算されます。 これにより、マーケティング キャンペーンと販売収益の増加の間の遅延のように、一次分析変数と二次分析変数の間の遅延効果を推定することができます。 たとえば、売上収益が時間の逆方向に 1 週間シフトされたときにマーケティングと売上の相関が最も高くなる場合、これはマーケティングの増加と売上収益の増加の間に 1 週間の遅延があることを意味します。
このツールを記述的および探索的な方法として使用し、時系列間の生の相関を計算できます。 また、2 つの変数の間の統計的依存性を分離するために、トレンドを除去し、自己相関をフィルターすることによって、説明的および推論的手法として使用することもできます。 また、近傍を計算に含めて、2 つの時系列の隣接する位置間の類似度を組み込んだり、空間的効果や相互関係を把握したりすることができます。
適用例
ツールの応用例を次に示します。
- 大都市圏では、時間別の気温と電力使用量を比較して、1 日のうち最も暑い時間帯のピーク電力需要に備えます。
- 降水量の増加と貯水池の水量の増加の間の遅延を推定します。 暴風雨のピークからどのくらい経過すると、貯水池の水位は最も急速に上昇しますか? 土壌条件が異なる場所では遅延の長さも異なりますか?
- さまざまなマーケティング キャンペーンの効果を比較して、どのキャンペーンの支出が売上収益と最も高い正の相関関係にあるかを判断します。 さらに、マーケティング支出と顧客の購入内容間の遅延を推定することもできます。 キャンペーンの中には売上につながるまでに時間がかかるものもありますが、最終的には長期的な収益を生み出すのに最も効果的でしょうか?
相互相関
相互相関値は、2 つの時系列間の線形関係の強さ、つまり、一方の時系列が増加すると、他方の時系列は増加する傾向にあるのか、減少する傾向にあるのか、あるいは変化しないのかを測定します。 相互相関値が 1 に近ければ、2 つの時系列が同じ方向に同じ割合で動くことを意味します。 たとえば、航空旅客数と航空料金は強い正の相関関係にあり、旅行者が多ければ航空料金は高くなります。 同様に、負の相互相関は、2 つの時系列が逆方向に動くことを意味します。例として、空いている駐車スペースの数と道路交通量 (駐車場所が少なければ交通量が増加する) が挙げられます。 2 つの時系列が無関係で、同じ方向または異なる方向に変化する傾向がない場合、相互相関はゼロに近くなります。
タイム ラグ
2 つの時系列間には遅延効果 (たとえば、生態系における捕食者数の増加と被食者の母集団の変化との間の遅延) があることが多いため、相互相関値は常にタイム ラグを考慮して計算されます。 タイム ラグは、一次変数を基準とした二次変数のシフトであり、それぞれの時系列の対応する新しい値のペアに対して新しい相互相関値が計算されます。
次の図にある上のグラフは、一次分析変数と二次分析変数を示しています。 中央のグラフは、時間の順方向に 2 時間ステップ シフトされた二次変数 (タイム ラグ 2) を示し、下のグラフは、時間の逆方向に 2 時間ステップ シフトされた二次変数 (タイム ラグ -2) を示します。 一次変数が増加または減少した後に二次変数が増加または減少しているように見えるため、二次変数を時間の逆方向にシフトすると (負のタイムラグ)、変数間の相互相関関数が増加します。 また、一次変数の時系列の最後にあるいくつかの時間ステップでは、シフト後には二次変数にペアリング済みの値が存在しなくなっています。
最も強い相関があるタイム ラグが正の場合、二次分析変数の値の変化は、一次分析変数の変化より前に生じます。 同様に、最も強い相関があるタイム ラグが負の場合、一次分析変数の変化は、二次分析変数の変化より前に生じます。
このツールは、0 から [最大タイム ラグ] パラメーターの値までのすべてのタイム ラグにおける相互相関を計算します。 さらに、[二次変数のラグ方向] パラメーターを使用して、シフトの方向を指定する (タイム ラグの符号を指定する) ことができます。 二次解析変数は、時間の逆方向 (負のタイム ラグ) または時間の順方向 (正のタイム ラグ) の両方向にシフトできます。 たとえば、最大タイム ラグ 10 を使用して両方向にシフトした場合、-10 から 10 までのすべてのタイム ラグにおける相互相関が計算されます。 同様に、最大タイム ラグ 5 を使用して逆方向にのみシフトした場合、-5 から 0 までのすべてのタイム ラグにおける相互相関が計算されます。
注意:
[最大タイム ラグ] パラメーターに値が指定されていない場合、最大タイム ラグは、各時系列の T 時間ステップに対して 10*log10(T/2) になります (切り捨て)。 この値は、(T-5) より大きくすることができません。 値 0 を指定すると、タイム ラグ シフトのない 2 つの時系列の生の相互相関のみが計算されます。
空間近傍を含める
[空間近傍を計算に含める] パラメーターを使用して、各位置の近傍を定義し、相互相関の推定を改善することができます。 近傍が含まれる場合、特定のタイム ラグに対する各位置の相互相関は、フォーカル位置の一次分析変数とその位置の各空間近傍 (およびその位置自体) のタイム ラグのある二次分析変数の間にある相関の平均 (加重されている可能性あり) になります。
たとえば、下の図では、フォーカルの位置が赤で示され、その周囲に 8 つの近傍があります。 オレンジの時系列は、フォーカル位置の一次分析変数であり、紫の時系列は、フォーカル位置と各近傍の二次分析変数です。 この場合、焦点位置での相互相関は、9 つの相互相関の平均になります。これには、フォーカル フィーチャ自体に対する相互相関、フォーカル位置と 1 つ目の近傍の相互相関、フォーカル位置と 2 つ目の近傍の相互相関などが含まれます。 各比較では、フォーカル位置の一次分析変数が近傍 (またはその位置自体) の二次変数と比較されます。 相関関係を平均化することにより、その値は個々の位置ではなくそのエリアの相互相関をより適切に特徴付けることができます。 この平均化は、すべてのタイム ラグおよびすべての位置に対して繰り返されます。
デフォルトでは、各相関は平均で均等に加重されますが、距離バンドまたは K 最近隣内挿法の近傍を使用する場合は、[空間近傍加重方法] パラメーターを使用して、フォーカル位置に近い近傍により大きな加重を指定することができます。 バイスクエア カーネルまたはガウス カーネルを使用して加重を定義できます。
注意:
距離バンドの近傍の場合、各カーネルのバンド幅は距離バンドと等しくなります。 デフォルトの距離バンドの計算方法については、「カーネル密度の詳細」をご参照ください。 K 最近隣内挿法の近傍の場合、帯域幅は、(k+1) 番目の近傍までの距離に等しくなります。 これにより、すべての K 近傍が帯域幅より近く、ゼロでない加重を持つようになります。 ポリゴンの位置の場合、近傍と加重の特定には重心間の距離が使用されます。
トレンドのフィルターと削除
特定のタイム ラグに対して、2 つの時系列間の相互相関は、2 つの時系列が一緒に増加または減少する傾向があるかどうかを測定します。 これは、値がどの程度強く対応するかを説明および推定する説明的な分析と見なすことができます。 ただし、生の相互相関は、トレンド、季節性、自己相関、変数の統計的依存性など、さまざまな要因で構成されています。 2 つの時系列の生の値は、単純に共有トレンドと自己相関により高く相関している可能性があります。たとえば、アイスクリームと日焼け止めの売上は高く相関していますが、季節や経済のトレンドを取り除くと、相関は非常に小さくなります。 [トレンドのフィルターと削除] パラメーターをオンにすることで、トレンド、季節性、および自己相関 (プレホワイトニングやフィルタリングとも呼ばれる) を削除できます。
特に、変数間の最適なタイム ラグを推定することが目的の場合、トレンドをフィルターして削除することが重要です。 たとえば、疫学的なデータでは、病気の数の増加と入院数の増加の間にはタイム ラグがあります。 ただし、この数の生の値を使用すると、強いトレンドと自己相関が理由で、病気と入院の間にタイム ラグはないことがよくわかります (タイム ラグがゼロの場合、最も強い相関があります)。 代わりに、トレンドが削除され、自己相関がフィルターされると、病気と入院の間の実際のタイム ラグ (たとえば、10 日) が最も強い相関を示すことがよくあります。
トレンド、季節性、自己相関はどれも、統計テストのタイプ 1 エラー率を増加させるため、相互相関の p 値と 95 パーセントの信頼区間は、2 つの時系列からトレンドをフィルターして削除した場合にのみ計算されます。 さらに、p 値と信頼区間は、2 つの時系列のペアワイズ比較に対してのみ計算できます。 つまり、空間近傍を計算に含めた場合、相互相関の加重平均では p 値と信頼区間は計算されません。 ただし、[出力ペアワイズ相関テーブル] パラメーターを使用して、すべてのタイム ラグにおける各位置と各近傍間の p 値と信頼区間を含むテーブルを作成できます。
注意:
p 値と信頼区間は、時間ステップ数の平方根に等しい標準偏差を持つ相互相関の正規分布を想定することによって計算されます。 最低 30 の時間ステップのある時系列の場合が最も正確な漸近結果となります。 時系列が短い場合は、警告が返されます。
統計的有意性検定は各位置のタイム ラグごとに独立して実行され、複数の仮説検定に相関はありません。 特定の p 値または信頼区間の有意性を解釈する際には十分に注意してください。 すべての p 値は、両側仮説検定を使用して計算されます。
フィルタリングとトレンド除去の実行方法については、以下の「フィルタリングとトレンド除去モデルの適合」セクションをご参照ください。
ツールの出力
ツールの主な出力は、相互相関結果のフィールドを含むフィーチャクラスです。 マップでは、フィーチャクラスは 6 つのレイヤーを含むグループ レイヤーとして追加され、各レイヤーが出力フィーチャの異なるフィールドを視覚化します。 各レイヤーには、各レイヤーを個別に有効または無効にするのではなく、レイヤー間をすぐに切り替えるオプションが含まれています。
レイヤーのうちの 3 つは、最も強い相関関係 (最も強い正の相関、最も強い負の相関、最も強い絶対相関) のマップを表します。 各位置は、最大の正の相関、最大の負の相関、または絶対値での最大の相関で色分けされています。
最後の 3 つのレイヤーは、3 つの最も強い相関レイヤーに関連するタイム ラグを示しています。 たとえば、最も強い絶対相関のラグ レイヤーには、最も強い絶対相関を生じさせたタイム ラグが表示されます。
これら 6 つのレイヤーを一緒に使用すると、各位置で一次分析変数と二次分析変数がどれだけ強く相関しているかを調査し、これらの相関を生じさせたタイム ラグを特定できます。 これらの結果には空間パターンが存在することがあります。たとえば、一部の領域では他の領域よりもタイム ラグが小さかったり、相関が強かったりすることがあります。 また、同じ場所でもタイム ラグによっては、強い正の相互相関と強い負の相互相関の両方が見られることもあります。 たとえば、周期的な捕食者と被食者の関係の 2 つの時系列は、2 つの時系列のサイクルをシフトして調整したりしなかったりすることで、正または負の相関にすることができます。
グループ レイヤーで使用される 6 つのフィールドに加えて、出力フィーチャには次のフィールドが含まれます。
- Object ID および位置 ID フィールド。
- タイム ラグごとの相互相関フィールド。 タイム ラグごとに別のフィールドが作成されます。
- 位置の近傍数。 このフィールドは、計算に空間近傍を含めた場合にのみ作成されます。
トレンドをフィルターして削除し、計算に空間近傍を含めない場合、最も強い相関 (正、負、絶対) ごとに次のフィールドが作成されます。
- 相互相関の統計的な有意性をテストする p 値フィールド。
- 相互相関の 95% 信頼区間の上限と下限のフィールド。
- 相互相関が 95% の信頼度で統計的に有意である (フィールド値 1) か有意でない (フィールド値 0) かを示すバイナリ フィールド (0 または 1)。
注意:
ある位置のすべての相互相関値が正の場合、最も強い負の相関フィールドと最も強い負の相関フィールドのタイム ラグには、その位置の NULL 値が含まれます。 同様に、ある場所での負の相関はすべて、最も強い正の相関フィールドに NULL 値を生成します。
入力時空間キューブは分析の結果で更新され、[時系列の相互相関結果] の表示テーマ オプションを備えた [時空間キューブを 2D で視覚化 (Visualize Space Time Cube in 2D)] ツールを使用して、出力フィーチャクラスとグループ レイヤーを再作成できます。 相互相関結果の分析変数の名前は、一次分析変数と二次分析変数の間にアンダースコアを付けたものになります。 たとえば、入力変数の名前が MARKETING と SALES の場合、結果を含む分析変数の名前は MARKETING_SALES となります。
ポップアップ チャート
[時系列ポップアップの有効化] パラメーターをオンにすることで、出力フィーチャ上に対話形式のポップアップ チャートを作成できます。 作成された場合、[探索] ツールを使用してフィーチャをクリックすると、各タイム ラグの相互相関のバー チャートと、一次分析変数と二次分析変数を示すライン チャートを表示できます。
バー チャートのいずれかのバーの上にカーソルを移動すると、以下の時系列は関連するタイム ラグに基づいてシフトします。 これにより、さまざまなタイム ラグの後で 2 つの時系列がどのように配置されるかを確認できます。
トレンドをフィルターして削除し、かつ空間近傍を含まない場合、ポップアップ チャートには各タイム ラグの相互相関の周囲に 95 パーセントの信頼区間 (水色の陰影) が表示されます。 トレンド除去およびフィルターされた時系列を表示 チェックボックスを使用して、生の時系列値を表示したり、フィルタリング後およびトレンド削除後の時系列を表示したりすることもできます。
注意:
空間近傍を計算に含めた場合、タイム ラグのバー チャートのみが表示されます。 各ポップアップ チャートにあまりにも多くの時系列が描画されないようにするためです。
出力フィーチャがシェープファイル (*.shp) として保存された場合、ポップアップ チャートは作成されません。
出力相関テーブル
必要に応じて、[出力ラグ相関テーブル] パラメーターを使用し、相互相関結果をテーブルとして保存できます。 テーブルの各行には、単一の位置と単一のタイム ラグの相互相関が含まれています。 テーブル内の行数は、位置の数とタイム ラグの数を乗算したものに等しくなります。 さらに、トレンドをフィルターして削除し、空間近傍を計算に含めない場合、p 値と 95 パーセントの信頼区間の上限と下限のフィールドがテーブルに含まれます。 多くの場合、相互相関結果のエクスポートと分析には、情報を (出力フィーチャのフィールドとしてではなく) テーブルとして行単位で保存するほうが便利です。 今後の分析のために、テーブルを位置に結合することもできます。
空間近傍を計算に含める場合は、[出力ペアリング済み相関テーブル] パラメーターを使用して、すべてのタイム ラグにおける各フォーカル位置と各近傍間の比較を含むテーブルを作成することもできます。 たとえば、10 個の位置、5 個のタイム ラグ、位置あたり 7 個の近傍がある場合、出力表には 10*5*(7+1)=400 行が表示されます (フォーカル位置とそれ自体との比較を含めるために 1 が追加される)。 組み合わせごとに、関連する相互相関がフィールドとして保存されます。 トレンドをフィルターして削除すると、p 値と 95 パーセントの信頼区間の上限と下限のフィールドもテーブルに含まれます。
ジオプロセシング メッセージ
このツールは、ツールの結果に関する情報を含む複数のメッセージを提供します。 これらのメッセージは 2 つのセクションに分かれています。
[入力時空間キューブの詳細] セクションは、時間ステップの間隔、時間ステップの数、位置の数、および時空間ビンの数に関する情報と共に、入力時空間キューブのプロパティを表示します。 この 1 番目に表示されるプロパティは、キューブがどのように作成されたかによって決まるため、キューブごとに情報が変わります。
[タイム ラグによる相関のサマリー] セクションには、すべてのタイム ラグについて、すべての位置の相互相関の統計サマリーのテーブルが表示されます。 タイムラグごとに、テーブルにはすべての位置の相互相関の最小、最大、平均、標準偏差、および個数が表示されます。 トレンドをフィルターして削除し、かつ空間近傍を含まない場合、テーブルには各タイムラグの統計的に有意な相互相関を含む位置の数も含まれます。 これらの統計サマリーを使用すると、多くの位置で強い相関があった個々のタイム ラグをすばやく特定できるため、個々の位置の結果の調査では気付かなかったパターンが明らかになる可能性があります。
チャート
最も強い相関 (正、負、および絶対) のタイム ラグを表示する 3 つのレイヤーにはそれぞれ、タイム ラグごとに最も強い相関があった位置の数を表示するバー チャートが含まれています。 たとえば、以下の図では、ほとんどの位置でタイム ラグ 0 の最も強い絶対相関が見られます。これは、ほとんどの位置で 2 つの時系列間に遅延が推定されていないことを意味します。
相互相関の式
特定のタイム ラグに対して、2 つの時系列間の相互相関の式は次のとおりです。
- k はタイム ラグです。
- t は時間ステップです。
- T は各時系列の時間ステップ数です。
- X(t) は時間ステップ t の一次分析変数の値です。
- Y(t) は時間ステップ t の二次分析変数の値です。
- x̄ は一次分析変数の平均値です (すべての時間ステップを使用)。
- Ȳ は二次分析変数の平均値です (すべての時間ステップを使用)。
分子と分母は、より大きなタイム ラグに対するバイアスを補正するために、合計の項の数で除算されます。
フィルタリングとトレンド除去モデルの適合
時系列からトレンドをフィルターおよび除去した場合、タイム ラグが発生して相互相関を計算する前に、一次および二次分析変数に対して以下の前処理ステップが実行されます。
- 最小二乗法 (OLS) 回帰モデルは、前の値から一次分析変数の次の値を予測するために作成されます。 モデルでは、各時間ステップは次の時間ステップの値を予測するための説明変数として使用されます。
- 前の 2 つの値から一次分析変数の次の値を予測する 2 番目の OLS モデルが作成されます。 たとえば、最初の 2 つの時間ステップは 3 番目の時間ステップを予測するために使用されます。 2 番目と 3 番目の時間ステップは 4 番目の時間ステップを予測するために使用されます。
- さらに 3 つの OLS モデルが、それぞれ 3 つ、4 つ、および 5 つの前の値を使用して作成され、一次分析変数の次の値が予測されます。
- 高速フーリエ変換 (FFT) 一次変数の季節性を推定するために使用され、6 番目の OLS モデルはこの時間ステップ数を使用して次の値を予測します。
- 6 つの OLS モデルごとに AICc 値が計算され、値が最も低いモデルがフィルタリングとトレンド除去モデルとして選択されます。
- 選択したモデルの係数を使用して、一次分析変数の残差が計算され、これらの残差が新しい一次変数になります。 残差はランダムなホワイト ノイズを表示すると期待されるため、このステップは多くの場合、一次変数のプレホワイトニングと呼ばれます。
- 二次変数の値に係数を適用することによって二次分析変数の残差が計算され、これらの残差が新しい二次変数になります。 このステップは、多くの場合、二次変数のフィルタリングと呼ばれます。 係数は一次変数から推定されたものであるため、二次変数の残差には (ランダムなホワイト ノイズではなく) トレンドや自己相関が含まれると期待されます。
- 各位置についてこの処理が個別に繰り返されます。 空間近傍が使用される場合、この処理はフォーカル位置の一次変数と各近傍 (およびそれ自体) の二次変数に対して実行されます。
注意:
フィルタリングとトレンド除去の処理により、ステップ 5 で選択した OLS モデルで説明変数として使用される時間ステップの数だけ各時系列の長さが短縮されます。 たとえば、次の値を予測するために 3 つの時間ステップが使用される場合、各時系列の最初の 3 つの時間ステップについて残差を計算することはできません。
参考文献
Brockwell, P. J., and Davis, R. A. (2002). Introduction to Time Series and Forecasting. New York, NY: Springer New York. https://doi.org/10.1007/978-3-319-29854-2.
Chan, K.S. and Cryer, J.D. (2008). Time Series Analysis With Applications in R. New York, NY: Springer New York. https://doi.org/10.1007/978-0-387-75959-3.