시계열분석002
+ 이나스AI에는 인공지능 관련 다양한 강의가 있습니다.
- Object detection, Text To Speech, Reinforcement learning, OCR, Chatbot, Time series prediction,
- Meta learning, eXplainable AI, Transformer/BERT/GPT, Graph-based ML, etc
- 소스코드, 다이어그램 및 중간데이터에 기반하여 인공지능 알고리즘들의 작동원리와 구조를 이해하기 쉽고 정확하게 설명합니다.
+ 작업할 때 켜놓는 라이브 스트리밍 study with me 채널도 운영하고 있습니다.
1. 시계열의 정의
- 시계열은 시간에 따라 관측된 데이터이다.
- 주로 아래와 같이 표현한다.
1) 시계열의 확률변수 표현
$$$Y_t \;\; (t=1,2,3)$$$
2) 시계열 데이터 나열 표현
$$$Y_1=100, Y_2=102, Y_3=105, \dots$$$
3) 시계열 표 표현
시점 | 데이터 |
---|---|
$$$Y_1$$$ | 100 |
$$$Y_2$$$ | 102 |
$$$Y_3$$$ | 105 |
... | ... |
- 횡단면 데이터, 시계열 데이터, 종단면 데이터, 패널 데이터의 개념은 아래와 같다.
1) 횡단면 데이터 (cross-sectional data)
- 동일한 시간과 동일한 기간에 여러 변수에 대하여 수집한 데이터이다.
2) 시계열 데이터 (time-series data)
- 시간의 흐름에 따라 관측된 데이터이다. 주로 하나의 관측 대상을 가리킨다. 예를 들어, 시간에 따른 가스사용량이 시계열 데이터가 될 수 있다.
3) 종단면 데이터 (longitudinal data)
- 시계열 데이터와 유사하게 시간에 따라 관측된 데이터를 말한다. 보통 관측대상이 2개이상인 경우를 가리킨다. 예를 들어, 한달동안 걸음수와 근무시간에 따른 혈압 변화 또는 혈압 개선 여부 등이 종단면 데이터가 될 수 있다.
시점 | 관측1(걸음수) | 관측2(근무시간) | 관측3(수축기혈압) |
---|---|---|---|
1일 | 5010 | 7 | 121 |
2일 | 4133 | 9 | 134 |
3일 | 8402 | 10 | 122 |
... | ... | ... | ... |
4) 패널 데이터 (panel data)
- 횡단면 데이터와 종단면 데이터가 모두 포함되어있는 데이터이다.
시점 | 제과점 | 카스테라 가격 | 단팥빵 가격 |
---|---|---|---|
2020년 | A | 1000 | 800 |
2020년 | B | 1200 | 700 |
2021년 | A | 1100 | 800 |
2021년 | B | 1100 | 800 |
2022년 | A | 1200 | 1000 |
2022년 | B | 1200 | 800 |
- 우리는 시간에 종속되어있기때문에 사실상 모든 데이터는 시계열 데이터이다. 하지만, 일반적으로 시계열 데이터라고 하면, 같은 시간 간격으로 안정적으로 관측된 데이터를 의미한다.
2. 시계열 도표
- 시간의 경과에 따라 시계열 값이 변화하는 패턴을 그림으로 표현한 것이며, 시계열 자료가 가지는 특징 (상승하는지, 주기가 있는지 등) 을 알기 쉽게 해준다.
- 아래는 국내총생산(시장가격 GDP)를 1970년 부터 2022년 까지 매분기 (1분기, 2분기, 3분기, 4분기) 로 나타낸 것이다. x축 레이블은 편의상 1분기 시점에만 표시했다.
3. 시계열의 변동요인
- 시계열 데이터는 주파수 영역 정보 (frequency domain information)과 시간 영역 정보 (time domain information) 를 가지고 있다.
- 시계열 데이터가 변화하게 만드는 요인은 크게 4가지 종류가 있다.
1) 추세 변동 (trend) : 10년 이상 되는 주기의 발생 (인구변화, 기술변화 등) 으로 시계열 데이터가 변화한다.
2) 순환 변동 (cycle) : 2년에서 5년 정도 되는 주기가 발생 (경기 순환 등) 해서 시계열 데이터를 변화하게 한다.
3) 계절 변동 (seasonality) : 1년 내에서 주기가 발생함으로써 (계절 변화, 요일 구성 변화 등) 시계열 데이터를 변화시킨다.
4) 불규칙 변동 : 발생 주기가 불분명한 사건들 (태풍, 파업 등) 이 시계열 데이터를 변화 시킨다.
- 시계열 데이터는 위의 변동요인들이 승법형 (multiplicative), 가법형 (additive) 또는 로그가법형 등으로 결합되는 방식으로 모델링 또는 표현 된다.
1) 시계열을 변동요인의 승법모형으로 모델링
$$$Y_t=T_t+C_t+S_t+I_t$$$
2) 시계열을 변동요인의 가법모형으로 모델링
$$$Y_t=T_t \times C_t \times S_t \times I_t$$$
3) 시계열을 변동요인의 승법모형으로 모델링
$$$\ln{Y_t}=\ln{T_t} + \ln{C_t} + \ln{S_t} + \ln{I_t}$$$
$$$Y_t$$$ : 시계열 데이터
$$$T_t$$$ : 추세 변동 (trend)
$$$C_t$$$ : 순환 변동 (cycle)
$$$S_t$$$ : 계절 변동 (seasonality)
$$$I_t$$$ : 불규칙 변동
4. 안정 (stationary) 시계열과 불안정 (nonstationary) 시계열
- 안정 시계열은 시계열의 임의의 구간을 잡았을 때, 매 구간별로 그 특성 (평균, 표준편차 등) 이 동일한 시계열이다.
- 대부분의 시계열 모형들이 안정시계열을 대상으로 만들어져있다.
- 하지만 대부분의 시계열들은 임의의 구간을 잡았을 때, 매 구간별로 그 특성이 다른 불안정 시계열이다.
- 따라서, 불안정 시계열에 차분 (1차 차분 또는 2차 이상의 차분, 보통 많으면 2차 차분까지 함) 을 수행하여 불안정 시계열을 안정시계열로 변환하는 작업을 하게 된다.
- 아래 그림에서 1번 그림은 안정 시계열의 모습을 나타낸다. 2번그림은 주기와 분산은 일정하지만 평균이 시간에 따라 달라지고 있으므로 불안정 시계열이다. 3번 그림은 주기와 평균은 구간별로 비슷하지만, 시간에 따라 분산이 다르므로 불안정 시계열 이다. 4번 그림은 평균과 분산은 시간에 따라 일정하지만, 주기가 다르기때문에 불안정 시계열이다.
Source
5. 차분
- 차분 (differencing) 은 현재 시점 (t) 의 데이터에서 인접 시점 (t-1 또는 t+1 등) 의 데이터를 뺄셈하는 것이며, 해당 인접 대비 증감을 나타낸다.
- 차분은 추세 (trend) 가 있는 시계열에서 추세가 없는 시계열로 변환하게 해준다. 추세 변동요인이 제거되었으므로, 해당 시계열에는 순환변동, 계절변동, 불규칙 변동만 남게 되고, 이러한 주기적 요인에 대해 분석을 하고 예측을 하게 된다. 주기적 관점에서 예측을 했다면, 추세적 관점에서 예측도 따로 수행하여, 추세적 관점의 예측과 주기적 관점의 예측을 결합하여 최종 시계열의 예측값을 산출한다.
- 1차 차분은 아래와 같이 정의 된다.
$$$\Delta Y_t = Y_t - Y_{t-1}$$$
- 때로는, 전기 대비 차분 또는 계절 차분을 하게 된다. 왜냐하면, 난로 판매량을 예로들면, 겨울철에 난로 판매량과 인접 시점인 가을철의 난로 판매량의 증감을 보는것보다 이전 년도의 겨울철의 난로 판매량과의 증감을 보는것이 더 큰 의미가 있기 때문이다. 계절 차분은 아래와 같이 표시한다.
$$$\Delta^{4} Y_t = Y_t - Y_{t-4}$$$
- 차분을 하면, 시계열의 추세변동을 없애주어 안정 시계열에 가깝게 만들어주는 장점이 있지만, 단기적 변동을 증폭시키는 단점이 있다.
- 시계열에서 증감률을 구할 때가 있다. 시계열을 로그 변환한 뒤, 차분을 한 수식과 증감률 수식은 근사적으로 같아지므로, 증감률도 일종의 차분이라고 볼 수 있다.
$$$\log{Y_t}-\log{Y_{t-1}} = \log{\dfrac{Y_t}{Y_{t-1}}}$$$
$$$= \log{(1+ \dfrac{Y_t-Y_{t-1}}{Y_{t-1}})}$$$
테일러 전개 (taylor expansion) 으로 아래와 같이 표현 할 수 있다
$$$\simeq \dfrac{Y_t - Y_{t-1}}{Y_{t-1}}$$$
- 전기 대비 증감률은 아래와 같이 구한다.
$$$G_t = \dfrac{Y_t-Y_{t-1}}{Y_{t-1}} \times 100$$$
- 전년 같은 분기 끼리 증감률은 아래와 같이 구한다.
$$$G_t = \dfrac{Y_t-Y_{t-4}}{Y_{t-4}} \times 100$$$
6. 시계열 평활화
- 시계열에서 짧은 주기요인 (순환 변동, 계절 변동, 불규칙 변동) 을 제거하기 위해 평활화 방법을 사용할 수 있다. 짧은 주기요인이 제거되면 시계열에는 추세 변동 (trend) 만 남게 된다.
- 중심화 이동평균은 단기 변동요인을 시차 구조 변경없이 제거할 수 있는 방법이다. 아래와 같이 표시 할 수 있다.
$$$Y_t = \dfrac{1}{2l+1} \sum\limits_{j=-l}^{l} Z_{t+j}$$$
$$$= \dfrac{1}{2l+1} ( Z_{t-l} + Z_{t} + Z_{t+l} )$$$
$$$l$$$ : 인접 시점과의 거리
- 3기 중심화 이동평균은 아래와 같이 표현 된다.
$$$= \dfrac{1}{3} ( Z_{t-1} + Z_{t} + Z_{t+1} )$$$
- GPD 의 원계열과 3기 중심화 이동평균의 시계열 도표는 아래와 같다. 원계열은 1분기, 2분기, 3분기, 4분기따라 계절성이 있는 반면, 3기 중심화 이동평균이 적용된 시계열은 이러한 단기변동이 축소되고 주로 추세 변동이 남았음을 확인할 수 있다. 4기 또는 5기 이상의 중심화 이동평균을 사용하면, 단기변동의 축소정도가 더 커지게 된다.
$$$Y_t = \dfrac{1}{m} \sum\limits_{j=0}^{m-1} Z_{t-j}$$$
$$$\dfrac{1}{3} (Y_{t-2} + Y_{t-1} + Y_t)$$$
- 가중 이동편균은 시점별로 가중치를 달리 적용하여 평균화 하는 방법이다. 최근 시점의 관측값에 더 큰 가중치를 주려면 아래와 같은 예시처럼 사용하면된다.
$$$\dfrac{1}{3} (0.2Y_{t-2} + 0.3Y_{t-1} + 0.5Y_t)$$$
- 이동평균을 다시 이동평균하는 이중 이동평균 방법을 사용할 수도 있다.
+ 이나스AI에는 인공지능 관련 다양한 강의가 있습니다.
- Object detection, Text To Speech, Reinforcement learning, OCR, Chatbot, Time series prediction,
- Meta learning, eXplainable AI, Transformer/BERT/GPT, Graph-based ML, etc
- 소스코드, 다이어그램 및 중간데이터에 기반하여 인공지능 알고리즘들의 작동원리와 구조를 이해하기 쉽고 정확하게 설명합니다.
+ 작업할 때 켜놓는 라이브 스트리밍 study with me 채널도 운영하고 있습니다.
댓글
댓글 쓰기