假如說「LSTM」已死,它為什么仍然還能在大賽中成為贏家呢?
長短期記憶(LongShort-Term,LSTM)是一種時間循環神經網路(RNN),論文首次發表于1997年。因為奇特的設計結構,LSTM適宜于處理和預測時間序列中間隔和延后特別長的重要風波。
在過去幾六年里,LSTM發展怎么了?
密切關注機器學習的研究者,近來幾年她們見證了科學領域前所未有的革命性進步。這些進步猶如20世紀初,愛因斯坦的論文成為量子熱學的基礎一樣。只是這一次,奇跡發生在論文的推出,該論文一作為Alex,是大名鼎鼎的優秀中學生代表之一。
出席了2012年9月30日舉辦的大規模視覺辨識挑戰賽,達到最低的15.3%的Top-5錯誤率,比第二名低10.8個百分點。這一結果重新點燃了人們對機器學習(后來轉變為深度學習)的興趣。
我們很難評估每次技術突破:在一項新技術被引入并開始普及之前,另一項技術可能顯得更強悍、更快或更實惠。
技術的突破創造了這么多的炒作,吸引了許多新人,她們常常熱情很高,但經驗甚少。
深度學習領域中一個被誤會的突破就是循環神經網路(:RNN)家族。假如你用微軟搜索例如「LSTMsaredead」「RNNshavedied」短語你會發覺,搜索下來的結果大部份是不正確的或則結果太片面。
本文中數據科學家Nikos撰文《Deep:No,LSTMsAreNotDead!》,文中指出循環網路依然是十分有用的,可應用于許多實際場景。據悉,本文不只是討論LSTM和,文中還介紹了數據科學中無偏評估這一概念。
以下是原文內容,整篇以第一人稱述說。
LSTM當初主導了NLP領域
每位小型科技公司還會采用LSTM,在NLP研究中都有LSTM的身影。
早在1997年,LSTM在論文《LONGSHORT-TERM》中被提出,直至2014年才步入高速發展階段。它們屬于循環神經網路家族-RNN,以及門控循環單元GRU。
隨著GPU的可訪問性和第一個深度學習框架的出現,LSTM成為支配NLP領域的SOTA模型。2013年詞嵌入的出現推動了遷移學習機制的完善。事實上,當時幾乎所有NLP任務的標準組件都是:a)預訓練詞嵌入,b)LSTM和c)序列到序列構架。
在哪個時期,每位數據科學家都同意LSTM主導了NLP領域:它們被用于語音辨識、文本到語音合成、語言建模和機器翻譯。每家小型科技公司都接受了LSTM;毫不夸張的說沒有LSTM就沒有NLP。
微軟為機器翻譯創建的最佳模型之一,如右圖1所示:
圖1:微軟神經機器翻譯-GNMT構架。
這個復雜的模型存在于微軟翻譯服務中,與之前的版本相比,GNMT降低了60%的翻譯錯誤。正如我們看見的,GNMT大量使用了LSTM,產生了知名的編碼器-解碼器拓撲(包括一個單向LSTM)。
據悉,GNMT還借助了,這是一種容許模型在須要時關注輸入序列相關部份的機制。如圖1所示,其中編碼器的底部向量使用注意力分數加權。換句話說,每位時間步驟中的每位詞組都有一個可學習的分數,以最小化錯誤。要了解更多信息量子物理學基礎知識網絡圖,請查看資料:
但是,LSTM有兩個缺點:首先LSTM不容易在訓練過程中并行化;其次因為它們具有周期性,它們可以建模的序列寬度是有限制的。
打開的世界
RNN是序列模型,也就是說詞組是按次序處理的。并且,可以并行處理所有的詞組。
2017年,微軟在論文《IsAllYouNeed》中推出,這是NLP生態系統的里程碑式的進步。這個新模型通過提出多頭注意力機制來深入研究注意力,具體表現在:
但是,沒有使用LSTM,雖然在提取上下文信息很重要的第一層(LSTM可能很有用),提出了一種不同的機制,稱為位置編碼。這闡明了兩類模型之間的主要區別:RNN是序列模型,這意味著詞組是按次序處理的;但并行處理所有詞組,這大大降低了訓練時間。
從那之后,成為研究語言處理的基礎,并形成了新的變體。變體如右圖2所示:
圖2:開源的系列
不能被遺忘的時間序列
LSTM和都十分擅長對序列信息進行建模。為此,它們也可以應用于時間序列預測(TSF)案例。
傳統統計方式博得第一輪
但是,實驗結果表明,LSTM和在確切度方面并非一定優于傳統統計方式(比如ARIMA)。另一方面,統計方式和基于RNN的方式相結合更有效。一個典型的事例是Uber建立的ES-RNN模型,該模型最終博得了M4大賽。該模式是一種在擴張的LSTM之上使用指數平滑的混和模型。
其實,也遭到了考驗。對于時間序列預測,最常用的方式是使用原始的,并將位置編碼層替換為層。并且,模型也難以趕超統計技巧。
據悉,我還想說明以下幾點:
其實,就預測能力而言,ML方式并不總是優于統計方式。
深度學習(DL)博得第二輪
直至2018~2019年,深度學習模型才開始在時間序列預測任務中顯得更具競爭力。
右圖3和圖4顯示了兩個SOTA模型,分別為微軟的(TFT)和亞馬遜的。
TFT。圖源:
圖源:模型構架。圖源:
這兩個模型有好多有趣的地方,但與本文主題形成共鳴的最重要一點是:
它們都使用了LSTM!如何做到的呢?
TFT是一種用于時間序列的多層純深度學習模型,該模型具有LSTM編碼器-解碼器以及提供有可解釋預測的全新注意力機制。
是一個復雜的時間序列模型,它結合了自回歸和深度學習的特點。上圖4中的h_i,t向量實際上是LSTM單元的隱藏狀態,它們被拿來估算高斯分布的μ和σ參數。從這個分布中,選擇n個樣本,其中位數代表預測值。
結果表明,這兩種深度學習模型都優于傳統的統計方式。據悉,這兩種模型都愈發通用,由于它們可以處理多個時間序列并接受更豐富的功能集,其中TFT略勝一籌。
循環與注意力怎么關聯上去
為了學習不同尺度的時序關系,TFT使用循環層進行局部處理,使用可解釋的自注意力層進行常年依賴。考慮到我們目前所曉得的以及上文所述,可以得出以下推論:循環網路十分擅長捕捉序列的局部時間特點,而注意力則更擅長學習常年動態。
這不是一個輕率的推論。TFT論文的作者通過執行消融剖析證明了這一點。她們在其他組件中測試了LSTM編碼器-解碼器層:在消融實驗中使用原始的標準位置編碼層來替換它,得出了以下兩個推論:
序列到序列層的使用對模型性能形成增益;在執行基準測試的5個數據集中的4個,LSTM層實現了更佳的性能。
因而,我們可以有掌握地得出推論:LSTM層一直是時間序列深度學習模型中的一個特別有用的組件。據悉,它們不會對抗注意力機制,相反可以與基于注意力的組件相結合,進一步提升模型的效率。
LSTM的隱藏優勢:條件輸出
條件輸出是LSTM最被忽略的優勢之一,許多數據科學從業者依然沒有意識到這一點。假如你仍然在用原始循環網路,都會發覺這種類型的網路只能處理被表示為具有各類依賴關系的序列的時序數據。并且,它們不能直接對靜態元數據或非時變數據進行建模。
在NLP中,靜態元數據是不相關的。相反,NLP模型專注于詞組詞匯表,其中每位詞組都由嵌入表示,這是整個模型的統一概念。每位詞組所來自文檔的類型并不重要,只要NLP模型可以學習每位詞組的正確上下文感知表示即可。但要記住:一個特定的詞組可以有不同的嵌入,這取決于它的涵義和它在語句中的位置。
然而,在時間序列模型中,非時變數據的影響要大得多。諸如,假定我們有一個涉及商店產品的銷售預測場景,產品的銷量可以建模為時間序列,但也會遭到周末等外部誘因的影響。因而,一個好的預測模型也應當考慮這種變量。這就是TFT所做的,參見右圖5。
圖5:外部靜態變量對預測的影響。
然而,TFT是怎樣實現的呢?TFT專為集成靜態元數據而設計,它使用了各類技術,最重要的一個與LSTM有關。
LSTM使用[11]中首次介紹的方法無縫地執行此任務:沒有將LSTM的初始h_0隱藏狀態和單元狀態c_0設置為0(或隨機),而是使用指定向量或嵌入來初始化它們。或則正如TFT所做的一樣,在擬合期間使這種向量可訓練。通過這些方法,LSTM單元的輸出可以適當地在外部變量上發揮作用,而不會影響其時間依賴性。
LSTMvsTCN
在注意力和出現之前,有另一種有望改變現況的模型,即時間頻域網路(,TCN)。
TCN在2016年首次提出并在2018年規范化,它借助頻域網路對基于序列的數據進行建模。自然地,它們也是時間序列預測任務的理想方案。
擴張頻域示意圖,其中過濾器大小k=3,擴張因子d=1,2,4。體會野可以覆蓋來自輸入序列的所有數據點x_0...x_T。圖源:
TCN的「秘密裝備」是擴張頻域,如上圖6所示。標準CNN使用固定大小的內核/過濾器,因而它們只能覆蓋毗鄰的數據元素。TCN使用擴張頻域,它們在不同厚度的輸入序列上使用填充(),因而才能測量彼此毗鄰但位置完全不同的item之間的依賴關系。
據悉,TCN中還使用了其他技術,比如方差聯接,它如今已然成為深度網路的標準。這兒主要關注LSTM與TCN之間的差別:
TCN和LSTM都有各自的異同點。最好的方式是對它們進行評估,找到最適宜自己的方案。但要注意,除非你的用例特別小,否則難以通過單個TCN或LSTM模型實現SOTA性能。現代用例會考慮更多外部參數,這就須要更具挑戰性的技巧。反過來,這也就意味著必須使用多個組件或模型。
中的深度學習和時間序列
到目前為止,我們仍然在從學術角度評估單個模型。但是,假如我們要制訂一個更詳盡的觀點,就不能忽視實際應用。
提供了一個挺好的評估基準,我們以賽事為例:呼吸機壓力預測。該賽事任務是依照控制輸入的序列預測機械肺部的壓力序列。
這場賽事之所以具有挑戰性量子物理學基礎知識網絡圖,有三個誘因:
現今,有兩個比較有趣的地方介紹一下:第一個是排行前三的團隊以及其他許多團隊在她們的最終解決方案中起碼使用了一個基于LSTM的組件(比如LSTMS,單向LSTMS)。
取勝團隊遞交了一個多層次深度構架,其中包括一個LSTM網路和一個塊。此構架如圖7所示:
圖7:第一名解決方案構架。
頻域神經網路的命運
我希望這篇文章對LSTM的價值做出了挺好的論證。并且毫無疑惑是機器學習領域一個驚人突破。這些突破性的成功將會推動未來更高級別的研究。
2020年,被改編為計算機視覺版,誕生了(ViT),論文《AnImageisWorth16x16Words:forImageatScale》中提出。這篇論文引起了進一步的研究,最終經過不斷的升級,ViT模型還能在圖象分類任務中優于CNN。
為此,這個階段,我希望我們不要再說「CNN早已死亡」或者「CNN正在沒落」這樣的評價。
總結來講,本文可以總結為以下幾點:
原文鏈接: