金融中的三種深度學習用例及這些模型優(yōu)劣的證據(jù)
在今天我們發(fā)布的這篇文章中,作者 Sonam Srivastava 介紹了金融中的三種深度學習用例及這些模型優(yōu)劣的證據(jù)。
我們跟隨 Sonam Srivastava 的分析,并展望深度學習在金融領域的運用前景。雖然金融是計算密集型最多的領域,但廣泛使用的金融模型:監(jiān)督和無監(jiān)督模型、基于狀態(tài)的模型、計量經(jīng)濟學模型甚至隨機模型都受到過度擬合和啟發(fā)式問題帶來的影響,抽樣結果很差。因為金融生態(tài)圈異常復雜,其非線性充斥著大量的相互影響的因素。
要解決這個問題,如果我們考慮到深度學習在圖像識別、語音識別或情感分析方面所做的研究,我們就會看到這些模型能夠從大規(guī)模未標記數(shù)據(jù)中學習,形成非線性關系的遞歸結構,可以輕松予以調整以避免發(fā)生過度擬合。
如果金融生態(tài)圈能夠使用這些網(wǎng)絡進行建模,應用領域就會深遠而廣泛。這些模型可用于定價、投資組合構建、風險管理甚至高頻交易等領域,讓我們來解決這些問題。
收益預測
以預測每日黃金價格的抽樣問題為例,我們首先看看傳統(tǒng)的方法。
ARIMA 模型
ARIMA 模型(Autoregressive Integrated Moving Average model),差分整合移動平均自回歸模型,又稱整合移動平均自回歸模型(移動也可稱作滑動),時間序列預測分析方法之一。ARIMA(p,d,q)中,AR 是“自回歸”,p 為自回歸項數(shù);MA 為“滑動平均”,q 為滑動平均項數(shù),d 為使之成為平穩(wěn)序列所做的差分次數(shù)(階數(shù))?!安罘帧币辉~雖未出現(xiàn)在 ARIMA 的英文名稱中,卻是關鍵步驟。
ARIMA 模型的基本思想是:將預測對象隨時間推移而形成的數(shù)據(jù)序列視為一個隨機序列,用一定的數(shù)學模型來近似描述這個序列。這個模型一旦被識別后就可以從時間序列的過去值及現(xiàn)在值來預測未來值?,F(xiàn)代統(tǒng)計方法、計量經(jīng)濟模型在某種程度上已經(jīng)能夠幫助企業(yè)對未來進行預測。利用整合移動平均自回歸模型,來嘗試預測季節(jié)性平穩(wěn)時間序列,我們得到結果如下圖所示:
VAR 模型
VAR 模型,(Vector Autoregression model)向量自回歸模型,是一種常用的計量經(jīng)濟模型,由計量經(jīng)濟學家和宏觀經(jīng)濟學家 Christopher Sims 提出。它擴充了只能使用一個變量的自回歸模型(簡稱:AR 模型),使容納大于 1 個變量,因此經(jīng)常用在多變量時間序列模型的分析上。
如果我們將相關的預測變量添加到我們的自回歸模型中并移動到向量自回歸模型,我們得到結果如下圖所示:
深度回歸模型
如果在數(shù)據(jù)上使用簡單的深度回歸模型,使用相同的輸入,會得到更好的結果,如下圖所示:
卷積神經(jīng)網(wǎng)絡
卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network, CNN)是一種前饋神經(jīng)網(wǎng)絡,它的人工神經(jīng)元可以響應一部分覆蓋范圍內(nèi)的周圍單元,對于大型圖像處理有出色表現(xiàn)。
卷積神經(jīng)網(wǎng)絡由一個或多個卷積層和頂端的全連通層(對應經(jīng)典的神經(jīng)網(wǎng)絡)組成,同時也包括關聯(lián)權重和池化層(pooling layer)。這一結構使得卷積神經(jīng)網(wǎng)絡能夠利用輸入數(shù)據(jù)的二維結構。與其他深度學習結構相比,卷積神經(jīng)網(wǎng)絡在圖像和語音識別方面能夠給出更好的結果。這一模型也可以使用反向傳播算法進行訓練。相比較其他深度、前饋神經(jīng)網(wǎng)絡,卷積神經(jīng)網(wǎng)絡需要考量的參數(shù)更少,使之成為一種頗具吸引力的深度學習結構。
修改我的架構,使用卷積神經(jīng)網(wǎng)絡來解決同一個問題,得到結果如下圖所示:
所得結果大為改善。但最好的結果還在后頭。
長短期記憶網(wǎng)絡
長短期記憶網(wǎng)絡(Long Short-Term Memory, LSTM)是一種時間遞歸神經(jīng)網(wǎng)絡 (RNN),論文首次發(fā)表于 1997 年。由于獨特的設計結構,LSTM 適合于處理和預測時間序列中間隔和延遲非常長的重要事件。
LSTM 的表現(xiàn)通常比時間遞歸神經(jīng)網(wǎng)絡及隱馬爾科夫模型(HMM)更好,比如用在不分段連續(xù)手寫識別上。2009 年,用 LSTM 構建的人工神經(jīng)網(wǎng)絡模型贏得過 ICDAR 手寫識別比賽冠軍。LSTM 還普遍用于自主語音識別,2013 年運用 TIMIT 自然演講數(shù)據(jù)庫達成 17.7% 錯誤率的紀錄。作為非線性模型,LSTM 可作為復雜的非線性單元用于構造更大型深度神經(jīng)網(wǎng)絡。
使用循環(huán)神經(jīng)網(wǎng)絡(RNN)的變種后,我得到結果如下所示:
因此,整體來說均方誤差的趨勢出乎意料。
投資組合構建
我們嘗試使用深度學習解決的第二個金融問題是投資組合構建。在這個問題上,深度學習的實際應用效果很好。我的研究靈感來自這篇論文:《深度投資組合》(https://0x9.me/8uOBt)
這篇論文的作者嘗試構建自動編碼器,將時間序列映射到自身。使用這些自動編碼器的預測誤差成為股票測試版(與市場相關)的代用指標,自動編碼器用作市場的模型。
自動編碼器(auto-encoder),是一種無監(jiān)督的學習算法,主要用于數(shù)據(jù)的降維或者特征的抽取,在深度學習中,自動編碼器可用于在訓練階段開始前,確定權重矩陣 W 的初始值?;谏鲜鲎詣泳幋a器的誤差選擇不同的股票,我們可以使用另一個深度神經(jīng)網(wǎng)絡來構建深度指標,結果相當不錯,如下圖所示:
深度神經(jīng)網(wǎng)絡已成為利用股票復制指數(shù)的指數(shù)構建方法。
但這只是它的開始!如果我們應用智能索引,在我去掉指數(shù)的極端下降期,并在智能索引上訓練我的指數(shù)映射深度神經(jīng)網(wǎng)絡時,我就能以驚人的速度超過指數(shù)!
這種技術在證券投資組合領域有著巨大的潛力!
結論
目前金融業(yè)的趨勢是朝更復雜、更健全的的模式發(fā)展。隨著大量數(shù)據(jù)科學家涌入該行業(yè),對所有銀行來說,技術是一個巨大的壓力。像 RelTec、Worldquant 這樣的對沖基金,在其交易中已經(jīng)使用這種技術。由于這些復雜模型在其他領域所表現(xiàn)出的優(yōu)異結果,以及在金融建模領域的巨大差距,將會有一系列的戲劇性的創(chuàng)新涌現(xiàn)!
更好地解決金融和貿(mào)易領域的關鍵問題,將會提高效率、提高透明度、加強風險管理和新的創(chuàng)新。
譯者感言:
深度學習的一大優(yōu)勢在于可以大幅減少人工參與的特征工程去“擬合”訓練數(shù)據(jù),但這也不是說完全不需要人去參與特征的選取,尤其是金融市場,數(shù)據(jù)簡直是海量,并且大都高噪聲,非穩(wěn)定,所以除非你能夠清楚哪些數(shù)據(jù)具有潛在價值、如何做適當?shù)念A處理和如何轉化并達成哪些目標,否則深度學習在金融領域是無法應用的。
如果設計得當,增加神經(jīng)網(wǎng)絡的深度可以對更復雜的模式進行映射,因此可對金融數(shù)據(jù)的訓練產(chǎn)生更好效果。
例如 CNN 適合處理圖像一類的大數(shù)據(jù),不一定直接適用于金融數(shù)據(jù)。金融數(shù)據(jù)雖然也可以很大,但通常不在一個數(shù)量級上——一幅圖像中的樣本數(shù)(像素、顏色)很容易上百萬,要訓練一個模型又要用到成千上萬個圖像,為了找到高效辦法提取特征,于是計算機科學家想出了卷積神經(jīng)網(wǎng)絡通過抽取特征值來簡化運算復雜度。而我們處理的金融時間序列數(shù)據(jù),單組樣本的數(shù)量常在百萬以下,規(guī)模上往往不需要卷積。進一步比較,相對于金融數(shù)據(jù),圖像識別的特點是數(shù)據(jù)量龐大、特征明顯、特征重復次數(shù)多、特征組合性強、出現(xiàn)的次序性、特征呈現(xiàn)的方向性有時不強,這與金融數(shù)據(jù)噪音大、數(shù)量較小的特點有所不同。因此,在訓練金融數(shù)據(jù)時很有必要設計有針對性的深度機器學習模型。
本文涉及到的代碼可在作者的 GitHub Repo 中找到 https://0x9.me/P5ahd
原文地址:https://medium.com/towards-data-science/deep-learning-in-finance-9e088cb17c03
原文作者:Sonam Srivastava
譯者:sambodhi ,編輯: Vincent
來源:微信公眾號“AI前線( ID:ai-front)”
本文由 @AI前線 授權發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉載。
題圖來自 Unsplash,基于 CC0 協(xié)議
- 目前還沒評論,等你發(fā)揮!