통계/시계열 모형11 [Change Point Detection] 1. CUSUM(Cumulative Sum) 알고리즘에 대해서 알아보자 with Python 이번 포스팅에서는 Change Point Detection 알고리즘의 하나인 CUSUM(CUmulative SUM) 알고리즘에 대한 개념을 알아보고자 한다. 또한 파이썬(Python)으로 구현하는 과정과 예제를 통하여 알고리즘의 작동 원리를 살펴보고자 한다. - 목차 - 1. CUSUM 알고리즘 2. 파이썬(Python) 구현 3. 장단점 1. CUSUM 알고리즘 1) 문제 정의 CUSUM 알고리즘이 풀고자 하는 문제는 시계열 내에 급격한 변경점이 없다는 가설 $H_0$와 하나의 변경점이 있다는 가설 $H_a$을 세우고 $H_0$과 $H_a$ 중에 어떤 것을 선택해야 하는 문제가 있다. 이 문제만 해결되면 변경점은 자연스럽게 추정할 수 있다. 이를 구체적으로 살펴보자. 먼저 시계열 데이터 $X_t, t=.. 2023. 1. 2. [시계열 분석] 10. Phillips-Perron Test(검정) with Python 이번 포스팅은 단위근 검정의 한 방법으로 (Augmented) Dickey-Fuller(ADF)와 쌍벽을 이루는 Phillips-Perron Test(검정)에 대해서 알아본다. 그리고 파이썬을 이용하여 샘플 데이터를 통한 예제도 알아보고자 한다. 이번 포스팅에서 다룰 내용은 다음과 같다. 1. Phillips-Perron Test(검정) 2. Python 예제 - Phillips-Perron Test(검정) 본 포스팅에서는 수식을 포함하고 있습니다. 티스토리 피드에서는 수식이 제대로 표시되지 않을 수 있으니 PC 웹 브라우저 또는 모바일 웹 브라우저에서 보시기 바랍니다. 1. Phillips-Perron Test(검정) 1.1 정의 다음과 같은 시계열이 있다고 하자. $$\Delta X_t = c_t +.. 2022. 4. 18. [시계열 분석] 9. (Augmented) Dickey-Fuller Test(검정) with Python 이번 포스팅에서는 단위근 검정을 위한 대표적인 방법으로 Dickey-Fuller Test(검정)과 이를 확장한 Augmented Dickey Fuller Test(검정)에 대한 내용을 알아본다. 또한 Python(파이썬)을 이용하여 (Augmented) Dickey-Fuller Test(검정)을 어떻게 수행하는지 알아본다. 본 포스팅을 보기에 앞서 지난 포스팅에서 다룬 단위근 검정과 Dickey-Fuller Test에 대한 기본적인 내용을 읽으면 좋다. 여기서 다루는 내용은 다음과 같다. 1. Dickey-Fuller Test(검정) 2. Augmented Dickey-Fuller Test(검정) 3. (Augmented) Dickey-Fuller Test(검정) 장단점 4. Python 예제 본 포스팅.. 2022. 4. 14. [시계열 분석] 8. Random Walk와 단위근 검정(Unit Root Test)에 대해서 알아보자. 이번 포스팅에서는 비정상(Non-stationary) 시계열 중 하나인 Random Walk 시계열에 대해서 포스팅하려고 한다. 여기서 다루는 내용은 다음과 같다. 1. Random Walk 란? 2. 단위근 검정(Unit Root Test) 1. Random Walk 란? 1.1 정의 시계열 데이터 $X_t$가 아래와 같은 모형을 따른다고 해보자. $$X_t = X_{t-1}+Z_t\tag{1.1}$$ $$X_t = \mu+ X_{t-1}+Z_t\tag{1.2}$$ 여기서 $Z_t$는 평균이 0이고 분산은 $\sigma^2$인 백색 잡음(White Noise)이며 $X_0$는 초기값으로 실수값으로 간주하자. 또한 $\mu=E(X_t-X_{t-1})$이다. 이때 식 (1.1)을 Random Walk 모형.. 2021. 9. 24. [시계열 분석] 7. ARMA 모형에 대해서 알아보자 with Python 이번 포스팅에서는 자기 회귀 모형(Autoregressive Model)과 이동 평균 모형(Moving Average Model)을 결합한 ARMA 모형에 대해서 알아보려고 한다. 1. ARMA란? 2. ARMA 모형 추정 3. 예측(Forecasting) 4. 파이썬 예제 1. ARMA란? - 정의 - 시계열 데이터 $X_t$가 정상성을 만족하고 $ARMA(p, q)$ 모형을 따른다고 한다면 아래의 관계식을 만족한다. $$X_t = c + \sum_{i=1}^p\phi_iX_{t-i} + Z_t - \sum_{i=1}^q\theta_iZ_{t-i} \tag{1.1}$$ 여기서 $Z_t$는 정규분포를 따르는 백색 잡음이다. 즉, $Z_t \text{ i.i.d. } \sim N(0, \sigma^2)$ .. 2021. 9. 18. [시계열 분석] 6. 이동 평균 모형(Moving Average Model) 적합하기 with Python 이번 포스팅에서는 이동 평균 모형(Moving Average : MA)에 대해서 알아보고 파이썬으로 구현해보고자 한다. 또한 statsmodels를 이용하여 이동 평균 모형을 적합하는 방법도 알아보겠다. 1. 이동 평균 모형이란 무엇인가? 2. 언제 사용하는가? 3. 모형 추정 방법 4. 예측(Forecasting) 5. 예제 1. 이동 평균 모형이란 무엇인가? 정상성(Stationary)을 갖는 시계열 데이터 $X_t$와 백색 잡음(White Noise) $Z_t$에 대하여 $q$차 이동 평균 모형 $MA(q)$는 다음과 같이 정의한다(백색 잡음의 정의는 여기를 참고하자). $$X_t = c + Z_t + \theta_1Z_{t-1} + \cdots + \theta_qZ_{t-q}\tag{1-1}$$ .. 2021. 8. 20. [시계열 분석] 5. 자기 상관 함수(Autocorrelation Function : ACF)과 부분 자기 상관 함수(Partial Autocorrelation : PACF) with Python 이번 포스팅에서는 자기 상관 함수(Autocorrelation Function : ACF)와 부분 자기 상관 함수(Partial Autocorrelation Function : PACF)에 대하여 알아보고 파이썬을 이용하여 이를 구하는 방법을 살펴보고자 한다. 1. 자기 상관 함수 2. 부분 자기 상관 함수 3. 예제 1. 자기 상관 함수 - 정의 - 시계열 데이터 $Y_t, Y_{t-1}, \ldots, Y_1$이 있다고 하자. 이때 자기 상관 함수는 다음과 같이 정의된다. $$\gamma (r, s) = \frac{Cov(Y_r, Y_s)}{\sqrt{Var(Y_r)Var(Y_s)}}\tag{1-1}$$ 여기서 $Cov(X, Y) = E(XY) - E(X)E(Y)$, $Var(X) = E(X^2)-E.. 2021. 7. 31. [시계열 분석] 4. 자기 회귀 모형(Autoregressive Model) 적합하기 with Python 이번 포스팅에서는 시계열 모형 중 하나인 자기 회귀 모형(Autoregressive Model : AR)에 대해서 알아보고 파이썬으로 구현해보고자 한다. 또한 statsmodels을 사용하여 자기 회귀 모형을 추정하거나 예측하는 방법에 대해서도 소개한다. 1. 자기 회귀 모형이란 무엇인가? 2. 언제 사용하는가? 3. 모형 추정 방법 4. 예측(Forecasting) 5. 예제 6. 장단점 1. 자기 회귀 모형이란 무엇인가? 자기 회귀 모형을 정의하기 이전에 백색 잡음의 정의를 알아보자. - 백색 잡음 - 정상성을 가지는 시계열 $Z_t , t=1, \ldots, n$ 에 대하여 $E(Z_t) = 0$, $\gamma_Z(h) = E(Z_tZ_{t-h})$라 하자. 이때 $\gamma_Z(h) = \si.. 2021. 4. 9. [시계열 분석] 3. (General) Durbin-Watson 검정 with Python 시계열 모형(특히 최소 제곱법으로 구한 모형)에서 오차의 독립성이 만족하지 않는다면 모형 파라미터의 정확성(편의 발생)이 떨어지고 예측구간의 신뢰성 또한 보장되지 않는다. 따라서 모형을 추정한 후 오차의 독립성을 만족하는지 확인해봐야할 것이다. 독립성을 만족하지 않는다면 오차는 종속성을 갖는다고 볼 수 있다. 시계열 데이터에서 오차는 종종 자기 상관(Autocorrelation)이라는 형태로 종속성을 갖게된다. 따라서 오차의 자기 상관 여부를 검정하는 방법이 필요하다. 이번 포스팅에서는 오차의 자기 상관 존재 여부를 통계적으로 검정하는 Durbin-Watson 검정을 소개한다. 여기서 다루는 내용은 다음과 같다. 1. Durbin-Watson 검정 2. Generalized Durbin-Watson 검정.. 2021. 3. 21. [시계열 분석] 2. 최소 제곱법을 이용한 시계열 분석 with Python 이번 포스팅에서는 기존 최소 제곱법을 이용하여 시계열 데이터를 분석하는 방법과 파이썬(Python)으로 구현하는 방법에 대해서 알아보고자 한다. 여기서 다루는 내용은 다음과 같다. 1. 선형 추세 분석 2. 계절성을 가진 데이터 분석 1. 선형 추세 분석 시계열 데이터 $(Y_t : t=1, \ldots, n)$가 주어졌다고 하자. 이때 $y_t$에 대하여 다음과 같은 가정을 해보자. $$Y_t = \mu_t + X_t$$ 여기서 $\mu_t$는 Deterministic Trend(시간 $t$에 대한 함수라고 생각하자)이고 $X_t$는 평균이 0이고 분산이 $\sigma^2$인 IID(Indepedent and Indentical Distributed) Process이다. - 추정 방법 - 시계열 데이터.. 2021. 2. 24. 이전 1 2 다음