模型概述
模型特點
模型能力
使用案例
🚀 微型時間混合器 (TTM) 研究用途模型卡片
微型時間混合器(Tiny Time Mixers,TTMs)是由IBM Research開源的用於多變量時間序列預測的緊湊型預訓練模型。TTM模型(已被NeurIPS 24收錄)的參數規模從100萬起,開創了時間序列預測領域“微型”預訓練模型的先河。
本模型卡片僅包含供研究使用的模型權重,我們在論文中發表的研究結果具備完全可復現性。不過,如果您需要用於商業和企業用途的TTM模型權重,請參考我們在此處發佈的Granite版本。
TTM在零樣本和少樣本預測方面超越了多個需要數十億參數的流行基準模型。TTM是輕量級的預測器,在經過各種增強處理的公開可用時間序列數據上進行預訓練。它能提供最先進的零樣本預測,並且只需使用5%的訓練數據進行微調,就能在多變量預測中具備競爭力。更多詳情請參考我們的論文。
當前的開源版本特別支持從分鐘級到小時級分辨率的點預測用例(例如10分鐘、15分鐘、1小時)。
請注意,使用TTM進行零樣本、微調以及推理任務,在單GPU機器甚至筆記本電腦上都能輕鬆完成!
✨ 主要特性
- 聚焦預訓練模型:TTM屬於“聚焦預訓練模型”類別,每個預訓練的TTM都針對特定的預測設置(由上下文長度和預測長度決定)進行定製。這種構建較小預訓練模型的方法,能產生更準確的結果,同時確保模型極其小巧且速度極快,便於部署,無需大量資源。
- 性能卓越:在零樣本和少樣本預測中,TTM超越了多個流行基準模型,如TimesFM、Moirai、Chronos等,同時顯著降低了計算需求。
- 輕量級且易用:TTM是輕量級的預測器,甚至可以在僅配備CPU的機器上運行,提高了可用性,有助於在資源受限的環境中更廣泛地應用。
- 支持多種預測模式:支持零樣本預測和微調預測兩種模式,並且當前版本支持通過通道獨立和通道混合兩種方法進行多變量預測,還支持外生變量注入和分類數據注入。
📦 安裝指南
文檔未提供安裝步驟,故跳過該章節。
💻 使用示例
基礎用法
# 從Hugging Face模型中心加載模型,在revision字段中指定分支名稱
model = TinyTimeMixerForPrediction.from_pretrained(
"https://huggingface.co/ibm/TTM", revision="main"
)
# 進行零樣本預測
zeroshot_trainer = Trainer(
model=model,
args=zeroshot_forecast_args,
)
zeroshot_output = zeroshot_trainer.evaluate(dset_test)
高級用法
# 凍結骨幹網絡並啟用少樣本或微調:
# 凍結骨幹網絡
for param in model.backbone.parameters():
param.requires_grad = False
finetune_forecast_trainer = Trainer(
model=model,
args=finetune_forecast_args,
train_dataset=dset_train,
eval_dataset=dset_val,
callbacks=[early_stopping_callback, tracking_callback],
optimizers=(optimizer, scheduler),
)
finetune_forecast_trainer.train()
fewshot_output = finetune_forecast_trainer.evaluate(dset_test)
📚 詳細文檔
模型描述
TTM屬於“聚焦預訓練模型”類別,每個預訓練的TTM都針對特定的預測設置(由上下文長度和預測長度決定)進行定製。我們沒有構建一個支持所有預測設置的大型模型,而是選擇構建較小的預訓練模型,每個模型專注於特定的預測設置,從而產生更準確的結果。此外,這種方法確保我們的模型非常小且速度極快,便於部署,無需大量資源。
在本模型卡片中,我們計劃發佈多個預訓練的TTM,以滿足實際中許多常見的預測設置。此外,我們還發布了源代碼和預訓練腳本,用戶可以利用這些腳本來自己預訓練模型。預訓練TTM非常容易且快速,與傳統方法需要數天或數週相比,不到一天即可完成。
每個預訓練模型將在本模型卡片的不同分支名稱下發布。請使用我們的入門筆記本,並指定分支名稱來訪問所需的模型。
模型發佈情況(以及存儲模型的分支名稱)
- 512 - 96 - ft - r2:給定最後512個時間點(即上下文長度),該模型可以預測未來最多96個時間點(即預測長度)。(分支名稱:main)
- 1024 - 96 - ft - r2:給定最後1024個時間點(即上下文長度),該模型可以預測未來最多96個時間點(即預測長度)。(分支名稱:1024 - 96 - ft - r2)[[基準測試]]
- 1536 - 96 - ft - r2:給定最後1536個時間點(即上下文長度),該模型可以預測未來最多96個時間點(即預測長度)。(分支名稱:1536 - 96 - ft - r2)
- 同樣,我們還發布了預測長度可達720個時間點的模型。這些模型的分支名稱如下:
512 - 192 - ft - r2
、1024 - 192 - ft - r2
、1536 - 192 - ft - r2
、512 - 336 - r2
、512 - 336 - ft - r2
、1024 - 336 - ft - r2
、1536 - 336 - ft - r2
、512 - 720 - ft - r2
、1024 - 720 - ft - r2
、1536 - 720 - ft - r2
- 請使用[get_model]工具,根據您輸入的上下文長度和預測長度要求自動選擇所需的模型。
- 目前我們允許3種上下文長度(512、1024和1536)和4種預測長度(96、192、336、720)。用戶需要輸入3種允許的上下文長度之一,但可以在
get_model()
中輸入最多720的任何預測長度來獲取所需的模型。
基準測試
在零樣本/少樣本預測中,TTM超越了多個流行基準模型,如TimesFM、Moirai、Chronos、Lag - Llama、Moment、GPT4TS、TimeLLM、LLMTime,同時顯著降低了計算需求。此外,TTM是輕量級的,甚至可以在僅配備CPU的機器上運行,提高了可用性,有助於在資源受限的環境中更廣泛地應用。更多詳情請參考我們的論文。
- 論文中提到的TTM - B對應512上下文長度的模型。
- 論文中提到的TTM - E對應1024上下文長度的模型。
- 論文中提到的TTM - A對應1536上下文長度的模型。
請注意,Granite TTM模型僅在經我們法律團隊批准的具有明確商業使用許可的數據集上進行預訓練。因此,本次發佈中使用的預訓練數據集與研究論文中使用的數據集略有不同,這可能導致模型性能與發表的結果相比有輕微差異。更多詳情請參考我們的論文。
基準測試腳本:此處
推薦使用方法
- 用戶在將數據輸入模型之前,必須為每個通道獨立地對數據進行外部標準化縮放(請參考TSP,這是我們用於數據縮放的數據處理工具)。
- 當前的開源版本僅支持分鐘級和小時級分辨率(例如10分鐘、15分鐘、1小時)。由於模型需要至少512或1024的上下文長度,當前版本不支持其他較低分辨率(如每週或每月)。
- 不建議對較短長度的數據集進行上採樣或在前面填充零以虛擬增加上下文長度,這會影響模型性能。
模型詳情
有關TTM架構和基準測試的更多詳細信息,請參考我們的論文。
TTM - 1目前支持2種模式:
- 零樣本預測:直接將預訓練模型應用於目標數據,以獲得初始預測(無需訓練)。
- 微調預測:使用目標數據的子集對預訓練模型進行微調,以進一步改進預測結果。
由於TTM模型非常小且速度極快,實際上可以在幾分鐘內使用可用的目標數據對模型進行微調,以獲得更準確的預測。
當前版本支持通過通道獨立和通道混合兩種方法進行多變量預測。在微調過程中可以啟用解碼器通道混合,以捕捉時間序列變量之間的強通道相關模式,這是現有同類模型所缺乏的關鍵能力。
此外,TTM還支持外生變量注入和分類數據注入。
模型來源
- 代碼倉庫:https://github.com/ibm-granite/granite-tsfm/tree/main/tsfm_public/models/tinytimemixer
- 論文:https://arxiv.org/pdf/2401.03955.pdf
關於TTM的博客和文章
請參考我們的維基頁面。
🔧 技術細節
文檔未提供技術實現細節,故跳過該章節。
📄 許可證
本模型採用CC - BY - NC - SA 4.0許可證。
引用
如果您打算在工作中使用我們的模型或其相關架構/方法,請引用以下論文:
@inproceedings{ekambaram2024tinytimemixersttms,
title={Tiny Time Mixers (TTMs): Fast Pre-trained Models for Enhanced Zero/Few-Shot Forecasting of Multivariate Time Series},
author={Vijay Ekambaram and Arindam Jati and Pankaj Dayama and Sumanta Mukherjee and Nam H. Nguyen and Wesley M. Gifford and Chandra Reddy and Jayant Kalagnanam},
booktitle={Advances in Neural Information Processing Systems (NeurIPS 2024)},
year={2024},
}
模型卡片作者
Vijay Ekambaram、Arindam Jati、Pankaj Dayama、Wesley M. Gifford、Sumanta Mukherjee、Chandra Reddy和Jayant Kalagnanam
IBM公共代碼倉庫聲明
本代碼倉庫中的所有內容(包括代碼)均由IBM根據相關開源軟件許可證提供,IBM沒有義務提供增強、更新或支持。IBM開發人員將此代碼作為開源項目(而非IBM產品)開發,IBM不對代碼的質量和安全性做出任何聲明,並且未來不會維護此代碼。




