주요 컨텐츠로 이동

생성형 AI를 이용한 시계열 예측 소개

An Introduction to Time Series Forecasting with Generative AI

발행일: 2024년 8월 15일

리테일 및 소비자 상품Less than a minute

생성형 AI를 활용한 시계열 예측 소개

시계열 예측은 수십 년 동안 전사적 자원 관리의 핵심이었습니다. 미래 수요에 대한 예측은 재고 수량, 고용할 인력, 생산 및 이행 인프라에 대한 자본 투자, 상품 및 서비스 가격 책정과 같은 중요한 의사 결정을 안내합니다. 정확한 수요 예측은 이러한 비즈니스 결정 및 기타 여러 결정에 필수적입니다.

하지만 예측이 완벽한 경우는 거의 없습니다. 2010년대 중반, 컴퓨팅 제한과 고급 예측 기능에 대한 제한된 액세스로 어려움을 겪었던 많은 조직은 예측 정확도가 50-60%에 불과하다고 보고했습니다. 그러나 클라우드의 광범위한 채택, 훨씬 더 접근하기 쉬운 기술의 도입, 날씨 및 이벤트 데이터와 같은 외부 데이터 소스의 접근성 향상으로 조직은 개선을 보기 시작하고 있습니다.

생성형 AI 시대로 접어들면서 시계열 트랜스포머라고 불리는 새로운 유형의 모델이 조직이 더 많은 개선을 제공하는 데 도움이 될 수 있습니다. 문장에서 다음 단어를 예측하는 데 뛰어난 ChatGPT와 같은 대규모 언어 모델과 유사하게 시계열 트랜스포머는 숫자 시퀀스에서 다음 값을 예측합니다. 대량의 시계열 데이터에 노출되면 이러한 모델은 이러한 시퀀스의 값 간의 미묘한 관계 패턴을 파악하는 데 전문가가 되며 다양한 도메인에서 입증된 성공을 거두었습니다.

이 블로그에서는 관리자, 분석가 및 데이터 과학자가 작동 방식을 기본적으로 이해하는 데 도움이 되도록 이 예측 모델 클래스에 대한 개괄적인 소개를 제공할 것입니다. 그런 다음 Databricks에 데이터를 보유한 조직이 예측 요구에 가장 인기 있는 모델 중 일부를 쉽게 활용할 수 있는 방법을 보여주는 공개적으로 사용 가능한 데이터 세트를 기반으로 구축된 일련의 노트북에 액세스할 수 있도록 제공할 것입니다. 이를 통해 조직이 더 나은 예측 정확도를 높이기 위해 생성형 AI의 잠재력을 활용하는 데 도움이 되기를 바랍니다.

시계열 트랜스포머 이해하기

생성형 AI 모델은 딥러닝 신경망의 한 형태이며, 복잡한 머신러닝 모델 내에서 많은 수의 입력이 다양한 방식으로 결합되어 예측 값을 얻습니다. 모델이 정확한 예측을 얻기 위해 입력을 결합하는 방법을 학습하는 메커니즘은 모델의 아키텍처라고 합니다.

생성형 AI를 탄생시킨 딥러닝 신경망의 혁신은 트랜스포머라는 특수 모델 아키텍처의 설계였습니다. 트랜스포머가 다른 딥러닝 신경망 아키텍처와 다른 정확한 세부 사항은 매우 복잡하지만, 간단히 말해 트랜스포머는 긴 시퀀스의 값 간의 복잡한 관계를 파악하는 데 매우 능숙합니다.

시계열 트랜스포머를 훈련시키기 위해 적절하게 설계된 딥러닝 신경망에 대량의 시계열 데이터가 노출됩니다. 수백만 또는 수십억 개의 시계열 값에 대해 훈련할 기회를 얻은 후에는 이러한 데이터 세트에서 발견되는 복잡한 관계 패턴을 학습합니다. 그런 다음 이전에 보지 못한 시계열에 노출되면 이 기본 지식을 사용하여 시계열 내에서 유사한 관계 패턴이 존재하는 위치를 식별하고 시퀀스에서 새 값을 예측할 수 있습니다.

대량의 데이터에서 관계를 학습하는 이 프로세스는 사전 훈련이라고 합니다. 사전 훈련 중에 모델이 얻은 지식은 일반화 가능성이 높기 때문에 사전 훈련된 모델을 기반 모델이라고 하며 추가 훈련 없이 이전에 보지 못한 시계열에 대해 사용할 수 있습니다. 그렇긴 하지만, 조직의 독점 데이터에 대한 추가 훈련, 즉 미세 조정이라고 하는 프로세스는 경우에 따라 조직이 더 나은 예측 정확도를 달성하는 데 도움이 될 수 있습니다. 어느 쪽이든, 모델이 만족스러운 상태라고 판단되면 조직은 단순히 시계열을 제시하고 다음에 무엇이 올까요?라고 물으면 됩니다.

보고서

기업을 위한 에이전틱 AI 플레이북

일반적인 시계열 문제 해결

시계열 트랜스포머에 대한 이러한 개괄적인 이해는 말이 될 수 있지만, 대부분의 예측 실무자는 세 가지 즉각적인 질문을 가질 것입니다. 첫째, 두 시계열이 유사한 패턴을 따를 수 있지만 완전히 다른 규모로 작동할 수 있습니다. 트랜스포머는 어떻게 그 문제를 극복합니까? 둘째, 대부분의 시계열 모델 내에는 고려해야 할 일별, 주별 및 연간 계절성 패턴이 있습니다. 모델은 어떻게 이러한 패턴을 찾도록 알 수 있습니까? 셋째, 많은 시계열은 외부 요인의 영향을 받습니다. 이 데이터를 예측 생성 프로세스에 어떻게 통합할 수 있습니까?

이러한 문제 중 첫 번째는 스케일링이라고 하는 일련의 기술을 사용하여 모든 시계열 데이터를 수학적으로 표준화함으로써 해결됩니다. 이 메커니즘은 각 모델 아키텍처 내부에 있지만 본질적으로 들어오는 시계열 값은 모델이 기본 지식을 기반으로 데이터의 패턴을 인식할 수 있도록 표준 스케일로 변환됩니다. 예측이 이루어지면 해당 예측은 원래 데이터의 원래 스케일로 반환됩니다.

계절성 패턴에 관해서는 트랜스포머 아키텍처의 핵심은 셀프 어텐션이라는 프로세스입니다. 이 프로세스는 매우 복잡하지만 기본적으로 이 메커니즘을 통해 모델은 특정 이전 값이 주어진 미래 값에 영향을 미치는 정도를 학습할 수 있습니다.

이는 계절성에 대한 해결책처럼 들릴 수 있지만, 모델이 시계열 입력을 분할하는 방식에 따라 저수준 계절성 패턴을 파악하는 능력에 차이가 있다는 점을 이해하는 것이 중요합니다. 토큰화라는 프로세스를 통해 시계열의 값은 토큰이라고 하는 단위로 나뉩니다. 토큰은 단일 시계열 값이거나 짧은 값 시퀀스(종종 패치라고 함)일 수 있습니다.

토큰의 크기는 계절성 패턴을 감지할 수 있는 가장 낮은 수준의 세분성을 결정합니다. (토큰화는 누락된 값을 처리하는 논리도 정의합니다.) 특정 모델을 탐색할 때 토큰화에 대한 기술 정보를 읽어 모델이 데이터에 적합한지 이해하는 것이 중요합니다.

마지막으로 외부 변수에 관해서는 시계열 트랜스포머가 다양한 접근 방식을 사용합니다. 일부 모델에서는 시계열 데이터와 관련 외부 변수 모두에 대해 훈련됩니다. 다른 모델에서는 단일 시계열이 여러 개의 병렬 관련 시퀀스로 구성될 수 있음을 이해하도록 아키텍처가 설계되었습니다. 사용되는 정확한 기술에 관계없이 이러한 모델에서는 외부 변수에 대한 제한적인 지원을 찾을 수 있습니다.

네 가지 인기 있는 시계열 트랜스포머 간략히 살펴보기

시계열 트랜스포머에 대한 개괄적인 이해를 바탕으로 네 가지 인기 있는 기반 시계열 트랜스포머 모델을 살펴보겠습니다.

Chronos

Chronos는 Amazon의 오픈 소스 사전 훈련된 시계열 예측 모델 제품군입니다. 이러한 모델은 시계열을 토큰 간의 관계 패턴을 가진 특수한 언어로 해석하는 비교적 단순한 접근 방식을 사용합니다. 누락된 값은 지원하지만 외부 변수는 지원하지 않는 이 비교적 단순한 접근 방식에도 불구하고 Chronos 모델 제품군은 일반 목적 예측 솔루션으로 인상적인 결과를 보여주었습니다(그림 1).


그림 1. 27개 벤치마킹 데이터 세트에 적용된 Chronos 및 기타 다양한 예측 모델의 평가 지표 (https://github.com/amazon-science/chronos-forecasting에서)

TimesFM

TimesFM은 Google Research에서 개발한 오픈 소스 기반 모델로, 1,000억 개 이상의 실제 시계열 포인트에 대해 사전 훈련되었습니다. Chronos와 달리 TimesFM은 아키텍처에 시계열별 메커니즘을 포함하여 사용자가 입력 및 출력 구성 방식을 세밀하게 제어할 수 있습니다. 이는 계절성 패턴 감지 방식뿐만 아니라 모델과 관련된 계산 시간에도 영향을 미칩니다. TimesFM은 매우 강력하고 유연한 시계열 예측 도구임이 입증되었습니다(그림 2).


그림 2. TimesFM 및 다양한 다른 모델과 Monash Forecasting Archive 데이터셋에 대한 평가 지표 (출처: https://research.google/blog/a-decoder-only-foundation-model-for-time-series-forecasting/)

Moirai

Moirai는 Salesforce AI Research에서 개발한 또 다른 오픈 소스 시계열 예측 파운데이션 모델입니다. "270억 개의 관측치와 9개의 서로 다른 도메인"에 대해 학습된 Moirai는 누락된 값과 외부 변수를 모두 지원하는 범용 예측 모델로 제시됩니다. 가변 패치 크기를 통해 조직은 데이터셋의 계절 패턴에 맞게 모델을 조정할 수 있으며, 올바르게 적용될 경우 다른 모델에 비해 상당히 좋은 성능을 보이는 것으로 입증되었습니다(그림 3).


그림 3. Moirai 및 다양한 다른 모델과 Monash Time Series Forecasting Benchmark에 대한 평가 지표 (출처: https://blog.salesforceairesearch.com/moirai/)

TimeGPT

TimeGPT는 외부(외생) 변수는 지원하지만 누락된 값은 지원하지 않는 독점 모델입니다. 사용 편의성에 중점을 둔 TimeGPT는 단 한 줄의 코드로도 예측을 생성할 수 있는 공개 API를 통해 제공됩니다. 300,000개의 고유 시계열 데이터에 대해 다양한 시간적 세분성 수준에서 모델을 벤치마킹한 결과, 매우 적은 예측 지연 시간으로 인상적인 결과를 생성하는 것으로 나타났습니다(그림 4).


그림 4. TimeGPT 및 다양한 다른 모델과 300,000개의 고유 시계열에 대한 평가 지표 (출처: https://arxiv.org/pdf/2310.03589)

Databricks에서 Transformer 예측 시작하기

수많은 모델 옵션과 계속해서 추가될 모델들을 고려할 때, 대부분의 조직에게 핵심 질문은 자체 데이터를 사용하여 이러한 모델을 평가하기 시작하는 방법입니다. 다른 예측 접근 방식과 마찬가지로, 시계열 예측 모델을 사용하는 조직은 예측을 생성하기 위해 과거 데이터를 모델에 제시해야 하며, 이러한 예측은 신중하게 평가되고 결국 다운스트림 시스템에 배포되어 실행 가능하게 만들어야 합니다.

Databricks의 확장성과 효율적인 클라우드 리소스 사용 덕분에 많은 조직이 오랫동안 예측 작업의 기반으로 Databricks를 사용해 왔으며, 비즈니스 운영을 위해 매일 또는 더 높은 빈도로 수천만 건의 예측을 생성해 왔습니다. 새로운 유형의 예측 모델 도입은 이러한 작업의 본질을 바꾸지 않으며, 단지 이러한 조직에게 이 환경 내에서 작업을 수행할 수 있는 더 많은 옵션을 제공할 뿐입니다.

하지만 이러한 모델과 함께 새로운 복잡성이 없는 것은 아닙니다. 딥 신경망 아키텍처를 기반으로 하는 많은 모델은 GPU를 사용하여 실행할 때 최상의 성능을 발휘하며, TimeGPT의 경우 예측 생성 프로세스의 일부로 외부 인프라에 대한 API 호출이 필요할 수 있습니다. 그러나 근본적으로 조직의 과거 시계열 데이터를 저장하고, 해당 데이터를 모델에 제시하고, 결과를 쿼리 가능한 테이블에 캡처하는 패턴은 변하지 않습니다.

조직이 Databricks 환경 내에서 이러한 모델을 어떻게 사용할 수 있는지 이해하는 데 도움을 주기 위해, 위에서 설명한 네 가지 모델 각각으로 예측을 생성하는 방법을 보여주는 일련의 노트북을 준비했습니다. 실무자는 이러한 노트북을 자유롭게 다운로드하여 Databricks 환경에서 사용하여 사용법을 익힐 수 있습니다. 그런 다음 제시된 코드를 다른 유사한 모델에 적용할 수 있으며, 이를 통해 Databricks를 예측 작업의 기반으로 사용하는 조직은 리소스 계획 프로세스에서 생성형 AI를 사용하는 추가적인 옵션을 얻을 수 있습니다.

일련의 노트북으로 오늘 Databricks를 사용하여 예측 모델링을 시작하세요.

(이 글은 AI의 도움을 받아 번역되었습니다. 원문이 궁금하시다면 여기를 클릭해 주세요)

게시물을 놓치지 마세요

관심 있는 카테고리를 구독하고 최신 게시물을 받은편지함으로 받아보세요