SlideShare a Scribd company logo
1 of 34
Download to read offline
2018년 07월 17일
시계열 분석 (Time Series Analysis)
타임게이트 연구소
목차
시계열 (Time Series) 이란?
시계열 (Time Series) 데이터 분해
정적(stationary) 데이터 모델링
시계열(Time Series) 활용
요약
1
2
3
4
2
5
시계열 (Time Series) 이란?
3
시계열(Time Series) 데이터
• 주가 , 환율, 거래량 변동
• 기온, 습도 변화
• 수요량, 판매량, 클릭율 변화
• 인구, 출생률 변화
4
특정 대상의 시간적 변동 기록
시계열(Time Series) 분석
• 추세 파악
- 무작위 (random)적인 잡음을 제거하여 큰 흐름 파악
• 원인 예측 및 대응
- 매출이 특정 요일에 하락하는 패턴이 보이면, 이를 극복하기
위한 방안을 마련
• 향후 전망
- 판매량 추이 전망에 따라 생산량 조절
5
시계열 데이터에서 추세 파악, 원인 예측 및 대응, 향후 전망
시계열 (Time Series) 데이터 분해
6
시계열(Time Series) 데이터 분해
7
1949년 ~ 1951년 간의 항공 탑승객의 변화
시계열(Time Series) 데이터 분해
8
정기적 변동(Seasonal), 추세(Trend), 잔여(remainder)
시계열(Time Series) 데이터 분해
9
추세 (Trend) 분해 방법
• Lowess/Loess 회귀(Regress)
- 특정 범위에 적당한 다항 회귀선들을 구하여 병합
- 다소 투박한(coarse) 추세선 : 회귀범위에 따라 달라짐
• 이동 평균 ( Moving Average)
- 특정 기간 동안의 값의 평균의 변화 ( 예: 주가의 5일/10일 이동평균)
- 부드러운 추세에 적용 가능 : 변화 주기를 알아야 함
- 조밀한 (fine-grained) 추세선
• Loess 방법으로 1차 추세 분석 후, (반복적인) 이동평균 수행
( 한가지 방법으로만 구하기도 함. )
시계열(Time Series) 데이터 분해
10
Loess 에 의한 추세선 ( 범위 = 0.25 (25%))
시계열(Time Series) 데이터 분해
11
Loess 에 의한 추세선 ( 범위 = 0.5 (50%))
시계열(Time Series) 데이터 분해
12
Loess 에 의한 추세선 ( 범위 = 0.75 (75%))
시계열(Time Series) 데이터 분해
13
Loess 범위에 따른 추세선 분해
시계열(Time Series) 데이터 분해
14
주기적 변동분 ( seasonal ) : 더하기(additive) 방식
시계열(Time Series) 데이터 분해
15
나머지 ( remainder ) : 더하기(additive) 방식
시계열(Time Series) 데이터 분해
16
주기적 변동분 ( seasonal ) : 곱하기(multiplicative) 방식
시계열(Time Series) 데이터 분해
17
나머지 ( remainder ) : 곱하기(multiplicative) 방식
정적(stationary) 데이터 모델링
1
8
정적(Stationary) 데이터
19
평균, 분산 등 통계적 특성이 변하지 않는 데이터
1) 뚜렷한 추세(trend)가 없다.
2) 시간이 지나도 분포도(분산)의 변화가 없다
예) 정규분포에서 무작위 추출 숫자
분해된 시계열 데이터의 나머지(remainder)을 정적(stationary) 모델로 대응시킴
정적(Stationary) 데이터 모델링
20
이동 평균 모델(Moving Average Model)
• 추세를 파악하기 위한 이동평균선과는 다름
• X(t) = (t 시점 event) + a_1 * (t-1 시점 event) + ….
+ a_n *(t-n 시점 event)
 예 ) x(t) = rand(t) + 0.4 * rand(t-1) : rand(t) – t 시점의 random event
 R source : random <- rnorm(num_samples,0,1)
 x_ma <- random + 0.4 * lag(random) # order 1 ma
• T 시점과 이전 시점들 사건 영향의 가중 평균
• 일반적으로 오래된 사건은 영향이 작아짐
• 몇차항(order) 까지 사용할 지를 결정필요
 영향이 큰 항 선택(자기상관성 검사 – ACF)
정적(Stationary) 데이터 모델링
21
이동 평균 모델(Moving Average Model) – ACF 검사
• 자기상관성(Auto-correlation) 검사 – acf()
• 예 ) (x(t) = rand(t) + 0.4 * rand(t-1) : rand(t) – t 시점의 random event) 의 경우
auto.arima() 함수에
의한 모델 자동 선택.
1차 ma 모델
1차 항까지가 큰 영향
0차 항외에는 큰 영향 없음
정적(Stationary) 데이터 모델링
22
자가 회귀 모델(Auto Regression Model)
• 현재값이 이전 값과 약간 차이가 난다는 가정
• X(t) = (t 시점 noise) + a_1 * x(t-1) + …. + a_n * x(t-
n)
 예 ) x(t) = noise + 0.5 * x(t-1) : x(t) – t 시점의 x의 값
 R source :
x1 <- 0.2
num_samples2 <- 100
noise <- rnorm(num_samples2, 0, 0.1 )
x_ar <- c(1:num_samples2)
x_ar[1] <- x1
for( i in c(2:num_samples2)){
x_ar[i] <- noise[i] + 0.5*x_ar[i-1] # order 1 AR
}
• T 시점의 값은 이전 특정 시점의 값의 영향
• 몇차항(order) 까지 사용할 지를 결정필요
영향이 큰 항 선택(부분 자기상관성 검사 – PACF)
정적(Stationary) 데이터 모델링
23
자가 회귀 모델(Auto Regression Model) – PACF 검사
• 자가 회귀성(Auto-regression) 검사 – pacf()
• 예 ) (x(t) = rand(t) + 0.5 * x(t-1) : x(t) – t 시점의 x값)의 경우
auto.arima() 함수에
의한 모델 자동 선택.
1차 ar 모델
소멸하는 sine() 함수 성격 1차 항 이후에는 큰 영향 없음
정적(Stationary) 데이터 모델링
24
자가회귀 이동평균 모델(Auto-Regression Moving Average Model)
• 이동평균모델(MA)와 자가회귀(AR) 모델을 연결
• X(t) = (t 시점 event) +a_1 * (t-1 시점 event) + …. +
a_n *(t-n 시점 event) +
(t 시점 noise) + a_1 * x(t-1) + …. + a_n * x(t-n)
 예 ) x(t) = rand(t) + 0.4 * rand(t-1) : rand(t) – t 시점의 random event +
noise + 0.5 * x(t-1) : x(t) – t 시점의 x의 값
 R source : x_ma_ar <- x_ma + x_ar
• 몇차항(order) 까지 사용할 지를 결정 필요
MA 부분
AR 부분
정적(Stationary) 데이터 모델링
25
자가회귀 이동평균 모델(AR MA Model) – ACF, PACF 검사
• 자기연관성(Auto-correlation)과 자가 회귀성(Auto-regression) 검사 – acf(), pacf()
• 예 ) (x(t) = rand(t) + 0.4*rand(t-1) + 0.5 * x(t-1) ) 의 경우
auto.arima() 함수에
의한 모델 자동 선택.
1차 ma 모델
1항 이후 큰 영향 없음
0차 항 이후에는 큰 영향 없음
두 값을 더하면서 MA 모형에 포함
되어 버린 듯
비정적(Non-Stationary) 데이터 처리
26
비정적 데이터를 정적 데이터로 변환 방법
• 차이값(diff)과 로그(log) 변환
- 차이값(diff) : 이전 데이터와의 차이값
• (1차 차분) = X(t) – X(t-1)
• 차이값은 데이터의 차수를 줄여 정적(Stationary)에 가깝게 한다
- (미분값처럼) 차분값은 다항식의 차수를 낮춰준다
- 1차항( X= a + b*t )을 상수항( X=b)으로, 2차항을 1차항으로 변환된다
- 로그(log) : 데이터에 log를 취함
• 데이터의 진폭이 시간에 따라 증가 (분산의 증가) 데이터 대상
- 예) X(t) = t * sin(t) - 윗쪽 그래프
• 로그(log)는 곱을 합으로 변환  분산의 증가 억제
- 예) N(t) = log(X(t)) = log(t) + log( sin(t) ) – 아랫쪽 그래프
• 로그(log) 변환은 분산을 줄여 정적(Stationary)에 가깝게 한다
 ARIMA 모델 : AR + MA 모델에 차이값을 추가한 모델
비정적(Non-Stationary) 데이터 처리
27
ARIMA 모델
• 데이터의 차이값이 만드는 시계열(Time Series)가 MA(Moving Average) 혹은
AR(Auto-Regression) 모델에 적합하다면 ARIMA 모델은 잘 맞음
• MA의 차수는 ACF(Auto-Correlation Function)으로, AR의 차수는 PACF(Partial ACF)
로 결정할 수 있음
발췌 : https://statkclee.github.io/statistics/stat-time-series-arma.html
시계열(Time Series) 활용
2
8
시계열(Time Series) 활용
29
추세/계절성 파악 및 대응 – 비행기 탑승객 수 변화
• 분해된 시계열 데이터 활용
- 계절(기간)에 따른 변화 확인
- 시간에 따른 증감 확인
• 정기적 변화에 대한 대응
- 감소 기간에 대한 적극적 대응(프로모션)
• 추세에 대한 대응
- 증가되는 수요를 위한 인프라 구축
• 공항, 비행기, 휴게시설 등
 수요량 계산을 위한 수요 전망 계산
시계열(Time Series) 활용
30
추세/계절성 파악 및 대응 – 비행기 탑승객 수 변화
• 기존 데이터를 이용한 향후 5년 전망(R의 forecast 함수 사용) : 80%(짙은 회색)와 95%(옅은 회색) 신뢰구간
시계열(Time Series) 활용
31
이상치 파악
1. 이전 시계열 데이터를 이용한 향후 전망 계산 ( R의 forecast 함수)
• level 파라미터로 원하는 신뢰구간 계산 ( default level = c(80, 95) )
2. 측정시점에서 계산된 신뢰구간을 벗어난 데이터 확인 ( outlier )
3. 해당 결과가 일시적 변화인지 계속적인 변화 인지 확인
• 일시적 변화는 원인 분석 후 조치
• 계속적 변화는 시계열 모델에 반영하여 새로운 전망 계산
4. 위의 과정을 반복
요약
3
2
요약
33
 시계열(Time Series) 데이터는 시간에 따른 대상값의 변화를 기록
 추세파악 및 대응, 향후 전망 및 이상치 감지 등에 활용 가능
 시계열 데이터는 추세(Trend), 정기성(Seasonal), 나머지(remainder)로 분해
 나머지(remainder) 부분은 정적인 경우, MA(이동평균), AR(자가회귀) 모델링
 정적이지 않은 경우, 차이값(diff) 혹은 로그(log) 등을 사용하여 정적으로 변환
 차수 결정 : MA – ACF, AR-PACF 사용
 자동으로 결정해주는 auto.arima() 함수를 사용하면 편리
 forecast() 함수를 사용하여 향후 전망값을 원하는 신뢰구간으로 계산 가능
 전망값을 사용하여 대응 계획 및 이상치 감지에 활용 가능
 지속적 변화가 감지된 경우, 시계열 모델 재구축 필요
 단기적 전망에 효용성이 높음
Address
서울특별시 성동구 아차산로 17
11층 (성수동 1가, 서울숲엘타워)
우편번호 04789
Telephone
Tel : (02)575-0409
Fax: (02)6003-1987

More Related Content

What's hot

딥러닝 기반 자연어 언어모델 BERT
딥러닝 기반 자연어 언어모델 BERT딥러닝 기반 자연어 언어모델 BERT
딥러닝 기반 자연어 언어모델 BERTSeonghyun Kim
 
Artificial nueral network slideshare
Artificial nueral network slideshareArtificial nueral network slideshare
Artificial nueral network slideshareRed Innovators
 
自由エネルギー原理(FEP)とはなにか 20190211
自由エネルギー原理(FEP)とはなにか 20190211自由エネルギー原理(FEP)とはなにか 20190211
自由エネルギー原理(FEP)とはなにか 20190211Masatoshi Yoshida
 
パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0sleipnir002
 
混合モデルを使って反復測定分散分析をする
混合モデルを使って反復測定分散分析をする混合モデルを使って反復測定分散分析をする
混合モデルを使って反復測定分散分析をするMasaru Tokuoka
 
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...PyData
 
RNN & LSTM: Neural Network for Sequential Data
RNN & LSTM: Neural Network for Sequential DataRNN & LSTM: Neural Network for Sequential Data
RNN & LSTM: Neural Network for Sequential DataYao-Chieh Hu
 
大山雄己 - 活動欲求を考慮した離散-連続モデルによる小滞在発生メカニズムの分析
大山雄己 - 活動欲求を考慮した離散-連続モデルによる小滞在発生メカニズムの分析大山雄己 - 活動欲求を考慮した離散-連続モデルによる小滞在発生メカニズムの分析
大山雄己 - 活動欲求を考慮した離散-連続モデルによる小滞在発生メカニズムの分析Yuki Oyama
 
Deep learning on mobile - 2019 Practitioner's Guide
Deep learning on mobile - 2019 Practitioner's GuideDeep learning on mobile - 2019 Practitioner's Guide
Deep learning on mobile - 2019 Practitioner's GuideAnirudh Koul
 
Back Propagation Neural Network In AI PowerPoint Presentation Slide Templates...
Back Propagation Neural Network In AI PowerPoint Presentation Slide Templates...Back Propagation Neural Network In AI PowerPoint Presentation Slide Templates...
Back Propagation Neural Network In AI PowerPoint Presentation Slide Templates...SlideTeam
 
PRML輪読#10
PRML輪読#10PRML輪読#10
PRML輪読#10matsuolab
 
深層学習とベイズ統計
深層学習とベイズ統計深層学習とベイズ統計
深層学習とベイズ統計Yuta Kashino
 
Rinko - twitter mood predicts the stock market
Rinko - twitter mood predicts the stock marketRinko - twitter mood predicts the stock market
Rinko - twitter mood predicts the stock marketAnchuuu Annaka
 
公平性を保証したAI/機械学習
アルゴリズムの最新理論
公平性を保証したAI/機械学習
アルゴリズムの最新理論公平性を保証したAI/機械学習
アルゴリズムの最新理論
公平性を保証したAI/機械学習
アルゴリズムの最新理論Kazuto Fukuchi
 
Attention is all you need (UPC Reading Group 2018, by Santi Pascual)
Attention is all you need (UPC Reading Group 2018, by Santi Pascual)Attention is all you need (UPC Reading Group 2018, by Santi Pascual)
Attention is all you need (UPC Reading Group 2018, by Santi Pascual)Universitat Politècnica de Catalunya
 
Time series classification
Time series classificationTime series classification
Time series classificationSung Kim
 

What's hot (20)

딥러닝 기반 자연어 언어모델 BERT
딥러닝 기반 자연어 언어모델 BERT딥러닝 기반 자연어 언어모델 BERT
딥러닝 기반 자연어 언어모델 BERT
 
Artificial nueral network slideshare
Artificial nueral network slideshareArtificial nueral network slideshare
Artificial nueral network slideshare
 
Recurrent neural network
Recurrent neural networkRecurrent neural network
Recurrent neural network
 
自由エネルギー原理(FEP)とはなにか 20190211
自由エネルギー原理(FEP)とはなにか 20190211自由エネルギー原理(FEP)とはなにか 20190211
自由エネルギー原理(FEP)とはなにか 20190211
 
パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0
 
混合モデルを使って反復測定分散分析をする
混合モデルを使って反復測定分散分析をする混合モデルを使って反復測定分散分析をする
混合モデルを使って反復測定分散分析をする
 
Learning with Unpaired Data
Learning with Unpaired DataLearning with Unpaired Data
Learning with Unpaired Data
 
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
1D Convolutional Neural Networks for Time Series Modeling - Nathan Janos, Jef...
 
RNN & LSTM: Neural Network for Sequential Data
RNN & LSTM: Neural Network for Sequential DataRNN & LSTM: Neural Network for Sequential Data
RNN & LSTM: Neural Network for Sequential Data
 
大山雄己 - 活動欲求を考慮した離散-連続モデルによる小滞在発生メカニズムの分析
大山雄己 - 活動欲求を考慮した離散-連続モデルによる小滞在発生メカニズムの分析大山雄己 - 活動欲求を考慮した離散-連続モデルによる小滞在発生メカニズムの分析
大山雄己 - 活動欲求を考慮した離散-連続モデルによる小滞在発生メカニズムの分析
 
Deep learning on mobile - 2019 Practitioner's Guide
Deep learning on mobile - 2019 Practitioner's GuideDeep learning on mobile - 2019 Practitioner's Guide
Deep learning on mobile - 2019 Practitioner's Guide
 
Back Propagation Neural Network In AI PowerPoint Presentation Slide Templates...
Back Propagation Neural Network In AI PowerPoint Presentation Slide Templates...Back Propagation Neural Network In AI PowerPoint Presentation Slide Templates...
Back Propagation Neural Network In AI PowerPoint Presentation Slide Templates...
 
PRML輪読#10
PRML輪読#10PRML輪読#10
PRML輪読#10
 
深層学習とベイズ統計
深層学習とベイズ統計深層学習とベイズ統計
深層学習とベイズ統計
 
Rinko - twitter mood predicts the stock market
Rinko - twitter mood predicts the stock marketRinko - twitter mood predicts the stock market
Rinko - twitter mood predicts the stock market
 
公平性を保証したAI/機械学習
アルゴリズムの最新理論
公平性を保証したAI/機械学習
アルゴリズムの最新理論公平性を保証したAI/機械学習
アルゴリズムの最新理論
公平性を保証したAI/機械学習
アルゴリズムの最新理論
 
Neural Networks
Neural NetworksNeural Networks
Neural Networks
 
Agent Based Models
Agent Based ModelsAgent Based Models
Agent Based Models
 
Attention is all you need (UPC Reading Group 2018, by Santi Pascual)
Attention is all you need (UPC Reading Group 2018, by Santi Pascual)Attention is all you need (UPC Reading Group 2018, by Santi Pascual)
Attention is all you need (UPC Reading Group 2018, by Santi Pascual)
 
Time series classification
Time series classificationTime series classification
Time series classification
 

Similar to 시계열 분석의 이해와 활용

Analyzing Time Series Data
Analyzing Time Series DataAnalyzing Time Series Data
Analyzing Time Series DataJe Hun Seo
 
★강의교재_데이터 분석을 위한 통계와 확률_v2.pptx
★강의교재_데이터 분석을 위한 통계와 확률_v2.pptx★강의교재_데이터 분석을 위한 통계와 확률_v2.pptx
★강의교재_데이터 분석을 위한 통계와 확률_v2.pptxDonghwan Lee
 
2.linear regression and logistic regression
2.linear regression and logistic regression2.linear regression and logistic regression
2.linear regression and logistic regressionHaesun Park
 
제어-제어공학의 수학적모델링
제어-제어공학의 수학적모델링제어-제어공학의 수학적모델링
제어-제어공학의 수학적모델링jdo
 
파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트itproman35
 
[SOPT] 데이터 구조 및 알고리즘 스터디 - #01 : 개요, 점근적 복잡도, 배열, 연결리스트
[SOPT] 데이터 구조 및 알고리즘 스터디 - #01 : 개요, 점근적 복잡도, 배열, 연결리스트[SOPT] 데이터 구조 및 알고리즘 스터디 - #01 : 개요, 점근적 복잡도, 배열, 연결리스트
[SOPT] 데이터 구조 및 알고리즘 스터디 - #01 : 개요, 점근적 복잡도, 배열, 연결리스트S.O.P.T - Shout Our Passion Together
 
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)Tae Young Lee
 
HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델Seong-Bok Lee
 
알파고의 알고리즘
알파고의 알고리즘알파고의 알고리즘
알파고의 알고리즘SeokWon Kim
 
빅데이터 윈윈 컨퍼런스_빅데이터 기반 지능형 도시가스 배관 위험 예측 기술 개발
빅데이터 윈윈 컨퍼런스_빅데이터 기반 지능형 도시가스 배관 위험 예측 기술 개발빅데이터 윈윈 컨퍼런스_빅데이터 기반 지능형 도시가스 배관 위험 예측 기술 개발
빅데이터 윈윈 컨퍼런스_빅데이터 기반 지능형 도시가스 배관 위험 예측 기술 개발ABRC_DATA
 
제1부 전략과 분석 제3장 수요예측
제1부 전략과 분석 제3장 수요예측제1부 전략과 분석 제3장 수요예측
제1부 전략과 분석 제3장 수요예측Minsuk Chang
 
DNN-Based Prediction Model for Spatial-Temporal Data
DNN-Based Prediction Model for Spatial-Temporal DataDNN-Based Prediction Model for Spatial-Temporal Data
DNN-Based Prediction Model for Spatial-Temporal DataHWANGTAEYONG
 
차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)beom kyun choi
 
[SOPT] 데이터 구조 및 알고리즘 스터디 - #02 : 스택, 큐, 수식 연산
[SOPT] 데이터 구조 및 알고리즘 스터디 - #02 : 스택, 큐, 수식 연산[SOPT] 데이터 구조 및 알고리즘 스터디 - #02 : 스택, 큐, 수식 연산
[SOPT] 데이터 구조 및 알고리즘 스터디 - #02 : 스택, 큐, 수식 연산S.O.P.T - Shout Our Passion Together
 

Similar to 시계열 분석의 이해와 활용 (20)

Analyzing Time Series Data
Analyzing Time Series DataAnalyzing Time Series Data
Analyzing Time Series Data
 
Spc개요
Spc개요Spc개요
Spc개요
 
★강의교재_데이터 분석을 위한 통계와 확률_v2.pptx
★강의교재_데이터 분석을 위한 통계와 확률_v2.pptx★강의교재_데이터 분석을 위한 통계와 확률_v2.pptx
★강의교재_데이터 분석을 위한 통계와 확률_v2.pptx
 
2.linear regression and logistic regression
2.linear regression and logistic regression2.linear regression and logistic regression
2.linear regression and logistic regression
 
분석6기 4조
분석6기 4조분석6기 4조
분석6기 4조
 
제어-제어공학의 수학적모델링
제어-제어공학의 수학적모델링제어-제어공학의 수학적모델링
제어-제어공학의 수학적모델링
 
파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트
 
[SOPT] 데이터 구조 및 알고리즘 스터디 - #01 : 개요, 점근적 복잡도, 배열, 연결리스트
[SOPT] 데이터 구조 및 알고리즘 스터디 - #01 : 개요, 점근적 복잡도, 배열, 연결리스트[SOPT] 데이터 구조 및 알고리즘 스터디 - #01 : 개요, 점근적 복잡도, 배열, 연결리스트
[SOPT] 데이터 구조 및 알고리즘 스터디 - #01 : 개요, 점근적 복잡도, 배열, 연결리스트
 
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)
파이썬 데이터과학 레벨2 - 데이터 시각화와 실전 데이터분석, 그리고 머신러닝 입문 (2020년 이태영)
 
R_datamining
R_dataminingR_datamining
R_datamining
 
HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델
 
Rdatamining
Rdatamining Rdatamining
Rdatamining
 
알파고의 알고리즘
알파고의 알고리즘알파고의 알고리즘
알파고의 알고리즘
 
빅데이터 윈윈 컨퍼런스_빅데이터 기반 지능형 도시가스 배관 위험 예측 기술 개발
빅데이터 윈윈 컨퍼런스_빅데이터 기반 지능형 도시가스 배관 위험 예측 기술 개발빅데이터 윈윈 컨퍼런스_빅데이터 기반 지능형 도시가스 배관 위험 예측 기술 개발
빅데이터 윈윈 컨퍼런스_빅데이터 기반 지능형 도시가스 배관 위험 예측 기술 개발
 
제1부 전략과 분석 제3장 수요예측
제1부 전략과 분석 제3장 수요예측제1부 전략과 분석 제3장 수요예측
제1부 전략과 분석 제3장 수요예측
 
강의자료 2
강의자료 2강의자료 2
강의자료 2
 
Cop 3주차발표
Cop 3주차발표Cop 3주차발표
Cop 3주차발표
 
DNN-Based Prediction Model for Spatial-Temporal Data
DNN-Based Prediction Model for Spatial-Temporal DataDNN-Based Prediction Model for Spatial-Temporal Data
DNN-Based Prediction Model for Spatial-Temporal Data
 
차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)차원축소 훑어보기 (PCA, SVD, NMF)
차원축소 훑어보기 (PCA, SVD, NMF)
 
[SOPT] 데이터 구조 및 알고리즘 스터디 - #02 : 스택, 큐, 수식 연산
[SOPT] 데이터 구조 및 알고리즘 스터디 - #02 : 스택, 큐, 수식 연산[SOPT] 데이터 구조 및 알고리즘 스터디 - #02 : 스택, 큐, 수식 연산
[SOPT] 데이터 구조 및 알고리즘 스터디 - #02 : 스택, 큐, 수식 연산
 

More from Seung-Woo Kang

[도서 리뷰] 디스럽트(Disrupt)
[도서 리뷰] 디스럽트(Disrupt)[도서 리뷰] 디스럽트(Disrupt)
[도서 리뷰] 디스럽트(Disrupt)Seung-Woo Kang
 
[도서 리뷰] 인센티브와 무임승차
[도서 리뷰] 인센티브와 무임승차[도서 리뷰] 인센티브와 무임승차
[도서 리뷰] 인센티브와 무임승차Seung-Woo Kang
 
[도서 리뷰] 왜 지금 핀테크인가?
[도서 리뷰] 왜 지금 핀테크인가?[도서 리뷰] 왜 지금 핀테크인가?
[도서 리뷰] 왜 지금 핀테크인가?Seung-Woo Kang
 
[도서 리뷰] 헤드 퍼스트 데이터 분석 ( Head First Data Analysis )
[도서 리뷰]  헤드 퍼스트 데이터 분석 ( Head First Data Analysis )[도서 리뷰]  헤드 퍼스트 데이터 분석 ( Head First Data Analysis )
[도서 리뷰] 헤드 퍼스트 데이터 분석 ( Head First Data Analysis )Seung-Woo Kang
 
[도서 리뷰] 어떻게 돌파할 것인가
[도서 리뷰] 어떻게 돌파할 것인가[도서 리뷰] 어떻게 돌파할 것인가
[도서 리뷰] 어떻게 돌파할 것인가Seung-Woo Kang
 
[도서 리뷰] 이나모리 가즈오의 회계경영
[도서 리뷰] 이나모리 가즈오의 회계경영[도서 리뷰] 이나모리 가즈오의 회계경영
[도서 리뷰] 이나모리 가즈오의 회계경영Seung-Woo Kang
 
차이의 붕괴(Collapse of Distinction) - 도서 요약
차이의 붕괴(Collapse of Distinction) - 도서 요약차이의 붕괴(Collapse of Distinction) - 도서 요약
차이의 붕괴(Collapse of Distinction) - 도서 요약Seung-Woo Kang
 
일본 기업은 AI를 어떻게 활용하고 있을까(도서 정리)
일본 기업은 AI를 어떻게 활용하고 있을까(도서 정리)일본 기업은 AI를 어떻게 활용하고 있을까(도서 정리)
일본 기업은 AI를 어떻게 활용하고 있을까(도서 정리)Seung-Woo Kang
 
소음과 투자 (도서 요약)
소음과 투자 (도서 요약)소음과 투자 (도서 요약)
소음과 투자 (도서 요약)Seung-Woo Kang
 
피케티의 21세기 자본론(도서요약)
피케티의 21세기 자본론(도서요약)피케티의 21세기 자본론(도서요약)
피케티의 21세기 자본론(도서요약)Seung-Woo Kang
 
현명한 초보 투자자(도서 요약)
현명한 초보 투자자(도서 요약)현명한 초보 투자자(도서 요약)
현명한 초보 투자자(도서 요약)Seung-Woo Kang
 
세상에서 가장 쉬운 회계학 입문(도서 요약)
세상에서 가장 쉬운 회계학 입문(도서 요약)세상에서 가장 쉬운 회계학 입문(도서 요약)
세상에서 가장 쉬운 회계학 입문(도서 요약)Seung-Woo Kang
 
확률을 높이는 확률
확률을 높이는 확률확률을 높이는 확률
확률을 높이는 확률Seung-Woo Kang
 
캐리커처 생성기 테스트
캐리커처 생성기 테스트캐리커처 생성기 테스트
캐리커처 생성기 테스트Seung-Woo Kang
 
스플렁크 머신러닝 연동
스플렁크 머신러닝 연동스플렁크 머신러닝 연동
스플렁크 머신러닝 연동Seung-Woo Kang
 
하이퍼레저 프로젝트 개요
하이퍼레저 프로젝트 개요하이퍼레저 프로젝트 개요
하이퍼레저 프로젝트 개요Seung-Woo Kang
 
Azure ml studio_fraud_detection
Azure ml studio_fraud_detectionAzure ml studio_fraud_detection
Azure ml studio_fraud_detectionSeung-Woo Kang
 
MS_QnA_Maker_챗봇만들기
MS_QnA_Maker_챗봇만들기MS_QnA_Maker_챗봇만들기
MS_QnA_Maker_챗봇만들기Seung-Woo Kang
 
통계의 힘 (스터디 자료)
통계의 힘 (스터디 자료)통계의 힘 (스터디 자료)
통계의 힘 (스터디 자료)Seung-Woo Kang
 
블록체인 이해와 활용
블록체인 이해와 활용블록체인 이해와 활용
블록체인 이해와 활용Seung-Woo Kang
 

More from Seung-Woo Kang (20)

[도서 리뷰] 디스럽트(Disrupt)
[도서 리뷰] 디스럽트(Disrupt)[도서 리뷰] 디스럽트(Disrupt)
[도서 리뷰] 디스럽트(Disrupt)
 
[도서 리뷰] 인센티브와 무임승차
[도서 리뷰] 인센티브와 무임승차[도서 리뷰] 인센티브와 무임승차
[도서 리뷰] 인센티브와 무임승차
 
[도서 리뷰] 왜 지금 핀테크인가?
[도서 리뷰] 왜 지금 핀테크인가?[도서 리뷰] 왜 지금 핀테크인가?
[도서 리뷰] 왜 지금 핀테크인가?
 
[도서 리뷰] 헤드 퍼스트 데이터 분석 ( Head First Data Analysis )
[도서 리뷰]  헤드 퍼스트 데이터 분석 ( Head First Data Analysis )[도서 리뷰]  헤드 퍼스트 데이터 분석 ( Head First Data Analysis )
[도서 리뷰] 헤드 퍼스트 데이터 분석 ( Head First Data Analysis )
 
[도서 리뷰] 어떻게 돌파할 것인가
[도서 리뷰] 어떻게 돌파할 것인가[도서 리뷰] 어떻게 돌파할 것인가
[도서 리뷰] 어떻게 돌파할 것인가
 
[도서 리뷰] 이나모리 가즈오의 회계경영
[도서 리뷰] 이나모리 가즈오의 회계경영[도서 리뷰] 이나모리 가즈오의 회계경영
[도서 리뷰] 이나모리 가즈오의 회계경영
 
차이의 붕괴(Collapse of Distinction) - 도서 요약
차이의 붕괴(Collapse of Distinction) - 도서 요약차이의 붕괴(Collapse of Distinction) - 도서 요약
차이의 붕괴(Collapse of Distinction) - 도서 요약
 
일본 기업은 AI를 어떻게 활용하고 있을까(도서 정리)
일본 기업은 AI를 어떻게 활용하고 있을까(도서 정리)일본 기업은 AI를 어떻게 활용하고 있을까(도서 정리)
일본 기업은 AI를 어떻게 활용하고 있을까(도서 정리)
 
소음과 투자 (도서 요약)
소음과 투자 (도서 요약)소음과 투자 (도서 요약)
소음과 투자 (도서 요약)
 
피케티의 21세기 자본론(도서요약)
피케티의 21세기 자본론(도서요약)피케티의 21세기 자본론(도서요약)
피케티의 21세기 자본론(도서요약)
 
현명한 초보 투자자(도서 요약)
현명한 초보 투자자(도서 요약)현명한 초보 투자자(도서 요약)
현명한 초보 투자자(도서 요약)
 
세상에서 가장 쉬운 회계학 입문(도서 요약)
세상에서 가장 쉬운 회계학 입문(도서 요약)세상에서 가장 쉬운 회계학 입문(도서 요약)
세상에서 가장 쉬운 회계학 입문(도서 요약)
 
확률을 높이는 확률
확률을 높이는 확률확률을 높이는 확률
확률을 높이는 확률
 
캐리커처 생성기 테스트
캐리커처 생성기 테스트캐리커처 생성기 테스트
캐리커처 생성기 테스트
 
스플렁크 머신러닝 연동
스플렁크 머신러닝 연동스플렁크 머신러닝 연동
스플렁크 머신러닝 연동
 
하이퍼레저 프로젝트 개요
하이퍼레저 프로젝트 개요하이퍼레저 프로젝트 개요
하이퍼레저 프로젝트 개요
 
Azure ml studio_fraud_detection
Azure ml studio_fraud_detectionAzure ml studio_fraud_detection
Azure ml studio_fraud_detection
 
MS_QnA_Maker_챗봇만들기
MS_QnA_Maker_챗봇만들기MS_QnA_Maker_챗봇만들기
MS_QnA_Maker_챗봇만들기
 
통계의 힘 (스터디 자료)
통계의 힘 (스터디 자료)통계의 힘 (스터디 자료)
통계의 힘 (스터디 자료)
 
블록체인 이해와 활용
블록체인 이해와 활용블록체인 이해와 활용
블록체인 이해와 활용
 

시계열 분석의 이해와 활용

  • 1. 2018년 07월 17일 시계열 분석 (Time Series Analysis) 타임게이트 연구소
  • 2. 목차 시계열 (Time Series) 이란? 시계열 (Time Series) 데이터 분해 정적(stationary) 데이터 모델링 시계열(Time Series) 활용 요약 1 2 3 4 2 5
  • 4. 시계열(Time Series) 데이터 • 주가 , 환율, 거래량 변동 • 기온, 습도 변화 • 수요량, 판매량, 클릭율 변화 • 인구, 출생률 변화 4 특정 대상의 시간적 변동 기록
  • 5. 시계열(Time Series) 분석 • 추세 파악 - 무작위 (random)적인 잡음을 제거하여 큰 흐름 파악 • 원인 예측 및 대응 - 매출이 특정 요일에 하락하는 패턴이 보이면, 이를 극복하기 위한 방안을 마련 • 향후 전망 - 판매량 추이 전망에 따라 생산량 조절 5 시계열 데이터에서 추세 파악, 원인 예측 및 대응, 향후 전망
  • 6. 시계열 (Time Series) 데이터 분해 6
  • 7. 시계열(Time Series) 데이터 분해 7 1949년 ~ 1951년 간의 항공 탑승객의 변화
  • 8. 시계열(Time Series) 데이터 분해 8 정기적 변동(Seasonal), 추세(Trend), 잔여(remainder)
  • 9. 시계열(Time Series) 데이터 분해 9 추세 (Trend) 분해 방법 • Lowess/Loess 회귀(Regress) - 특정 범위에 적당한 다항 회귀선들을 구하여 병합 - 다소 투박한(coarse) 추세선 : 회귀범위에 따라 달라짐 • 이동 평균 ( Moving Average) - 특정 기간 동안의 값의 평균의 변화 ( 예: 주가의 5일/10일 이동평균) - 부드러운 추세에 적용 가능 : 변화 주기를 알아야 함 - 조밀한 (fine-grained) 추세선 • Loess 방법으로 1차 추세 분석 후, (반복적인) 이동평균 수행 ( 한가지 방법으로만 구하기도 함. )
  • 10. 시계열(Time Series) 데이터 분해 10 Loess 에 의한 추세선 ( 범위 = 0.25 (25%))
  • 11. 시계열(Time Series) 데이터 분해 11 Loess 에 의한 추세선 ( 범위 = 0.5 (50%))
  • 12. 시계열(Time Series) 데이터 분해 12 Loess 에 의한 추세선 ( 범위 = 0.75 (75%))
  • 13. 시계열(Time Series) 데이터 분해 13 Loess 범위에 따른 추세선 분해
  • 14. 시계열(Time Series) 데이터 분해 14 주기적 변동분 ( seasonal ) : 더하기(additive) 방식
  • 15. 시계열(Time Series) 데이터 분해 15 나머지 ( remainder ) : 더하기(additive) 방식
  • 16. 시계열(Time Series) 데이터 분해 16 주기적 변동분 ( seasonal ) : 곱하기(multiplicative) 방식
  • 17. 시계열(Time Series) 데이터 분해 17 나머지 ( remainder ) : 곱하기(multiplicative) 방식
  • 19. 정적(Stationary) 데이터 19 평균, 분산 등 통계적 특성이 변하지 않는 데이터 1) 뚜렷한 추세(trend)가 없다. 2) 시간이 지나도 분포도(분산)의 변화가 없다 예) 정규분포에서 무작위 추출 숫자 분해된 시계열 데이터의 나머지(remainder)을 정적(stationary) 모델로 대응시킴
  • 20. 정적(Stationary) 데이터 모델링 20 이동 평균 모델(Moving Average Model) • 추세를 파악하기 위한 이동평균선과는 다름 • X(t) = (t 시점 event) + a_1 * (t-1 시점 event) + …. + a_n *(t-n 시점 event)  예 ) x(t) = rand(t) + 0.4 * rand(t-1) : rand(t) – t 시점의 random event  R source : random <- rnorm(num_samples,0,1)  x_ma <- random + 0.4 * lag(random) # order 1 ma • T 시점과 이전 시점들 사건 영향의 가중 평균 • 일반적으로 오래된 사건은 영향이 작아짐 • 몇차항(order) 까지 사용할 지를 결정필요  영향이 큰 항 선택(자기상관성 검사 – ACF)
  • 21. 정적(Stationary) 데이터 모델링 21 이동 평균 모델(Moving Average Model) – ACF 검사 • 자기상관성(Auto-correlation) 검사 – acf() • 예 ) (x(t) = rand(t) + 0.4 * rand(t-1) : rand(t) – t 시점의 random event) 의 경우 auto.arima() 함수에 의한 모델 자동 선택. 1차 ma 모델 1차 항까지가 큰 영향 0차 항외에는 큰 영향 없음
  • 22. 정적(Stationary) 데이터 모델링 22 자가 회귀 모델(Auto Regression Model) • 현재값이 이전 값과 약간 차이가 난다는 가정 • X(t) = (t 시점 noise) + a_1 * x(t-1) + …. + a_n * x(t- n)  예 ) x(t) = noise + 0.5 * x(t-1) : x(t) – t 시점의 x의 값  R source : x1 <- 0.2 num_samples2 <- 100 noise <- rnorm(num_samples2, 0, 0.1 ) x_ar <- c(1:num_samples2) x_ar[1] <- x1 for( i in c(2:num_samples2)){ x_ar[i] <- noise[i] + 0.5*x_ar[i-1] # order 1 AR } • T 시점의 값은 이전 특정 시점의 값의 영향 • 몇차항(order) 까지 사용할 지를 결정필요 영향이 큰 항 선택(부분 자기상관성 검사 – PACF)
  • 23. 정적(Stationary) 데이터 모델링 23 자가 회귀 모델(Auto Regression Model) – PACF 검사 • 자가 회귀성(Auto-regression) 검사 – pacf() • 예 ) (x(t) = rand(t) + 0.5 * x(t-1) : x(t) – t 시점의 x값)의 경우 auto.arima() 함수에 의한 모델 자동 선택. 1차 ar 모델 소멸하는 sine() 함수 성격 1차 항 이후에는 큰 영향 없음
  • 24. 정적(Stationary) 데이터 모델링 24 자가회귀 이동평균 모델(Auto-Regression Moving Average Model) • 이동평균모델(MA)와 자가회귀(AR) 모델을 연결 • X(t) = (t 시점 event) +a_1 * (t-1 시점 event) + …. + a_n *(t-n 시점 event) + (t 시점 noise) + a_1 * x(t-1) + …. + a_n * x(t-n)  예 ) x(t) = rand(t) + 0.4 * rand(t-1) : rand(t) – t 시점의 random event + noise + 0.5 * x(t-1) : x(t) – t 시점의 x의 값  R source : x_ma_ar <- x_ma + x_ar • 몇차항(order) 까지 사용할 지를 결정 필요 MA 부분 AR 부분
  • 25. 정적(Stationary) 데이터 모델링 25 자가회귀 이동평균 모델(AR MA Model) – ACF, PACF 검사 • 자기연관성(Auto-correlation)과 자가 회귀성(Auto-regression) 검사 – acf(), pacf() • 예 ) (x(t) = rand(t) + 0.4*rand(t-1) + 0.5 * x(t-1) ) 의 경우 auto.arima() 함수에 의한 모델 자동 선택. 1차 ma 모델 1항 이후 큰 영향 없음 0차 항 이후에는 큰 영향 없음 두 값을 더하면서 MA 모형에 포함 되어 버린 듯
  • 26. 비정적(Non-Stationary) 데이터 처리 26 비정적 데이터를 정적 데이터로 변환 방법 • 차이값(diff)과 로그(log) 변환 - 차이값(diff) : 이전 데이터와의 차이값 • (1차 차분) = X(t) – X(t-1) • 차이값은 데이터의 차수를 줄여 정적(Stationary)에 가깝게 한다 - (미분값처럼) 차분값은 다항식의 차수를 낮춰준다 - 1차항( X= a + b*t )을 상수항( X=b)으로, 2차항을 1차항으로 변환된다 - 로그(log) : 데이터에 log를 취함 • 데이터의 진폭이 시간에 따라 증가 (분산의 증가) 데이터 대상 - 예) X(t) = t * sin(t) - 윗쪽 그래프 • 로그(log)는 곱을 합으로 변환  분산의 증가 억제 - 예) N(t) = log(X(t)) = log(t) + log( sin(t) ) – 아랫쪽 그래프 • 로그(log) 변환은 분산을 줄여 정적(Stationary)에 가깝게 한다  ARIMA 모델 : AR + MA 모델에 차이값을 추가한 모델
  • 27. 비정적(Non-Stationary) 데이터 처리 27 ARIMA 모델 • 데이터의 차이값이 만드는 시계열(Time Series)가 MA(Moving Average) 혹은 AR(Auto-Regression) 모델에 적합하다면 ARIMA 모델은 잘 맞음 • MA의 차수는 ACF(Auto-Correlation Function)으로, AR의 차수는 PACF(Partial ACF) 로 결정할 수 있음 발췌 : https://statkclee.github.io/statistics/stat-time-series-arma.html
  • 29. 시계열(Time Series) 활용 29 추세/계절성 파악 및 대응 – 비행기 탑승객 수 변화 • 분해된 시계열 데이터 활용 - 계절(기간)에 따른 변화 확인 - 시간에 따른 증감 확인 • 정기적 변화에 대한 대응 - 감소 기간에 대한 적극적 대응(프로모션) • 추세에 대한 대응 - 증가되는 수요를 위한 인프라 구축 • 공항, 비행기, 휴게시설 등  수요량 계산을 위한 수요 전망 계산
  • 30. 시계열(Time Series) 활용 30 추세/계절성 파악 및 대응 – 비행기 탑승객 수 변화 • 기존 데이터를 이용한 향후 5년 전망(R의 forecast 함수 사용) : 80%(짙은 회색)와 95%(옅은 회색) 신뢰구간
  • 31. 시계열(Time Series) 활용 31 이상치 파악 1. 이전 시계열 데이터를 이용한 향후 전망 계산 ( R의 forecast 함수) • level 파라미터로 원하는 신뢰구간 계산 ( default level = c(80, 95) ) 2. 측정시점에서 계산된 신뢰구간을 벗어난 데이터 확인 ( outlier ) 3. 해당 결과가 일시적 변화인지 계속적인 변화 인지 확인 • 일시적 변화는 원인 분석 후 조치 • 계속적 변화는 시계열 모델에 반영하여 새로운 전망 계산 4. 위의 과정을 반복
  • 33. 요약 33  시계열(Time Series) 데이터는 시간에 따른 대상값의 변화를 기록  추세파악 및 대응, 향후 전망 및 이상치 감지 등에 활용 가능  시계열 데이터는 추세(Trend), 정기성(Seasonal), 나머지(remainder)로 분해  나머지(remainder) 부분은 정적인 경우, MA(이동평균), AR(자가회귀) 모델링  정적이지 않은 경우, 차이값(diff) 혹은 로그(log) 등을 사용하여 정적으로 변환  차수 결정 : MA – ACF, AR-PACF 사용  자동으로 결정해주는 auto.arima() 함수를 사용하면 편리  forecast() 함수를 사용하여 향후 전망값을 원하는 신뢰구간으로 계산 가능  전망값을 사용하여 대응 계획 및 이상치 감지에 활용 가능  지속적 변화가 감지된 경우, 시계열 모델 재구축 필요  단기적 전망에 효용성이 높음
  • 34. Address 서울특별시 성동구 아차산로 17 11층 (성수동 1가, 서울숲엘타워) 우편번호 04789 Telephone Tel : (02)575-0409 Fax: (02)6003-1987