時(shí)序預測的深度學(xué)習算法介紹(3)
注意力機制(Attention)是一種用于解決序列輸入數據中重要特征提取的機制,也被應用于時(shí)序預測領(lǐng)域。Attention機制可以自動(dòng)關(guān)注時(shí)間序列數據中的重要部分,為模型提供更有用的信息,從而提高預測精度。在應用Attention進(jìn)行時(shí)序預測時(shí),需要利用Attention機制自適應地加權輸入數據的各個(gè)部分,從而使得模型更加關(guān)注關(guān)鍵信息,同時(shí)減少無(wú)關(guān)信息的影響。Attention機制不僅可以應用于RNN等序列模型,也可以應用于CNN等非序列模型,是目前時(shí)序預測領(lǐng)域研究的熱點(diǎn)之一。
2.3.1 Transformer(2017)Paper:Attention Is All You Need
Transformer是一種廣泛應用于自然語(yǔ)言處理(NLP)領(lǐng)域的神經(jīng)網(wǎng)絡(luò )模型,其本質(zhì)是一種序列到序列(seq2seq)的模型。Transformer將序列中的每個(gè)位置視為一個(gè)向量,并使用多頭自注意力機制和前饋神經(jīng)網(wǎng)絡(luò )來(lái)捕捉序列中的長(cháng)程依賴(lài)性,從而使得模型能夠處理變長(cháng)序列和不定長(cháng)序列。
在時(shí)序預測任務(wù)中,Transformer模型可以將輸入序列的時(shí)間步作為位置信息,將每個(gè)時(shí)間步的特征表示為一個(gè)向量,并使用編碼器-****框架進(jìn)行預測。具體來(lái)說(shuō),可以將預測目標的前N個(gè)時(shí)間步作為編碼器的輸入,將預測目標的后M個(gè)時(shí)間步作為****的輸入,并使用編碼器-****框架進(jìn)行預測。編碼器和****都是由多個(gè)Transformer模塊堆疊而成,每個(gè)模塊由多頭自注意力層和前饋神經(jīng)網(wǎng)絡(luò )層組成。
在訓練過(guò)程中,可以使用均方誤差(MSE)或平均絕對誤差(MAE)等常見(jiàn)的損失函數來(lái)度量模型的預測性能,使用隨機梯度下降(SGD)或Adam等優(yōu)化算法來(lái)更新模型參數。在模型訓練過(guò)程中,還可以使用學(xué)習率調整、梯度裁剪等技術(shù)來(lái)加速模型的訓練和提高模型的性能。
# Transformermodel = TransformerModel( input_chunk_length=30, output_chunk_length=15, batch_size=32, n_epochs=200, # model_name="air_transformer", nr_epochs_val_period=10, d_model=16, nhead=8, num_encoder_layers=2, num_decoder_layers=2, dim_feedforward=128, dropout=0.1, optimizer_kwargs={"lr": 1e-2}, activation="relu", random_state=42, # save_checkpoints=True, # force_reset=True,)
2.3.2 TFT(2019)
Paper:Temporal Fusion Transformers for Interpretable Multi-horizon Time Series Forecasting
TFT(Transformer-based Time Series Forecasting)是一種基于Transformer模型的時(shí)序預測方法,它是由谷歌DeepMind團隊于2019年提出的。TFT方法的核心思想是在Transformer模型中引入時(shí)間特征嵌入(Temporal Feature Embedding)和模態(tài)嵌入(Modality Embedding)。時(shí)間特征嵌入可以幫助模型更好地學(xué)習時(shí)序數據中的周期性和趨勢性等特征,而模態(tài)嵌入可以將外部的影響因素(如氣溫、節假日等)與時(shí)序數據一起進(jìn)行預測。
TFT方法可以分為兩個(gè)階段:訓練階段和預測階段。在訓練階段,TFT方法使用訓練數據來(lái)訓練Transformer模型,并使用一些技巧(如隨機掩碼、自適應學(xué)習率調整等)來(lái)提高模型的魯棒性和訓練效率。在預測階段,TFT方法使用已訓練好的模型來(lái)對未來(lái)時(shí)序數據進(jìn)行預測。
與傳統的時(shí)序預測方法相比,TFT方法具有以下優(yōu)點(diǎn):
- 可以更好地處理不同尺度的時(shí)間序列數據,因為T(mén)ransformer模型可以對時(shí)間序列的全局和局部特征進(jìn)行學(xué)習。
- 可以同時(shí)考慮時(shí)間序列數據和外部影響因素,從而提高預測精度。
可以通過(guò)端到端的訓練方式直接學(xué)習預測模型,不需要手動(dòng)提取特征。
# TFTmodel = TransformerModel( input_chunk_length=30, output_chunk_length=15, batch_size=32, n_epochs=200, # model_name="air_transformer", nr_epochs_val_period=10, d_model=16, nhead=8, num_encoder_layers=2, num_decoder_layers=2, dim_feedforward=128, dropout=0.1, optimizer_kwargs={"lr": 1e-2}, activation="relu", random_state=42, # save_checkpoints=True, # force_reset=True,)
HT(Hierarchical Transformer)是一種基于Transformer模型的時(shí)序預測算法,由中國香港中文大學(xué)的研究人員提出。HT模型采用分層結構來(lái)處理具有多個(gè)時(shí)間尺度的時(shí)序數據,并通過(guò)自適應注意力機制來(lái)捕捉不同時(shí)間尺度的特征,以提高模型的預測性能和泛化能力。
HT模型由兩個(gè)主要組件組成:多尺度注意力模塊和預測模塊。在多尺度注意力模塊中,HT模型通過(guò)自適應多頭注意力機制來(lái)捕捉不同時(shí)間尺度的特征,并將不同時(shí)間尺度的特征融合到一個(gè)共同的特征表示中。在預測模塊中,HT模型使用全連接層對特征表示進(jìn)行預測,并輸出最終的預測結果。
HT模型的優(yōu)點(diǎn)在于,它能夠自適應地處理具有多個(gè)時(shí)間尺度的時(shí)序數據,并通過(guò)自適應多頭注意力機制來(lái)捕捉不同時(shí)間尺度的特征,以提高模型的預測性能和泛化能力。此外,HT模型還具有較好的可解釋性和泛化能力,可以適用于多種時(shí)序預測任務(wù)。
2.3.4 LogTrans(2019)Paper:Enhancing the Locality and Breaking the Memory Bottleneck of Transformer on Time Series Forecasting
Code:Autoformer
LogTrans提出了一種 Transformer 時(shí)間序列預測改進(jìn)方法,包括卷積自注意力(生成具有因果卷積的查詢(xún)和密鑰,將局部環(huán)境納入注意力機制)和LogSparse Transformer(Transformer 的內存效率較高的變體,用于降低長(cháng)時(shí)間序列建模的內存成本),主要用于解決Transformer時(shí)間序列預測與位置無(wú)關(guān)的注意力和記憶瓶頸兩個(gè)主要弱點(diǎn)。
2.3.5 DeepTTF(2020)DeepTTF(Deep Temporal Transformational Factorization)是一種基于深度學(xué)習和矩陣分解的時(shí)序預測算法,由美國加州大學(xué)洛杉磯分校的研究人員提出。DeepTTF模型將時(shí)間序列分解為多個(gè)時(shí)間段,并使用矩陣分解技術(shù)對每個(gè)時(shí)間段進(jìn)行建模,以提高模型的預測性能和可解釋性。
DeepTTF模型由三個(gè)主要組件組成:時(shí)間分段、矩陣分解和預測器。在時(shí)間分段階段,DeepTTF模型將時(shí)間序列分為多個(gè)時(shí)間段,每個(gè)時(shí)間段包含連續的一段時(shí)間。在矩陣分解階段,DeepTTF模型將每個(gè)時(shí)間段分解為兩個(gè)低維矩陣,分別表示時(shí)間和特征之間的關(guān)系。在預測器階段,DeepTTF模型使用多層感知機對每個(gè)時(shí)間段進(jìn)行預測,并將預測結果組合成最終的預測序列。
DeepTTF模型的優(yōu)點(diǎn)在于,它能夠有效地捕捉時(shí)間序列中的局部模式和全局趨勢,同時(shí)保持較高的預測精度和可解釋性。此外,DeepTTF模型還支持基于時(shí)間分段的交叉驗證,以提高模型的魯棒性和泛化能力。
2.3.6 PTST(2020)Probabilistic Time Series Transformer (PTST)是一種基于Transformer模型的時(shí)序預測算法,由Google Brain于2020年提出。該算法采用了概率圖模型來(lái)提高時(shí)序預測的準確性和可靠性,能夠在不確定性較大的時(shí)序數據中取得更好的表現。
PTST模型主要由兩個(gè)部分組成:序列模型和概率模型。序列模型采用Transformer結構,能夠對時(shí)間序列數據進(jìn)行編碼和解碼,并利用自注意力機制對序列中的重要信息進(jìn)行關(guān)注和提取。概率模型則引入了變分自編碼器(VAE)和卡爾曼濾波器(KF)來(lái)捕捉時(shí)序數據中的不確定性和噪聲。
具體地,PTST模型的序列模型使用Transformer Encoder-Decoder結構來(lái)進(jìn)行時(shí)序預測。Encoder部分采用多層自注意力機制來(lái)提取輸入序列的特征,Decoder部分則通過(guò)自回歸方式逐步生成輸出序列。在此基礎上,概率模型引入了一個(gè)隨機變量,即時(shí)序數據的噪聲項,它被建模為一個(gè)正態(tài)分布。同時(shí),為了減少潛在的誤差,概率模型還使用KF對序列進(jìn)行平滑處理。
在訓練過(guò)程中,PTST采用了最大后驗概率(MAP)估計方法,以最大化預測的概率。在預測階段,PTST利用蒙特卡洛采樣方法來(lái)從后驗分布中抽樣,以生成一組概率分布。同時(shí),為了衡量預測的準確性,PTST還引入了均方誤差和負對數似然(NLL)等損失函數。
2.3.7 Reformer(2020)Paper:Reformer: The Efficient Transformer
Reformer是一種基于Transformer模型的神經(jīng)網(wǎng)絡(luò )結構,它在時(shí)序預測任務(wù)中具有一定的應用前景??梢允褂肦eformer模型進(jìn)行采樣、自回歸、多步預測和結合強化學(xué)習等方法來(lái)進(jìn)行時(shí)序預測。在這些方法中,通過(guò)將已知的歷史時(shí)間步送入模型,然后生成未來(lái)時(shí)間步的值。Reformer模型通過(guò)引入可分離的卷積和可逆層等技術(shù),使得模型更加高效、準確和可擴展??傊?,Reformer模型為時(shí)序預測任務(wù)提供了一種全新的思路和方法。
2.3.8 Informer(2020)Paper:Informer: Beyond Efficient Transformer for Long Sequence Time-Series Forecasting
Code: https://github.com/zhouhaoyi/Informer2020
Informer是一種基于Transformer模型的時(shí)序預測方法,由北京大學(xué)深度學(xué)習與計算智能實(shí)驗室于2020年提出。與傳統的Transformer模型不同,Informer在Transformer模型的基礎上引入了全新的結構和機制,以更好地適應時(shí)序預測任務(wù)。Informer方法的核心思想包括:
- 長(cháng)短時(shí)記憶(LSTM)編碼器-****結構:Informer引入了LSTM編碼器-****結構,可以在一定程度上緩解時(shí)間序列中的長(cháng)期依賴(lài)問(wèn)題。
- 自適應長(cháng)度注意力(AL)機制:Informer提出了自適應長(cháng)度注意力機制,可以在不同時(shí)間尺度上自適應地捕捉序列中的重要信息。
- 多尺度卷積核(MSCK)機制:Informer使用多尺度卷積核機制,可以同時(shí)考慮不同時(shí)間尺度上的特征。
生成式對抗網(wǎng)絡(luò )(GAN)框架:Informer使用GAN框架,可以通過(guò)對抗學(xué)習的方式進(jìn)一步提高模型的預測精度。
在訓練階段,Informer方法可以使用多種損失函數(如平均絕對誤差、平均平方誤差、L1-Loss等)來(lái)訓練模型,并使用Adam優(yōu)化算法來(lái)更新模型參數。在預測階段,Informer方法可以使用滑動(dòng)窗口技術(shù)來(lái)預測未來(lái)時(shí)間點(diǎn)的值。
Informer方法在多個(gè)時(shí)序預測數據集上進(jìn)行了實(shí)驗,并與其他流行的時(shí)序預測方法進(jìn)行了比較。實(shí)驗結果表明,Informer方法在預測精度、訓練速度和計算效率等方面都表現出了很好的性能。
2.3.9 TAT(2021)TAT(Temporal Attention Transformer)是一種基于Transformer模型的時(shí)序預測算法,由北京大學(xué)智能科學(xué)實(shí)驗室提出。TAT模型在傳統的Transformer模型基礎上增加了時(shí)間注意力機制,能夠更好地捕捉時(shí)間序列中的動(dòng)態(tài)變化。
TAT模型的基本結構與Transformer類(lèi)似,包括多個(gè)Encoder和Decoder層。每個(gè)Encoder層包括多頭自注意力機制和前饋網(wǎng)絡(luò ),用于從輸入序列中提取特征。每個(gè)Decoder層則包括多頭自注意力機制、多頭注意力機制和前饋網(wǎng)絡(luò ),用于逐步生成輸出序列。與傳統的Transformer模型不同的是,TAT模型在多頭注意力機制中引入了時(shí)間注意力機制,以捕捉時(shí)間序列中的動(dòng)態(tài)變化。具體地,TAT模型將時(shí)間步信息作為額外的特征輸入,然后利用多頭注意力機制對時(shí)間步進(jìn)行關(guān)注和提取,以輔助模型對序列中動(dòng)態(tài)變化的建模。此外,TAT模型還使用了增量式訓練技術(shù),以提高模型的訓練效率和預測性能。
2.3.10 NHT(2021)Paper:Nested Hierarchical Transformer: Towards Accurate, Data-Efficient and Interpretable Visual Understanding
NHT(Nested Hierarchical Transformer)是一種用于時(shí)間序列預測的深度學(xué)習算法。它采用了一種嵌套的層次變換器結構,通過(guò)多層次嵌套的自注意力機制和時(shí)間重要性評估機制來(lái)實(shí)現對時(shí)間序列數據的精確預測。NHT模型通過(guò)引入更多的層次結構來(lái)改進(jìn)傳統的自注意力機制,同時(shí)使用時(shí)間重要性評估機制來(lái)動(dòng)態(tài)地控制不同層次的重要性,以獲得更好的預測性能。該算法在多個(gè)時(shí)間序列預測任務(wù)中表現出了優(yōu)異的性能,證明了其在時(shí)序預測領(lǐng)域的潛力。
2.3.11 Autoformer(2021)Paper:Autoformer: Decomposition Transformers with Auto-Correlation for Long-Term Series
ForecastingCode:https://github.com/thuml/Autoformer
AutoFormer是一種基于Transformer結構的時(shí)序預測模型。相比于傳統的RNN、LSTM等模型,AutoFormer具有以下特點(diǎn):
- 自注意力機制:AutoFormer采用自注意力機制,可以同時(shí)捕捉時(shí)間序列的全局和局部關(guān)系,避免了長(cháng)序列訓練時(shí)的梯度消失問(wèn)題。
- Transformer結構:AutoFormer使用了Transformer結構,可以實(shí)現并行計算,提高了訓練效率。
多任務(wù)學(xué)習:AutoFormer還支持多任務(wù)學(xué)習,可以同時(shí)預測多個(gè)時(shí)間序列,提高了模型的效率和準確性。
AutoFormer模型的具體結構類(lèi)似于Transformer,包括編碼器和****兩部分。編碼器由多個(gè)自注意力層和前饋神經(jīng)網(wǎng)絡(luò )層組成,用于從輸入序列中提取特征。****同樣由多個(gè)自注意力層和前饋神經(jīng)網(wǎng)絡(luò )層組成,用于將編碼器的輸出轉化為預測序列。此外,AutoFormer還引入了跨時(shí)間步的注意力機制,可以在編碼器和****中自適應地選擇時(shí)間步長(cháng)??傮w而言,AutoFormer是一種高效、準確的時(shí)序預測模型,適用于多種類(lèi)型的時(shí)間序列預測任務(wù)。
Paper:Pyraformer: Low-complexity Pyramidal Attention for Long-range Time Series Modeling and ForecastingCode: https://github.com/ant-research/Pyraformer
螞蟻研究院提出一種新的基于金字塔注意力的Transformer(Pyraformer),以彌補捕獲長(cháng)距離依賴(lài)和實(shí)現低時(shí)間和空間復雜性之間的差距。具體來(lái)說(shuō),通過(guò)在金字塔圖中傳遞基于注意力的信息來(lái)開(kāi)發(fā)金字塔注意力機制,如圖(d)所示。該圖中的邊可以分為兩組:尺度間連接和尺度內連接。尺度間的連接構建了原始序列的多分辨率表示:最細尺度上的節點(diǎn)對應于原始時(shí)間序列中的時(shí)間點(diǎn)(例如,每小時(shí)觀(guān)測值),而較粗尺度下的節點(diǎn)代表分辨率較低的特征(例如,每日、每周和每月模式)。
這種潛在的粗尺度節點(diǎn)最初是通過(guò)粗尺度構造模塊引入的。另一方面,尺度內邊緣通過(guò)將相鄰節點(diǎn)連接在一起來(lái)捕獲每個(gè)分辨率下的時(shí)間相關(guān)性。因此,該模型通過(guò)以較粗的分辨率捕獲此類(lèi)行為,從而使信號穿越路徑的長(cháng)度更短,從而為遠距離位置之間的長(cháng)期時(shí)間依賴(lài)性提供了一種簡(jiǎn)潔的表示。此外,通過(guò)稀疏的相鄰尺度內連接,在不同尺度上對不同范圍的時(shí)間依賴(lài)性進(jìn)行建模,可以顯著(zhù)降低計算成本。
*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。