Autocorrelation function은 시계열 데이터에서 시차 (lag, 아래 예시에서는 k) 만큼 떨어진 두 값 사이의 상관관계를 수치로 나타낸 것이다. 더 정확하게는, 자기공분산을 분산으로 표준화한 값이다.
자기공분산
시계열 데이터 Yt의 평균을 Yˉ라 할 때, 시차 k의 자기공분산은 다음과 같다.
γ(k)=N1t=k+1∑N(Yt−Yˉ)(Yt−k−Yˉ),
이 때 사실은 N−k로 나누는 것이 불편추정량이다. 통계적 추론(표본 공분산 추정)에서는 N−k로 나눈다. N으로 나누는데,계산이 더 간단하기도 하고, k가 클 때 표본이 줄어들어 분산이 커지는 문제가 해결되어 ACF 그래프가 덜 요동치게 된다. 그래서 ACF 플롯을 그릴 때에는 N으로 나눔.
k=0을 대입하면 γ(0)=N1∑t=1N(Yt−Yˉ)2이라, 분산과 동일해진다.
γ(0)=Var(Y)
자기상관 함수
ACF는 자기공분산을 분산으로 표준화한 값으로, 항상 -1에서 +1 사이이다.
ρ(k)=γ(0)γ(k).
ρ(k)>0 이면 양(+)의 상관, ρ(k)<0 이면 음(–)의 상관
예시 (Lag = 1)
γ(1)=N1t=2∑N(Yt−Yˉ)(Yt−1−Yˉ),ρ(1)=γ(0)γ(1).
이 과정을 여러 시차 k=1,2,…에 대해 반복하면 ACF 플롯을 그릴 수 있다.
Partial ACF
PACF at lag k은 시계열 Yt와 Yt−k 사이의 순수한 상관관계로, 그 사이의 모든 중간 시차(lags 1,2,…,k−1)가 설명하는 부분을 제거한 후 남는 상관관계다.
PACF를 αk 또는 ϕkk로 표기하며, 회귀 잔차 간의 상관관계로 정의할 수 있다:
ϕkk=Corr(Yt−Y^t(k−1),Yt−k−Y^t−k(k−1)),
여기서
- Y^t(k−1)는 시차 1부터 k−1까지를 설명 변수로 한 선형 회귀모형의 예측값
- Y^t−k(k−1)도 동일 회귀모형을 적용한 예측값
정상 시계열에서 ACF가 빠르게 사라지는 이유
약한 정상성(Weak Stationarity) 조건
- 평균이 일정
- 분산이 일정
- 자기공분산이 시차 k에만 의존하며 k→∞일 때 0으로 수렴
가장 간단한 정상 시계열 AR(1) 모형은
Yt=ϕYt−1+εt,∣ϕ∣<1
이때 자기상관함수(ACF)는 다음과 같이 닫힌 형태(closed‑form)로 구해짐:
ρ(k)=ϕk.
- 지수적 감쇠(exponential decay): ∣ϕ∣<1 이므로 k가 증가할수록 ϕk는 빠르게 0으로 수렴함.
AR(p) 모형 일반화
일반적인 AR(p) 모형
Yt=ϕ1Yt−1+ϕ2Yt−2+⋯+ϕpYt−p+εt
에서도 정상성 조건인 모든 근(root)이 단위원(absolute value 1) 바깥에 위치하면(즉, ∣ϕi∣<1을 포함한 복소수 조건) ACF는 역시 지수적(또는 조화적)으로 감쇠함.
Non-Stationary에서 ACF가 천천히 감소하는 이유
가장 단순한 형태의 non-stationary 모델
Yt=Yt−1+εt,εt∼i.i.d.(0,σ2)
이를 풀어 쓰면
Yt=Y0+i=1∑tεi.
lag k에 대해
γ(k)=Cov(Yt,Yt−k)=Var(i=1∑t−kεi)=(t−k)σ2.
ACF
ρ(k)=γ(0)γ(k)=tσ2(t−k)σ2=1−tk.
t≫k일 때 ρ(k)≈1이므로 ACF가 매우 천천히 감소한다. 이는 과거 충격이 누적(accumulation)되어 오래 남기 때문이다.