日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

时序预测:从两篇高影响力的论文谈起

發(fā)布時(shí)間:2024/10/8 72 豆豆
生活随笔 收集整理的這篇文章主要介紹了 时序预测:从两篇高影响力的论文谈起 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

未來可以預(yù)測嗎?

本文從兩篇高影響力的時(shí)序預(yù)測文章談起,其中一篇是18年放在arXiv上的文章,文中總結(jié)性地提出了時(shí)序卷積網(wǎng)絡(luò)(TCN: Temporal Convolutional Network),短短兩三年引用數(shù)已經(jīng)破千,TCN作為一種基準(zhǔn)方法被廣泛應(yīng)用于各種時(shí)序預(yù)測問題。

另外一篇發(fā)表在今年人工智能領(lǐng)域的頂會(huì)AAAI上,在9000多篇投稿中脫穎而出獲得最佳論文獎(jiǎng)(三篇之一),GitHub上線短短幾個(gè)月星標(biāo)就已經(jīng)破千。

這兩篇文章都聚焦在時(shí)間序列預(yù)測這個(gè)非常有意義的“水晶球”問題:給定過去一段時(shí)間對某些變量的觀測值,提取數(shù)據(jù)特征用以預(yù)測未來事件。該問題的應(yīng)用不勝枚舉,比如說對天氣、自然災(zāi)害、能源消耗、交通流量的預(yù)測;股票、期貨市場、比特幣的漲跌等等。對未來的預(yù)測直接影響到我們現(xiàn)在所能采取的行動(dòng)決策,預(yù)測的準(zhǔn)確程度也因此決定了我們當(dāng)前決策的得失,意義重大!拿最近席卷全球的Covid-19疫情來說,如果能對疫情傳播進(jìn)行準(zhǔn)確的時(shí)序建模與預(yù)測,應(yīng)對措施就能做的更合理,減少人員的傷亡,降低對經(jīng)濟(jì)的影響。

然而,問題意義重大并不代表在科研上還有得做,意義大的問題做的人也多,很可能已經(jīng)做到頭,也因此就沒什么科研價(jià)值了。咱們之前提到過,在決定動(dòng)手之前要先考慮問題的基線和極限,想要知道基線在哪兒就需要調(diào)研l(wèi)iterature,搞清楚state-of-the-art做到什么程度了,想要知道極限就要考慮可能達(dá)到的最好結(jié)果是什么,如果兩者之間有足夠的差距,那這個(gè)問題就還值得去做,下面咱們就來檢驗(yàn)一下。

時(shí)序預(yù)測問題的基線和極限

時(shí)序預(yù)測這個(gè)領(lǐng)域的工作與很多其他領(lǐng)域類似,我們可以按“深度學(xué)習(xí)”方法的引入作為分界線。在此之前的方法是傳統(tǒng)的時(shí)序建模方法,比如移動(dòng)平均、自回歸、以及結(jié)合差分的ARIMA模型等,有著悠久的歷史以及基于理論基礎(chǔ)的可解釋性。但是,這類方法一般要求時(shí)間序列是平穩(wěn)的,而且對于多變量協(xié)同預(yù)測要做很多人工處理,因此主要適用于小規(guī)模單變量的時(shí)序預(yù)測問題。在當(dāng)前的大數(shù)據(jù)應(yīng)用場景下,用深度神經(jīng)網(wǎng)絡(luò)粗暴的自動(dòng)提取特征,雖然丟失了可解釋性,但性能遠(yuǎn)超傳統(tǒng)方法。

使用神經(jīng)網(wǎng)絡(luò)對于序列信息進(jìn)行建模的經(jīng)典方法是循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN: Recurrent Neural Network)及其各種變種(LSTM: Long Short-Term Memory、GRU: Gated Recurrent Unit)。然而,RNN的訓(xùn)練難以并行化,而且對于長序列建模面臨梯度消失和梯度爆炸等問題。2017年基于自注意力機(jī)制的Transformer架構(gòu)橫空出世,Google展示了它在機(jī)器翻譯領(lǐng)域的絕佳性能。自此以后,無數(shù)文章前仆后繼把Transformer用于各種序列信息建模,把所有之前用到RNN的問題都洗了幾遍,把SOTA性能刷的也是死去活來。這一兩年來,Transformer也開始對CNN相關(guān)問題下手,刷榜還在如火如荼地進(jìn)行中,這是題外話,這里就不展開說了。

Tranformer確實(shí)在序列建模方面性能出色,但也有個(gè)重大弱點(diǎn),那就是復(fù)雜度非常高,對計(jì)算和存儲(chǔ)資源的消耗極大,速度也比較慢。因此近年來有很多工作嘗試在對性能影響不大的前提下降低復(fù)雜度,本文提到的Informer就是這樣一個(gè)工作。具體而言,Informer提出一種新的自注意力機(jī)制ProbSparse以及自注意力蒸餾模塊,將計(jì)算復(fù)雜度和存儲(chǔ)需求從O(L2)降到O(LlogL),并將其應(yīng)用于長時(shí)序列的預(yù)測,這里L(fēng)是預(yù)測時(shí)考慮的歷史信息長度。

由于這篇文章report的結(jié)果是state-of-the-art,而且在AAAI上斬獲大獎(jiǎng),自然是要作為目前研究的基線來看待。文章作者開源了他們的代碼并且持續(xù)有更新,因此很容易獲取基線結(jié)果。對于時(shí)序預(yù)測問題,我們可以把Ground Truth看做是終極的hard極限,先來看看二者之間的差距。


Informer文中給出的結(jié)果主要是均方根誤差以及平均絕對誤差等根據(jù)訓(xùn)練集的均值和方差做歸一化后的結(jié)果,從數(shù)字本身很難感知誤差到底有多少。因此,我們做了些可視化來觀察具體的預(yù)測質(zhì)量。我們可視化的是ETT-H1這個(gè)數(shù)據(jù)集,共有7個(gè)變量,采用的Informer模型是用過去的96小時(shí)數(shù)據(jù)來預(yù)測未來48小時(shí)數(shù)據(jù)的模型,我們先統(tǒng)計(jì)了在不同變量下的最小誤差、最大誤差以及平均值,從最小誤差的序列開始可視化。


然而可視化的結(jié)果有些讓我們目瞪口呆,因?yàn)榧词故钦`差最小的序列,其預(yù)測值與真值也相距甚遠(yuǎn)!因此不得不強(qiáng)迫學(xué)生仔細(xì)檢查多遍,應(yīng)該是沒有什么錯(cuò)誤。


我們挑了兩段Informer模型表現(xiàn)還算可以的測試序列進(jìn)行可視化,如下圖所示。左圖顯示的是測試集第1389個(gè)序列的第1個(gè)變量的結(jié)果;右圖則是測試集第441個(gè)序列上第5個(gè)變量的結(jié)果(此序列是2832個(gè)測試序列中Informer均方根誤差最低的結(jié)果)。

對于序列信息建模除了使用RNN或者Transformer,也可以使用卷積神經(jīng)網(wǎng)絡(luò)CNN,這里的代表性工作就是前面提到的TCN。由于Informer這篇文章并沒有跟TCN的結(jié)果做比較,我們用TCN模型跑了同樣的數(shù)據(jù),得到的結(jié)果如下圖所示。

可以看到,事實(shí)上TCN的結(jié)果比Informer要好不少,但也跟真值有著顯著差距。顯然,目前的基線結(jié)果跟hard極限有著巨大的gap,那是不是因?yàn)閱栴}本身可達(dá)到的極限結(jié)果就很低呢?

這當(dāng)然是有可能的,假設(shè)某個(gè)時(shí)序信號(hào)是單純的噪聲,那么,我們不可能學(xué)習(xí)到可以用于預(yù)測的特征。此外,對于極其復(fù)雜的時(shí)序數(shù)據(jù)比如說高頻交易,由于影響的因素過多,問題過于復(fù)雜,沒有任何公開的方法能夠通過時(shí)序預(yù)測獲取穩(wěn)定的收益,悶聲發(fā)大財(cái)?shù)挠袥]有就不清楚了?…?

遺憾的是,目前還沒有什么理論支撐我們來計(jì)算可能達(dá)到的最好時(shí)序預(yù)測結(jié)果。與此同時(shí),從肉眼觀測來看,Informer文章使用的這幾個(gè)數(shù)據(jù)集確實(shí)相對很多其他時(shí)序預(yù)測數(shù)據(jù)集要復(fù)雜不少,但我們還是能看到些周期性和趨勢,而無論是Informer還是TCN,在很多情況下并沒有很好地捕捉到這些特征。因此,我們猜測這個(gè)問題還是有很大的提升空間,是個(gè)值得嘗試的高價(jià)值科研問題。

從哪兒入手?

確定了科研問題之后,接下來就要仔細(xì)分析問題本身的特性以及現(xiàn)有基線方法的優(yōu)劣之處,或者針對其不足之處對癥下藥,或者另辟蹊徑來擊潰之。

首先,時(shí)間序列是一種特殊的序列信息,通常是按等時(shí)間間隔排列的一組數(shù)據(jù),時(shí)序建模過程中我們關(guān)注的主要是趨勢以及周期性之類的pattern,因此數(shù)據(jù)發(fā)生的先后順序至關(guān)重要,這個(gè)特性跟很多其他序列信息是有顯著區(qū)別的。比如說文本序列,即使打亂一定的順序,只要比例不是過高,對我們的理解影響并不大。Transformer架構(gòu)及其變種(包括Informer)使用注意力機(jī)制主要關(guān)注的是序列信息之間的兩兩相關(guān)性,雖然使用了位置編碼來encode信息之間的相對位置,但并不直接保留序列的順序信息,有不少信息損失,筆者認(rèn)為這是為什么它對時(shí)序預(yù)測的效果不如TCN的主要原因。

TCN這個(gè)架構(gòu)是借鑒Google的語音生成網(wǎng)絡(luò)WaveNet而來。按照arXiv上這篇原文,TCN將時(shí)序預(yù)測問題轉(zhuǎn)化為:使用卷積神經(jīng)網(wǎng)絡(luò)CNN,將輸入x0, x1, …, xT濾波輸出y0, y1, …, yT這樣一個(gè)等長預(yù)測序列。

具體的卷積操作設(shè)計(jì)如上圖所示,有以下幾個(gè)主要特點(diǎn):

  • 因果卷積(Causal Convolution):輸出yt在卷積操作中只能使用輸入中的x0, ?…, xt,而不能使用xt之后的數(shù)據(jù);

  • 空洞卷積(Dilated Convolution):對于普通的1D卷積操作,為了在輸出側(cè)獲取足夠的“感受野”,網(wǎng)絡(luò)的層數(shù)需要跟追溯的歷史信息長度成線性關(guān)系。為了降低網(wǎng)絡(luò)復(fù)雜度,減少網(wǎng)絡(luò)層數(shù),TCN在卷積里注入空洞來增加感受野,可以將網(wǎng)絡(luò)的層數(shù)下降到跟追溯的歷史信息長度成指數(shù)關(guān)系;

  • 為保證各層的輸入輸出長度一致,在每層的卷積操作都需要做一定程度的Zero Padding來實(shí)現(xiàn);

TCN的網(wǎng)絡(luò)設(shè)計(jì)看起來很有道理,在很多數(shù)據(jù)集上的表現(xiàn)也不錯(cuò),給人一種“使用CNN來做時(shí)序預(yù)測就該是這個(gè)樣子”的感覺。正因如此,雖然這篇arXiv文章的創(chuàng)新性不高,但被廣泛引用作為后續(xù)工作的基礎(chǔ)。

在了解現(xiàn)有工作之后,我們就需要做深入思考,這個(gè)階段要摒棄定式思維,要challenge現(xiàn)有工作,而不是人云亦云。如果我們仔細(xì)思考一下TCN的上述設(shè)計(jì)原則,就會(huì)發(fā)現(xiàn)它們雖然看起來很有道理,但實(shí)際上似是而非!

首先,請各位思考一下,“因果機(jī)制”對于時(shí)序預(yù)測是否必要?答案當(dāng)然是肯定的,因?yàn)槲覀儾荒馨盐磥硇畔?dāng)做已知來做預(yù)測。

但是,TCN架構(gòu)中的“因果卷積”是否是必要的呢?答案就是未必了!這取決于輸入和輸出序列是否存在overlap,對于有混疊的部分,為了不泄露未來的信息,我們只能卷積過去的輸入序列信息。然而,在多數(shù)時(shí)序預(yù)測應(yīng)用中,我們的預(yù)測方式是基于過去完整的序列直接來預(yù)測后續(xù)事件,所以并不存在所謂的“未來信息泄露”問題。TCN中的因果卷積可謂是多此一舉,不但沒有必要,反而自我限制了對時(shí)序信息的提取能力。筆者深切地懷疑這一誤解是由于TCN作者在最初formulate問題的時(shí)候?qū)斎胼敵龅南聵?biāo)使用了同樣的0,…, T導(dǎo)致的,事實(shí)上作為預(yù)測問題輸出的起始點(diǎn)最早也應(yīng)該是T+1 。更遺憾的是后續(xù)工作也想當(dāng)然地繼承了這一做法。

其次,“擴(kuò)大感受野”對于時(shí)序預(yù)測是否必要?答案當(dāng)然也是肯定的,我們要盡可能的利用歷史信息來學(xué)習(xí)有用的特征來增加預(yù)測能力。但是,TCN架構(gòu)中的“空洞卷積”是否是必要的呢?答案也是未必!擴(kuò)大感受野有多種方式,我們也可以在臨近兩層之間直接卷積較遠(yuǎn)的時(shí)序信息。真正的問題在于如何找到有意義的擴(kuò)大感受野方法?

最后,我們再思考一下TCN中要求各層之間的輸入輸出保持等長真的有必要嗎?事實(shí)上,時(shí)序預(yù)測中一個(gè)常見問題是single-step預(yù)測,也就是只預(yù)測下一個(gè)時(shí)間點(diǎn)的值。如果要求網(wǎng)絡(luò)的輸入輸出等長,就必然會(huì)在網(wǎng)絡(luò)各層之間引入人為的混疊,毫無意義。事實(shí)上只要將提取特征的網(wǎng)絡(luò)與預(yù)測輸出的網(wǎng)絡(luò)分開,就沒必要加入這個(gè)限制。

針對上述問題,尤其是考慮到時(shí)間序列的特殊性質(zhì),我們(主要是學(xué)生們)提出了一種全新的卷積網(wǎng)絡(luò)架構(gòu),大幅提升了時(shí)序預(yù)測效果。針對同樣的測試序列,我們的預(yù)測結(jié)果如下圖所示:

我們也在交通、金融、電力等多個(gè)時(shí)序預(yù)測數(shù)據(jù)集上驗(yàn)證了方法的有效性,效果提升也是肉眼可見。由于這篇文章還在盲審階段,具體的實(shí)現(xiàn)細(xì)節(jié)這里就先不談了,如果哪位同學(xué)在做跟時(shí)序預(yù)測問題相關(guān)的問題,有興趣嘗試一下我們的方法,請聯(lián)系小編。

小結(jié)一下,科研樹的枝繁葉茂固然需要不斷地添枝加葉,也需要時(shí)不時(shí)地剪枝裁葉,有素質(zhì)的科研汪應(yīng)該是天生的懷疑論者!本文提到的這兩篇高影響力文章都成果斐然,但質(zhì)疑才是推動(dòng)科研進(jìn)步的關(guān)鍵因素,尤其當(dāng)前AI領(lǐng)域的工作大多都是通過empirical結(jié)果而不是理論推導(dǎo)來證明有效性,有太多的可質(zhì)疑空間。筆者也期待我們提出的方法在不久的將來被推倒重來,最好是我們自己干的。

最后打個(gè)廣告,筆者和香港理工大學(xué)的秦璟老師有個(gè)聯(lián)合項(xiàng)目,需要招兩三個(gè)博士后,只要是CS和CE相關(guān)領(lǐng)域,有科研熱情即可。

????

現(xiàn)在,在「知乎」也能找到我們了

進(jìn)入知乎首頁搜索「PaperWeekly」

點(diǎn)擊「關(guān)注」訂閱我們的專欄吧

關(guān)于PaperWeekly

PaperWeekly 是一個(gè)推薦、解讀、討論、報(bào)道人工智能前沿論文成果的學(xué)術(shù)平臺(tái)。如果你研究或從事 AI 領(lǐng)域,歡迎在公眾號(hào)后臺(tái)點(diǎn)擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。

總結(jié)

以上是生活随笔為你收集整理的时序预测:从两篇高影响力的论文谈起的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。