金融時間序列預測和AI模型(第一部分):深度學習,真的可行嗎?

深度學習大熱,但是它在金融領域是否真的可行?妙盈科技邀請到人工智能領域的思考者與先行者E.Schoeneburg教授,他從多年來對AI在金融領域應用的觀察出發,對各種AI模型的使用以及優缺點進行了客觀的評估與判斷

Eberhard Schoeneburg, AI領域的思考者與先行者2018-11-05
深度學習

時間序列是人工智能(AI)的經典應用領域。 隨著目前金融科技和人工智能的火熱,全球金融市場的金融時間序列如指數、外匯匯率、黃金價格、利息、股票、期貨等特別應用了以深度學習(DL)為首的現代人工智能模型不斷進行分析和預測。

Liner, quadratic and cubic models

來源:NoSimpler Analytics

所以不出所料,越來越多的專業和非專業公司以及一些主要金融機構(銀行,經紀,基金,人工智能公司,金融科技公司等)正在部署或至少試驗AI模型和算法來預測這些真實世界中的時間序列,希望比使用已經應用了數十載的經典數學模型如線性回歸或更高階回歸模型(見上圖),ARIMA,ARFIMA,VAR模型等等更有效。

我將在一系列文章中討論如今哪些現代AI模型和算法更適用,並保證在分析和預測時間序列方面取得可量化的進展。另一方面,哪些模型可能不會從長遠來講帶來任何統計上顯著的進步。

我試圖對各種AI模型的使用和優點/缺點及其相關問題進行客觀的評估和判斷。

這篇文章適用於擁有一定的金融和人工智能背景但對AI模型幾乎沒有實際經驗的讀者。 因此,我將避免詳細的數學討論和復雜的數學統計論證,而是專注於分享我多年來將各種AI模型(甚至我自己的模型)應用於復雜的金融應用程序所獲得的見解。

顯而易見的首選:深度學習?

Deep Learning networks

許多公司現在通過使用一些標准的深度學習網絡(見上圖)和相關模型(如卷積網,強化學習,對抗性學習模型等)參與應用AI。通常來說,幾乎所有的關於人工智能的文章或評論都或多或少的提到,並對這些技術和模型不吝贊美之詞。

沒有必要再繼續表揚這些模型了,我將主要關注金融領域中,特別是預測領域使用深度學習和相關模型時遇到的問題。

如果你想學習和理解深度學習帶來的問題,以獲得更客觀的觀點或做出更復雜的投資決策,那麼我希望讓你了解,深度學習你真的能指望什麼,以及關於深度學習的初步見解。

操作問題:批量處理

傳統的深度學習模型需要在批量處理模式下進行訓練(即使一些公司正在研究不再以批量處理模式操作的變體,絕大多數深度學習模型仍在使用中)。 這意味著,需要對這些模型需要經過訓練、驗證和測試,再停止這一訓練過程,以便投入使用。

部署後,深度學習模型無法再調整或繼續學習。 如果這些模型的性能出現問題,就必須離線並重新訓練。 這樣做的問題是,整個過程不僅會干擾操作(除非你有一個備用版本的深度學習網絡,在主模型重新訓練的同時繼續工作),同時也並不能保證新訓練出來的模型比原先被替換的模型表現更好。

通過重新訓練來糾正現有的深度學習模型並非易事(請參閱下面討論的大多數問題),它需要要從頭開始整個部署過程。 重新訓練深度學習模型不像修補或修復軟件中的錯誤,它更像是一個完整的新開發項目,我們卻並不知道錯誤的確切位置。

反向傳播:經典梯度下降算法

Back-Propagation: Classical Gradient Descent Algorithm

來源:Lazy Programmer網站

深度學習模型使用訓練算法(稱為反向傳播),使用了數學中的經典梯度下降算法。 這已不是什麼新的概念,並已在數學領域中研究了數十年。 因此,深度學習並不是什麼新鮮事,它是公關和營銷新包裝下的舊數學優化模型。其關鍵和已知問題是它們不能保證找到它們的參數(權重)的全局最優解,因此它們在搜索時很容易陷入局部最優、而不是全局最優的參數集。 這意味著,當應用於時間序列分析和預測時,它們無法保證它們能夠生成最佳預測結果。

學習和計算的成本

Costs of Learning and Computation

來源:Victor Lavrenko, 2014

這些網絡的訓練計算成本非常高,深度學習網絡中單個權重的計算要求算法能迭代求解各種復雜的傳遞函數的鏈式微分方程。然而,復雜的深度學習網絡可能至少有一百萬甚至更多這樣的自適應權重,並且單個權重需要針對每個訓練示例進行重新調整。

例如,如果時間序列擁有1,000個值或數據點(例如3年以上的股票圖表,以每日交易收盤價為一個數據條目),對於一個一百萬權重節點的深度學習網絡需要進行1000次計算,所以計算量會達到10億次!而這僅僅是對整個網絡節點的一次訓練而已。實際上,網絡可能需要顯示數百或數千倍的所有訓練示例,從而保證最終調整得到的權重在測試集上的預測結果在既定的誤差容忍范圍內。為了在合理的時間范圍內(只用幾天甚至幾小時,而非幾個月或是幾年的時間)實現如此大量的計算,深度學習網絡通常需要在大型服務器或大量並行運算的電腦上進行訓練,或者兩者結合。

為了解決訓練的時間問題,通常會使用一些實用的技巧。 例如:使用非常簡單的算法訓練網絡幾個周期,在每個周期中僅訓練部分權重,使用遺傳算法預先設置權重,而不是隨機分配權重或用一些近似網絡結構的算法。但所有這些都不是科學的方法,而且大多數只是無指導的試驗和錯誤 - 技巧可能在某些情況下起作用,也可能完全不起作用,不能保證成功或確保減少時間和精力。即使這些或類似的技巧以某種方式起作用,你可能也不會理解它們實際工作的原因和方法,這也不是很有用(另見下文)。

深度學習網絡的結構與設計 - 充分反復試錯

Structure and Design of the DL Networks - plenty of trial and error

來源:Github, 用於視覺識別的CS231n卷積神經網絡

深度學習網絡的應用和時間序列預測的另一個主要問題是如何找到網絡的最佳整體設計和結構。沒有已知的理論來決定如何設計最佳網絡。這在實踐中是一個大問題,因為沒有指導例如網絡應該具有多少層,每層有多少神經元,神經元應該使用什麼傳遞函數,激活的閾值或神經元的層應該是多少等等。這時候資深的工程師可能會有很大的幫助,因為他們對深度學習模型在不同場景的應用有著豐富的經驗,因此能更好地「猜測到」每個環節優化模型性能的關鍵所在。

顯然,深度學習網絡的整體結構也對計算成本和工作量產生重大影響。你可以使用具有數百萬權重的小型或大型網絡,但是不能保證更大或更復雜的網絡比神經元更少、層數更少的小而簡單的網絡表現更好(參見下面對過擬合和欠擬合的討論)。

最好的設計開發方法似乎是,從一個相當小的網絡開始並訓練它,看看可以實現什麼樣的結果,然後從那裡開始用額外的神經元、層、連接等緩慢擴大網絡直到預測結果接近一個更合理可接受的水平。

再次強調這一點:在深度學習網絡中需要設置和學習許多參數,這些參數既沒有理論指導也沒有任何實際指導 - 主要是通過大量試錯來尋找最佳方法設置這些深度學習網絡。有一些近似方法(例如使用某種遺傳算法來找到深度學習網絡架構和結構的最佳啟動配置)但是它們通常需要額外的計算時間和資源才能添加到已經非常昂貴且耗時的網絡處理中。

如果有足夠的資金和大量服務器,你可以同時在不同的深度學習網絡進行多次學習試驗,然後選擇性能最佳的網絡再次進行訓練,並與其他的優質網絡進行對比(一種最適合的深度學習網絡的生存方式)。

AlphaGo Overview

來源:Silver, D. etal. Nature Vol 529, 2016 Bob van den Hoek, 2016

這就是谷歌/DeepMind(AlphaGO)最終找到擊敗人類圍棋冠軍的方法。這種尋找最佳網絡架構和參數集的演化方法通常可用於深度學習網絡的任何類型的應用,並且可能產生不錯的結果 - 但請記住,如果使用這種方法,可能會產生巨大的計算成本和工作量,而我們並不是谷歌。

Deep learning workflow

來源:(CMP305) Deep Learning on AWS Made EasyCmp305

即使找到並確定了良好的起始網絡結構和一組良好的初始權重問題,仍然需要找到最佳匹配的深度學習網絡整體培訓方法。

深度學習網絡處理時間序列預測的標准和直觀的訓練方法是選擇和定義數據點上的「滑動窗口」(見下圖)。 需要選擇數據點的固定時間窗口(比如代表大約一個月訓練數據的某個股票的連續收盤價格的20天),將訓練集切割成固定模塊以饋送到網絡的輸入層並且預期的預測日期的數據(比如第21天的收盤價)被放在輸出神經元上。在整個時間序列中重復執行此操作,直到達到可用訓練天數的最終日期。 這種訓練方法的期望是,無論何時將來連續20天的時間窗口數據輸入網絡,深度學習模型都將學習預測這些信息輸入第21天的數據。

Neural network training

來源:https://www.obitko.com/tutorials/neural-network-prediction/neural-network-training.html
(c) Marek Obitko, 1999

很明顯,窗口的寬度在這裡至關重要。 它可以是連續20天或30天,或60天,180天 - 或任何其他數字嗎?窗口的寬度僅受可用數據集的長度和大小的限制 - 但除此之外,它可以采用任何大小。除了極少數情況之外,它們對於如何選擇最佳窗口寬度沒有理論指導。另外,為什麼要使用連續日期窗口進行培訓?一次也可以使用非連續句點或非連續日期的組合,並在輸入窗口中添加一些其他日期。沒有理由證實這樣做的結果不會一樣好,更好或更糟。

如何在訓練期間應用訓練樣本和滑動窗口?必須應用某個序列,但是哪一個?我們假設最簡單的解決方案是窗口從整個系列的時間序列開始到其結束平滑滑動。但是,我們根本不清楚這是否必要或者是否有幫助。 窗口也可以僅以隨機順序應用,從一個開始日期跳到一些隨機的其他日期。然而,對於權重的調整,應用訓練樣本的確切順序可以對權重調整產生實質性影響,從而對預測結果產生重大影響!

過擬合與欠擬合 - 何時應停止訓練?

假設呈現訓練數據的順序以及數據的窗口問題已經解決,但何時應該停止深度學習網絡訓練仍然很難確定。

Performance comparison of the configurations developed for different NN structures

來源: https://www.scielo.br/scielo.php?script=sci_arttext&pid=S1678-58782010000200007
J. Braz. Soc. Mech. Sci. & Eng. vol.32 no.2 Rio de Janeiro Apr./June 2010

我們如何決定訓練得到的深度學習網絡已經能夠達到我們任務的目的,從而停止訓練?乍一看,這似乎是一個容易解決的問題:只需跟隨深度學習網絡的整體輸出(預測)錯誤的發展。只要錯誤率在下降,就繼續學習。一旦錯誤恢復,就停止訓練。但是這種方法不起作用,正如我上面已經解釋的那樣,因為深度學習網絡遵循梯度下降模型,該模型很容易陷入局部最優。

另一種方法是在網絡達到某個絕對成功水平後停止學習,例如錯誤率低於10%或5%,或任何看似合理且可接受的程度。但是,這也不是一個好方法。如果深度學習網絡可以在90%或更多測試用例中正確解決問題,這可能只意味著網絡太大而且權重太大。

Machine learning for medical imaging

來源:https://www.semanticscholar.org/paper/Machine-Learning-for-Medical-Imaging.-Erickson-Korfiatis/474d8f5a80ca3dc56ed7b149a1fb09edc71931b2
Erickson, Bradley James et al. 「Machine Learning for Medical Imaging.」 Radiographics : a review publication of the Radiological Society of North America, Inc 37 2 (2017): 505-515.

當網絡中具有太多權重時,它幾乎只能以分布式方式將所有輸入數據的相關特征存儲在權重中(這種效應稱為「過擬合」 - 見圖)。 這意味著,深度學習網絡幾乎「用心學習數據」。

關鍵問題是,這樣的網絡可能不會很好地覆蓋全部數據。它們可能大部分只能識別與訓練樣本完全相似或近似的數據,但是對不同的數據集可能識別表現不佳。

因此,過擬合意味著深度學習網絡無法從他們學到的東西中得到全面的概括。然而,這是大多數應用程序所需要的功能,也是人工智能模型為什麼「智能」的功能 - 否則只需使用一個非常簡單的Excel工作表並定義一個簡單的容忍誤差(比如從訓練數據中偏離1%)而作出預測。

相反,稱之為「欠擬合」的效果也是可能存在。深度學習網絡可能沒有能力以所需的精度對輸入模式進行分類。

Under fitting

在測試中經常看到的深度學習網絡「欠擬合「的典型結果和效果,甚至是關於深度學習預測成功的發表論文中見到的,是欠擬合深度學習網絡生成的預測曲線看起來像時間序列本身的副本,只是轉移到右邊,有個延遲(見上圖中的藍線)。

這種效果通常由深度學習網絡在「檢測」隱含規則時產生,該隱含規則通常對第一眼看到的某些時間序列產生良好的預測。 當n + 1數據點更可能等於或非常類似於第n個數據點(前一點)時,此規則適用。這展示了統計效應,即在許多現實世界時間序列(也是許多金融時間序列)中,相鄰的數據一定有相應實質性的變化的可能性,比在一定的范圍內找到固定相鄰數據的可能性小很多。

例如,通過預測同一個位置連續兩天的某些天氣模式(溫度,降雨,濕度等)可以容易地生成天氣預報。這可能很容易產生70+%的預測成功率,因為大多數地方的劇烈天氣變化通常相對較少。明天的天氣往往跟今天的天氣很像。我們通常不會意識到這個簡單的統計規則,因為我們大多只是有意識地注意到天氣確實在變化,而在天氣穩定時就很難留意。但是這個作為預測基礎的規則是無用的 - 因為大多數天氣預測的關鍵點是在天氣實際發生明顯變化時提前發現並預測天數和時間!

因此,過擬合既不好也不合適。這給我們留下了什麼?兩種情況都比較容易檢測。在欠擬合情況下,預測誤差范圍通常會過高並且在測試期間已經超過可接受的水平。過度擬合更難以檢測。乍一看,高成功率令人欣慰,大多數公司都認為這是成功的標志,而不是失敗。但這只是表明深度學習模型缺乏經驗。錯誤率非常低 - 尤其是對比人類處理時的結果數據- 更多的應是懷疑而不是滿足的標志。 在任何現實世界的情況下,成功率超過90%左右表示方法,概念或數據損壞 - 而不是成功。

這會產生非常嚴重的問題,尤其在需要非常高的成功率的區域裡部署AI模型。例如,在許多安全相關的應用(例如自動駕駛汽車),醫學(癌症診斷)或時間序列預測中,或者如果AI模型應用於例如高頻交易這類必須在毫秒內采取行動,且不可能在交易大量資金時有人監督或有其他安全機制。

總結這些個問題:一般來說,沒有理論或實際指南來決定何時停止深度學習網絡的培訓。最好的方法是讓經驗豐富的工程師做出判斷。然而,考慮到上述論點,深度學習網絡的90+%的正確率都令人擔憂而不是滿意!

深度學習成功案例 - 假新聞?還是更糟?

每當聽到深度學習網絡在執行某項任務中比所有競爭對手或人類更好時,都應該持非常懷疑態度並仔細閱讀此類公告,並尋找背後的既得利益。最好把這些公告想象成是特朗普發的。

Neural network learns to identify criminals by their faces

來源: Technology Review

一個令人震驚的例子是,最近一些中國研究人員聲稱深度學習網絡可以通過人臉識別罪犯(見上圖!是的,通過人臉來識別並有90+%的正確性。

使用有偏見的數據

上述荒謬的人臉識別功能的例子引出了另一個關鍵問題(也擴展到其他學習模型):訓練和測試數據的選擇,質量和使用。

在這種情況下,怎樣才能解釋90%以上的成功率(假設作者沒有作弊和誇大他們的結果)?答案在於數據集訓練的整理和收集過程。研究人員使用了兩組圖片來訓練深度學習網絡。第一組是一組罪犯的照片,第二組是隨機選擇的「正常人」。現在,每天都能很容易獲得普通人的照片,通過社交網站就可以得到編譯後的照片數據。

然而,你怎麼能得到1000張罪犯的照片呢?唯一的辦法就是與警方或政府當局達成某種協議。但這些圖片將被高度標准化,大部分照片是在罪犯被捕後被拍攝下來,或者在警察局或政府監獄裡拍攝。

而這正是造成問題和所謂高「成功率」的原因。深度神經網絡真正檢測到的並不是罪犯面部的獨特特征,而是照片設置的一些一般特征,比如使用的光線(強度、顏色、光源角度、陰影等),一些共同特征的背景拍照(可能是與犯罪分子相同的背景牆紋理或顏色,因為它們是在一些政府建築物中拍攝的,與非犯罪分子的圖片相比,可能在每張照片中都有所不同)或其他一些不相關的特征,比如罪犯穿的衣服(監獄服裝),都具有一定的統計意義。

這個例子很好地說明了,收集訓練和測試數據這樣一個「簡單」的任務是如何決定深度學習的結果和成功率的。這是「垃圾進,垃圾出」原則的經典例子。然而,在許多情況下,檢測「垃圾」部分並不是像上面的例子一樣簡單。

要想知道研究人員在人臉識別的例子中哪裡出了問題相對容易。但當你考慮金融應用時,比如具有數千個數據點的時間序列預測,這些數據點都是在一定范圍內的普通數字,事情可能會變得更加復雜。分析這樣的數字訓練數據,看看它們是否包含某種偏差或噪聲(隨機或不隨機),在數學上是非常困難的。事實上,在數據集中發現這些隱藏的但具有統計學意義的特性正是深度網絡應該做的事情!

深度學習和缺失的時間概念

現在,讓我們離開數據問題領域,繼續討論深度學習領域中最後一個也是最關鍵的一個限制。深度學習領域缺少時間概念,但這通常沒有被認真考慮過。即使是經驗豐富的工程師也經常忽略這個問題。深度學習網絡沒有「理解」和處理時間概念的機制或特性!

當將一組與時間相關的連續數據點放入網絡的輸入層(例如股票收盤價的前20天)時,深度學習網絡無法識別這些數據點是否是時間序列或只是一些時間戳。在任何時間點它都會認為輸入的時間序列數據是同時獲取得到的。

深度學習網絡並不「理解」輸入數據和滑動時間窗口的數據裡包含了時間維度。如果它看到了20天的股票價格,然後又看到了另外20天,它就無法意識到它們是按順序出現的,即使它們在訓練過程中一直顯示在一起。深度學習網絡可以將任何輸入看作是電影的一個畫面,但是它不能及時地將兩個不同的畫面聯系起來,並且意識到一個畫面是後來的一些畫面的先決條件。對於深度學習網絡,每個電影幀都是獨立於其他幀的。

深度學習網絡將兩個不同的輸入看作是兩個不同的訓練樣本,輸入陣列與期望輸出預測值(s)之間存在兩種不同的潛在關聯。深度學習網絡永遠只是試著將一組輸入數據(前20天)和預測的輸出結果(21日的)以及另外一組輸入和對應的預期輸出聯系起來— 但它從未思考過時間序列分析中非常關鍵的兩組數據的先後順序。

但是,深度學習網絡可以很容易地學習「繼承者」的概念,進而學習時間概念。例如,一個網絡可以通過將它顯示為輸入幀n和期望輸出幀n+1,然後將輸入幀n+1和期望輸出幀n+2等來訓練。通過這種方式,它似乎能夠學習並預測當顯示某個輸入幀n+k時將會發生什麼。但請注意,這是非常容易發生誤導的。 如果你給網絡提供一個它在訓練期間沒有看到的電影的幀,它將不會從電影中生成後繼幀,而只會給出從所有先前看到一些統計相關的像素混合出來的像素點。

這就是為什麼深度學習網絡甚至不能可靠地學習最簡單的時間序列的繼承函數,即自然數的序列:1,2,3,4,5,6……等等。本系列的訓練總是需要停止在某個有限的最大數目N,即使任意數量的淨產生正確的繼任者k(小於N)為k + 1。完全不清楚如果我們遇到一個比N大,卻又從沒在訓練樣本中觀測到的繼承者會發生什麼,例如輸入第120,000,000個素數,我們得到的輸出是一個非P的繼承者的可能性非常的高。

對於任何時間相關模式,深度學習網絡的主要限制是在大多數情況下反對使用深度學習進行時間序列分析或預測的殺手論證(它們仍然可以用於檢測時間序列中的模式,例如「肩頭形成」或其他更復雜的模式,但前提是這些模式在輸入數據的整體統計中很好地表示,而與它們的時序關系無關)。

LSTM Memory Cell

來源:Hochreiter & Schmidhuber, 1997

已經提出並創建了若干深度網絡的變體以掩蓋或補償這種主要限制。 其中一個最著名的例子是LSTM(長短期存儲器,見右圖)模型,它為過去的輸入引入了一種存儲器,並為其提供了定時組件,並且還允許反饋環路創建另一個潛在的時間編碼。 然而,這些替代的深度學習變體模型本身也存在問題和其他限制,我現在不想在這裡討論。 我將在另一篇文章中評估和討論其中一些模型。

卷積深度學習網絡

Convolutional neural networks

來源:CUDA-ConvNet: Open- Source GPU accelerated code by [Krizhevsky etal,, NIPS 2012]

深度學習領域最重要的變種與擴展就是所謂的卷積網絡。 這些是在輸入被饋送到深度學習網絡本身之前,已經經過一個或者多個預處理層的處理的神經網絡。這在許多應用程序中都很有意義。

在時間序列中,人們通常可以輕松地檢測到一些簡單的規律,例如一般的潛在趨勢(例如股票市場的上漲,下跌,橫盤)或總是在相同時間間隔內出現的季節性影響。 如果原始數據在沒有預處理的情況下被送入DL網絡,則可能需要大量的計算資源來檢測和過濾掉該系列的這些簡單組件。 因此,大多數卷積層充當數據的過濾器,因此深度學習網絡可用於識別時間序列中難以識別的模式(見下圖)。

Convolutional layers

來源:https://github.com/eseifert/gral.wiki.git, GRAL, Java Graphing

使用卷積的優點是卷積層也可以通過反向傳播導數進行訓練和自動化訓練,早期的情況並非如此,卷積必須手工編程並針對每個應用進行定制(參見圖片如下)。

Backpropagation in convolution layer

來源:https://www.slideshare.net/kuwajima/cnnbp, Hiroshi Kuwajima, 2014

如今使用卷積的優點是卷積層也可以通過反向傳播衍生物進行訓練並自動化(在早期的情況下,卷積必須是針對每個應用進行手工編程和定制的情況)。

使用深度學習網絡的開源軟件包並非免費的午餐

深度學習網絡大熱,這吸引了許多公司已經開始使用相應的模型甚至使用了完整的深度學習軟件包,因為它們是免費提供的,現在通常也可以作為開源提供。

Combination of  image and speech recognition applications

來源:https://www.kdnuggets.com/2017/03/getting-started-deep-learning.html
KDNuggets, Getting Started with Deep Learning
Matthew Rubashkin, Silicon Valley Data Science

但請注意:在我看來,在這個領域活躍的所有大型互聯網、移動和社交網絡公司都在推動並進一步大量使用這些深度網絡(如微軟,谷歌,亞馬遜,Facebook等)。 它們將這些作為開源軟件包免費贈送,但它們同時提供了運行這些軟件包的雲服務 - 但顯然這些服務不是免費的!

大型企業不僅希望你依賴於他們的產品和基礎設施,還希望你使用他們的系統,以便他們進一步擴展到新的應用領域(如FinTech)和獲取新客戶。(這類似於在谷歌免費贈送其Android移動操作系統之後 - 這是一個有計劃的舉措,因為他們現在基本上擁有並控制著整個移動操作系統市場,比任何像Apple這樣的競爭對手都有巨大的優勢。)

Comparison of GitHub Commits for Deep Learning Frameworks

來源:https://www.kdnuggets.com/2017/03/getting-started-deep-learning.html
KDNuggets, Getting Started with Deep Learning
Matthew Rubashkin, Silicon Valley Data Science

對於深度學習開源軟件包來說,天下沒有免費午餐 - 隨著時間的推移你會越來越依賴他們的系統,而且在投入了大量的精力和資金之後,你可能需要付出更高的成本。 你必須要考慮這些免費工具的提供商可能隨時修改其開源許可證和條款,讓這些成為你的劣勢。

結論

深度學習網絡及其變體是可以使用的,並且應該在更多的領域中推廣。深度學習已經在這些領域中取得了具有良好且有價值的結果,而這些結果很難通過任何其他技術實現。

但是由於上述原因,我並不建議在時間序列預測應用程序中使用它們。最關鍵的原因是:過高的計算成本和努力,大量非偏見訓練數據的需求,過擬合或欠擬合的問題,缺乏處理和表示深度學習網絡時間依賴性的機制、以及需要設置或學習的大量參數。

公平對待深度學習網絡,我上面提到的一些論點(例如需要無偏的數據)也適用於AI中的所有其他數據驅動的學習模型。 然而,大多數其他有趣的時間序列分析和預測模型並沒有過於誇張,在我看來仍然需要更多關注,以了解它們的全部潛力。

我將討論在後續帖子中使用其他AI模型進行時間序列預測。

E.Schoeneburg

2017年4月24日,寫於香港