容梓豪
摘要:由于各種復雜的因素,股票價格預測與交易一直是難以有效處理的問題。現實世界不確定的因素太多,很難設計出用于自動股票交易的可靠算法。為了獲得可行的交易策略,文中使用深度強化學習設計了一種方法,該方法在使用時間序列股票價格數據的基礎上,加入了新聞標題進行觀點挖掘,同時通過知識圖來利用有關隱性關系的新聞,最后給出總結。
關鍵詞:機器學習;強化學習;股價預測;新聞標簽;知識圖
中圖分類號:TP389.1? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2020)23-0075-02
1引言
機器學習主要涉及根據數據構建預測模型,當數據是時間序列時,模型還可以預測序列和結果。預測股票市場的運作是近年來機器學習的一種應用,但是事實證明這項工作非常困難,因為參與預測的因素很多。以往機器學習在金融市場中使用主要試圖通過諸如人工神經網絡,支持向量機甚至決策樹之類的監督學習來預測金融資產的未來回報。但是到目前為止,很多方法的效果都不太好。這其中有多種原因,例如,在有監督的機器學習中,通常使用帶有平衡類分布的標記數據集。當涉及股票市場時,沒有關于某人何時應該購買或出售其所持股票的此類標記數據,因此該問題適合強化學習框架,這是一種基于行為的學習,依賴于反復試驗并輔以獎勵機制。一旦定義了適當的獎勵信號,強化學習便能夠生成這種缺失的標簽。但是在這種情況下,還有其他一些股票市場特有的問題。股票交易市場的變化非常頻繁,不能僅從歷史趨勢中推斷出這些變化,它們受到現實世界因素的影響,例如政治,社會甚至環境因素。在這種情況下,信噪比非常高,這會導致很難學到有意義的東西。可以將此類環境建模為部分可觀察的馬爾可夫決策過程,在該過程中,智能體對所有環境條件的可見性均有限。對智能體決策過程進行建模,在該過程中,假定系統是由離散時間隨機控制過程確定的,但是智能體無法直接觀察基礎狀態。該系統結合對交易公司及其相關新聞的觀點挖掘,并結合強化學習算法,學習適當的策略來交易指定公司的股票。為了找到可以應用觀點挖掘的相關新聞標題,使用知識圖進行遍歷,設計出一套強化學習交易方案,最后做出總結。
2 系統設計
該系統結合了來自不同領域的概念,因此,將對它們中的每一個步驟進行簡要概述,并解釋它們在系統中的使用方式。
2.1 Q-learning
Q-learning是一種基于值的強化學習算法,利用Q函數尋找最優的動作選擇策略。它通過評估動作值函數應該選擇哪個動作,這個函數決定了處于某一個特定狀態以及在該狀態下采取特定動作的獎勵期望值。目標是最大化Q函數的值,即給定一個狀態和動作時的未來獎勵期望最大值,通過使用貝爾曼方程迭代地更新,不斷優化策略。在給定環境的情況下,智能體會通過不斷試錯訓練來學習一種策略,該策略會在episode結束時最大限度地從環境中獲得總獎勵。智能體試圖了解處于某種狀態并在該狀態下采取特定行動,然后遵循到目前為止所學的行為策略直到episode結束的效用。因此,Q學習嘗試學習每個狀態和動作的動作值,它是通過同時探索和利用來實現的。但如果它始終遵循它認為可用的最佳選項,那么它將無法了解在該狀態下采用其他可用選項的價值,這種困境被稱為勘探與開發。解決此問題的一種簡單但有效的方法是始終采用“貪婪”選項,除了在很小的一部分時間內隨機行動,其他時候按照最優策略選擇行為。
2.2 函數逼近
上述Q-learning方法存在一定缺點,它依賴于不同狀態。注意,這時的值函數其實是一個表格。對于狀態值函數,其索引是狀態,對于行為值函數,其索引是狀態—行為對。值函數迭代更新的過程實際上就是對這張表進行迭代更新。對于狀態值函數,其表格的維數為狀態的個數。若狀態空間的維數很大,或者狀態空間為連續空間,此時值函數無法用一張表格來表示,這不能很好地泛化,對于現實世界的問題也不容易處理。例如,根據當今世界的狀況,股票交易智能體可能會做出一些決定并從中吸取教訓,但是不太可能再次出現完全相同的狀態。這時需要利用函數逼近的方法對值函數進行表示,該函數逼近當前的環境觀測值,并且所選的動作會將它們映射為一個動作值。一旦觀察到實際獎勵,就可以類似于監督學習來更新近似器的參數。在本系統中使用人工神經網絡進行函數逼近,對于大的狀態空間,由于僅通過反向傳播來優化人工神經網絡變得不穩定,因此加入一些改良網絡的技巧,修改適應于深度Q網絡,這些修改包括經驗重播,使用Q網絡按比例更新獨立目標網絡的過程。
2.3 觀點挖掘
觀點挖掘用于注釋預計表達正面或負面觀點的文本,將文本分為正面和負面兩類,文本的極性常用于分析產品或服務評論,例如網購,電影等,還用于分析其他書面文本,例如博客文章,新聞等。觀點挖掘有兩種主要類型,即使用具有極性的詞匯詞典的詞匯分析方法;以及基于機器學習的,使用標記的訓練數據集構建預測模型。通常,每個句子序列都具有正或負的含義,但有時是中立的。新聞標題、新聞全文本身,都會在某種程度上表達意見。自然語言處理技術被用來以自動化的方式提取這些觀點。因此一旦提取出觀點,它就可以用作一些重要數據點,以了解客戶的意見。在該系統中,使用觀點挖掘來評估新聞標題對交易股票的公司是否有利。從考慮買賣股票的公司的角度來看,每個新聞標題都被認為是正面,負面或中立的。積極的觀點可以預測公司股價的總體上漲,而類似的消極觀點則可以表明股價下跌。
2.4 知識圖
詞匯庫和本體是與語義關系鏈接的術語數據庫,用帶有實體和關系的圖形表示。知識庫和知識圖相對更復雜,其中的實體不是單純的術語,而是知識的整合。一般來說Web搜索僅限于整個詞匯庫中在給定查詢的字符串時匹配關鍵字,但現實中的實體相互有關聯,并可以用不同的方式鏈接,因此普通的字符串匹配不能很好地進行智能搜索。這種互連以知識圖為特征,該知識圖表示類似圖的數據結構,其中每個節點是一個實體,節點之間的邊緣指示它們之間的關系。例如,僅使用簡單的字符串匹配來簡單地搜索“雷軍”就不會出現小米。但是,使用知識圖,由于“雷軍”是小米的主要創始人,因此他是知識圖中“小米”節點附近的一個緊密相關的節點,“小米”將作為一個相關的搜索結果出現,由此可將與公司相關但未在新聞標題中明確提及的實體識別為影響股價的潛在因素。連接的實體的標題將傳遞給觀點挖掘,并在學習算法中利用其極性。
3 實證評估
3.1 數據
將股票的交易信息用于訓練環境,即訓練智能體以交易股票獲取最大利益。對于新聞信息,從網站中爬取歷史新聞頭條,新聞標題的時間段與股票數據完全對應。對于每個新聞標題將其標記化,然后在預先確定的距離內的知識圖中檢查每個節點是否存在與所關注的特定公司之間的節點關系。選擇距離長于此的距離會導致過多的噪音,而較短的距離意味著幾乎找不到隱式關系,一旦發現標題中的所有標記都在預定距離之內就可以認為整個標題與公司相關。例如,談論百度的新聞標題不會被視為影響股票價格的新聞,但是通過使用知識圖,可以發現這種隱式關系。當找到與公司相關的頭條新聞,就使用集成觀點挖掘器進行觀點挖掘。將每個新聞標題分為正面新聞和負面新聞,并使用上述分類中的分類,選擇置信度最高的一個。如果同一天的頭條新聞不止一個,就取當天所有頭條新聞中的大部分觀點得分。
3.2 MDP設計
智能體與股票交易環境進行交互,隨著越來越多的事件用作訓練,該智能體會探索不同的策略并改進其現有策略。環境使用4個變量來描述每個狀態:分別是智能體擁有的當前金額,智能體現有的庫存數量,當天的開盤價,收盤價以及當天對公司的平均觀點,使用相關段落中表達的觀點并用知識圖來評估標題的相關性。行動空間:智能體每天與環境進行交互,它每次的行動可以有購買股票,賣出股票和不買不賣,即保持原狀。獎勵:交易期結束時投資組合的凈增加應導致正回報,而凈虧損將導致負獎勵,最后智能體進行多個周期的訓練。
4 結論
通過實驗,單純使用RNN進行初始實驗很難優化網絡,這可能是由于數據中的噪聲以及可能沒有正確的超參數所致。具有RNN的網絡花費了特別長的時間來訓練,并且難以分析,因為無法提取網絡隱藏狀態下發生的事情。另外,股票交易機器人僅限于每天買賣單只股票,這很可能限制了它可以賺到的利潤。在現實世界中,交易的頻率要比日內交易的頻率高得多。在知識圖中,關系距離閾值保持有限,以便從新聞標題的角度限制添加到數據中的噪聲。如果提供了一個帶有加權節點的知識圖,該節點可以判斷所討論的實體與正在交易的公司股票之間是否存在正向或負向關系,以更準確的方式利用更長的距離關系。通過知識圖譜從新聞頭條中提取實體之間的隱式關系,并利用這些相關新聞上的正面或負面觀點挖掘來訓練強化學習智能體。經過訓練的強化學習智能體可以在產生的利潤方面取得更好的結果。這樣的整個流程是一種新穎的方法,并通過實驗證明了其有效性。
參考文獻:
[1] 高陽,陳世福,陸鑫.強化學習研究綜述[J].自動化學報,2004,30(1):86-100.
[2] 郭瀟逍,李程,梅俏竹.深度學習在游戲中的應用[J].自動化學報,2016,42(5):676-684.
[3] 常亮,張偉濤,古天龍,等.知識圖譜的推薦系統綜述[J].智能系統學報,2019,14(2):207-216.
[4] 文丹艷,馬超群,王琨.一種多源數據驅動的自動交易系統決策模型[J].自動化學報,2018,44(8):1505-1517.
[5] 杜漫,徐學可,杜慧,等.面向情緒分類的情緒詞向量學習[J].山東大學學報(理學版),2017,52(7):52-58,65.
[6] 姜娜,孔浩.在線股票交易系統的分析與設計[J].計算機光盤軟件與應用,2013,16(13):274-275.
[7] Kaelbling L P,Littman M L,Moore A W.Reinforcement learning:a survey[J].Journal of Artificial Intelligence Research,1996,4(1):237-285.
[8] Hessel M,Modayil J,van Hasselt H,et al.Rainbow:combining improvements in deep reinforcement learning[EB/OL].[2019-12-20]. https://arxiv.org/abs/1710.02298.
[9] Mahmood A R,Korenkevych D,Vasan G,et al.Benchmarking reinforcement learning algorithms on real-world robots[EB/OL]. [2019-12-20].? https://arxiv.org/abs/1809.07731.
[10] Gers F A,Schmidhuber J,Cummins F.Learning to forget:continual prediction with LSTM[J].Neural Computation, 2000,12(10):2451-2471.
【通聯編輯:唐一東】