亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python機器學(xué)習(xí)darts時間序列預(yù)測和分析

 更新時間:2024年01月26日 11:04:26   作者:程序員小寒  
這篇文章主要介紹了python機器學(xué)習(xí)darts時間序列預(yù)測和分析使用實例探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

python庫darts

今天給大家分享一個神奇的 python 庫,darts

https://github.com/unit8co/darts 

darts 是一個用于時間序列預(yù)測和分析的 Python 庫。它支持多種時間序列模型,包括經(jīng)典統(tǒng)計學(xué)模型和最新的機器學(xué)習(xí)模型,它還設(shè)計了簡單直觀的 API,使得即使是時間序列分析的初學(xué)者也能輕松上手。 

特點

darts 具有如下特點

  • 預(yù)測模型:darts 支持多種時間序列模型,包括經(jīng)典統(tǒng)計學(xué)模型(如 ARIMA、指數(shù)平滑法)和最新的機器學(xué)習(xí)模型(如 Prophet、RNN)

  • 異常檢測:darts 提供廣泛的異常檢測功能。例如,在時間序列上應(yīng)用 PyOD 模型來獲取異常分?jǐn)?shù)。

  • 多變量支持:TimeSeries 可以是多變量的,即包含多個隨時間變化的維度而不是單個標(biāo)量值。

  • 分層協(xié)調(diào):darts 提供了轉(zhuǎn)換器來執(zhí)行協(xié)調(diào)。這些可以使預(yù)測以尊重底層層次結(jié)構(gòu)的方式進(jìn)行累加。

  • 回歸模型:可以插入任何 scikit-learn 兼容模型,以獲得作為目標(biāo)序列和協(xié)變量的滯后值函數(shù)的預(yù)測。

  • 可解釋性:darts 能夠使用 Shap 值解釋一些預(yù)測模型。

  • 數(shù)據(jù)處理:輕松應(yīng)用時間序列數(shù)據(jù)常見轉(zhuǎn)換的工具。

  • Metrics:評估時間序列擬合的多種指標(biāo)。

  • 回溯測試:使用移動時間窗口模擬歷史預(yù)測的實用程序。

  • PyTorch Lightning 支持:所有深度學(xué)習(xí)模型均使用 PyTorch Lightning 實現(xiàn),支持自定義回調(diào)、GPU/TPU 訓(xùn)練和自定義訓(xùn)練器等。

  • 過濾模型:darts 提供三種過濾模型,KalmanFilter、GaussianProcessFilter 和 MovingAverageFilter,它們允許過濾時間序列。

  • 數(shù)據(jù)集:darts.datasets 子模塊包含一些流行的時間序列數(shù)據(jù)集,用于快速且可重復(fù)的實驗。

庫的安裝

可以直接通過 pip 進(jìn)行安裝。

注意,需要對應(yīng)的 python 版本大于等于 3.8

pip install darts

預(yù)測

首先我們通過 pandas 來加載數(shù)據(jù)集。

import pandas as pd
from darts import TimeSeries

# Read a pandas DataFrame
df = pd.read_csv("AirPassengers.csv", delimiter=",")

# Create a TimeSeries, specifying the time and value columns
series = TimeSeries.from_dataframe(df, "Month", "#Passengers")

# Set aside the last 36 months as a validation series
train, val = series[:-36], series[-36:]

接下來訓(xùn)練一個指數(shù)平滑模型,并對驗證集進(jìn)行預(yù)測。

from darts.models import ExponentialSmoothing
import matplotlib.pyplot as plt

model = ExponentialSmoothing()
model.fit(train)
prediction = model.predict(len(val), num_samples=1000)

series.plot()
prediction.plot(label="forecast", low_quantile=0.05, high_quantile=0.95)
plt.legend()

異常檢測

首先,我們加載一個多元序列。

from darts.datasets import ETTh2Dataset

series = ETTh2Dataset().load()[:10000][["MUFL", "LULL"]]
train, val = series.split_before(0.6)

接下來,構(gòu)建一個 k-means 異常評分器,在訓(xùn)練集上對其進(jìn)行訓(xùn)練,并在驗證集上使用它來獲取異常分?jǐn)?shù)。

from darts.ad import KMeansScorer

scorer = KMeansScorer(k=2, window=5)
scorer.fit(train)
anom_score = scorer.score(val)

然后構(gòu)建一個二元異常檢測器并通過訓(xùn)練分?jǐn)?shù)對其進(jìn)行訓(xùn)練,然后使用它對驗證分?jǐn)?shù)來獲得二元異常分類

from darts.ad import QuantileDetector

detector = QuantileDetector(high_quantile=0.99)
detector.fit(scorer.score(train))
binary_anom = detector.detect(anom_score)

繪圖展示

import matplotlib.pyplot as plt
series.plot()
(anom_score / 2. - 100).plot(label="computed anomaly score", c="orangered", lw=3)
(binary_anom * 45 - 150).plot(label="detected binary anomaly", lw=4)

以上就是python機器學(xué)習(xí)darts時間序列預(yù)測和分析的詳細(xì)內(nèi)容,更多關(guān)于python darts時間序列預(yù)測的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解爬蟲被封的問題

    詳解爬蟲被封的問題

    這篇文章主要介紹了爬蟲被封的問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Python Selenium網(wǎng)頁自動化利器使用詳解

    Python Selenium網(wǎng)頁自動化利器使用詳解

    這篇文章主要為大家介紹了使用Python Selenium實現(xiàn)網(wǎng)頁自動化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • python實現(xiàn)簡單的學(xué)生管理系統(tǒng)

    python實現(xiàn)簡單的學(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)簡單的學(xué)生管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-02-02
  • Python3中延時變量和 free_list鏈表的區(qū)別解析

    Python3中延時變量和 free_list鏈表的區(qū)別解析

    這篇文章主要介紹了Python3中延時變量和 free_list鏈表的區(qū)別,在Python3中,"延時變量" 和 "free_list鏈表" 是兩個不同的概念,他們之間沒有直接聯(lián)系,本文給實例相結(jié)合給大家講解的非常詳細(xì),需要的朋友可以參考下
    2023-04-04
  • Python bytes string相互轉(zhuǎn)換過程解析

    Python bytes string相互轉(zhuǎn)換過程解析

    這篇文章主要介紹了Python bytes string相互轉(zhuǎn)換過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • 如何使用Python編寫測試腳本

    如何使用Python編寫測試腳本

    這篇文章主要為大家詳細(xì)介紹了Python如何通過PyCAN和CANard庫實現(xiàn)編寫測試腳本,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-02-02
  • python中的斷言(assert語句)

    python中的斷言(assert語句)

    這篇文章主要介紹了python中的斷言(assert語句),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • python中使用enumerate函數(shù)遍歷元素實例

    python中使用enumerate函數(shù)遍歷元素實例

    這篇文章主要介紹了python中使用enumerate函數(shù)遍歷元素實例,這是一個比較簡單的例子,需要的朋友可以參考下
    2014-06-06
  • 解決Python正則表達(dá)式匹配反斜杠''''\''''問題

    解決Python正則表達(dá)式匹配反斜杠''''\''''問題

    這篇文章主要介紹了Python正則表達(dá)式匹配反斜杠'\'問題 ,很多朋友在使用python 正則式的過程中,經(jīng)常被這個問題困擾,今天小編通過代碼給大家詳細(xì)介紹,需要的朋友可以參考下
    2019-07-07
  • Python使用psutil實現(xiàn)系統(tǒng)監(jiān)控與資源管理

    Python使用psutil實現(xiàn)系統(tǒng)監(jiān)控與資源管理

    這篇文章主要為大家詳細(xì)介紹了psutil?的各項功能,并結(jié)合實際代碼示例,展示如何用?Python?構(gòu)建自己的系統(tǒng)監(jiān)控工具,資源分析器和進(jìn)程管理腳本等
    2025-05-05

最新評論