끄적이는 개발노트
260521_강의 정리 (시계열 분석) 본문
728x90
비지도 학습 · 시계열 분석
시계열 분석 정리
- 시간 순서로 관측한 값들의 집합 → 과거 패턴으로 현재 이해 및 미래 예측
- 자기상관이 존재하는 데이터 → 일반 회귀가 아닌 시계열 전용 분석 필요
1. 시계열 데이터란?
- 시간에 따라 순차적으로 관측한 값들의 집합
- 관측값들이 서로 독립적이지 않고 이전 값의 영향을 받음
- 자기상관이 있으면 반드시 시계열 분석 방법 적용
💡 새 개념 — 이 섹션에 등장하는 용어
비지도 학습 Unsupervised Learning
- 정답(레이블) 없이 데이터 패턴·구조를 스스로 탐색
- 시계열은 미래 정답 없이 과거 패턴만으로 예측 → 비지도 학습에 해당
자기상관 Autocorrelation
- 같은 시계열 내 서로 다른 두 시점 값 사이의 상관관계
- 값이 클수록 과거가 현재에 강하게 영향
오늘 주가 ↔ 어제 주가
독립성 Independence
- 각 관측값이 서로 영향을 주지 않는 상태
- 일반 회귀는 독립성을 전제 → 시계열 데이터에는 부적합
Pandas 시계열 자료구조
Time stamp
특정 시점 · DatetimeIndex
예: "2020-01-10"
예: "2020-01-10"
Time duration
시간 간격 · TimedeltaIndex
예: "10 hours"
예: "10 hours"
Fixed frequency
고정 주기 · PeriodIndex
예: "2 business days"
예: "2 business days"
2. 시계열 데이터의 4가지 특성
📈 경향 (Trend)
- 장기적 증가·감소 추세
- 방향성 있는 변화 패턴
🔄 주기 (Periodicity)
- 불규칙한 간격으로 반복
- 경기 사이클 등 비고정 주기
🗓 계절성 (Seasonal)
- 연·월·주 등 고정 주기로 반복
- 달력 기준으로 패턴 고정
🎲 불규칙성 (Irregular)
- 예측 불가능한 무작위 노이즈
- 패턴 없이 발생하는 오차 성분
💡 새 개념 — 이 섹션에 등장하는 용어
노이즈 Noise
- 신호에 섞인 불규칙 오차
- 패턴이 없어 예측 불가
- 전처리 단계에서 제거가 핵심 목표
날씨 예측 중 갑작스러운 이상기온
주기 vs 계절성
- 계절성 → 달력 기준 고정 주기 반복 (연·월·주)
- 주기성 → 반복은 있으나 간격이 불규칙
계절성: 여름 에어컨 판매 급증 / 주기: 경기침체 사이클
3. 정상 시계열 vs 비정상 시계열
✅ 정상 시계열 조건
시간 무관 평균 일정
시간 무관 분산 일정
두 시점 공분산 → 기준시점 무관
🔄 비정상 → 정상 변환 방법
- AR·MA·ARMA·ARIMA 모델 적용 전 반드시 변환 필요
차분 (diff) log 변환 exp 변환 Box-Cox 변환
차분(diff) — 이전 시점 값과의 변화량만 남김
· 연속수학의 미분과 유사한 역할
· 추세(trend) 제거 → 정상성 확보
· 연속수학의 미분과 유사한 역할
· 추세(trend) 제거 → 정상성 확보
💡 새 개념 — 이 섹션에 등장하는 용어
분산 Variance
- 평균으로부터 데이터가 얼마나 퍼져 있는지를 나타냄
- 분산이 크면 변동폭이 큰 것
- 정상 시계열 → 시간이 지나도 분산 일정
시간 갈수록 폭등·폭락 → 분산 증가 → 비정상
공분산 Covariance
- 두 변수가 함께 변화하는 정도
- 시계열에서는 두 시점(t, t+s)의 동조 변화량
- 정상 시계열 → 두 시점의 간격(s)에만 의존
Box-Cox 변환
- 시간에 따라 커지는 분산을 안정화하는 수학적 변환
- 람다(λ) 파라미터로 변환 강도 조정
- λ=0 → log 변환과 동일
지수적으로 증가하는 매출 데이터에 적용
정상성 Stationarity
- 평균·분산·공분산이 시간이 지나도 불변인 성질
- AR·MA·ARMA 모델의 전제 조건
- 비정상이면 차분·변환으로 정상화 후 모델 적용
4. 시계열 전처리 기법
Resample
- 시간 단위 변경 (업·다운 샘플링)
- 빈 값 → interpolate·fill로 보간
Shift / Lag
- 시계열을 시간축 방향으로 이동
- 과거·미래 값 참조 시 사용
Diff (차분)
- 연속된 관측값 간 차이 계산
- 추세 제거 → 정상성 확보
MA Smoothing
- 이동평균으로 노이즈 제거
- 추세선 추출에 활용
💡 새 개념 — 이 섹션에 등장하는 용어
업·다운 샘플링
- 업샘플링 → 간격을 더 촘촘하게 (일→시간)
- 다운샘플링 → 간격을 더 듬성하게 (일→월)
- 업샘플링 후 생기는 빈 값은 보간으로 채움
월간 데이터를 주간으로 늘릴 때 → 업샘플링 후 보간
Interpolate 보간
- 결측값을 주변 데이터 추세로 수학적 추정
- fill보다 정교 → 선형·다항식 등 다양한 방식 지원
1월·3월 사이 2월 누락 → 중간값으로 채움
Lag 시차
- 현재 시점 기준 과거 n단계 이전 값
- lag 1 = 바로 이전 시점 값
- 자기상관 분석·AR 모델의 핵심 개념
오늘(t) 기준 lag 1 = 어제(t-1) 값
평활화 Smoothing
- 급격한 변동(노이즈)을 완화해 경향만 남기는 작업
- 이동평균(MA)이 대표적 기법
일별 주가의 급등락 → 7일 MA로 부드럽게 표현
5. 자기상관 (Autocorrelation)
- 시계열 내 서로 다른 두 시점 값 사이의 선형 상관 정도
- ACF → MA 모델 차수 q 결정
- PACF → AR 모델 차수 p 결정
자기상관계수 (이론값 · 추정값)
ρₛ = cov(yₜ, yₜ₊ₛ) / var(yₜ)
ρ̂ₖ = Σ(rₜ − r̄)(rₜ₋ₖ − r̄) / Σ(rₜ − r̄)²
ρ̂ₖ = Σ(rₜ − r̄)(rₜ₋ₖ − r̄) / Σ(rₜ − r̄)²
자기상관 있는 데이터 = 과거값이 현재값에 영향
→ AR·MA·ARMA·ARIMA 시계열 전용 모델 적용 필수
→ AR·MA·ARMA·ARIMA 시계열 전용 모델 적용 필수
💡 새 개념 — 이 섹션에 등장하는 용어
ACF Autocorrelation Function
- 각 lag별 자기상관계수를 그래프로 표현
- MA 모델 차수 q 결정에 사용
- lag q 이후 ACF가 0에 수렴 → MA(q) 적합
PACF Partial ACF · 편자기상관함수
- 중간 lag 영향을 제거한 순수 상관관계 표현
- AR 모델 차수 p 결정에 사용
- lag p 이후 PACF가 0으로 급감 → AR(p) 적합
선형 상관 Linear Correlation
- 두 변수의 직선적 비례 관계 정도
- 범위: -1(완전 반비례) ~ +1(완전 비례)
- 0에 가까울수록 선형 관계 없음
r̄ (r-bar)
- 시계열 전체 평균값
- 각 시점값에서 r̄를 빼면 평균 중심화(centering)
- 절대 크기 대신 변동 패턴만 비교 가능
6. 이동평균 (Moving Average) 공식
단순 이동평균 (SMA)
SMA = (A₁ + A₂ + … + Aₙ) / n
- n개 데이터의 단순 산술 평균
- 모든 시점에 동일 가중치 적용
- 노이즈 제거·추세 파악에 활용
가중 이동평균 (WMA)
WMA = A₁×W₁ + A₂×W₂ + … + Aₙ×Wₙ
- 최근 데이터일수록 더 높은 가중치 부여
- 모든 가중치의 합 = 1
- SMA보다 최신 변화에 민감하게 반응
지수 이동평균 (EMA)
EMAₜ = Valueₜ × (α / (1+Days)) + EMAₜ₋₁ × (1 − α / (1+Days))
- 과거로 갈수록 가중치가 지수적으로 감소
- α가 클수록 최신 데이터 반영 비중 증가
- 세 이동평균 중 최신 변화에 가장 민감
💡 새 개념 — 이 섹션에 등장하는 용어
가중치 Weight
- 각 데이터가 결과에 영향을 주는 비율
- 최근 데이터 → 높은 가중치 → 민감 반응
- 전체 가중치 합 = 반드시 1
W₁=0.1, W₂=0.3, W₃=0.6 → 최근값이 60% 반영
α (알파) · 스무딩 계수
- EMA에서 최신 값 반응 속도 결정 (0~1 사이)
- α 클수록 → 최신 데이터 비중 높음 (빠른 반응)
- α 작을수록 → 과거 평균 중심 (안정적)
α≈0.9 → 최신 민감 / α≈0.1 → 과거 평균 중심
지수적 감소
- 과거로 갈수록 가중치가 지수함수(aˣ)처럼 급감
- 먼 과거 데이터는 사실상 0에 수렴하는 영향만 미침
7. 시계열 분석 모델
AR
Autoregression · 자기회귀 모델
- 현재값 = 과거 자신의 값들의 선형 결합으로 예측
- 차수 p → PACF 그래프로 결정
MA
Moving Average · 이동평균 모델
- 현재값 = 과거 오차항(백색잡음)의 선형 결합으로 표현
- 차수 q → ACF 그래프로 결정
ARMA
Autoregressive Moving Average
- AR + MA 결합 모델
- 정상 시계열에만 적용 가능
- 파라미터: (p, q)
ARIMA
Autoregressive Integrated Moving Average
- ARMA + 차분(d회) 통합 → 비정상 시계열에도 적용 가능
- 파라미터: (p, d, q)
- d = 정상성 확보를 위한 차분 횟수
💡 새 개념 — 이 섹션에 등장하는 용어
선형 결합 Linear Combination
- 여러 값에 각각 계수를 곱한 뒤 합산
- AR: 현재값 = (계수₁×어제값) + (계수₂×그제값) + …
yₜ = 0.7×yₜ₋₁ + 0.2×yₜ₋₂ + 오차
백색잡음 White Noise
- 평균 0, 분산 일정, 시점 간 상관관계 없는 순수 무작위 오차
- 잔차가 백색잡음에 가까울수록 좋은 모델
완전 무작위한 주사위 던지기 결과
차수 p, d, q
- p → AR에서 참조할 과거 시점 수 (PACF 결정)
- d → 정상성 확보를 위한 차분 횟수
- q → MA에서 참조할 과거 오차항 수 (ACF 결정)
ARIMA(2,1,1) → 2시점 AR, 1회 차분, 1시점 MA
잔차 Residual
- 예측값과 실제 관측값의 차이
- 잔차가 백색잡음에 가까울수록 모델 적합도 높음
- ACF·PACF로 잔차 확인 → 모델 검증
모델 선택 흐름
· 비정상 → 차분으로 정상화 (d 결정)
· ACF 확인 → q 결정
· PACF 확인 → p 결정
· ARIMA(p, d, q) 적합
· 비정상 → 차분으로 정상화 (d 결정)
· ACF 확인 → q 결정
· PACF 확인 → p 결정
· ARIMA(p, d, q) 적합
비정상 시계열
→
차분·변환
→
정상 시계열
→
ACF / PACF
→
모델 선택 및 예측
728x90
'Python' 카테고리의 다른 글
| 260526_강의 정리(Scipy, 수치해석) (0) | 2026.05.27 |
|---|---|
| 260522_강의 정리 (시계열분석, Statsmodel) (0) | 2026.05.27 |
| 260520_강의 정리 (Data Summerization & EDA) (0) | 2026.05.20 |
| 260519_강의 정리 (데이터 전처리) (0) | 2026.05.20 |
| 260518_강의 정리 (Pandas) (0) | 2026.05.18 |
