SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Facebook Prophet
Forecastingat Scale
이민호
Time Series Analysis
시계열 예측은 많은 곳에서 필요로 하지만,
깊게 분석할 수 있는 사람은 많지 않다
완전히 자동화된 예측 기법들은
예측에 도움이 될 다양한 가정과 경험을 모형 안에 포함시키기 어렵다
Time Series Analysis
그래서 만들었다
페북이
Prophet
Facebook에서 만든 시계열 분석/예측 라이브러리 (R, Python)
시계열 분석/예측에 대한 전문적인 지식을 가지고 있지 않더라도
직관적인 몇 가지 파라미터를 가지고 조작할 수 있도록 한다
Model Components
3개의 메인 컴포넌트로 구성된 Decomposable Time Series Model
Growth Seasonality Holidays
(Events)
y(t) = g(t) + s(t) + h(t) + error
Model Components
- ARIMA 등 많은 시계열 모형과는 다르게 시간에 종속적인 구조를 가지지 않는다
- 대신에 Curve Fitting으로 문제를 해결
- 그로 인해 얻게 된 이점이 있다
- 모형이 굉장히 유연해진다
- 측정하는 시간이 꼭 일정한 주기를 가질 필요가 없다
비어있는 구간을 interpolate 하지 않아도 됨
- 학습 속도가 빠르다
- 직관적으로 이해할 수 있는 파라미터를 통해 모형을 조정할 수 있다
Model Components : Growth
- Linear Growth (+ Change Point)
- change point는 자동으로 탐지한다
- 예측할 때는 특정 지점이 change point인지 여부를 확률적으로 결정
- Non-Linear Growth (LogisticGrowth)
- 자연적인 상한선이 존재하는 경우 : Capacity
- Capacity는 시간에 따라 변할 수 있다
Model Components : Seasonality
- 사용자들의 행동 양식으로 인해 주기적으로 나타나는 패턴
- ex) 방학, 휴가, 온도, 주말 등등
- Fourier Series를 이용해서 패턴의 근사치를 찾는다
Model Components : Holidays
- 주기성을 가지지는 않지만 전체 추이에 큰 영향을 주는 이벤트가 존재한다
- 이벤트의 효과는 독립적이라고 가정
- 이벤트 앞뒤로 window 범위를 지정해서
해당 이벤트가 미치는 영향의 범위를 설정할 수 있다
Model Fitting
- Stan을 통해 모델을 학습시킨다
- probabilistic programming language forstatistical inference
- Written in C++
- 크게 두 가지 방식을 사용
- MAP (Maximum A Posteriori) : Default
- 속도가 훨씬 빠르다
- MCMC (Markov Chain Monte Carlo)
- 모형의 변동성을 더 자세히 살펴볼 수 있음
Model Fitting : Stan sample code
model {
// Priors
k ∼ normal(0, 5);
b ∼ normal(0, 5);
epsilon ∼ normal(0, 0.5);
delta ∼ double_exponential(0, tau);
beta ∼ normal(0, sigma);
// Non-linear Likelihood
y ∼ normal(C ./ (1 + exp(-(k + A * delta) .* (t - (b + A * gamma))))
+ X * beta, epsilon);
// Linear Likelihood
y ∼ normal((k + A * delta) .* t + (m + A * gamma) + X * beta, sigma);
}
Analyst-in-the-loop Modeling
- 모형을 구성하는데 필요한 통계적 지식이 없더라도
직관적인 파라미터를 통해 모형을 조정할 수 있다
- 일반적인 경우 에는 기본값만 사용하더라도
높은 성능을 낼 수 있도록 설정되어 있음
- 내부가 어떻게 동작하는지에 대해서 고민할 필요없도록!
-> Analyst in the Loop
Analyst-in-the-loop Modeling
Capacities
Change points
Holidays & Seasonality
Smoothing
시계열 데이터 전체의 최대값
추세가 변화하는 시점
추세에 영향을 미치는 시기적 요인들
각각의 요소들이 전체 추이에 미치는 영향의 정도
Where Prophet Shines?
- 많은 시계열 데이터 (연 단위 이상이면 좋음)
- 불규칙적으로 일어나지만 사전에 시점을 알고 있는 이벤트가 있는 경우
ex) 한국시리즈,크리스마스
- 결측치가 어느 정도 존재하거나, 아웃라이어가 많은 경우
- 특정한 이벤트로 인해 장기적인 추이가 변할 수 있는 경우
ex) 신제품 출시, 디자인 변경
- 지표가 선형으로 증가하지 않을 경우
증가할 수 있는 지표의 최대치가 존재하고 이를 알고있는 경우
Examples : Bitcoin Price Trend (분단위)
2017년 6/1 ~ 7/7 분단위 데이터로 8~15일 추이 예측
Examples : Bitcoin Price Trend (Daily)
2017년 4월~6월 일별 데이터로 7월 추이 예측
Forecastingat scale
Simple
Adjustable models
Scalable performance monitoring
a large numberof analysts
to forecast a large numberanda variety of time series
Forecastingat scale
참고자료
<Prophet>
https://facebookincubator.github.io/prophet/
https://research.fb.com/prophet-forecasting-at-scale/
<GAM>
https://petolau.github.io/Analyzing-double-seasonal-time-series-with-GAM-in-R/
<ARIMA>
http://www.dodomira.com/2016/04/21/arima_in_r/
<Stan>
http://mc-stan.org/about/
https://en.wikipedia.org/wiki/Stan_(software)

Weitere ähnliche Inhalte

Was ist angesagt?

[팝콘 시즌1] 최보경 : 실무자를 위한 인과추론 활용 - Best Practices
[팝콘 시즌1] 최보경 : 실무자를 위한 인과추론 활용 - Best Practices[팝콘 시즌1] 최보경 : 실무자를 위한 인과추론 활용 - Best Practices
[팝콘 시즌1] 최보경 : 실무자를 위한 인과추론 활용 - Best PracticesPAP (Product Analytics Playground)
 
데이터 분석에 필요한 기본 개념: 지표, Funnel 등 데이터를 이해하기 위한 멘탈 모델(Mental Model)
데이터 분석에 필요한 기본 개념: 지표, Funnel 등 데이터를 이해하기 위한 멘탈 모델(Mental Model)데이터 분석에 필요한 기본 개념: 지표, Funnel 등 데이터를 이해하기 위한 멘탈 모델(Mental Model)
데이터 분석에 필요한 기본 개념: 지표, Funnel 등 데이터를 이해하기 위한 멘탈 모델(Mental Model)Minwoo Kim
 
데이터 기반 성장을 위한 선결 조건: Product-Market Fit, Instrumentation, 그리고 프로세스
데이터 기반 성장을 위한 선결 조건: Product-Market Fit, Instrumentation, 그리고 프로세스데이터 기반 성장을 위한 선결 조건: Product-Market Fit, Instrumentation, 그리고 프로세스
데이터 기반 성장을 위한 선결 조건: Product-Market Fit, Instrumentation, 그리고 프로세스Minwoo Kim
 
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편Seongyun Byeon
 
SSII2021 [OS2-03] 自己教師あり学習における対照学習の基礎と応用
SSII2021 [OS2-03] 自己教師あり学習における対照学習の基礎と応用SSII2021 [OS2-03] 自己教師あり学習における対照学習の基礎と応用
SSII2021 [OS2-03] 自己教師あり学習における対照学習の基礎と応用SSII
 
'Growth Hacking (그로스 해킹)’ 적용 사례
'Growth Hacking (그로스 해킹)’ 적용 사례'Growth Hacking (그로스 해킹)’ 적용 사례
'Growth Hacking (그로스 해킹)’ 적용 사례RocketPunch Inc.
 
バグなんて見逃しちゃえ
バグなんて見逃しちゃえバグなんて見逃しちゃえ
バグなんて見逃しちゃえssuser0be501
 
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイントSpringを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント土岐 孝平
 
서비스 기획자를 위한 데이터분석 시작하기
서비스 기획자를 위한 데이터분석 시작하기서비스 기획자를 위한 데이터분석 시작하기
서비스 기획자를 위한 데이터분석 시작하기승화 양
 
프로덕트를 빠르게 개선하기 위한 베이지안 A/B 테스트
프로덕트를 빠르게 개선하기 위한 베이지안 A/B 테스트프로덕트를 빠르게 개선하기 위한 베이지안 A/B 테스트
프로덕트를 빠르게 개선하기 위한 베이지안 A/B 테스트Minho Lee
 
backbone としての timm 入門
backbone としての timm 入門backbone としての timm 入門
backbone としての timm 入門Takuji Tahara
 
[PAP] 팝콘 시즌 1 컨퍼런스 사전 QnA
[PAP] 팝콘 시즌 1 컨퍼런스 사전 QnA[PAP] 팝콘 시즌 1 컨퍼런스 사전 QnA
[PAP] 팝콘 시즌 1 컨퍼런스 사전 QnABokyung Choi
 
CIが分からない PE(SETエンジニア)の1年生がWebAPIの負荷テストを 背伸びしてCI運用した
CIが分からないPE(SETエンジニア)の1年生がWebAPIの負荷テストを背伸びしてCI運用したCIが分からないPE(SETエンジニア)の1年生がWebAPIの負荷テストを背伸びしてCI運用した
CIが分からない PE(SETエンジニア)の1年生がWebAPIの負荷テストを 背伸びしてCI運用したssuser0be501
 
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデルlogics-of-blue
 
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and EditingDeep Learning JP
 
Little Big Data #1. 바닥부터 시작하는 데이터 인프라
Little Big Data #1. 바닥부터 시작하는 데이터 인프라Little Big Data #1. 바닥부터 시작하는 데이터 인프라
Little Big Data #1. 바닥부터 시작하는 데이터 인프라Seongyun Byeon
 
営業チームの案件管理をConfluenceでやってみた
営業チームの案件管理をConfluenceでやってみた営業チームの案件管理をConfluenceでやってみた
営業チームの案件管理をConfluenceでやってみたKinzen Nanbara
 
AWS 技術者向け Azure サービス解説 de:code2019版 #CD81
AWS 技術者向け Azure サービス解説 de:code2019版 #CD81AWS 技術者向け Azure サービス解説 de:code2019版 #CD81
AWS 技術者向け Azure サービス解説 de:code2019版 #CD81Minoru Naito
 
올바른 분석을 방해하는 함정 카드 피해가기
올바른 분석을 방해하는 함정 카드 피해가기올바른 분석을 방해하는 함정 카드 피해가기
올바른 분석을 방해하는 함정 카드 피해가기Minho Lee
 
역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdf역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdfDeukJin Jeon
 

Was ist angesagt? (20)

[팝콘 시즌1] 최보경 : 실무자를 위한 인과추론 활용 - Best Practices
[팝콘 시즌1] 최보경 : 실무자를 위한 인과추론 활용 - Best Practices[팝콘 시즌1] 최보경 : 실무자를 위한 인과추론 활용 - Best Practices
[팝콘 시즌1] 최보경 : 실무자를 위한 인과추론 활용 - Best Practices
 
데이터 분석에 필요한 기본 개념: 지표, Funnel 등 데이터를 이해하기 위한 멘탈 모델(Mental Model)
데이터 분석에 필요한 기본 개념: 지표, Funnel 등 데이터를 이해하기 위한 멘탈 모델(Mental Model)데이터 분석에 필요한 기본 개념: 지표, Funnel 등 데이터를 이해하기 위한 멘탈 모델(Mental Model)
데이터 분석에 필요한 기본 개념: 지표, Funnel 등 데이터를 이해하기 위한 멘탈 모델(Mental Model)
 
데이터 기반 성장을 위한 선결 조건: Product-Market Fit, Instrumentation, 그리고 프로세스
데이터 기반 성장을 위한 선결 조건: Product-Market Fit, Instrumentation, 그리고 프로세스데이터 기반 성장을 위한 선결 조건: Product-Market Fit, Instrumentation, 그리고 프로세스
데이터 기반 성장을 위한 선결 조건: Product-Market Fit, Instrumentation, 그리고 프로세스
 
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
BigQuery의 모든 것(기획자, 마케터, 신입 데이터 분석가를 위한) 입문편
 
SSII2021 [OS2-03] 自己教師あり学習における対照学習の基礎と応用
SSII2021 [OS2-03] 自己教師あり学習における対照学習の基礎と応用SSII2021 [OS2-03] 自己教師あり学習における対照学習の基礎と応用
SSII2021 [OS2-03] 自己教師あり学習における対照学習の基礎と応用
 
'Growth Hacking (그로스 해킹)’ 적용 사례
'Growth Hacking (그로스 해킹)’ 적용 사례'Growth Hacking (그로스 해킹)’ 적용 사례
'Growth Hacking (그로스 해킹)’ 적용 사례
 
バグなんて見逃しちゃえ
バグなんて見逃しちゃえバグなんて見逃しちゃえ
バグなんて見逃しちゃえ
 
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイントSpringを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
 
서비스 기획자를 위한 데이터분석 시작하기
서비스 기획자를 위한 데이터분석 시작하기서비스 기획자를 위한 데이터분석 시작하기
서비스 기획자를 위한 데이터분석 시작하기
 
프로덕트를 빠르게 개선하기 위한 베이지안 A/B 테스트
프로덕트를 빠르게 개선하기 위한 베이지안 A/B 테스트프로덕트를 빠르게 개선하기 위한 베이지안 A/B 테스트
프로덕트를 빠르게 개선하기 위한 베이지안 A/B 테스트
 
backbone としての timm 入門
backbone としての timm 入門backbone としての timm 入門
backbone としての timm 入門
 
[PAP] 팝콘 시즌 1 컨퍼런스 사전 QnA
[PAP] 팝콘 시즌 1 컨퍼런스 사전 QnA[PAP] 팝콘 시즌 1 컨퍼런스 사전 QnA
[PAP] 팝콘 시즌 1 컨퍼런스 사전 QnA
 
CIが分からない PE(SETエンジニア)の1年生がWebAPIの負荷テストを 背伸びしてCI運用した
CIが分からないPE(SETエンジニア)の1年生がWebAPIの負荷テストを背伸びしてCI運用したCIが分からないPE(SETエンジニア)の1年生がWebAPIの負荷テストを背伸びしてCI運用した
CIが分からない PE(SETエンジニア)の1年生がWebAPIの負荷テストを 背伸びしてCI運用した
 
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
2 5 3.一般化線形モデル色々_Gamma回帰と対数線形モデル
 
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and Editing
 
Little Big Data #1. 바닥부터 시작하는 데이터 인프라
Little Big Data #1. 바닥부터 시작하는 데이터 인프라Little Big Data #1. 바닥부터 시작하는 데이터 인프라
Little Big Data #1. 바닥부터 시작하는 데이터 인프라
 
営業チームの案件管理をConfluenceでやってみた
営業チームの案件管理をConfluenceでやってみた営業チームの案件管理をConfluenceでやってみた
営業チームの案件管理をConfluenceでやってみた
 
AWS 技術者向け Azure サービス解説 de:code2019版 #CD81
AWS 技術者向け Azure サービス解説 de:code2019版 #CD81AWS 技術者向け Azure サービス解説 de:code2019版 #CD81
AWS 技術者向け Azure サービス解説 de:code2019版 #CD81
 
올바른 분석을 방해하는 함정 카드 피해가기
올바른 분석을 방해하는 함정 카드 피해가기올바른 분석을 방해하는 함정 카드 피해가기
올바른 분석을 방해하는 함정 카드 피해가기
 
역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdf역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdf
 

Ähnlich wie Facebook prophet

생체 광학 데이터 분석 AI 경진대회 1위 수상작
생체 광학 데이터 분석 AI 경진대회 1위 수상작생체 광학 데이터 분석 AI 경진대회 1위 수상작
생체 광학 데이터 분석 AI 경진대회 1위 수상작DACON AI 데이콘
 
파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트itproman35
 
Chapter 8 - optimization for training deep models
Chapter 8 - optimization for training deep modelsChapter 8 - optimization for training deep models
Chapter 8 - optimization for training deep modelsKyeongUkJang
 
Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical MethodologyKyeongUkJang
 
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작DACON AI 데이콘
 
11_빠른 개발 가능한 레벨 편집 시스템
11_빠른 개발 가능한 레벨 편집 시스템11_빠른 개발 가능한 레벨 편집 시스템
11_빠른 개발 가능한 레벨 편집 시스템noerror
 
PYCON KR 2017 - 구름이 하늘의 일이라면 (윤상웅)
PYCON KR 2017 - 구름이 하늘의 일이라면 (윤상웅)PYCON KR 2017 - 구름이 하늘의 일이라면 (윤상웅)
PYCON KR 2017 - 구름이 하늘의 일이라면 (윤상웅)Haezoom Inc.
 
HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델Seong-Bok Lee
 
분석과 설계
분석과 설계분석과 설계
분석과 설계Haeil Yi
 
OpenJigWare(V02.00.04)
OpenJigWare(V02.00.04)OpenJigWare(V02.00.04)
OpenJigWare(V02.00.04)Jinwook On
 
파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)SK(주) C&C - 강병호
 
CNN visualization implementaion
CNN visualization implementaionCNN visualization implementaion
CNN visualization implementaion태영 정
 
Template at c++
Template at c++Template at c++
Template at c++Lusain Kim
 
Metric Learning 세미나.pptx
Metric Learning 세미나.pptxMetric Learning 세미나.pptx
Metric Learning 세미나.pptxDongkyunKim17
 
이권일 Sse 를 이용한 최적화와 실제 사용 예
이권일 Sse 를 이용한 최적화와 실제 사용 예이권일 Sse 를 이용한 최적화와 실제 사용 예
이권일 Sse 를 이용한 최적화와 실제 사용 예zupet
 

Ähnlich wie Facebook prophet (20)

생체 광학 데이터 분석 AI 경진대회 1위 수상작
생체 광학 데이터 분석 AI 경진대회 1위 수상작생체 광학 데이터 분석 AI 경진대회 1위 수상작
생체 광학 데이터 분석 AI 경진대회 1위 수상작
 
파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트
 
Chapter 8 - optimization for training deep models
Chapter 8 - optimization for training deep modelsChapter 8 - optimization for training deep models
Chapter 8 - optimization for training deep models
 
Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical Methodology
 
PaLM Paper Review
PaLM Paper ReviewPaLM Paper Review
PaLM Paper Review
 
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
 
11_빠른 개발 가능한 레벨 편집 시스템
11_빠른 개발 가능한 레벨 편집 시스템11_빠른 개발 가능한 레벨 편집 시스템
11_빠른 개발 가능한 레벨 편집 시스템
 
PYCON KR 2017 - 구름이 하늘의 일이라면 (윤상웅)
PYCON KR 2017 - 구름이 하늘의 일이라면 (윤상웅)PYCON KR 2017 - 구름이 하늘의 일이라면 (윤상웅)
PYCON KR 2017 - 구름이 하늘의 일이라면 (윤상웅)
 
CS294-112 18
CS294-112 18CS294-112 18
CS294-112 18
 
HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델HR Analytics - 퇴직가능성예측모델
HR Analytics - 퇴직가능성예측모델
 
분석과 설계
분석과 설계분석과 설계
분석과 설계
 
OpenJigWare(V02.00.04)
OpenJigWare(V02.00.04)OpenJigWare(V02.00.04)
OpenJigWare(V02.00.04)
 
Matlab guide
Matlab guideMatlab guide
Matlab guide
 
파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)파이썬으로 익히는 딥러닝 기본 (18년)
파이썬으로 익히는 딥러닝 기본 (18년)
 
CNN visualization implementaion
CNN visualization implementaionCNN visualization implementaion
CNN visualization implementaion
 
AUTOML
AUTOMLAUTOML
AUTOML
 
Automl
AutomlAutoml
Automl
 
Template at c++
Template at c++Template at c++
Template at c++
 
Metric Learning 세미나.pptx
Metric Learning 세미나.pptxMetric Learning 세미나.pptx
Metric Learning 세미나.pptx
 
이권일 Sse 를 이용한 최적화와 실제 사용 예
이권일 Sse 를 이용한 최적화와 실제 사용 예이권일 Sse 를 이용한 최적화와 실제 사용 예
이권일 Sse 를 이용한 최적화와 실제 사용 예
 

Mehr von Minho Lee

230304 UX/UI 해외 인기 아티클 8기 발표
230304 UX/UI 해외 인기 아티클 8기 발표230304 UX/UI 해외 인기 아티클 8기 발표
230304 UX/UI 해외 인기 아티클 8기 발표Minho Lee
 
221105 UX/UI 해외 인기 아티클 7기 : 1주차 발표
221105 UX/UI 해외 인기 아티클 7기 : 1주차 발표221105 UX/UI 해외 인기 아티클 7기 : 1주차 발표
221105 UX/UI 해외 인기 아티클 7기 : 1주차 발표Minho Lee
 
220806 UX/UI 해외 인기 아티클 6기 : 3주차 발표
220806 UX/UI 해외 인기 아티클 6기 : 3주차 발표220806 UX/UI 해외 인기 아티클 6기 : 3주차 발표
220806 UX/UI 해외 인기 아티클 6기 : 3주차 발표Minho Lee
 
220319 해외 아티클 스터디 5기 : 1주차 발표
220319 해외 아티클 스터디 5기 : 1주차 발표220319 해외 아티클 스터디 5기 : 1주차 발표
220319 해외 아티클 스터디 5기 : 1주차 발표Minho Lee
 
201107 해외 아티클 스터디 2기 : 2주차 발표
201107 해외 아티클 스터디 2기 : 2주차 발표201107 해외 아티클 스터디 2기 : 2주차 발표
201107 해외 아티클 스터디 2기 : 2주차 발표Minho Lee
 
[DS Meetup] iPad로 가벼운 분석환경 구축해보기
[DS Meetup] iPad로 가벼운 분석환경 구축해보기[DS Meetup] iPad로 가벼운 분석환경 구축해보기
[DS Meetup] iPad로 가벼운 분석환경 구축해보기Minho Lee
 
Today I Learned - Bayesian Statistics
Today I Learned - Bayesian StatisticsToday I Learned - Bayesian Statistics
Today I Learned - Bayesian StatisticsMinho Lee
 
그래프에서 대시보드까지, 서비스를 위한 데이터 시각화
그래프에서 대시보드까지, 서비스를 위한 데이터 시각화그래프에서 대시보드까지, 서비스를 위한 데이터 시각화
그래프에서 대시보드까지, 서비스를 위한 데이터 시각화Minho Lee
 
For Better Data Visualization
For Better Data VisualizationFor Better Data Visualization
For Better Data VisualizationMinho Lee
 

Mehr von Minho Lee (9)

230304 UX/UI 해외 인기 아티클 8기 발표
230304 UX/UI 해외 인기 아티클 8기 발표230304 UX/UI 해외 인기 아티클 8기 발표
230304 UX/UI 해외 인기 아티클 8기 발표
 
221105 UX/UI 해외 인기 아티클 7기 : 1주차 발표
221105 UX/UI 해외 인기 아티클 7기 : 1주차 발표221105 UX/UI 해외 인기 아티클 7기 : 1주차 발표
221105 UX/UI 해외 인기 아티클 7기 : 1주차 발표
 
220806 UX/UI 해외 인기 아티클 6기 : 3주차 발표
220806 UX/UI 해외 인기 아티클 6기 : 3주차 발표220806 UX/UI 해외 인기 아티클 6기 : 3주차 발표
220806 UX/UI 해외 인기 아티클 6기 : 3주차 발표
 
220319 해외 아티클 스터디 5기 : 1주차 발표
220319 해외 아티클 스터디 5기 : 1주차 발표220319 해외 아티클 스터디 5기 : 1주차 발표
220319 해외 아티클 스터디 5기 : 1주차 발표
 
201107 해외 아티클 스터디 2기 : 2주차 발표
201107 해외 아티클 스터디 2기 : 2주차 발표201107 해외 아티클 스터디 2기 : 2주차 발표
201107 해외 아티클 스터디 2기 : 2주차 발표
 
[DS Meetup] iPad로 가벼운 분석환경 구축해보기
[DS Meetup] iPad로 가벼운 분석환경 구축해보기[DS Meetup] iPad로 가벼운 분석환경 구축해보기
[DS Meetup] iPad로 가벼운 분석환경 구축해보기
 
Today I Learned - Bayesian Statistics
Today I Learned - Bayesian StatisticsToday I Learned - Bayesian Statistics
Today I Learned - Bayesian Statistics
 
그래프에서 대시보드까지, 서비스를 위한 데이터 시각화
그래프에서 대시보드까지, 서비스를 위한 데이터 시각화그래프에서 대시보드까지, 서비스를 위한 데이터 시각화
그래프에서 대시보드까지, 서비스를 위한 데이터 시각화
 
For Better Data Visualization
For Better Data VisualizationFor Better Data Visualization
For Better Data Visualization
 

Facebook prophet

  • 2. Time Series Analysis 시계열 예측은 많은 곳에서 필요로 하지만, 깊게 분석할 수 있는 사람은 많지 않다 완전히 자동화된 예측 기법들은 예측에 도움이 될 다양한 가정과 경험을 모형 안에 포함시키기 어렵다
  • 3. Time Series Analysis 그래서 만들었다 페북이
  • 4. Prophet Facebook에서 만든 시계열 분석/예측 라이브러리 (R, Python) 시계열 분석/예측에 대한 전문적인 지식을 가지고 있지 않더라도 직관적인 몇 가지 파라미터를 가지고 조작할 수 있도록 한다
  • 5. Model Components 3개의 메인 컴포넌트로 구성된 Decomposable Time Series Model Growth Seasonality Holidays (Events) y(t) = g(t) + s(t) + h(t) + error
  • 6. Model Components - ARIMA 등 많은 시계열 모형과는 다르게 시간에 종속적인 구조를 가지지 않는다 - 대신에 Curve Fitting으로 문제를 해결 - 그로 인해 얻게 된 이점이 있다 - 모형이 굉장히 유연해진다 - 측정하는 시간이 꼭 일정한 주기를 가질 필요가 없다 비어있는 구간을 interpolate 하지 않아도 됨 - 학습 속도가 빠르다 - 직관적으로 이해할 수 있는 파라미터를 통해 모형을 조정할 수 있다
  • 7. Model Components : Growth - Linear Growth (+ Change Point) - change point는 자동으로 탐지한다 - 예측할 때는 특정 지점이 change point인지 여부를 확률적으로 결정 - Non-Linear Growth (LogisticGrowth) - 자연적인 상한선이 존재하는 경우 : Capacity - Capacity는 시간에 따라 변할 수 있다
  • 8. Model Components : Seasonality - 사용자들의 행동 양식으로 인해 주기적으로 나타나는 패턴 - ex) 방학, 휴가, 온도, 주말 등등 - Fourier Series를 이용해서 패턴의 근사치를 찾는다
  • 9. Model Components : Holidays - 주기성을 가지지는 않지만 전체 추이에 큰 영향을 주는 이벤트가 존재한다 - 이벤트의 효과는 독립적이라고 가정 - 이벤트 앞뒤로 window 범위를 지정해서 해당 이벤트가 미치는 영향의 범위를 설정할 수 있다
  • 10. Model Fitting - Stan을 통해 모델을 학습시킨다 - probabilistic programming language forstatistical inference - Written in C++ - 크게 두 가지 방식을 사용 - MAP (Maximum A Posteriori) : Default - 속도가 훨씬 빠르다 - MCMC (Markov Chain Monte Carlo) - 모형의 변동성을 더 자세히 살펴볼 수 있음
  • 11. Model Fitting : Stan sample code model { // Priors k ∼ normal(0, 5); b ∼ normal(0, 5); epsilon ∼ normal(0, 0.5); delta ∼ double_exponential(0, tau); beta ∼ normal(0, sigma); // Non-linear Likelihood y ∼ normal(C ./ (1 + exp(-(k + A * delta) .* (t - (b + A * gamma)))) + X * beta, epsilon); // Linear Likelihood y ∼ normal((k + A * delta) .* t + (m + A * gamma) + X * beta, sigma); }
  • 12. Analyst-in-the-loop Modeling - 모형을 구성하는데 필요한 통계적 지식이 없더라도 직관적인 파라미터를 통해 모형을 조정할 수 있다 - 일반적인 경우 에는 기본값만 사용하더라도 높은 성능을 낼 수 있도록 설정되어 있음 - 내부가 어떻게 동작하는지에 대해서 고민할 필요없도록! -> Analyst in the Loop
  • 13. Analyst-in-the-loop Modeling Capacities Change points Holidays & Seasonality Smoothing 시계열 데이터 전체의 최대값 추세가 변화하는 시점 추세에 영향을 미치는 시기적 요인들 각각의 요소들이 전체 추이에 미치는 영향의 정도
  • 14. Where Prophet Shines? - 많은 시계열 데이터 (연 단위 이상이면 좋음) - 불규칙적으로 일어나지만 사전에 시점을 알고 있는 이벤트가 있는 경우 ex) 한국시리즈,크리스마스 - 결측치가 어느 정도 존재하거나, 아웃라이어가 많은 경우 - 특정한 이벤트로 인해 장기적인 추이가 변할 수 있는 경우 ex) 신제품 출시, 디자인 변경 - 지표가 선형으로 증가하지 않을 경우 증가할 수 있는 지표의 최대치가 존재하고 이를 알고있는 경우
  • 15. Examples : Bitcoin Price Trend (분단위) 2017년 6/1 ~ 7/7 분단위 데이터로 8~15일 추이 예측
  • 16. Examples : Bitcoin Price Trend (Daily) 2017년 4월~6월 일별 데이터로 7월 추이 예측
  • 17. Forecastingat scale Simple Adjustable models Scalable performance monitoring a large numberof analysts to forecast a large numberanda variety of time series Forecastingat scale