L
o
a
d
i
n
g
.
.
.

ホーム

お知らせ

製品・ソリューション

サービス

導入事例・パートナー

EXEM Academy・ブログ

会社情報

採用情報

2023.06.21

Chapter 2-3. 基礎時系列分析

Chapter 2-3. 基礎時系列分析

この章では、時系列分析でよく出てくる用語知っておくべき概念を簡単にまとめてみたい。

確率過程(Stochastic Process)

確率過程は確率変数の数列であるつまり、{Y(t)、t = 0、±1、±2、…}の形で表すことができ時系列データを理解するには、Y(t)の結合確率分布を分析する必要がありますなぜなら一般的な時系列データは独立ではないので結合確率分布を各確率変数の分布に分解することができないからであるしかし平均と分散を分析すると、結合確率分布の多くの部分を理解することができます 

平均、分散、共分散、相関係数

前の章1.基礎線形代数と統計学で簡単に紹介した概念を数式で調べましょう。平均分散は、その時点の確率変数の平均分散です。

μt=EYt)t=0±1±2

σt2=VarYt)t=0±1±2

共分散、相関係数は、他の時点の確率変数との関連性を表します。

γts=CovYtYs)ts=0±1±2

ρts=CovYtYs)ts=0±1±2

そして、次の2つの式は時系列の相関性を分析する際によく使われるのでよく知っておきましょう。

Covi=1mCiYtij=1ndjYsj)=i=1mj=1ncidjCovYtiYsj)

Vari=1nCiYti)=j=1nci2VarYti)+2i=2nj=1i1cicjCovYtiYsj)

ホワイトノイズ

白色雑音過程は、何のパターンもなくランダムに振動する確率過程であるすなわち以下を満たす確率過程である開発したモデルが正しくモデル化されているかどうかを分析するときは残差がホワイトノイズに従うことを確認する必要がありますもはやモデルに追加すべきパターンがデータにないという意味だからだ

ett=012whereetiidN0σ2)

上記の式でiidとは、identical and independentの略で、white noise同士は独立しており(互いに線形/非線形的な関係がない)、互いに同じ分布に従うことを意味する。

White Noise [ソース]: https://velog.io/@euisuk-chung/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D%EC%8B%9C%EA%B3%84%EC%97%B4-AR-MA-ARMA-ARIMA%EC%9D%98-%EB%AA%A8%EB%93%A0-%EA%B2%83-%EA%B0%9C%EB%85%90%ED%8E%B8

白色雑音過程の平均、分散、共分散は次の通りである。 平均と分散は各時点で一定であり、共分散はゼロであることがわかります。.

et=0

γt,x=σ2ift=selseγt,s=0

ρt,s=1ift=selseρt,s=0

実際にグラフを見ても、ほとんどのデータはゼロ付近の値を持っています。 分散度一定で値が変動しても一定値内で振動する。

Random Walk

Random Walkは、現在の視点データは、以前の視点データに現在のランダム誤差が加わって生成されたと判断されたときに使用できる確率過程である。 つまり、次の2つの式と同じです。

Yt=Yt1+etwhereetiidN(0,σ2)forallt=0,1,2,...

Yt=i=1tei

ランダムウォークプロセスの平均、分散、共分散は次のとおりです。

E(Yt)=0

γt,s=Cov(i=1teij=1sej)=tσ2,1ts

ρt,s=tσ2tσ2tσ2=ts,1ts

式を解釈すると平均はゼロに一定であり、分散は時点tが大きくなるほど大きくなる。 そして、視差が小さいほど高い線形相関を示すが、大きくなるほど相関は低くなる。 実際に下のグラフを見ると、視点が1000になるほど分散が大きくなり平均である0から遠くなることが分かる。 後に学ぶが、Random Walkは異常時系列だ。

Random Walk [ソース]: https://machinelearningmastery.com/gentle-introduction-random-walk-times-series-forecasting-python/

時系列データの特徴

정상성(Stationarity)

正常性は時系列分析における重要な概念ですデータが正常性を満たさない場合時系列は異常時系列(Non-Stationary Time Series)になり、時系列分析を実行できません正常性を満たさないデータは、正常性を満たすように前処理しなければ分析を行うことができない正常性の概念は大きく2つあります最初はStrict StationarityですStrict Stationarityの定義は次のとおりです

ΠYt1Yt2Ytn1Ytn)=ΠYt1kYt2kYtn1kYtnk)


視差 k と視点

t1t2tn

をどのように選択しても、結合確率分布が常に一定でなければならないという意味である。そうして観測された部分時系列だけを利用して全体確率過程に対する推論ができるからだ。しかし、strict stationarityを見ることは容易ではないので、これに似ていますが、数学的に弱くなったweak stationarity仮定ができました。Weak stationarityは、次の2つの条件を満たすと成立します。

μt=cforalltimet

γttk=γ0kforalltimetk

平均が一定で、共分散が時差のみに依存すると、weak stationarity時系列です。 一般的に言うstationarityはweak stationarityを意味する。 代表的な正常時系列は白い雑音プロセスである。

トレンドと季節性、サイクル

トレンドは、時系列が短期的または長期的に見える傾向を意味し、季節性は一定の頻度を持ち、繰り返し表示されるパターンを意味します。 一方、周期とは、一定の頻度を持たずに繰り返し現れるパターンを意味する。 アイスクリームの販売量のような場合は、一般的に夏に高く冬に低くなるので、1年間隔の季節性と見なすことができる。 一方、景気循環は繰り返されますが、好況と不況は一定の間隔を持たず、周期と見なすことができます。 時系列は、トレンド、季節性、周期、ランダムノイズの合計として見るか、それぞれに分解できます。

Y(t)=T(t)+S(t)+C(t)+et

XAIOpsの長期負荷予測モデルは、単一のモデルを使用せず、時系列を各成分に分解し、各成分ごとにモデルを作成して予測後に再統合する方式を使用しています。 各成分を予測する際に回帰分析や時系列モデルを活用して進めてもよい。

正常時系列(Stationary Time Series)

移動平均コース(Moving Average Process)

現在の誤差が過去の誤差と相関している場合以下の移動平均過程でモデル化することができる。

Yt=etΘ1et1Θ2et2Θtqetq

q1、2、そして一般化されたkのときにどのような特徴を持つかを見てみましょう

q=1であればモデル化でき、MA(1)確率過程の特徴は次の通りであるここで共分散相関係数はk = 1の場合にのみ成立しその他の場合にはすべて0である  

EYt)=0

VarYt)=1+Θ2)σ2

CovYtYt1)=Θσ2

CorYtYt1)=Θσ21+Θ2)σ2=Θ1+Θ2)


一次移動平均過程は平均がゼロに一定であり、共分散が時点によって変わらないので正常確率過程である。
そして時差が1の場合には線形相関があり、それ以降はない。

pk=0k2

平均がゼロの理由は確率変数

Yt

確率コース{

Yt

平均を引いたものと仮定するからです。


q = 2の場合

Yt=etΘet1Θet2

でモデル化でき、確率過程の特徴は以下の通りである。

EYt)=0

VarTt)=1+Θ12+Θ22)σ2

CovYtYt2)=CovetΘ1et1Θ2et2et1Θ1et2Θ2et3)=Θ1+Θ2Θ1)σ2

CovYtYt2)=CovetΘ1et1Θ2et2et2Θ1et3Θ2et4)=Θ2σ2

CorrYtYt1)=Θ1+Θ2Θ1)1+Θ12+Θ22)

CorrYtYt2)=Θ21+Θ12+Θ22)

二次移動平均過程MA(2)も平均が0で一定であり、共分散が時点に依存しないため、正常確率過程である。 ただし、以前とは異なり、時差が2の場合でも線形相関があり、それ以降はない。

q = kの場合を推測してみましょう。 平均がゼロで、共分散は時点に依存しないため、通常の確率プロセスです。 そして時差がkの場合までは線形相関があり、k以降からはないと推測できる。 q=kであるMA(K)確率過程の特徴は次の通りである。 証明は上記の方法と同様に進めばよい。

E(Yt)=0

Var(Yt)=(1+Θ12+Θ22+..+Θk2)σ2

ρk=Θk+Θ1Θk+1+Θ2Θk+2+...+ΘqΘk+q(1+Θ12+Θ22+...+Θk2)fork=1,2,3,...,q

이동 평균 [출처]: https://otexts.com/fppkr/MA.html

자기 회귀 과정(Auto Regressive Process)

自己回帰プロセスは、現在の値が過去のp時点以前のデータの影響を受けると判断されたときに使用できます式で表現すると、次のようになります

Yt=ϕ1Yt1+ϕ2Yt2++ϕpYtp+et

次自己回帰プロセスを見てみましょうは白色雑音過程であり現時点の誤差は過去データと独立であると仮定するp = 1の場合は次のとおりです

Yt=ϕYt1)+et

AR(1)確率過程の特徴は次の通りである

EYt)=0

VarYt)=σ21ϕ2

γk=ϕkγ0=ϕkσ21ϕ2γk=ϕγk1)

ρk=ϕk

移動平均過程と異なり、自己回帰過程では視差がより大きくなっても自己相関があることが分かるそして移動平均過程とは異なり、自己回帰過程は特定の条件を満たさなければ正常性を満足する式を再帰的に無限に使用すると現在の値は過去の時点の誤差の加重です

Yt=et+Φet1+Φ2et2+


上記の式は線形確率過程(General Linear Process)であり、

j=1Φ2j

が収束しなければ正常確率過程になることが知られている。この式を満たす範囲は

1ϕ1

である。そうでなければ、最新のデータよりも過去の視点データの重みが大きく、論理的に妥当でないモデルになるからである。


AR(2)の場合

1ϕ211ϕ1+ϕ211ϕ2ϕ11

という3つの式をすべて満足しなければ正常時系列となり、3次以上は複雑で省略する。

自己回帰モデル[ソース]: https://otexts.com/fppkr/AR.html


ARモデルのような場合は、過去の視点の値が現在の視点に連鎖的に影響を与えるため、特定の視点値間の相関を測定するには、中間視点の影響力を排除して比較する必要があります。
これを測定した関数が部分自己相関関数である。部分自己相関関数

ϕkk

は次の通りです。

ϕkk=corYtYtk|Yt1Yt2Ytk+1)


つまり、中間時点の値は与えられた値として報告されます

Yt

Ytk

間のばらつきだけ計算したのだ。

ϕkk

を計算する具体的に計算する方法は次のとおりです。


ϕkk=corYtβ1Yt1β2Yt2βk1Ytk+1Ytkβ1Ytk+1β2Ytk+2βk1Yt1)


線形回帰分析を使用してY_tに影響を与える

Yt1Yt2Ytk+1

の影響力を排除し、

Ytk

Yt1Yt2Ytk+1

に及ぼす影響力を取り除き、

Yt

Ytk

の相関だ。AR(1)モデルとMA(1)モデルの部分自己相関関数はそれぞれ次の通りである。

ϕ11=1

と仮定する。

ϕ00=0fork>1

ϕkk=Θk1Θ2)1Θ2k+1)fork1

自己相関関数はARモデルが少しずつ減少し、MAモデルは時差が過ぎると全部であった逆に、部分自己相関関数は、ARモデルが視差が過ぎると全部であるが、MAモデルは少しずつ減る

可逆性(invertibility)


ARモデルは、MAモデルの次数を無限に増やした確率過程と見なすことができる。
逆にMAモデルもARモデル形態で表すことができれば、MAモデルが可逆的であると言う。

et=Yt+Θet1)

を再帰的に使うと、次のようになる。

Et=Yt+ΘYt1)+Θ2Yt2+

AR形態で解くと次の通りである

Yt=ΘYt1+Θ2Yt2+)+et


可逆性を満たすには、-1 <

Θ

< 1 でなければならない。そうでなければ、最新の観測値が過去の観測値よりも小さい重みを持つことになるからです。

自己回帰移動平均(Auto Regressive Moving Average)プロセス

自己回帰移動平均過程は、自己回帰過程と移動平均過程の組み合わせでデータを説明するものである各過程の次数に応じてARMA(p、q)と表現するARMA(1、1)のプロセスは次のとおりです

Yt=ϕYt1)+etΘet1)


ARMA(1、1)の自己相関関数はϕ、θに依存し、ARのようにϕに従って徐々に減少することがわかり、正常性を満たす条件は−1<

ϕ

< 1 です。

ρk=1ϕΘ)ϕΘ)12Θϕ+Θ2ϕk1k1)

ARMA (p、q)は通常、正常性と可逆性を満たす必要があります

異常(Non-Stationarity)時系列

時系列データが常に正常性を満たすわけではありません異常時系列はどのような特徴を持ちどのように前処理しモデリングするか調べてみよう。


AR(1)の過程で正常性を満たすためには、-1 <ϕ < 1でなければなりません。
これを満たさない場合はどうなるか確認してみましょう。異常AR(1)コース

Yt=3Yt1+et

を考えてみましょう。式を再帰的に解いてみると、次のようになる。

Yt=et+3et1+32et2)++3t1e1)+etY0)


現在の値は過去の誤差の加重和ですが、過去の時点の誤差が現在の値に大きな影響を与え、時系列は発散します。

Yt

の特性は次の通りである。

Y0=0

と仮定しましょう。

VarYt)=σ29t18)

CovYtYtk)=3kσ29tk18)

CorYtYtk=3k9tk19t1


時間が経つにつれて分散がますます大きくなることがわかり、kがある程度大きくなっても自己相関が1に近い値であることが分かる。
もし

ϕ=1

この場合、すでに述べたランダムウォークプロセスとなる。

差分(Differencing)


差分は、異常時系列を正常時系列にする方法の一つである。
時系列

Yt=Mt+etwhereMt=Mt1+εt

形で作られたとしましょう。

Yt

はランダムウォーク

Mt

に影響を受ける異常時系列だ。一次落ち着いた時系列

Yt

は次の通りです。

YtYt1=Yt=MtMt1+etet1

Yt=εt+etet1


時系列

Yt

のAuto Correlationは

12+σε2/σe2)

として計算されます。相関が視点に依存しないので、落ち着くと正常時系列になることがわかる。

過大差分(Over-differencing)


差分をすれば正常時系列にすることができるが、必要以上の差分をすることになるとモデルに問題を起こすことになる。
Random Walk モデル

Yt=Yt1+et

を考えてみましょう。


Random Walkモデルを一次落ち着いた

Yt

はホワイトノイズとなって正常時系列である。Random Walk を二次差分すると

2Yt)=etet1

形態の一次移動平均過程となる。一次差分で正常性を既に満足しているので、あえて差分をもう一度する必要はない。二次差分をすると、むしろ不要な移動平均モデルのパラメータを推定しなければならず、移動平均モデルの可逆性が崩れることもある。差分は通常1回、最大2回程度で十分です。

自己回帰累積移動平均(ARIMA)モデル


d回の落ち着いた時系列がARMA(p、q)に従うと、元の時系列はARMA(p、d、q)に従うことになります。

dYt=ϕ1dYt1+ϕ2dYt2++ϕpdYtp+etΘ1et1Θqetq

と書くことができる。

予測(Forecasting)


現在時点tからp時点後の予測値

Yt^

(p)は次のように定義できます。

Yt^p)=EYt+p|Y1Y2Yt)

条件付きコメント値を使う理由は、数学的に予測誤差を最も最小化するからだ確率過程は様々な経路を見せることができ過去の値は複数の経路の一つが実現されたものなので、それ自体に情報があると見ることができるこの情報を使用して将来を予測することは直感的にも妥当です再帰的に予測値を求めて目標時点の予測値を計算する

AR(1)


これから

Yt

の平均がゼロではないとしましょう。もしそうなら、

Yt

を書くと次のようになる。上で紹介したAR(1)過程の平均は0と仮定したからである。

Ytμ=ϕYt1μ)+et

Yt+1

を予測する必要があるので、

Yt+1μ=ϕYtμ)+et+1

と書くことができる。条件付コメント値を求めると次のようになる。

Yt

が与えられたため、中間の条件付見解値は定数となり、将来の誤差は過去の値と独立であると仮定したからである。

EYt+1|YtYt1Y1)μ=ϕEYt|YtYt1Y1)μ)+Eet+1|YtYt1Y1)

Yt^1)μ=ϕYtμ)+Eet+1)

Yt^1)=ϕYtμ)+μ


一般化すると、

Yt^p)=μ+ϕYt^p1)μ)

になる。再帰的に計算すると、

Yt^p)

は次の通りです。

Yt^p)=μ+ϕpYtμ)


AR(1) の stationary condition は -1 <

ϕ

<1であるので、AR(1)の予測値は長期的に平均に収束することがわかる。

MA(1)

Yt

が移動平均過程であれば、次の通りである。

Yt=μ+etΘet1)

Yt^1)

を求めてみましょう。

Yt+1=μ+et+1Θet)

EYt+1|YtYt1Y1)=μ+Eet+1|YtYt1Y1)ΘEet|YtYt1Y1))


移動平均プロセスが可逆的であれば、

et

YtYt1Y1

で表現されるので定数のように扱われる。したがって、

Yt^1)

は次の通りです。

Yt^1)=μΘet)

Yt^p)

を求めてみましょう。

Yt+p=μ+et+pΘet+p1)

EYt+p|YtYt1Y1)=μ+Eet+p|YtYt1Y1)ΘEet+p1|YtYt1Y1))

Y+t^o)=μ+Eet+p)ΘEet+p1)=μ

移動平均過程はpが1より大きい場合、予測値は常に平均値となる。

ARMA(p, q)


ARMA(p,q) モデルは長期的には確率過程の平均

μ

に収束する。他にも季節性を反映した模型、条件付き二分散模型など多様な模型がある。そのモデルが捕捉しようとしているパターンを理解するときは、上記の知識が基本的な構成要素になるので、熟知してください。

次の章では、本格的に機械学習(Machine Learning)が何であるかを勉強してみましょう。機械学習の定義について学び、いくつかのアルゴリズムのトレーニングコースを勉強し、実践をしましょう。


PHP Code Snippets Powered By : XYZScripts.com