brunch

ARIMA 시계열 모델로 ‘숫자 너머의 패턴’ 해석하기

예측보다 중요한 것, 불확실성을 읽는 법

by 이건승

비즈니스 현장에서 “다음 달 매출은 얼마나 될까?”라는 질문은 끊임없이 반복됩니다. 하지만 이 질문은 단순히 숫자를 맞히는 문제가 아닙니다. 시간의 흐름 속에서 패턴을 읽는 일에 더 가깝습니다.


이번 글에서는 실무에서 자주 사용되는 시계열 예측 모델 ARIMA(Autoregressive Integrated Moving Average)를 통해 데이터 속 리듬을 읽고, 그 안에서 불확실성을 해석하는 과정을 살펴보겠습니다.



ARIMA 모델은 어떻게 작동할까?


시계열 데이터에는 보통 세 가지 요소가 숨어 있습니다. ‘추세(Trend)’, ‘계절성(Seasonality)’, 그리고 ‘불규칙성(Irregularity)’입니다.


✔️ AR (AutoRegressive, 자기회귀)

과거의 값이 현재에 영향을 미친다는 가정입니다. 예를 들어 어제 매출이 높았다면, 오늘 매출도 높을 가능성이 크다는 식이죠. → 오늘의 매출은 어제 매출의 관성 위에 있습니다.

✔️ I (Integrated, 차분)

데이터의 전반적인 추세를 제거해 변동성만 남기는 단계입니다. 예를 들어, 꾸준히 상승하는 매출 그래프를 평탄하게 만들어 변화를 더 잘 포착합니다. → “패턴”을 드러냅니다.

✔️ MA (Moving Average, 이동평균)

과거의 예측 오차를 반영해 다음 예측을 보정합니다. → “실수로부터 배우는” 보정 메커니즘입니다.


이 세 가지가 함께 작동하면서, ARIMA는 단순한 회귀 모델보다 훨씬 유연하게 시간의 리듬과 노이즈를 동시에 포착할 수 있습니다.



가상 사례 : 패션 플랫폼의 주간 매출 예측


가상의 패션 플렛폼의 주간 매출액 및 시점별 주요 이슈

예를 들어, 한 패션 커머스 플랫폼의 지난 1년간 주간 매출 데이터를 기반으로 모델을 만든다고 가정해 보겠습니다. 위 데이터를 보면 계절성과 이벤트가 주간 매출에 큰 영향을 미친다는 것을 쉽게 알 수 있습니다. 이런 패턴은 시계열 모델이 특히 잘 포착할 수 있는 구조입니다.


모델링 과정: ARIMA로 패턴 학습하기

데이터는 먼저 시간 순서대로 정렬된 형태여야 합니다. 그다음 ARIMA 모델은 아래 과정을 거쳐 예측을 수행합니다.

✔️ (1,1,1)의 의미는 p=1, d=1, q=1, 즉 한 시점의 자기회귀, 1차 차분, 1시점 오차 보정입니다.

✔️ 신뢰구간(confidence interval)은 “예측값이 어느 정도 범위 안에 있을 확률이 높은가”를 보여줍니다.


위 그래프는 주간 매출의 실제 추이(파란 실선)ARIMA 모델의 향후 예측(주황색 점선)을 함께 보여줍니다.


1. 왼쪽(2024년 초~중반)

연초 비수기 구간에서 매출이 낮게 유지되다가, 봄 시즌(20주차 전후)에 매출이 빠르게 상승하는 패턴이 나타납니다. 이어지는 여름 휴가철(32~33주차)에는 매출이 뚜렷하게 떨어지며 “계절성 딥(seasonal dip)”이 형성됩니다.


2. 오른쪽(2024년 하반기 이후)

48주차 블랙프라이데이 시즌을 기점으로 매출이 급상승하고, 연말(51주차)에는 재고 정리 및 연휴 수요로 완만히 하락하는 패턴이 이어집니다.


3. 주황색 점선(ARIMA 예측)

2025년 초(53~55주차)에 해당하는 향후 3주의 매출을 예측한 결과입니다. 모델은 직전 흐름(완만한 하락 이후 안정 구간)을 이어간다고 판단하여 완만한 수준(110억 원대)의 예측을 제시하고 있습니다.


4. 회색 음영(90% 예측구간)

예측값 주변의 불확실성을 시각적으로 나타낸 구간입니다. 1주차 대비 3주차로 갈수록 음영 폭이 넓어지며,

이는 예측 신뢰도가 점점 낮아지고 있음을 의미합니다. 다시 말해, 단기 예측은 비교적 확실하지만 장기 예측(3주차 이후)은 시장 변동성의 영향을 더 크게 받는다는 것을 보여줍니다.


변동성 및 잔차 진단 결과 요약을 보면 단기 예측은 안정적이지만, 장기(3주 이후)로 갈수록 불확실성이 빠르게 확대되는 것을 알 수 있습니다. 1주차 예측의 신뢰구간 폭(±9.7억)은 비교적 좁지만, 3주차 예측에서는 ±19억까지 늘어나며 예측 신뢰 범위가 약 2배 가까이 확대되었습니다. 3주 이후로는 시장 변동성과 외생 요인에 의해 불확실성이 빠르게 커진다는 뜻입니다


그리고 최근 12주간 변동성이 과거 대비 10% 이상 증가하였는데, 이는 외부 요인(프로모션·이벤트 등)의 영향 가능성도 생각해 볼 수 있습니다. 참고로 이 말은 단순히 “모델이 흔들린다”는 뜻이 아니라, 시장 리듬이 예측하기 어려워졌다는 신호로 해석할 수 있습니다. 예를 들어 패션 커머스라면, 이런 상황이 발생할 수 있습니다.

새로운 프로모션/브랜드 이슈로 주간 매출 패턴이 바뀜

시즌성(예: 가을 입점, 겨울 세일)이 전년 대비 빨라짐

외생 요인(날씨, 광고비 집행 타이밍 등)이 더 커짐

즉, 데이터의 리듬이 더 “불안정”해졌다는 뜻입니다.


마지막으로 잔차 독립성 검정(Ljung-Box test) 결과, p-value가 0.15(>0.05)로 나타났습니다.

“모델이 데이터의 시간 패턴을 충분히 설명했다”는 해석으로 이어집니다.

즉, 현재의 ARIMA 모델은 구조적으로는 안정적이며, 최근 불확실성의 증가는 데이터 외적 요인(시장 환경)에 가깝다고 볼 수 있습니다.



해석과 확장 : 숫자보다 패턴을 읽는 법


ARIMA 모델의 진짜 가치는 “얼마나 정확히 맞추느냐”가 아닙니다. 예측 구간(±값)이 어떻게 변하는지를 통해 시장 불확실성의 변화를 읽는 것이 더 중요합니다.

✔️ 예측 구간이 좁으면 → 시장이 안정되어 있음

✔️ 예측 구간이 넓어지면 → 외부 변수나 계절 요인이 강해지고 있음


또한, ARIMA 모델의 잔차(Residual)를 XGBoost나 LightGBM 같은 머신러닝 모델로 보정하면 비선형적 요인(프로모션, 할인율, 날씨 등)을 함께 반영할 수 있습니다. 이 조합(ARIMA + XGBoost)은 실무에서 자주 사용할 수 있는 ‘통계 + 머신러닝 하이브리드 예측’ 접근법이라고 할 수 있습니다.


데이터 분석의 목적은 단순히 예측값을 맞추는 것이 아닙니다. 중요한 것은 숫자 속에 숨어 있는 변화의 맥락을 읽는 것입니다. ARIMA 모델은 단기적으로는 시장의 리듬을 포착하고, 장기적으로는 불확실성이 커지는 패턴을 알려줍니다. 즉, 단순한 매출 예측을 넘어 ‘어떤 구간에서 리스크가 커지는가’를 시각적으로 드러내는 도구이기도 합니다.


이런 접근은 단순히 데이터 분석을 넘어 비즈니스 의사결정의 질을 높이는 역할을 합니다.

예를 들어,

✔️ 예측 구간이 좁고 변동성이 낮은 시점이라면,

→ 할인율 조정이나 프로모션 실험 같은 ‘전략적 시도’를 하기에 좋은 타이밍입니다.

✔️ 반대로, 예측 구간이 넓고 불확실성이 커진 시점이라면,

→ “예측을 더 정교하게 만드는 것”보다 “리스크 요인을 분류하고 외부 변수를 탐지하는 것”이 우선입니다.

즉, 모델이 불확실성을 드러낼수록 그 구간은 관찰해야 할 영역이 된다는 것이죠.


ARIMA 모델이 주는 또 하나의 시사점은, “불확실성 자체를 예측의 일부로 다루라”는 것입니다. 실제 시장은 예측 불가능한 변수(날씨, 사회 이슈, 트렌드 등)가 상존하기 때문에, 정확도 하나로 모델의 성능을 판단하는 것은 불완전합니다.

좋은 예측이란 ‘오차를 최소화하는 것’이 아니라, ‘불확실성을 인식하고 대비할 수 있게 하는 것’

이 관점에서 보면, 예측 모델은 단순한 도구가 아니라 조직의 대응력을 높이는 시스템이 됩니다. 예측값이 아니라 변동성·신뢰구간·패턴 변화를 함께 모니터링한다면, 팀은 시장 리스크를 조기에 감지하고 빠르게 대응할 수 있습니다.



정리하며


결국 데이터 분석이란, ‘숫자를 보는 기술’이 아니라 ‘패턴을 해석하는 시각’을 기르는 일입니다.


이번 글에서 다룬 ARIMA 모델 역시 보여주는 것은 미래의 숫자가 아닙니다. 그 숫자가 얼마나 불안정한가, 그리고 그 불안정성이 어디서부터 오는가에 대한 통찰입니다.


예측은 결과가 아니라, 대화를 시작하는 출발점이라고 생각합니다. 데이터가 말하는 리듬을 듣고, 그 안에서 다음 전략을 찾는 것 — 그것이 진짜 데이터 기반 의사결정의 시작이 아닐까요?

keyword