1P by GN⁺ 6시간전 | ★ favorite | 댓글 1개
  • TimesFM은 Google Research가 개발한 시계열 예측용 대규모 사전학습 모델로, 디코더 전용 구조를 사용함
  • 최신 버전 2.5파라미터 수 2억 개, 컨텍스트 길이 16k, 최대 1k horizon 예측을 지원함
  • 연속적 분위 예측, 공변량 입력(XReg), Flax·PyTorch 백엔드 등 다양한 기능을 포함함
  • 모델은 Hugging Face를 통해 공개되며, BigQuery에도 통합되어 활용 가능함
  • 시계열 데이터 예측의 범용 기반 모델로, 연구와 실무 모두에서 확장성과 효율성을 제공함

TimesFM 개요

  • TimesFM(Time Series Foundation Model) 은 Google Research가 개발한 시계열 예측용 사전학습 모델
  • ICML 2024 논문 *“A decoder-only foundation model for time-series forecasting”*을 기반으로 함
  • 모델 체크포인트는 Hugging Face 컬렉션을 통해 제공되며, BigQuery에도 공식적으로 통합됨
  • 오픈 버전은 공식 Google 제품이 아님

모델 버전 및 주요 업데이트

  • 최신 버전은 TimesFM 2.5, 이전 버전(1.0, 2.0)은 v1 디렉터리에 보관되어 있으며 timesfm==1.3.0으로 설치 가능
  • 2025년 9월 15일 업데이트

    • TimesFM 2.5 모델 공개
    • 파라미터 수 200M으로 축소(이전 500M 대비 절반 이하)
    • 컨텍스트 길이 16k로 확장(기존 2048에서 증가)
    • 연속적 분위 예측(continuous quantile forecast) 을 최대 1k horizon까지 지원, 선택적 30M quantile head 포함
    • frequency 인디케이터 제거
    • 새로운 예측 플래그(forecasting flags) 추가
    • 추론 API(inference API) 업그레이드
    • 향후 추가 예정 항목
      1. Flax 버전 모델 지원(더 빠른 추론)
      2. 공변량(covariate) 지원 복원
      3. docstring, 문서, 노트북 보강
  • 2025년 10월 29일 업데이트

    • XReg를 통한 공변량(covariate) 입력 지원이 TimesFM 2.5에 다시 추가됨

설치 방법

  • GitHub 저장소를 클론하고 uv를 이용해 가상환경 생성 및 패키지 설치
    • torch, flax, xreg 중 선택적 백엔드 설치 가능
    • OS 및 가속기(CPU, GPU, TPU, Apple Silicon)에 따라 PyTorch 또는 JAX(Flax) 선택 가능

코드 예시

  • PyTorch 기반 TimesFM 2.5 (200M 파라미터) 모델 로드 예시 제공
    • timesfm.TimesFM_2p5_200M_torch.from_pretrained("google/timesfm-2.5-200m-pytorch") 사용
    • ForecastConfig를 통해 입력 정규화(normalize_inputs), 연속 분위 헤드 사용, 양수 강제(infer_is_positive), 분위 교차 수정(fix_quantile_crossing) 등의 설정 가능
    • forecast() 호출 시 point forecastquantile forecast 두 가지 결과 반환
      • point_forecast.shape: (2, 12)
      • quantile_forecast.shape: (2, 12, 10) — 평균 및 10~90 분위 포함
Hacker News 의견들
  • 일반적인 시계열 모델이라는 개념이 좀 이상하게 느껴짐
    어떻게 같은 모델이 이탈리아의 달걀 가격과 전 세계 인플레이션을 동시에 신뢰성 있게 예측할 수 있는지 의문임
    게다가 예측의 근거를 설명하지 않으면 결과를 신뢰하기 어렵다는 점도 문제로 보임

    • 사실 이런 모델들은 달걀 가격이나 인플레이션 자체를 예측하는 게 아니라, 시계열 데이터를 추세·계절성·잔차로 분해하는 것임
      중동 전쟁처럼 비계절적 사건이 인플레이션에 영향을 주는 건 모델이 포착할 수 없음
    • 내가 이해하기로는 합성 학습 데이터가 여러 도메인에서 공통적으로 나타나는 추상적 시계열 패턴을 포착하도록 돕는 구조임
      논문 부록 8에 따르면, 선형 추세, ARMA, 사인·코사인 계절 패턴 등 전통적 통계 모델로 합성 데이터를 만들어 학습시킴
      결국 Transformer 구조이므로, LLM처럼 입력 컨텍스트에 따라 문제별 패턴을 찾아냄
    • Google Ads에서 일할 때, 광고 캠페인의 목표 달성 확률을 예측하기 위해 시계열 예측을 사용했음
      많은 광고주들이 단순히 현재 수치에서 직선을 그어 예측했지만, 요일·계절성을 반영하지 않아 부정확했음
      반면 시계열 모델은 훨씬 정확했고, 전체 캠페인 데이터를 학습하면 95% 신뢰구간을 제공할 수 있었음
    • Benford의 법칙(Benford’s law)을 적용할 수도 있음
      부호와 지수는 느리게 변하므로 이를 예측하고, 가수 부분은 Benford의 법칙으로 추정하는 방식임
    • 접근 방식으로는
      • 분해(decomposition): Fourier 변환의 일반형을 찾아내 근본 요인을 분리함
      • 기억(memorization): 여러 도메인에서 반복되는 패턴(예: 멱법칙)을 학습함
      • 멀티태스크(multitask): 날씨와 전력처럼 도메인 간 연관성을 활용함
  • 제목에 (2024)를 추가하면 좋겠음
    이미 Google Research 블로그에 소개된 내용이라 최신 뉴스는 아님

    • 하지만 2025년 말에 큰 업데이트가 있었음
  • 관련 블로그 포스트는 GitHub의 TimesFM 페이지에서 볼 수 있음

    • 아마 이 Google Research 블로그 글을 링크하려던 것 같음
    • GPU 학습 시간 총량이 궁금함
      LLM에 비해 훨씬 작아 보이는데, 개인 연구자나 대학 연구실 수준에서도 학습 가능한지 알고 싶음
    • iOS Chrome에서는 제출된 GitHub 리포지토리와 동일한 내용으로 열림
  • 참고로 비슷한 프로젝트로 NixtlaProphet이 있음

  • “ELI5 수준으로 설명해줄 수 있나요? 그리고 몇 개의 데이터 포인트를 읽을 수 있나요?”라는 질문이 있었음

  • 시계열이 맥락 없이 숫자 집합으로만 주어지는지 궁금함
    모델이 데이터를 보고 어떤 카테고리(주가, 검색 트렌드 등)인지 추정한 뒤, 그에 맞는 예측을 내놓는 구조로 보임
    하지만 학습 데이터에 없는 카테고리에는 약할 것 같음
    개인적으로는 ARIMA 같은 단순 모델이나 이론 기반 모델을 선호함

    • 그래도 LLM이 긴 토큰 스트림의 다음 토큰을 예측하듯, 이 모델도 작동할 수 있음
      핵심은 아키텍처와 학습 방식이 얼마나 일반화되느냐
  • 이 모델이 몇 달 전부터 공개되어 있었는데, 실제로 이를 기반으로 무언가를 만든 사례가 있는지 궁금함

  • 과거 태양 복사량과 날씨 예보 시계열이 있을 때, 미래 시점의 날씨 예보를 이용해 전기 가격을 예측할 수 있는지 궁금함
    즉, 한 시계열의 시점 X 데이터를 이용해 다른 시계열의 시점 X를 예측할 수 있는지, 아니면 단일 시계열 내부 패턴만 다루는지 질문함

    • 논문에서는 예측(forecasting)에 초점을 맞췄다고 되어 있음
      하지만 학습 데이터가 적으면 단순히 “오른쪽 위로 가는” 패턴만 학습할 수도 있어 한계가 있을 듯함
  • 이 프로젝트를 놓쳤는데, 혹시 관련 경진대회가 있는지 궁금함
    시계열과 ML은 늘 어려웠는데 직접 시도해보고 싶음

  • 개인적으로는 LLM + pandas + 자체 실험 루프를 돌리면 이 모델보다 더 나은 결과를 낼 수 있을 것 같음

    • 그렇다면 직접 시도해보면 됨
      한계가 정해진 것도 아니고, 오히려 그 주장이 틀렸을 가능성이 높다고 생각함