吳 峰,周 軍,謝 聰,姬少培
(1.南寧師范大學師園學院,南寧 530226;2.廣西農業(yè)職業(yè)技術大學,南寧 530005;3.中國電子科技集團公司第三十研究所,成都 610041)
金融文本情緒分析是近年來自然語言處理(Natural language processing,NLP)技術在金融領域的一個重要應用方向。隨著社交網(wǎng)絡和電子商務的快速發(fā)展,在互聯(lián)網(wǎng)上產生了大量具有用戶情感的金融文本數(shù)據(jù),對這些數(shù)據(jù)的情緒分析具有顯著的應用價值。
傳統(tǒng)的基于詞匯的方法利用情感詞匯和一些語言規(guī)則等現(xiàn)有資源來識別文本的情感極性,然而這些方法在很大程度上依賴于情感詞匯的構建。由于強大的表達能力,深度學習模型在眾多領域取得了顯著的效果。對于NLP,遞歸神經(jīng)網(wǎng)絡(RNN)由于能夠很好地處理變長序列而被廣泛應用,CNN 則在計算機視覺領域取得了優(yōu)異的成績。在當前的研究中,Wang等提出了一種結合CNN 和RNN 進行情感分類的模型,這個模型利用CNN 捕獲的局部特征,通過LSTM 或門控循環(huán)單元(GRU)學習長距離依賴關系的特征;Tang 等提出了一種對句子在語義上的內在關系進行編碼的模型,該模型利用LSTM 或CNN 得到句子表示,再利用門控遞歸神經(jīng)網(wǎng)絡對其進行聚合得到文檔表示。近年來,注意力機制在情感分類任務中得到了成功的應用。Yan 和Guo提出了一種利用上下文語句和注意機制進行文本分類的方法。Yang 等提出了一種用于文檔情感分類的層次關注網(wǎng)絡(HAN)模型,該模型在構建文檔表示時可以選擇性地關注重要的單個單詞或句子。
為了增強情感傾向的表達,一些研究將語言資源或一些外部知識整合到模型中,使網(wǎng)絡能夠學習情感特定的表達。Tang 等將情感信息編碼到單詞的連續(xù)表示中,以學習情感特定詞嵌入(SSWE),這更適合于情感分類任務。Qian 等為句子級情感分類提出了語言正則化的LSTM,提出的模型解決了情緒、否定和強度詞的情緒轉移問題。此外,一些研究還將外部知識(如情感詞匯)納入深度學習模型,用于情感分類。Lei 等提出了一個基于BERT 的層次序列分類模型,并將其應用于微博情感分類。然而這些研究并沒有充分考慮語境語義與情感傾向之間可能存在的交互作用。
基于此,本文提出了一種基于交互式學習與多頭注意力機制的金融文本情感分類模型(In?teractive learning and multi-head attention mecha?nism, ILMA),旨在利用上下文語義和情感傾向信息之間的交互作用進行情感分類。該模型將上下文感知詞及嵌入作為嵌入層,并將其與BiGRU 和多頭注意機制結合起來,對特定上下文進行語義建模,利用交互式學習機制學習上下文語義與情感傾向信息之間的交互表示。
雙向門控循環(huán)單元網(wǎng)絡(BiGRU)是一種雙向的基于門控的循環(huán)神經(jīng)網(wǎng)絡,由前向GRU 與后向GRU 組合而成。GRU 模型是長短期記憶網(wǎng)絡(LSTM)的變體。相較于LSTM,GRU 模型網(wǎng)絡結構較簡單,但效果與LSTM 基本相同,大大減少了網(wǎng)絡訓練所需的時間。
GRU 網(wǎng)絡將LSTM 中輸入門和遺忘門合并,稱為更新門,這使訓練網(wǎng)絡所需的時間大大減少。GRU神經(jīng)元結構如圖1所示。
圖1 GRU神經(jīng)元結構圖
在GRU 網(wǎng)絡中,更新門控制當前時刻的隱狀態(tài)h中保留多少歷史時刻的隱狀態(tài)和當前時刻的候選狀態(tài)。重置門的作用是決定當前時刻的候選狀態(tài)h'與上一時刻的隱狀態(tài)之間的依賴程度。
x為當前時刻的輸入,h為上一時刻的隱狀態(tài),h'為當前時刻的候選狀態(tài),h為當前時刻的隱狀態(tài),y為當前時刻輸出。公式(1)和(2)分別為更新門和重置門的計算公式。
在GRU 網(wǎng)絡中信息只能單向傳遞,但在實際中每個輸入數(shù)據(jù)可能與其前后的輸入數(shù)據(jù)都有依賴關系,使用BiGRU 網(wǎng)絡通過兩個方向的網(wǎng)絡訓練數(shù)據(jù),使得模型的效果更好。BiGRU網(wǎng)絡結構如圖2所示。
圖2 BiGRU 網(wǎng)絡結構圖
多頭注意力由多個縮放點積注意力拼接而成,它有三個輸入矩陣:Query()、Key()和值Value()。在NLP 中,Key 和Value 通常相等,即=??s放點積注意力的結構如圖3 所示,計算如下:
圖3 縮放點積注意力結構圖
其中1/ d是比例因子。
圖4顯示了多頭注意力的結構,它由個平行的點積注意層組成。多頭注意力()可以通過以下公式得到:
圖4 多頭注意力結構圖
本節(jié)將對提出的基于交互式學習與多頭注意力機制的金融文本情感分類模型(Interactive learning and multi-head attention mechanism,ILMA)從總體框架、模型細節(jié)兩個方面進行介紹。
ILMA 模型的總體框架如圖5 所示,模型包括4個層次,依次是嵌入層、BiGRU層、交互式表達層、輸出層。其中輸入包括文本的上下文語義信息和情感傾向信息;嵌入層將輸入的文本序列轉換為單詞嵌入矩陣;BiGRU 層用于對文本長序列進行語義表示;交互式表達層用于學習上下文語義和情感傾向信息的交互表示;輸出層用于將交互式表達層獲得的上下文語義表達特征和情感傾向表達特征進行連接,生成的交互式注意力特征表達被用于作為Softmax 分類器的輸入進行分類。
圖5 ILMA模型總體框架
文本情感傾向信息指的是具有情感傾向的詞或短語,本文利用文獻[15]中提出的方法進行情感傾向信息提取。該方法分別用、和來表示情感詞、強調詞和否定詞的集合,對于一個包含個文本的數(shù)據(jù)集,C表示第個文本。該方法按順序掃描文本,并根據(jù)第個單詞ω定義一個連續(xù)的單詞序列(ω)= ωωω。對應的情感傾向元素e基于下述規(guī)則提取得到:
其中,?表示兩個集合的笛卡爾積,-和-分別表示集合和的補。算法1 給出了文獻[15]中情感傾向信息提取方法的偽代碼。
算法1:情感傾向信息提取方法偽代碼
因為句子中的單詞與上下文有很強的依賴性,所以本文在這一層使用BiGRU。BiGRU 包括一個從句首讀到句尾的正向GRU 和一個從相反方向讀的反向GRU。與GRU 相比,BiGRU 可以獲得更豐富的信息。因此,本文利用兩個Bi?GRU 網(wǎng)絡分別學習上下文的語義信息和情感傾向信息。
模型在時間步長處的隱藏狀態(tài)表示為:
圖6 交互式學習機制
在獲得關于上下文語義和情感傾向信息的交互式注意力表達后,將這兩個向量連接為一個向量,并將其作為softmax 分類器的輸入進行分類。
3.1.1 金融文本數(shù)據(jù)
本文在兩個中文數(shù)據(jù)集和兩個英文數(shù)據(jù)集上進行了實驗,具體介紹如下:
(1)Tushare:涵蓋主流新聞網(wǎng)站的中文短新聞數(shù)據(jù),涉及宏觀、市場、國際、觀點、商品(比如股指期貨)、基金、債券、外匯、黃金等多種新聞類別。在實驗中,本文構建了一個包含2600 篇短新聞的數(shù)據(jù)集,并將其隨機分為80%的訓練集和20%的測試集。
(2)NLPCC-CN:2021年自然語言處理和中文計算會議(NLPCC)任務2的中文語料庫。
(3)StockTwits:由微博消息構成,主要關注股票市場事件以及投資者和交易者的評論,其中積極傾向的評論及消極傾向的評論各6250條。從中隨機抽取5000 條數(shù)據(jù)作為訓練集,1250條數(shù)據(jù)作為測試集。
(4)SemEval-2017:包含金融新聞標題數(shù)據(jù)及金融微博數(shù)據(jù),本文選取其中的2842 條數(shù)據(jù)作為訓練集,1291作為測試集。
上述四個數(shù)據(jù)集的詳細信息見表1。
表1 數(shù)據(jù)集信息
3.1.2 金融文本情感詞典
情感分析方法需要進行分詞,需要使用自己的詞典。金融短新聞中有很多詞是通用情感分析領域的情感詞,因此引入通用領域情感詞典。對于英文數(shù)據(jù),本文利用知網(wǎng)發(fā)布的信息資源提取情感傾向信息;對于中文數(shù)據(jù),利用來自蘇建林的資源進行情感傾向信息提取。中英文金融文本情感詞典資源詳細信息見表2。
表2 情感詞典信息
本文使用精度和-1 分數(shù)作為評估指標來評估分類模型的性能。精度是分類任務中最常用的評估指標之一,定義如下:
其中,和分別表示分類器預測正確和預測錯誤的樣本數(shù)。
與精度相比,計算-1分數(shù)時序先分別計算每個類別的和。所有和的平均值分別為和。利用和可以計算得到樣本的-1 得分,具體計算公式如下:
其中為類別數(shù)。、和依次為第類樣本的真陽性、真陰性和假陰性的數(shù)據(jù)。
在實驗中,本文將ILMA 模型與下述基線方法進行比較分析。
(1)傳統(tǒng)機器學習算法:包括SVR與RF。SVR 最終找到一個回歸平面,使一個集合的所有數(shù)據(jù)到該平面的距離更近,設置SVR 的懲罰參數(shù)為0.1,epsilon 為0.01。RF 算法使用多個決策樹訓練和預測樣本,設置決策樹個數(shù)esti?mators為20。
(2)GRU:使用一層GRU 網(wǎng)絡對輸入序列進行建模,使用GRU 網(wǎng)絡的輸出表示作為soft?max分類器的輸入。
(3)BiGRU:使用一層BiGRU 網(wǎng)絡對輸入序列進行建模,使用BiGRU 的最終輸出作為softmax分類器的輸入。
(4)ATT-BiGRU:使用Attention 機制學習BiGRU輸出層的特征信息。
(5)H-RNN-CNN:一種用于處理中文文本情緒分類任務的多層網(wǎng)絡結構,將輸入文本劃分為句子作為中間層的輸入,以解決長文本可能導致的信息丟失問題。該模型利用LSTM 對上下文序列進行處理,利用CNN 捕捉句子之間的關系。
(6)CRNN:一 個 結 合 了CNN 和RNN(LSTM 和GRU)的架構,它利用CNN 生成的粗粒度局部特征和通過RNN 為短文本學習長距離依賴關系。
(7)fastText:利用文本字符級n-gram 特征和層級softmax分類器進行分類。
(8)BiLSTM-EMB-ATT:BiLSTM 學習輸入句子的語義信息,其與詞向量自注意力為并行結構。
(9)ILMA-W2V:使用預訓練的Word2Vec作為詞嵌入而不是利用BERT進行提取。本實驗的目的是證明BERT在IDAN中的優(yōu)勢。
(10)ILMA-GloVe:使用預訓練的GloVe 作為詞嵌入,而不是利用BERT進行提取。
(11)ILMA-NSTI:僅使用原始文本進行情感分類,不考慮情感傾向信息(即在IDAN 中僅使用上下文部分)。
(12)ILMA-NIL:在IDAN 中沒有交互學習,無需多頭注意力,這意味著上下文語義和情感傾向信息在連接前彼此不相關。
在實驗中,ILMA 模型利用BERT 預訓練模型獲得上下文和情感傾向信息的詞嵌入表示。Bi?GRU層的神經(jīng)元數(shù)設置為256個,所有的權值和偏差矩陣都用Xavier方法進行初始化,學習速率為10,批量大小設置為128。每個數(shù)據(jù)集重復實驗10 次,將10 次實驗的平均結果作為最終實驗結果。下文將從多頭注意力超參數(shù)選擇、消融實驗、與其他深度學習算法的對比分析、與經(jīng)典機器學習算法的對比等方面進行實驗對比分析。
3.4.1 多頭注意力超參數(shù)選擇
為了充分驗證多頭注意力參數(shù)對結果的影響,分別在ILMA-NIL 模型及ILMA 模型上進行測試。在NLPCC-CN 數(shù)據(jù)集上,分析多頭注意力的超參數(shù)與d對實驗結果的影響。在本文的金融文本情感分析任務中,輸入詞向量的維度為300,由于d的取值一般為2 的整數(shù)次冪,設置=512,為8、16、32 三個值時的實驗結果見表3。
表3 h取值對分類結果的影響
從表3可以看出,多頭注意力超參數(shù)值的選擇對ILMA 模型的分類性能是有一定影響的,當=16、d=32 時,兩種模型的性能均為最優(yōu),驗證了多頭注意力的優(yōu)點。證明通過提高多頭自注意力h的取值,序列內部計算多次注意力可以使模型關注來自不同方面的序列信息,從而提升了模型的性能。在=16的前提下,分析d分別取值8、16、32時對模型性能的影響,結果見表4。
表4 dk取值對分類結果的影響
從表4 可以看出,具有多頭注意力的ILMA模型明顯優(yōu)于無多頭注意力的ILMA-NIL 模型,當h 值固定為16,d=8 時的模型性能明顯劣于d=16、32 時的模型,這是由于當d取值較小時,容易造成文本特征信息丟失,使得模型的擬合能力下降。經(jīng)過實驗測試可以得出超參數(shù)值和d的最優(yōu)設置分別為16、32。
3.4.2 ILMA與ILMA-W2V、ILMA-Glove、ILMA-NSTI、ILMA-NIL的對比分析
通過進行消融實驗,將ILMA 模型與ILMAW2V、ILMA-Glove、ILMA-NSTI、ILMA-NIL 模型進行對比分析,實驗結果見表5。
表5 五種模型實驗結果統(tǒng)計
從表5 可以看出,在ILMA-W2V、ILMAGloVe 中,BERT 詞 嵌 入 被Word2Vec、ILMAGloVe 所取代,這使得模型的性能相對于ILMA有所降低;在ILMA-NSTI、ILMA-NIL 中,由于僅使用原始文本進行情感分類,或未利用多頭注意力機制進行交互學習,均使模型在四個金融數(shù)據(jù)集上進行文本情感分類時的性能降低;本文提出的ILMA 模型由于將交互式學習與多頭注意力機制結合起來,使得模型可以更加充分地提取金融文本序列中的情感表達信息,使得模型相對于其他四種模型具有更好的分類效果;ILMAW2V、 ILMA-GloVe、 ILMA-NSTI、 ILMA-NIL
四種模型的性能相當,然而與完整模型的性能相比,仍有相大的差距。結果表明,將BERT技術與基于多頭注意力機制的交互式學習結合起來確實有助于提高金融文本情感分類的效果。
3.4.3 與傳統(tǒng)機器學習算法的對比分析
將ILMA 模型與SVR、RF 兩個傳統(tǒng)機器學習模型進行了對比分析,實驗結果見表6。ILMA 模型在四個數(shù)據(jù)集上的實驗結果均優(yōu)于SVR 與RF,驗證了ILMA 模型的有效性和泛化能力。ILMA 模型展現(xiàn)了其良好的分類性能,在文本情感分類中具有較大優(yōu)勢。
表6 ILMA與傳統(tǒng)機器學習算法的實驗結果統(tǒng)計
3.4.4 與其他深度學習模型的對比分析
將ILMA 模型與GRU、BiGRU、ATT-BiGRU、BiLSTM-EMB-ATT、H-RNN-CNN、CRNN、fast?Text 等深度學習模型進行對比分析,實驗結果見表7。
表7 ILMA與其他深度學習模型的實驗結果統(tǒng)計
從表7 可以看出,與GRU 相比,BiGRU 在四個數(shù)據(jù)集上的準確率分別提高了1.5%、0.31%、1.07%和0.97%,這是因為BiGRU 可以從兩個方面捕獲上下文信息;由于注意力機制可以為每個詞分配不同的注意力權重,可以看出ATT-BiGRU 在所有數(shù)據(jù)集上的性能都比Bi?GRU 高。此外,雖然H-RNN-CNN 使用兩層GRU 進行語義建模,并使用CNN 捕獲跨句的語義信息,但在SemEval-2017 數(shù)據(jù)集上的準確率高于ATT-BiLSTM,而在Tushare 和NLPCC-CN數(shù)據(jù)集上的準確率卻低于ATT-BiLSTM;與HRNN-CNN 相比,CRNN 的性能提高了1%左右,這是因為CRNN 不僅利用多個不同大小的CNN來提取序列的局部特征,還可以利用GRU 來捕捉序列的長期依賴性;fastText 作為一種簡單的方法,取得了與CRNN 相當?shù)慕Y果,在Tushare和StockTwits 數(shù)據(jù)集上的精度分別比CRNN 高出0.95%和0.91%;BiLSTM-EMB-ATT 模型融入了文本情感詞典資源,在SemEval-2017 數(shù)據(jù)集上獲得了良好的性能,其準確率比fastText 高約2%,比CRNN 低約0.4%,這是因為BiLSTMEMB-ATT 沒有充分利用文本情感詞典資源;本文的ILMA 模型在所有數(shù)據(jù)集上的表現(xiàn)均最好,與最佳基線模型相比,該方法在Tushare、NLPCC-CN、StockTwits 和SemEval-2017 數(shù)據(jù)集上的擬合率分別提高了1.26%、2.09%、3.64%和2.78%,證明了該方法的有效性。
本文提出了一種基于交互式學習與多頭注意力機制的金融文本情感分類模型(ILMA),利用上下文語義和情感傾向信息之間的交互作用進行金融文本情感分類。該模型首先通過提取文本情感傾向信息,利用BERT生成上下文語義及文本傾向信息的詞嵌入表示;然后使用Bi?GRU 網(wǎng)絡來分別學習上下文語義和情感傾向信息的依賴性;最后利用多頭注意力實現(xiàn)上下文語義和情感傾向信息的交互式表達。在四個基準數(shù)據(jù)集上進行了實驗,結果表明ILMA 模型相對于基線方法是有效的,采用BERT嵌入和通過提取交互式表征的情感傾向信息可以使得文本情感上的分類性能得以顯著提高。
在未來的研究中,通過進一步改進情感傾向信息提取方法,加入全局注意力機制進行上下文語義和情感傾向信息表達的重要信息提取,可以進一步提高情感分類性能,使模型更具鑒別性和魯棒性。