TimeGPT是一款可用於生產的、生成式預訓練的時間序列變壓器。只需幾行程式碼,它就能準確預測零售、電力、金融、物聯網等各個領域。
pip install nixtla >= 0.5 . 1
import pandas as pd
from nixtla import NixtlaClient
# Get your API Key at dashboard.nixtla.io
# 1. Instantiate the NixtlaClient
nixtla_client = NixtlaClient ( api_key = 'YOUR API KEY HERE' )
# 2. Read historic electricity demand data
df = pd . read_csv ( 'https://raw.githubusercontent.com/Nixtla/transfer-learning-time-series/main/datasets/electricity-short.csv' )
# 3. Forecast the next 24 hours
fcst_df = nixtla_client . forecast ( df , h = 24 , level = [ 80 , 90 ])
# 4. Plot your results (optional)
nixtla_client . plot ( df , fcst_df , level = [ 80 , 90 ])
# Get your API Key at dashboard.nixtla.io
# 1. Instantiate the NixtlaClient
nixtla_client = NixtlaClient ( api_key = 'YOUR API KEY HERE' )
# 2. Read Data # Wikipedia visits of NFL Star (
df = pd . read_csv ( 'https://datasets-nixtla.s3.amazonaws.com/peyton-manning.csv' )
# 3. Detect Anomalies
anomalies_df = nixtla_client . detect_anomalies ( df , time_col = 'timestamp' , target_col = 'value' , freq = 'D' )
# 4. Plot your results (optional)
nixtla_client . plot ( df , anomalies_df , time_col = 'timestamp' , target_col = 'value' )
探索我們的 API 參考,了解如何在各種程式語言(包括 JavaScript、Go 等)中利用 TimeGPT。
零樣本推理:TimeGPT 可以直接產生預測並檢測異常,無需事先訓練資料。這允許立即部署並從任何時間序列資料中快速獲得洞察。
微調:透過在特定資料集上微調模型來增強 TimeGPT 的功能,使模型能夠適應您獨特的時間序列資料的細微差別,並提高客製化任務的效能。
API 存取:透過我們強大的 API 將 TimeGPT 無縫整合到您的應用程式中。即將推出的對 Azure Studio 的支援將提供更靈活的整合選項。或者,在您自己的基礎架構上部署 TimeGPT,以保持對資料和工作流程的完全控制。
新增外生變量:納入可能影響您的預測的其他變量,以提高預測準確性。 (例如特殊日期、活動或價格)
多序列預測:同時預測多個時間序列數據,優化工作流程和資源。
自訂損失函數:使用自訂損失函數自訂微調過程,以滿足特定的效能指標。
交叉驗證:實施開箱即用的交叉驗證技術,以確保模型的穩健性和通用性。
預測間隔:提供預測間隔以有效量化不確定性。
不規則時間戳:處理具有不規則時間戳記的數據,無需預處理即可容納非均勻間隔序列。
深入研究我們的綜合文檔,發現 TimeGPT 的範例和實際用例。我們的文件涵蓋廣泛的主題,包括:
入門:從我們用戶友好的快速入門指南開始,了解如何輕鬆設定 API 金鑰。
高級技術:掌握高級預測方法,並了解如何透過我們的異常檢測教程提高模型準確性,使用特定損失函數微調模型,以及跨分佈式框架(例如 Spark、Dask 和 Ray)擴展計算。
專業主題:探索專業主題,例如處理外生變數、透過交叉驗證進行模型驗證以及不確定性下的預測策略。
現實世界應用:透過預測網路流量和預測比特幣價格的案例研究,揭示 TimeGPT 如何在現實場景中應用。
時間序列資料在金融、醫療保健、氣象和社會科學等各個領域都至關重要。無論是監測海洋潮汐還是追蹤道瓊斯指數每日收盤值,時間序列數據對於預測和決策都至關重要。
ARIMA、ETS、MSTL、Theta、CES 等傳統分析方法,XGBoost 和 LightGBM 等機器學習模型以及深度學習方法已成為分析師的標準工具。然而,TimeGPT 以其出色的效能、效率和簡單性引入了範式轉移。憑藉其零樣本推理能力,TimeGPT 簡化了分析過程,即使具有最少編碼經驗的使用者也可以輕鬆使用。
TimeGPT 是用戶友好且低代碼的,使用戶能夠上傳時間序列數據,並僅用一行程式碼即可產生預測或檢測異常。作為開箱即用的時間序列分析的唯一基礎模型,TimeGPT 可以透過我們的公共 API、Azure Studio(即將推出)進行集成,或部署在您自己的基礎設施上。
“注意力就是你所需要的一切”論文中引入的革命性概念“自我注意力”,是這個基礎模型的基礎。 TimeGPT 模型並非基於任何現有的大型語言模型 (LLM)。它作為大型變壓器模型在龐大的時間序列資料集上進行獨立訓練,其設計目的是最大限度地減少預測誤差。
此架構由多層編碼器-解碼器結構組成,每層都有殘差連接和層歸一化。最後,線性層將解碼器的輸出對應到預測視窗維度。一般的直覺是,基於注意力的機制能夠捕捉過去事件的多樣性並正確推斷未來潛在的分佈。
據我們所知,TimeGPT 接受了最大的公開時間序列集合的訓練,總共包含超過 1000 億個數據點。該訓練集包含來自廣泛領域的時間序列,包括金融、經濟、人口統計、醫療保健、天氣、物聯網感測器數據、能源、網路流量、銷售、運輸和銀行業務。由於域的多樣性,訓練資料集包含具有廣泛特徵的時間序列
TimeGPT 已在超過 300K 個獨特系列上對其零樣本推理能力進行了測試,其中涉及使用模型而無需在測試資料集上進行額外的微調。 TimeGPT 的表現優於一系列完善的統計和尖端深度學習模型,在各種頻率上始終位居前三名。
TimeGPT 也擅長使用預先訓練的模型提供簡單且快速的預測。這與通常需要大量訓練和預測管道的其他模型形成鮮明對比。
對於零樣本推理,我們的內部測試記錄了 TimeGPT 每個系列的平均 GPU 推理速度為 0.6 毫秒,幾乎反映了簡單的 Seasonal Naive 的速度。
如果您發現 TimeGPT 對您的研究有用,請考慮引用相關論文:
@misc{garza2023timegpt1,
title={TimeGPT-1},
author={Azul Garza and Max Mergenthaler-Canseco},
year={2023},
eprint={2310.03589},
archivePrefix={arXiv},
primaryClass={cs.LG}
}
TimeGPT 已在許多出版物中獲得專題報導,並因其創新的時間序列預測方法而受到認可。以下是一些功能和提及:
TimeGPT 是閉源的。不過,該 SDK 是開源的,可根據 Apache 2.0 授權使用。請隨意貢獻(請參閱貢獻指南以了解更多詳細資訊)。
如有任何問題或回饋,請隨時透過 ops [at] nixtla.io 與我們聯繫。