본문 바로가기

오블완20

[Time series] Forecasting 일반론 시계열을 분석하는 목적은 궁극적으로 미래예측 즉, Forecasting일 겁니다. 먼저 Forecasting 일반론을 살펴보고 우리가 알아보았던 ARMA시계열에서 구체적으로 어떤식으로 예측을 진행하는지 살펴보겠습니다. \( Y_{t+1} \)의 값을 예측한다고 해봅시다. 이때, 예측은 시점 \( t \)에 관측된(Observed) 변수 \( X_t \)의 값을 기반으로 이루어집니다. 만약, \(t+1\)시점의 \(Y\)값 \( Y_{t+1} \)를 가장 최근 \( m \)개의 \(Y\) 값에 기반하여 예측한다면 \( X_t \)는 \( Y_t, Y_{t-1}, \ldots, Y_{t-m+1} \)과 상수로 구성됩니다. 수식적으로 \( Y_{t+1|t} \)를 \( X_t \)를 기반으로 한 \( Y_{t.. 2024. 11. 25.
[Python - Frequently Used Code] Class input argument 코딩하다가 자주 (제가...) 마주치는 오류를 정리해보려고 합니다. 일단 제가 자주 범하는 실수는 ... 만일 함수나 클래스의 인풋 자체가 class일 경우인데요. class와 그 class의 instance는 분명 다른 개념입니다. 이런 경우에는 애초에 input argument로 instance를 받거나 그도 아니면 받아들이는 클래스 내부에서 instance화 해주어야 합니다.  # 올바른 방식1 : instance를 전달engine_instance = Engine(horsepower=150)car = Car(engine_instance)# 올바른 방식2 : 내부에서 instance화class Car: def __init__(self, engine): if isinstance(eng.. 2024. 11. 22.
[Graph Neural Networks] NetworkX & Pytorch Geometric 복잡한 딥러닝 구조에서 그래프를 다루기 전에 NetworkX, Pytorch Geometric 패키지를 이용해서 기본적인 그래프 속성을 다루는 연습을 해보겠습니다.  1. NetworkXimport networkx as nximport numpy as npimport matplotlib.pyplot as plt# 노드와 엣지 리스트 정의node_list = [1, 2, 3, 4, 5]edge_list = [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 1), (2, 3), (2, 5), (3, 1), (3, 2), (4, 1), (5, 1), (5, 2)]# 그래프 생성G = nx... 2024. 11. 21.
[Time Series] Stationary ARMA process ARMA(p, q) processARMA(p, q) 모델은 다음과 같이 정의됩니다:\[ Y_t = c + \phi_1 Y_{t-1} + \phi_2 Y_{t-2} + \cdots + \phi_p Y_{t-p}\\ + \epsilon_t + \theta_1 \epsilon_{t-1} + \theta_2 \epsilon_{t-2} + \cdots + \theta_q \epsilon_{t-q} \]또는 Lag Operator를 이용하여 다음과 같이 표현할 수 있습니다:\[ (1 - \phi_1 L - \phi_2 L^2 - \cdots - \phi_p L^p) Y_t = c + (1 + \theta_1 L + \theta_2 L^2 + \cdots + \theta_q L^q) \epsilon_t \]ARMA(.. 2024. 11. 20.
[Time Series] Stationary AR, MA process Dr.Trillion원래 직전 포스팅(stationarity & Ergodicity)과 연결해서 쓰려고 했는데 양이 많아져서 나눴습니다. 1. 이동 평균 과정(Moving Average Process, MA)Moving average는 주식하시는 분이면 '이평선'이라는 말로 많이 들어보셨을 개념입니다. 아주 친숙하죠 ㅎㅎ? 일단 가장 간단한 형태인 MA(1) process부터 알아보고 일반화해보겠습니다.  (1) MA(1) process\[ Y_t = \mu + \epsilon_t + \theta \epsilon_{t-1} \] 더보기기대값 (Expectation)\[ E(Y_t) = E(\mu + \epsilon_t + \theta \epsilon_{t-1}) \] \[ E(Y_t) = \mu + E(.. 2024. 11. 19.
[Time Series] Stationarity & Ergodicity Dr.Trillion드디어 ARIMA의 기저가 되는 ARMA process를 다룰 때가 왔습니다. 처음에 Time series를 시작할 때는 ARIMA랑 Kalman Filter정도 해야지? 라고 생각했었는데 어디까지 커버할 수 있을지는 좀 더 고민을 해보아야 할 것 같습니다. 1. 시계열의 정상성 (Stationarity)시계열 \( Y_t \)의 기대값(Expectation)은 다음과 같이 정의됩니다. (Ensemble average의 probability limit으로 볼 수 있습니다)\[ E(Y_t) = \int y_t f_{Y_t}(y_t) \, dy_t \] 아래의 조건을 만족하는 경우에 우리는 시계열이 공분산 정상성(Covariance Stationary)을 갖는다고 말합니다. 이 조건을 다.. 2024. 11. 18.
728x90