h2o 패키지 학습 및 포트폴리오 관리를 위해 rstudio가 아닌 jupyter notebook을 사용해보려고 한다.

 

파이썬or아나콘다와 설치하는 jupyter notebook의 버전이 일치하지 않음 or 최신이 아니라서 발생하는 오류로 추정

→ notebook을 삭제하고 버전을 수정하여 다시 설치해준다.

 

pip uninstall notebook
pip install notebook==5.7.5

 

※ 댓글 : alifuk 참고

 

 

https://github.com/jupyter/notebook/issues/4491

 

Jupyter Notebook does not show anything in browser · Issue #4491 · jupyter/notebook

When I run "jupyter notebook" from the Anaconda prompt, I get a redirect notice and then just a blank webpage. No directories or menus or any text whatsoever. I am running windows 10 x64 ...

github.com

'분석 > 머신러닝' 카테고리의 다른 글

LSTM - components  (0) 2019.08.13
머신러닝에서 평가 메트릭(continuous)  (0) 2019.03.28
XGBoost에 관한 이해  (0) 2019.03.07

2019년에 세웠던 여러가지 목표 중 가장 중심을 두고 있는 것은 영어회화 공부이다.

 

물론 매일 실천하고 있지는 않지만... 영어공부를 위한 도구로 여러 사람들이 추천했던 쉐도잉 방법을 사용하고 있다.

 

처음에는 "이영시 영어듣기 연습" 이라는 컨텐츠를 통화 영화 Wongfu를 따라했었고, 채널에 있는 모든 영상을 마무리했다.

 

마무리한 후 같은 컨텐츠로 계속 반복하는 것이 더욱 도움이 될 것 같았지만, 성격상 지루해서 그렇게 하지 못했다.

 

그래서 다른 소재를 찾던 중 예전에 꽤 좋아했던 영화 '인턴'으로 쉐도잉 연습을 할 수 있게 만들어 둔 채널이 있었다.

 

해당 채널에서 19편의 컨텐츠 중 오늘 17편까지 학습을 마무리 했다.

 

보통 한편을 학습하는데 1시간 정도 소요되는 것 같다.

 

그래서 얼마나 늘었니... 라는 질문에 자신감있게 대답하기는 어렵지만, 일단 멈추지 않고 꾸준히 한다는 것에 의의를 두고있다.

 

작년에 잠깐하다가 그만두었던 전화영어도 5월부턴 다시 시작해보려한다.

 

이 글을 쓰는 이유는 영어공부를 하려는 의지를 잊지 않기 위해서이다.

 

올해의 목표는 올해가 가기 전에 오픽 AL 받기

 

 

 

< 이영시 유튜브 채널 #1 >

https://www.youtube.com/watch?v=BQ1GVVhyiQI&t=7s

 

< 같영구 인턴 영어연습 #17 >

https://www.youtube.com/watch?v=Ei6OEXIYVuc&list=PL5_C8ThHPXkXiDPS5m__2dKZktQIgvVwM&index=17

'영어공부 > 영어듣기' 카테고리의 다른 글

이영시6  (0) 2018.10.18
이영시5 영어듣기연습  (0) 2018.10.16
이영시4 영어듣기 연습  (0) 2018.10.15
이영시 영어듣기 3강  (0) 2018.10.11
이영시 영어듣기연습 2회  (0) 2018.10.09
내가 했던 분석들을 나열하고 그 내용과 거기서 배운 것을 정리해보자.

1. 엘포인트
  - 금액, 카운트 등의 데이터는 대부분 Right skewed 이고, 로그 변환이 유용

2. 다변량, 농구 데이터 분석
  - 집계된 데이터일수록 정규성에 근접, 예측또한 평균에 근접( 분산이 작아짐)

3. 세스, 개인화 추천알고리즘
  - 추천알고리즘

4. 비만과 커피 분석
  - 로짓 모형의 제약 조건
  - 회귀분석에서 f검정의 의미
  - 데이터가 가지는 산포의 의미

5. 통화수요예측
  - 오버피팅
  - 미래에 대한 수요 예측
  - dynamic regression
  - categorical variable

'분석' 카테고리의 다른 글

파이썬을 활용한 업무자동화  (0) 2020.06.02
파이썬 이미지 OCR  (0) 2020.05.10
[spark] 스파크 공부하기  (0) 2020.02.13
Erlang  (0) 2019.04.04
[R] 데이터 불러오기 오류_line 1 did not have 41 elements  (0) 2018.10.21

[ Abstract ]

 

traffic : 통신망을 통과하는 정보의 흐름(전송되는 정보의 양),

          통신망과 통신 기기를 점유하는 시간으로 그 양을 나타냄

 

통신분야에서 회선이나 전환 장치와 같은 서비스 제공 요소의 offered load 또는 carried load의 측정단위

* offered load : traffic in a queue에 대한 측정 (queuing theory)

   - Little's law : the arrival rate into the queue은 mean holding time에 비례한다.

 

하나의 cord circuit은 한 시간에 60분에 해당하는 이용가능한 capa를 갖는다.

각 capa의 Full utilization(즉 60분의 traffic)은 1 얼랑(erlang)으로 대체할 수 있다.

 

Carried traffic : 주어진 기간 동안에 측정되는 평균 동시통화의 수(the average number of concurrent calls)

Offered traffic : 모든 통화시도가 연결된다면 전송되는 traffic

 

실재로 얼마나 많은 offered traffic이 전달될지는 모든 서버가 사용 중일때, 응답못한 통화(unanswered calls)에 무슨 일이 발생하는가에 따라 달라진다.

 

 

* Queueing Theory

  - Erlang-B

    1) assumptions

       ㆍ대기가 없다. 즉, 모든 서버 요소들이 이미 사용중이라면, 새로 도착한 통화는 차단되며 잠재적으로 손실이다.

          공식은 이것이 발생할 확률을 제공한다.       

  - Erlang-C

    1) assumptions

       ㆍ무제한 대기상태의 가능성에서, 모든 서버가 사용중일 때 대기중 기다릴 필요가 있는 시간에 대한 확률을 제공한다.

  → 이용가능한 서버의 수가 서비스 품질과 관련있다.

      두 공식은 offered load를 주된 입력 값으로 받는다.

      (종종 call arrival rate times(*) average call length로 표현됨)

 

      얼랑 공식은 꽤 광범위하게 적용 가능하지만, 정체된 traffic이 많아 재통화 시도가 많을 경우 실패할 수 있다.

      재통화를 설명하는 방법 중 하나는 Extended Erlang B method 사용한다.(대기를 허용하지 않을 때)

 

 

[ 전화 회로의 traffic measurement ]

 

1) carried traffic을 표현하고자 할 때,

   "erlangs"는 서비스 제공요소에 의해 전달되는 동시통화 가능한 평균 수를 의미

   평균은 일부 합리적인 기간에 걸쳐 계산된다.

 

   1얼랑은 a single resource being in continuous use.

   (연속적인 상황에서 1인분이라 생각하면 되는 듯)

   예를 들어 회사가 항상 바쁜 두명의 통신 상담원을 고용중이라면, 이것은 2얼랑을 가진 것이다.

   관심있는 특정 기간 동안에 연속적으로 점유되는 하나의 라디오 채널을 가지고 있다면 이것은 1얼랑이다.

 

2) Offered traffic을 표현하고자 할 때,

   얼랑은 모든 회선이 사용중일 때도 통화시도를 거절하지 않는 상황에서

   평균 동시 통화 수를 말한다.

 

   Carried traffic과 Offered traffic은 시스템 설계와 유저 행동에 의존한다.

   세가지 공통적인 모형이 이용가능하다.

   (a) 통화시도가 거절된 고객은 떠나고, 다시 인입되지 않는다.

   (b) 통화시도가 거절된 고객은 다시 인입될 수 있지만, 그 간격이 짧다.

   (c) 스템은 모든 유저들에게 회선이 이용가능해질 때까지 대기를 허용한다.

 

3) instantaneous traffic

 

 

[ 얼랑의 분석 ] 

 

얼랑에 의해 도입된 개념과 수학은 통신분야에서 널리 이용가능하다.

유저가 사전 예약 없이 많든 적든 임의로 서비스 제공 요소로부터 독점적 서비스를 받을때마다 적용한다.

하지만 얼랑의 모형은 서비스 제공요소가 공유되거나, 각기 다른 유저가 다른 양의 서비스를 제공받는다면 적용할 수 없다.

 

얼랑 트래픽 이론(Erlang's traffic theory)의 목적은 공급 과다 없이 유저를 만족시킬 수 있는 서비스를 제공하기 위해서 얼마나 많은 서비스 제공 요소가 필요한지를 정확하게 결정하는 것이다.

이를 위해 타켓은 서비스 등급 또는 서비스 품질이 된다.

예를 들어 대기를 허용하지 않는 상황에서, 서비스 등급은 100건의 통화 중 거절되는 통화가 1건 이상이면 안된다 등

→ 콜 차단에 대한 확률을 구해 얼랑-B 공식을 적용

 

유저 행동과 시스템 오퍼레이션에 따라 다양한 모델을 적용할 수 있다.

birth-death process로 알려진 continuous-time Markov processes의 특별한 케이스로 유도될 수 있다.

최근 Extended Erlang B 방법은 더 좋은 해결책을 제시할 수 있다.

 

 

[ offered traffic 계산 ]

 

E = L * h

  E : 얼랑(offered traffic)

  L : the call arrival rate

  h : the average call-holding time (평균통화시간)

 

L과 h는 같은 시간 단위를 사용해 표현된다.

 

traffic에 대한 실질적 측정은 보통 며칠, 몇주 동안의 연속형 관측치에 의존한다.

즉각적인 트래픽이 정기적으로, 짧은 구간 단위로 기록되어진다.

이러한 측정은 가장 보편적인 busy hour traffic이라는 단일 결과를 계산하는데 사용되어진다.

이것은 한 구간 동안의 평균 동시통화 건수로, 하루 중 가장 높은 값을 가지는 구간에서의 동시통화건수이다.

각 일자별로 이 값을 산출해 평균을 취하는 방식을 사용한다. 

 

이미 과부하된 시스템에서 busy-hour carried traffic이 존재하고, 상당 수준의 차단을 가지고 있다면

offered traffic을 추정할 때, 차단된 콜수를 고려해야한다.

Eo = Ec / (1-Pb) 를 통해 offered traffic을 추정하려할 때,

차단된 콜과 성공한 콜을 세는 시스템이 있는 경우, 차단된 통화의 비율로 Pb를 직접 추정가능하다.

안된다면 Eo대신에 Ec를 사용한 얼랑 공식을 통해 Pb를 추정하고, 그 결과값을 Eo를 추정하는데 사용할 수 있다.

 

과부하된 시스템에서 Eo를 추정하는 다른 방법으로 busy-hour call arrival rate을 측정하는 것이 있다.

성공과 차단 콜수를 세고(L), 성공한 콜의 평균통화시간(h)을 구한다.

그리고 E=L*h 의 공식으로 Eo를 추정한다.

 

다루고자 하는 트래픽이 완전히 새로운 경우, 오직 예상가능한 유저 행동을 모형화하는 시도만이 가능하다.

 

 

[ 얼랑 B 공식 ] 

 - 동일한 병렬 자원에서 차단확률을 구한다.

 

[ 얼랑 확장된 B 공식 ] 

 

 

[ 얼랑 C 공식 ] 

  - 공식은 고객이 전화를 끊지 않을 것이라 가정한다.

    즉, 실질적 필요 capa보다 과다하게 예측하는 경우가 많음.

 

 

 

출처 : https://en.wikipedia.org/wiki/Erlang_(unit)

'분석' 카테고리의 다른 글

파이썬을 활용한 업무자동화  (0) 2020.06.02
파이썬 이미지 OCR  (0) 2020.05.10
[spark] 스파크 공부하기  (0) 2020.02.13
분석 경험 정리하기  (0) 2019.04.22
[R] 데이터 불러오기 오류_line 1 did not have 41 elements  (0) 2018.10.21

 

 

https://ukchanoh.wordpress.com/2015/02/16/multicollinearity/

 

언제 다중공선성(multicollinearity)을 무시해도 괜찮은가?

생각해보니 통계분석에서 가장 많이 받았던 질문 주제 중의 하나가 다중공선성이었다. 다중공선성은 절대적인 진단기준도 없을 뿐더러 처치방법도 별로 없으니 크게 신경쓰지 말라는 취지의 얘기를 주로 했는데 그리 책임있는 답변은 아닌 듯 하다. 이 문제와 관련하여 Paul D. Allison 교수(University of Pennsylvania)의 아래 글이 …

ukchanoh.wordpress.com

 

1. 관심변수가 아닌 통제변수인 경우

  - 관심변수의 VIF 값은 낮은 경우

 

2. interaction term 또는 power와의 관계

  - 증명될 수 있다고 함

 

3. 3개 이상의 범주를 가지는 더미변수

 

 

 

 

https://statisticsbyjim.com/regression/multicollinearity-in-regression-analysis/

 

Multicollinearity in Regression Analysis: Problems, Detection, and Solutions - Statistics By Jim

Multicollinearity is when independent variables in a regression model are correlated. I explore its problems, testing your model for it, and solutions.

statisticsbyjim.com

  1. Multicollinearity affects the coefficients and p-values, but it does not influence the predictions, precision of the predictions, and the goodness-of-fit statistics. If your primary goal is to make predictions, and you don’t need to understand the role of each independent variable, you don’t need to reduce severe multicollinearity.
    예측이 목적이며, 설명변수에 대한 이해가 필요하지 않다면 다중공선성을 그리 걱정하지 않아도 된다??
      ㆍThe fact that some or all predictor variables are correlated among themselves does not, in general, inhibit
         our a
    bility to obtain a good fit nor does it tend to affect inferences about mean responses or predictions of
         new observations.  —Applied Linear Statistical Models, p289, 4
    th Edition.

'분석 > 통계' 카테고리의 다른 글

Time Series 3  (0) 2019.03.14
Time Series study2  (0) 2019.03.11
Time Series study  (0) 2019.03.09
최종 머신러닝 모형에서 variance를 줄이는 방법  (0) 2019.03.09
추세선의 증가하는 정도를 아는 방법 : 선형회귀분석  (0) 2019.03.05

https://medium.com/usf-msds/choosing-the-right-metric-for-machine-learning-models-part-1-a99d7d7414e4

 

Choosing the Right Metric for Evaluating Machine Learning Models — Part 1

First part of the series focussing on Regression Metrics

medium.com

 

 

평가메트릭 말고도 참고할만한 글이 많음.

'분석 > 머신러닝' 카테고리의 다른 글

LSTM - components  (0) 2019.08.13
[jupyter notebook] 설치했으나 run 결과 출력이 안되는 오류  (1) 2019.07.20
XGBoost에 관한 이해  (0) 2019.03.07

1. 머신러닝

  - 모델 결정

  - 주요 메트릭 정리 : 특히 AUC

  - validation에 대한 로직


2. 회귀

  - 다중공선성 정리

  - 변수선택

  - 회귀 진단


3. 텍스트 마이닝

  - fread( ) 함수를 이용해 readLines의 효과내기 : f <- fread("Batting.csv", sep= "?", header = FALSE)[[1L]]  # 파일에 없는 구분자를 사용

                                                                차라리 sep="\n" 라고 두는 것이 가능하면 이렇게도 괜찮을 듯?

                                         [[1L]] 을 추가하면 캐릭터 타입으로 변경됨. (왜인지는 모르겠음)

    ㆍhttps://stackoverflow.com/questions/32920031/how-to-use-fread-as-readlines-without-auto-column-detection

  - 한글 불러올 때 문제점

  - 워드클라우드

  - 명사/형용사

  - 정규표현식(쓸데 없는 표현 제거 정리)

  - 감성분석 

    ㆍ감성사전 등록

    ㆍ분석 대상 전처리(불용어 처리)

    ㆍ본문 단어와 긍정/부정 감성 사전 단어를 매칭

    ㆍ이를 계산하여 결론을 산출하는 로직 구현

'자격증 > ADP' 카테고리의 다른 글

13회차 ADP실기 합격 및 자격증 취득  (2) 2019.08.06

 - 활용사례 및 문법 바로 참고 가능 : http://ggplot2.tidyverse.org/reference

 - Cheat Sheet : https://www.rstudio.com/resources/cheatsheets

 - 그래프 색상 : color.adobe.com

    ※ 인기도순으로 정렬하면 고르기 편함

                     color-hex.com

 - 가지고있는 이미지에서 색상 추출 : https://encaion.shinyapps.io : 



 

< ARIMA model >

 - exponential smoothing은 데이터에서 trend와 seasonality를 설명하는 것을 기본으로 한다.

 - ARIMA는 데이터의 autocorrelations를 설명하는 것을 목표로 한다.

    → 둘은 상호보완적으로 다루어진다.


□ Stationarity and differencing

  - stationary time series : 관측된 시기에 영향을 받지 않는다.

    → white noise (trend, seasonality가 없는 상태)

        cyclic behaviour를 가지고 있더라도 trend나 seasonality가 존재하지 않으면 stationary 한 것이다.

        ∵ 사이클은 고정된 길이를 가지고 있지 않기 때문이다.(관측하기 전에 고점, 저점을 확신할 수 없음)

  - differencing : non-stationary → stationary

    → 연속적인 관측값 사이의 차이를 계산하라.

    로그변환은 ts data에서 variance를 안정화함

    Differencing은 mean을 안정화한다.(trend와 seasonality를 감소시킨다.)


  - Random walk model

    ㆍdifferenced series : 


    ㆍrandom walk model :  (white noise)

       → 장기간에 걸친 분명한 상승/하강 trend

           갑작스럽거나 예상치못한 방향의 변화

           예측값은 미래의 움직음을 예측할 수 없기 때문에 마지막 관측값과 같다.


  - Second-order differencing : 한번으로 stationary가 안되어 한 번 더 필요할 때

  - Seasonal differencing :  (lag-m differences)


  - differencing이 사용되었을 때, differences에 대해 설명가능해야 한다.


  - Unit root test : differencing이 필요한지를 판단하는 객관적 방법

    ㆍH0 : the data are stationary.

       cf) ur.kpss( ) / library(urca)

           ndiffs( ) : 몇 번의 difference를 추천하는가?

           nsdiffs( ) : seasonal data



□ Backshift notation


  -  (B operating on y_t )

  - back two periods : 

  - describing the process of first differencing : 

  - second order differences : 

  - a seasonal difference followed by a first difference can be written as :

 

    



□ Autogressive models

  - In an autoregression model, we forecast the variable of interest using a linear combination of past values of the variable.

    : 그 자체에 대응하는 변수의 회귀이기 때문에 autoregression이라는 용어를 사용


  - an autoregressive model of order p 

    :    (white noise)

    :  AR(p) model


    ㆍremarkably flexible at handling a wide range of different time series patterns.

    ㆍ계수의 변화에 따라 다른 패턴을 내놓는다.

    ㆍ오차는 오로지 series의 scale만을 변화시키고, 패턴 그 자체는 변화시키지 않는다.


  - 모델을 stationary한 데이터로 제한하기 위해 일반적으로 계수의 범위를 제한한다.(보통 -1~1 사이, p가 증가할수록 제약도 복잡해짐)



□ Moving Average models

  - 과거의 값을 사용하기보다, 과거 예측의 오차를 사용하는 모델

    :  

    : MA(q) model

  - 입실론의 variance는 오로지 series의 scale만을 변화시키고, 패턴 그 자체는 변화시키지 않는다.

  - AR(p) 모델은 MA()로 표현할 수 있다.

    : 

  - MA(q) 모델 또한 AR()로 표현이 가능

    : 


    1) abs(theta) > 1 : 시점으로부터 먼 값에 가중치를 더 준다.

    2) abs(theta) = 1 : 가중치가 모두 일정함

    3) abs(theta) < 1 : 시점으로부터 가까운 값에 가중치를 더 준다.(invertible)

 


□ Non-seasonal ARIMA models (Integration)

  - AR + MA : Non-seasonal ARIMA models

    :  

  - ARIMA(p, d, q) model

    ㆍp = order of the AR part

    ㆍd = degree of first differencing involved

    ㆍq = order of the MA part


  1) ARIMA(0, 0, 0) : White noise

  2) ARIMA(0, 1, 0) with no constant : Random walk 

  3) ARIMA(0, 1, 0) with constant : Random walk with drift

  4) ARIMA(p, 0, 0) : AR(p)

  5) ARIMA(0, 0, q) : MA(q)

  - Backshift notation 

    : 

    → R에서는 다른 표기법을 쓰기도 함 (차분 부분의 평균이동으로)

        적절한 p,d,q를 찾는 것은 어렵지만, R에서 auto.arima( ) 를 이용하면 자동으로 이 값을 얻을 수 있다.


  - c : long-term forecasts에 영향을 미친다.

  - d : prediction intervals에 영향을 미친다. (the higher d , the more rapidly the PI increase in size)

    ㆍd=0 → Long-term forecast sd 는 historical data의 sd와 같아진다. 그래서 PI 또한 동일해질 것이다.

  - p : cycle이 있는 경우 중요하다.

    ㆍcyclic forecasts를 얻으려면 p는 반드시 2 이상의 값이어야 한다.


□ ACF and PACF plots

  - partial autocorrelations : t번째와 t-k번째의 관계를 살필 때, 사이의 각 단계에서의 효과를 모두 제거하여 측정 (중복효과 방지를 위함)

  - k번째 partial autocorrelations 의 값은 AR(k)의 phi_k를 추정하는 것과 동일하다.



□ Estimation and order selection

  - MLE

  - AIC, BIC는 모델의 적절한 differencing order를 선택하는 가이드를 주지 않는다.

    단지 p, q를 선택하는데 도움을 준다.



□ Point forecast

□ Prediction Interval

  - differencing이 0이고 가정을 만족하면(stationary), 모든 구간에서 PI가 거의 같다.(수렴한다.)

  - d > 1 이면 PI는 지속적으로 증가할 것이다.

  - ARIMA-based model은 보통 아주 좁은 PI를 가지는데 이는 errors가 설명하는 variation만을 고려하기 때문이다.

    parameters를 추정하거나, 모델의 order에 대한 variation은 고려하지 않는다.

    또한 historical patterns가 미래에도 계속될 것이라는 가정이 필요하다.



□ Seasonal ARIMA models

  - including additional seasonal terms in ARIMA models(P,D,Q)

  - 차분이 들어간 모형이면 장기간 예측에서 PI는 지속적으로 커질 가능성이 높음(즉, 긴 기간에 대한 예측정확성이 낮음)

                                                                                                         → 그렇다면 단기간 예측에는 오히려 별 상관없이 쓸 수 ㅇ

  - variance가 증가하는 경향을 보일때 log변환은 적절한 방법



□ Test set evaluation

  - AICc 값으로 모델을 비교할 땐 같은 differencing order를 가지는 것이 중요했지만, 

    test set을 사용할 땐 그다지 중요하지 않다. 이러한 비교는 항상 타당하다.



□ ARIMA vs ETS

  - linear exponential smoothing model : special case of ARIMA

  - the non-linear exponential smoothing model : 적절한 ARIMA를 찾을 수 없음

                                                                 모든 ETS model은 non-stationary 지만 일부 ARIMA는 stationary 하다.



< Dynamic regression models >

  : we consider how to extend ARIMA models in order to allow other information to be included in the models.

    we will allow the errors from a regression to contain autocorrelation.

    error terms ~ ARIMA

    → 결국 모형은 두개의 오차항을 가지게 된다.(그중 ARIMA의 오차만 white noise를 가정)


  - 기존의 방식(LSE) 추정시 발생하는 문제 ( 추정 시)


     1) 추정된 계수는 best estimates가 아님 (계산 과정에서 몇몇 정보들은 무시된다)

     2) 통계적 가설검정의 결과를 신뢰할 수 없음

     3) AIC 값이 예측력을 평가하는데 좋은 지표가 아니게 됨

     4) spurious regression : 계수의 연관성과 관련하여 낮은 p-value를 출력하게 되어, 중요하지 않은 변수 또한 중요하다고 판단하게 될 수 있음


     → ARIMA의 오차항을 최소화하는 계수를 찾으면 이 문제들을 피할 수 있다.

        대안으로 MLE를 사용할 수 있다.

        ★ 가장 중요한 고려사항은 모델의 모든 변수들이 stationary 해야한다. (아닐경우 not consistent and not meaningful)

            단, non-stationary 한 변수들의 조합이 stationary 하다면 예외이다. (?)


      → 따라서 우선적으로 모델안의 non-stationary variables에 대해 difference 해야한다.

          (필요한 경우엔 모든 변수들에 대해 first difference를 수행할 수도 있다.)

          모델 안의 모든 변수들이 stationary하다면 ARMA errors for the residuals를 고려해야한다.


  - Regression with ARIMA errors in R



□ Stochastic and deterministic trends (linear trend)

  - Stochastic : 트렌드가 변할 것이다.

                    차분 필요함

                    PI가 크게 측정됨 (보수적)

  - deterministic : 트렌드가 변하지 않을 것이다.

                       차분 불필요

                       PI가 낮게 측정됨 (트렌드가 변하면 틀림)

  - 둘의 추정 계수(+ 예측값)은 비슷하되 PI는 아주 다를 수 있음



□ Dynamic harmonic regression

  - Long seasonal periods : 종종 Fourier terms를 가진 dynamic regression이 나은 경우가 있음.

  - 단점은 seasonality가 변하지 않는다고 가정하는 것이다.(실제로도 별로 변하지 않음)


    

□ Lagged predictors

  : 변수에 의한 영향이 즉각 반영되지 않고, 서서히 반영되는 경우

    stats::lag( ) 함수를 통해 변수를 밀 수 있음





Time series decomposition


□ Moving averages

  - Trend-Cycle을 추정하는데 사용

  - MA의 차수는 smoothness를 결정함( m↑ → smoother)

  - MA of MA : 가운데 자료에 가중치를 더 준다.(smoother)


□ Classical decomposition

  - assumption : the seasonal component is constant from year to year.

    * seasonal indices : 계절지수

  - 더 나은 방법들이 있기에 잘 쓰이진 않음.

    1) trend-cycle : 양 끝으로 사라지는 값이 존재 + over-smooth rapid rises and falls in the data

    2) seasonal component가 매년 반복될 것을 가정 but 그렇지 않은 경우가 많음. → 긴 시간 변화에 따른 seasonal change를 포착하지 못함.

    3) not robust to unusual values


□ X11 decomposition

  - quarterly and monthly data

  - based on classical decomposition

  - 양 끝 값에 대한 추정이 가능 + seasonal component : vary slowly over time.

  - has some sophisticated methods for handling trading day variation, holiday effects and the effects of known predictors. 

  - is entirely automatic and tends to be highly robust to outliers and level shifts


□ SEATS decomposition

  : Seasonal Extraction in ARIMA Time Series

  - works only with quarterly and monthly data.


□ STL decomposition

    * versatile : 다재다능한

  - will handle any type of seasonality, not only monthly and quarterly data.

  - be controlled by the user(change over time, the rate of change, the smoothness of the trend-cycle)

  - It can be robust to outliers 

  - unusual obs가 trend-cycle, seasonal components의 추정에 영향을 미치지 않지만,

    remainder component에는 영향을 미친다.

  - does not handle trading day or calendar variation automatically


  ★ parameters

      1) trend-cycle window(t.window) : is the number of consecutive observations to be used 

                                                           when estimating the trend-cycle

      2) seasonal window(s.window) : is the number of consecutive years to be used in 

                                                         estimating each value in the seasonal component. / 디폴트X

      → control how rapidly the trend-cycle and seasonal components can change.(smaller → rapid changes)

           should be odd numbers!




< Exponential smoothing >

  - 예측은 과거 값들의 가중평균이며, 순서가 멀어질수록 가중치가 낮아진다.


□ Simple exponential smoothing

  - is suitable for forecasting data with no clear trend or seasonal pattern.

  - 과거의 데이터보다 현재와 가까울수록 가중치를 둔다.

  - smoothing parameter : alpha in [0,1]


□ Trend methods

  - Holt's linear trend method



+ Recent posts