劉 薇 姜青山 蔣泓毅 胡金帥 曲 強
1(中國科學(xué)院深圳先進(jìn)技術(shù)研究院 深圳 518055)2(中國科學(xué)院大學(xué)深圳先進(jìn)技術(shù)學(xué)院 深圳 518055)
3(廈門大學(xué) 廈門 361005)
我國的股票交易市場整體呈現(xiàn)出非有效性,輿論和政策對股票市場有較大影響[1]。根據(jù)行為金融學(xué)理論,投資者并不都是理性投資者,在投資的過程中會出現(xiàn)受他人情緒影響而改變投資傾向的現(xiàn)象[2]。隨著網(wǎng)絡(luò)的普及,越來越多的網(wǎng)民在以“東方財富網(wǎng)-股吧”(https://guba.eastmoney.com)為代表的金融網(wǎng)站上進(jìn)行信息交流和傳播。這些股票評論在傳遞大量市場信息的同時,還影響投資者的交易決策。因此,通過研究金融平臺上的股票相關(guān)評論,分析投資者的情感傾向,對了解股票市場變化有重要意義。
情感分析是指利用自然語言處理和文本挖掘技術(shù),對帶有情感色彩的主觀性文本進(jìn)行分析、處理和抽取的過程[3]。國內(nèi)外學(xué)者在股票評論情感分析領(lǐng)域的研究方法分為 3 種:基于詞典的方法[4-5]、基于機器學(xué)習(xí)的方法[6-9]和基于深度學(xué)習(xí)的方法[10-14]。 基于詞典的方法是指以情感詞典作為情感傾向判斷依據(jù),該方法雖然對情感傾向判斷簡單,但是對詞典依賴較高,且目前缺乏公開的股票情感詞典?;跈C器學(xué)習(xí)的方法是指利用評論信息特征進(jìn)行情感分析,但是分析效果受評論特征的構(gòu)建和訓(xùn)練語料影響較大。目前,基于深度學(xué)習(xí)的方法在計算機視覺、自然語言處理等領(lǐng)域應(yīng)用廣泛[15],然而,對于金融評論情感分析,仍缺乏優(yōu)質(zhì)的金融評論標(biāo)注數(shù)據(jù)集用于模型的訓(xùn)練。
本文通過研究股吧評論情感分析方法,構(gòu)建更具準(zhǔn)確性的情感分類模型,并對股票市場與股吧評論情感之間的關(guān)聯(lián)性進(jìn)行驗證。具體地,針對真實的股吧評論數(shù)據(jù),首先通過預(yù)訓(xùn)練模型FinBERT 學(xué)習(xí)股吧評論的語義特征,然后采用卷積神經(jīng)網(wǎng)絡(luò)提取股吧評論的局部特征,最后利用“上證 50”成分股數(shù)據(jù)集驗證股票市場與股票評論情感之間存在關(guān)聯(lián)。
基于詞典的方法的核心在于情感詞典的構(gòu)建,通過將評論數(shù)據(jù)與情感詞典的正負(fù)情緒詞進(jìn)行匹配,得到情感傾向分類結(jié)果。Maqsood 等[4]利用英文情感詞典 SentiWordNet,將從 Twitter 股票相關(guān)評論數(shù)據(jù)中提取的 5 000 余個英文單詞分為積極、中性和消極 3 類情感詞,從而實現(xiàn)對英文股票評論進(jìn)行情感分析。陳雷[5]提出一種基于情感詞典的股票評論情感分析方法,首先通過對幾種公開的情感詞典合并去重后得到基礎(chǔ)詞典,然后引入股票情感詞典對基礎(chǔ)詞典進(jìn)行擴充。但是,目前在股票評論分析領(lǐng)域,缺少公開的股票情感詞典,且該詞典構(gòu)建難度大、成本高,并且模型受情感詞典的影響較大。
基于機器學(xué)習(xí)的方法,通過選擇特征項、構(gòu)造特征對評論數(shù)據(jù)進(jìn)行特征提取,實現(xiàn)利用機器學(xué)習(xí)模型進(jìn)行情感分類。Alkubaisi 等[6]利用一種混合樸素貝葉斯分類器的方法對 Twitter 股票評論數(shù)據(jù)集進(jìn)行情感分析,并取得了較高的情感分類準(zhǔn)確率。Yazdani 等[7]討論了分別利用二進(jìn)制編碼、詞頻和詞頻-逆文本頻率指數(shù)對金融新聞文章進(jìn)行特征提取,并利用具有不同核函數(shù)的支持向量機作為分類器對金融文本進(jìn)行情緒分類,實驗結(jié)果表明,特征選擇和特征加權(quán)在情感分類中起到重要作用。Salles 等[8]針對股票評論數(shù)據(jù)具有高維噪聲的特點,提出延遲隨機森林分類模型,通過最近鄰樣本投影得到與待分類樣本相似的特征,具有較高的分類準(zhǔn)確率。張對[9]通過對新浪股吧中的股評數(shù)據(jù)進(jìn)行分詞和過濾停用詞,將剩下的名詞、動詞和副詞等作為特征項進(jìn)行詞頻統(tǒng)計,然后利用 SVM 分類器對股評數(shù)據(jù)進(jìn)行情感分類。但是,基于機器學(xué)習(xí)的情感分析方法對特征項選取和特征構(gòu)建的質(zhì)量依賴較高,且缺少優(yōu)質(zhì)的股票評論標(biāo)注數(shù)據(jù)集用于訓(xùn)練。
基于深度學(xué)習(xí)的方法,首先把輸入映射到不同的特征空間來進(jìn)行特征提取,然后持續(xù)地修正神經(jīng)網(wǎng)絡(luò)權(quán)重以學(xué)習(xí)評論特征。Jiang 等[10]將基于門控和關(guān)注機制的雙向長短期記憶神經(jīng)網(wǎng)絡(luò)模型用于處理股票新聞和微博的情感分析任務(wù),首先利用門控機制整合字符級別和單詞級別的嵌入,然后利用雙向長短期記憶神經(jīng)網(wǎng)絡(luò)組件將目標(biāo)相關(guān)信息嵌入語句,最后利用線性回歸層進(jìn)行情感分類。Rao 等[11]提出將基于兩個隱層的長短期記憶網(wǎng)絡(luò)模型用于股票評論情感分析,其中,第一層用于學(xué)習(xí)句子語義,第二層用于學(xué)習(xí)句子關(guān)系。Sohangir 等[12]將長短期記憶網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)這兩個模型進(jìn)行對比,結(jié)果表明,卷積神經(jīng)網(wǎng)絡(luò)在股票評論數(shù)據(jù)集上表現(xiàn)更好。Akhtar 等[13]利用卷積神經(jīng)網(wǎng)絡(luò)和詞向量模型對股評數(shù)據(jù)進(jìn)行情感分析——利用詞向量模型將股評數(shù)據(jù)轉(zhuǎn)化為向量,并通過卷積神經(jīng)網(wǎng)絡(luò)得到分析結(jié)果。直接采用卷積神經(jīng)網(wǎng)絡(luò)對股評數(shù)據(jù)進(jìn)行情感分析能夠?qū)崿F(xiàn)自動提取特征,修正學(xué)習(xí)輸出,但缺少優(yōu)質(zhì)的股票評論標(biāo)注數(shù)據(jù)集用于卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,且卷積神經(jīng)網(wǎng)絡(luò)無法處理股評數(shù)據(jù)中的專業(yè)詞匯。
Liu 等[14]提出基于 BERT 的預(yù)訓(xùn)練模型FinBERT,并采用一個大型通用的金融語料集對其進(jìn)行訓(xùn)練。FinBERT 首先在 TRC2-financial 語料庫上訓(xùn)練語言模型,然后利用其權(quán)重初始化金融評論情感分析模型。FinBERT 由編碼器和解碼器堆疊形成的 Transformer 組成,每個 Transformer利用編碼器的多頭自注意力機制將任意位置的詞之間建立聯(lián)系。FinBERT 能夠解決目前金融領(lǐng)域缺乏優(yōu)質(zhì)股票評論數(shù)據(jù)集的問題,且能夠解決無法處理金融專業(yè)領(lǐng)域詞匯的問題,但是使用FinBERT 僅能提取到股票評論的語義特征,而缺少股票評論的局部特征和空間特征。
針對現(xiàn)有模型存在缺少優(yōu)質(zhì)股票評論標(biāo)注數(shù)據(jù)集用于模型訓(xùn)練,無法處理專業(yè)詞匯,特征提取過于單一等問題,本文提出一種基于 FinBERTCNN 的股吧評論情感分析方法,利用 FinBERT預(yù)訓(xùn)練模型提取股吧評論語義特征和卷積神經(jīng)網(wǎng)絡(luò)模型來捕捉評論的局部特征和空間特征。
基于 FinBERT-CNN 的股吧評論情感分析方法將爬蟲采集的股吧評論數(shù)據(jù)預(yù)處理后,分別利用 FinBERT 預(yù)訓(xùn)練模型提取語義特征,卷積神經(jīng)網(wǎng)絡(luò)提取局部特征和空間特征,最后使用全連接層輸出情感傾向分類結(jié)果?;?FinBERT-CNN的股吧評論情感分析方法主要包括數(shù)據(jù)預(yù)處理和基于 FinBERT-CNN 的股吧評論情感分析模型 2個部分,流程如圖 1 所示。
圖1 基于 FinBERT-CNN 的股吧評論情感分析方法Fig. 1 Sentiment method for Guba reviews based on FinBERT-CNN
利用 Scrapy 爬蟲框架對“東方財富網(wǎng)-股吧”上所有 A 股股票的評論數(shù)據(jù)進(jìn)行爬取,直接獲取的股吧評論存在大量無用信息和冗余,需對其進(jìn)行預(yù)處理。數(shù)據(jù)預(yù)處理包含以下 4 個步驟:
(1)數(shù)據(jù)去重與合并。由于增量式爬蟲會引起數(shù)據(jù)重復(fù)問題,所以在情感分析之前需進(jìn)行評論去重。若評論正文和標(biāo)題都沒有內(nèi)容則直接刪除;若標(biāo)題或正文沒有內(nèi)容,則合并標(biāo)題與正文;
(2)人工標(biāo)注數(shù)據(jù)。在股吧評論數(shù)據(jù)集中隨機選取 15 747 條股票評論并由金融專業(yè)人士對其標(biāo)注情緒標(biāo)簽:“看漲”記作 1、“看跌”記作-1,中性記作 0。看漲是指投資者表達(dá)價格將上漲的情緒,一般包括對當(dāng)前股市積極的評價和對未來股市走勢上漲的判斷??吹侵竿顿Y者表達(dá)價格將下跌的情緒,一般包括對當(dāng)前股市的消極評價和對未來走勢下跌的判斷。標(biāo)注數(shù)據(jù)示例如表 1 所示;
表1 標(biāo)注數(shù)據(jù)示例Table 1 Examples of data annotation
(3)劃分訓(xùn)練集和測試集。將步驟(2)獲得的標(biāo)注數(shù)據(jù)按照 7:3 的比例劃分訓(xùn)練集和測試集;
(4)分詞。為了保持中文評論信息的完整性,對于通過步驟(3)得到的訓(xùn)練數(shù)據(jù)以字作為劃分單位進(jìn)行分詞。首先將股吧評論數(shù)據(jù)轉(zhuǎn)為Unicode 格式編碼,然后將其與 Unicode 特殊字符進(jìn)行匹配,去除評論數(shù)據(jù)中的不合法字符和多余空格,最后判斷數(shù)據(jù)中的每個字符是否為中文字符,若為中文字符就在字符后添加空格,否則就根據(jù)標(biāo)點和空格對其進(jìn)行分詞。
從“東方財富網(wǎng)-股吧”上提取的 5 億多條數(shù)據(jù)經(jīng)預(yù)處理后,用于模型驗證的數(shù)據(jù)共 15 747條,用于基于股吧評論情感的股票市場關(guān)聯(lián)分析的數(shù)據(jù)共 2 027 077 條。
基于 FinBERT-CNN 的股吧評論情感分析模型結(jié)構(gòu)如圖 2 所示,其中輸入為預(yù)處理后的股吧評論數(shù)據(jù),其包含數(shù)據(jù)嵌入層、FinBERT 預(yù)訓(xùn)練模型、特征整合、卷積層、池化層、全連接層、dropout 層和 Softmax 層,流程分為以下 3個步驟:
圖2 基于 FinBERT-CNN 的股吧評論情感分析模型Fig. 2 FinBERT-CNN-based sentiment analysis model for Guba data
(1)基于 FinBERT 預(yù)訓(xùn)練模型的特征學(xué)習(xí)過程:將預(yù)處理后的股吧評論數(shù)據(jù)經(jīng)嵌入層輸入FinBERT 預(yù)訓(xùn)練模型,輸出特征向量B,經(jīng)過整合后得到語義特征F;
(2)基于卷積神經(jīng)網(wǎng)絡(luò)的特征學(xué)習(xí)過程:對步驟(1)中得到的語義特征F進(jìn)行局部特征提取,通過卷積層、池化層、全連接層和 dropout層輸出特征向量H;
(3)情感傾向分析過程:對步驟(2)中得到的特征向量H,通過 Softmax 層得到情感傾向分類結(jié)果。
3.2.1 基于 FinBERT 預(yù)訓(xùn)練模型的特征學(xué)習(xí)過程
本文使用 FinBERT 預(yù)訓(xùn)練模型學(xué)習(xí)股吧評論數(shù)據(jù)的語義特征,其具體分為以下 3 個步驟:
(1)評論數(shù)據(jù)嵌入處理。對預(yù)處理后的股吧評論數(shù)據(jù)進(jìn)行嵌入處理,即將文本數(shù)據(jù)向量化,其分為以下 3 個部分:
①token 嵌入:每條經(jīng)過預(yù)處理分詞后的股吧評論數(shù)據(jù)即為一條 token,將得到的 token 在詞匯表中進(jìn)行索引匹配得到 token 嵌入向量。在中文預(yù)訓(xùn)練模型 FinBERT 的詞匯表中包含約 30億條 tokens。一條經(jīng)過預(yù)處理后的股吧評論數(shù)據(jù)有w個字符,檢查這w個字符在詞匯表中是否出現(xiàn)。對出現(xiàn)的字符進(jìn)行索引匹配,得到表示該字符的向量;對于未出現(xiàn)的字符,則生成新的字符索引。token 嵌入將每個字符用n維的向量表示,那么評論數(shù)據(jù)經(jīng) token 嵌入轉(zhuǎn)換為w×n×1的張量T。為了得到模型進(jìn)行分類任務(wù)的輸入表示,在 tokens 的開始([CLS])和結(jié)束([SEP])處添加特定的 tokens;
②片段嵌入:本文輸入評論數(shù)據(jù)的片段嵌入對應(yīng)片段嵌入表的索引為 0 的向量,將其轉(zhuǎn)換為n維的向量后得到w×n×1 的張量S;
③位置嵌入:每個字符的位置信息編碼都可用一個向量來表示,從而得到w×n×1 的張量P,P可表示因不同位置而帶來不同語義信息的差異。
將這 3 個部分相加,得到股吧評論數(shù)據(jù)向量化表示,即:
其中,En為股吧評論數(shù)據(jù)的嵌入;Tn為 token 嵌入;Sn為片段嵌入;Pn為位置嵌入。最后對股吧評論嵌入E進(jìn)行維度變換,使其成為大小為ms×n×b的張量,b為一次訓(xùn)練選取的樣本量,ms為股吧評論的最大長度。
(2)特征提取。將股吧評論數(shù)據(jù)嵌入E作為 FinBERT 預(yù)訓(xùn)練模型輸入,并在隱藏層對其進(jìn)行語義特征提取。一個隱藏層包括一層注意力層,兩層線性映射層,兩層正則化和 dropout層,一層非線性映射層。首先對E通過注意力層后的輸出EA進(jìn)行維度變換,使其與嵌入維度n一致;然后通過 dropout 層后將E和EA相加,輸入正則化層得到EN并經(jīng)過維度變化,使其與嵌入維度n一致;接著通過 dropout 層得到ED;最后將EN與ED相加,輸入正則化層得到語義特征B。
(3)特征整合。輸入股吧評論數(shù)據(jù)嵌入E經(jīng)過一層隱藏層后得到股吧評論數(shù)據(jù)語義特征B,每層隱藏層的輸出都作為下一層隱藏層的輸入,那么 FinBERT 預(yù)訓(xùn)練模型中 12 層隱藏層可得到12 個輸出,將其進(jìn)行組合和維度變換后,通過一層池化層得到語義特征F,作為卷積神經(jīng)網(wǎng)絡(luò)的輸入。
3.2.2 基于卷積神經(jīng)網(wǎng)絡(luò)的特征學(xué)習(xí)過程和情感傾向分類
本文使用的卷積神經(jīng)網(wǎng)絡(luò)分為輸入特征層、卷積層、池化層、全連接層、dropout 層和Softmax 層。卷積層有 3 種大小的卷積核,每種大小的卷積核有 128 個卷積濾波器進(jìn)行F的局部特征學(xué)習(xí)。由于股吧評論數(shù)據(jù)為一維數(shù)據(jù),假設(shè)輸入特征層為d×n×1 的張量,那么其卷積操作如公式(2)所示[16]:
其中,ci為卷積運算的結(jié)果; 為卷積核;為第i行到第組成的滑動窗口;f為非線性函數(shù)。卷積核的寬度和語義特征B的維度一致,卷積核的高度h代表每次滑動窗口覆蓋用于卷積的詞數(shù)。 和維度一致,即的大小為h×n×1。經(jīng)過卷積層輸出的特征向量大小為
池化層采用的是最大池化方法,首先在保持特征的情況下進(jìn)行參數(shù)的壓縮,然后將這些特征拼接起來用向量表示,最后通過全連接層對池化層的輸出進(jìn)行整合。為了防止過擬合,加入dropout 層和正則化層,再通過 Softmax 分類器得到分類結(jié)果,其計算公式如公式(3)所示[16]:
其中,Softmax為分類函數(shù); 為第i個節(jié)點的輸出值;n為輸出節(jié)點的個數(shù);e 為自然底數(shù)。損失函數(shù)采用的是交叉熵?fù)p失函數(shù),其計算公式如公式(4)所示[16]:
其中,Loss為損失;N為樣本個數(shù);i為第i個樣本;Li為第i個樣本的損失;C為類別個數(shù);c為第c類;yic為分類準(zhǔn)確性,若樣本i的類別和樣本i的真實類別相同則為 1,否則為 0;pic為樣本i屬于類別c的概率。
“東方財富網(wǎng)-股吧”是國內(nèi)金融領(lǐng)域最活躍的股票討論平臺。首先從“東方財富網(wǎng)-股吧”的股票評論中隨機選取 15 747 條評論,然后經(jīng)金融專業(yè)人士對其進(jìn)行標(biāo)注后用于測試和訓(xùn)練。本文使用 4 種常用的評價指標(biāo):準(zhǔn)確率(Accuracy,Acc)、查準(zhǔn)率(Precision,P)、召回率(Recall,R)和 F1 值[17],其中查準(zhǔn)率、召回率和 F1 值均為宏平均。評價指標(biāo)的計算公式如公式(5)~(8)所示[18]:
其中,Acc為準(zhǔn)確率;P為查準(zhǔn)率;R為召回率;F1 為 F1 值;TP為真陽性的數(shù)量;TN為真陰性的數(shù)量;FP為假陽性的數(shù)量;FN為假陰性的數(shù)量。查準(zhǔn)率、召回率和 F1 值的宏平均計算公式如公式(9)~(11)所示[17]:
其中, 為查準(zhǔn)率的宏平均; 為召回率的宏平均; 為 F1 值的宏平均;n為目標(biāo)任務(wù)的類別數(shù)。
本實驗首先使用股吧評論標(biāo)注數(shù)據(jù)集進(jìn)行模型參數(shù)敏感性和有效性分析;然后將批大小、丟棄率、學(xué)習(xí)率、卷積核個數(shù)、訓(xùn)練次數(shù)和隱藏層個數(shù)作為變量,探究模型對其的敏感性以及其對模型的性能的影響;最后選擇 5 種針對金融領(lǐng)域評論數(shù)據(jù)情感傾向分析的方法模型與基于 FinBERT-CNN 的股吧評論情感分析方法進(jìn)行對比,包括基于詞典的方法[5]、SVM[9]、TextCNN[16]、BERT[19]和 FinBERT[14]。本實驗基于 FinBERT 和卷積神經(jīng)網(wǎng)絡(luò)的集成模型,模型搭建基于 TensorFlow 框架利用 Python 語言進(jìn)行程序編寫,程序運行環(huán)境為 Linux Ubuntu 18.04。
圖 3 是在固定丟棄率為 0.5、卷積核個數(shù)為128、隱藏層層數(shù)為 128 的條件下,訓(xùn)練輪數(shù)和批大小對模型的損失和準(zhǔn)確率的影響結(jié)果示意圖。模型訓(xùn)練輪數(shù)越多,學(xué)習(xí)數(shù)據(jù)特征就會越充分,但是可能會因為過度學(xué)習(xí)訓(xùn)練數(shù)據(jù)特征而產(chǎn)生過擬合現(xiàn)象,訓(xùn)練輪數(shù)太少則可能會出現(xiàn)學(xué)習(xí)數(shù)據(jù)特征不充分的情況[18]。批大小最大可以選擇整個數(shù)據(jù)集的大小,但是可能會導(dǎo)致運行內(nèi)存不足等問題,反之則可能導(dǎo)致數(shù)據(jù)不收斂[17]。
由圖 3(a)和圖 3(b)可知,訓(xùn)練輪數(shù)越多,訓(xùn)練集損失越小,測試集損失越大;訓(xùn)練集、驗證集和測試集的準(zhǔn)確率均隨著訓(xùn)練輪數(shù)的增加而略有提升。由圖 3(c)可知,訓(xùn)練集損失隨著批大小的增加而增大,而測試集損失在批大小為 256 的時候最小。由圖 3(d)可知,批大小越小,訓(xùn)練集準(zhǔn)確率越高,而測試集準(zhǔn)確率在批大小為 64 時最高。
圖3 訓(xùn)練輪數(shù)和批大小對模型的損失和準(zhǔn)確率的影響Fig. 3 The eあects of batch size and epochs on the model loss and accuracy
表 2 為丟棄率、卷積核個數(shù)、隱藏層層數(shù)對模型的影響結(jié)果。當(dāng)改變丟棄率時,固定卷積核個數(shù)為 128,隱藏層層數(shù)為 128;當(dāng)改變卷積核個數(shù)時,固定丟棄率為 0.5,隱藏層層數(shù)為128;當(dāng)改變隱藏層層數(shù)時,固定丟棄率為 0.5,卷積核個數(shù)為 128。從表 2 中可以看出,丟棄率為 0.5 的時候,模型的效果最好;卷積核個數(shù)為128 的時候,模型效果最好;隱藏層層數(shù)為 128的時候,模型效果最好。這 3 個參數(shù)均和模型擬合程度有關(guān)[17],由表 2 可知,當(dāng)模型丟棄率為0.5、卷積核個數(shù)為 128,隱藏層層數(shù)為 128 時模型效果最好。
表2 丟棄率、卷積核個數(shù)和隱藏層層數(shù)對模型的影響Table 2 The influence of dropout, kernel number and hidden layer on the model
表 3 為不同情感分析方法的測試數(shù)據(jù)集結(jié)果,其中 FinBERT-CNN 方法的測試參數(shù)為:批大小為 64,丟棄率為 0.5,卷積核個數(shù)為 128,隱藏層層數(shù)為 128,訓(xùn)練輪數(shù)為 3 輪,卷積核的大小分別是 2、3、4。
由表 3 可知,基于詞典的方法效果最差,4 個指標(biāo)均不到 0.5,究其原因是其沒有公開全面的高質(zhì)量股票情感詞典。SVM 的實驗結(jié)果與基于詞典的方法相比準(zhǔn)確率提升大約 0.3,但由于其依賴特征質(zhì)量,且需要已標(biāo)注的數(shù)據(jù),所以僅優(yōu)于基于詞典的方法。TextCNN 相較于基于詞典的方法和 SVM 在 4 個評價指標(biāo)上均有大幅提升,但稍遜于 BERT 和 FinBERT。FinBERT-CNN在所有的模型中表現(xiàn)最好,相較于基于詞典的方法準(zhǔn)確率提升大約 0.4;與 BERT 和 FinBERT 的實驗結(jié)果相比,F(xiàn)inBERT-CNN 的效果略有提升。
表3 不同情感分析方法的測試數(shù)據(jù)集結(jié)果Table 3 Results of different methods
國內(nèi)外已有大量研究[22-28]表明投資者情感對股票收益變化具有一定影響,且對股市波動具有一定的預(yù)測作用。通過對投資者評論情感的有效分析,能夠更好地了解我國股票市場波動。目前,國內(nèi)外針對股票評論情感和市場波動之間的相關(guān)性研究,主要基于 A 股市場,缺乏對單只股票的研究。本文以“上證 50”成分股的股吧評論情感和市場波動為研究對象,探究單只股票的評論情感與市場波動之間的關(guān)系。
第 4.2 節(jié)驗證了基于 FinBERT-CNN 的股吧評論情感分析方法的有效性,利用該模型對“上證 50”成分股的評論進(jìn)行投資者投資情感傾向分析,并對分析結(jié)果進(jìn)行市場波動關(guān)聯(lián)討論?!吧献C 50”,即挑選上海證券市場最具代表性的 50只股票組成樣本股,經(jīng)一定規(guī)則計算后得到能反映上海證券市場的最具有市場影響力的一批龍頭企業(yè)的整體狀況指數(shù)[20]。本文選取 2018 年 1 月1 日~2019 年 12 月 31 日作為研究時間,針對該時間段內(nèi)“上證 50”成分股的股評和股票行情數(shù)據(jù)進(jìn)行關(guān)聯(lián)分析。其中,股評分析包括發(fā)帖量(CA)、情緒指數(shù)(BI)和意見分歧度(DI)3 個方面;股票行情數(shù)據(jù)統(tǒng)計包括收盤價(CP)、前一日收盤價(PCP)、交易量(Vol)、成交總額(Am)和漲跌幅(pctChg)6 種。發(fā)帖量代表了這只股票的評論熱度。情緒指數(shù)采用 Antweiler & Frank 情緒指數(shù)構(gòu)建方式[21],計算公式如下:
其中,DIt為t日的意見分歧度; 為交易日t的評論發(fā)表時間集合;ei為第i時間的評論的情感情緒;BIt為第t日的情緒指數(shù);i為評論發(fā)表的時間;t為交易日。
圖 4 為發(fā)帖量、情緒指數(shù)和意見分歧度與股票行情數(shù)據(jù)之間的相關(guān)性熱力圖。圖中顏色越接近紅色,表明變量間的正相關(guān)性越強,反之則表明負(fù)相關(guān)性越強。從圖 4 中可以看到,每日發(fā)帖量與交易量和成交總額之間呈強正相關(guān)性,與每日漲跌幅之間存在負(fù)相關(guān)性;情緒指數(shù)與漲跌幅存在強正相關(guān)性,意見分歧度與交易量和成交總額之間存在正相關(guān)性。
以貴州茅臺(600519)為例,在 2018 年 1 月 1日~2019 年 12 月 31 日期間共計發(fā)帖數(shù)為 88 542條。該時間段內(nèi)貴州茅臺吧的每日發(fā)帖量、情緒指數(shù)和意見分歧度統(tǒng)計結(jié)果如圖 5 所示,由圖 5(a)可知,在 2018 年 10 月 29 日和 2019 年11 月 29 日發(fā)帖量劇增,分別達(dá)到了 4 659 條和4 021 條。由圖 5(b)可知,在 2018 年 8 月 11 日情緒指數(shù)達(dá)到最高,而在 2018 年 11 月 24 日投資者們的情緒最為低落。由圖 5(c)可知,在2018 年 10 月 22 日投資者們意見分歧最大。
圖 4 發(fā)帖量、情緒指數(shù)和意見分歧度與股票行情數(shù)據(jù)之間的相關(guān)性熱力圖Fig. 4 Heap map of correlations between three indexes and stock data
圖5 貴州茅臺吧的每日發(fā)帖量、情緒指數(shù)和意見分歧度Fig. 5 Daily posts, BI and DI of Guizhou Moutai
表 4 為貴州茅臺吧在 2018 年 1 月 1 日~2019年 12 月 31 日期間的發(fā)帖量、情緒指數(shù)和意見分歧度與股票變動的相關(guān)系數(shù)表。由表可知,成交總額與發(fā)帖量正相關(guān)性最強,其次是情緒指數(shù)與漲跌幅,而漲跌幅與發(fā)帖量呈負(fù)相關(guān)性。
表4 貴州茅臺吧的發(fā)帖量、情緒指數(shù)和意見分歧度與股票變動的相關(guān)系數(shù)表Table 4 Correlation coefficient table of correlations between three indexes of Guizhou Moutai
綜上所述,股市的波動與股吧發(fā)帖量具有強相關(guān)性,其中,股票的交易量和成交總額與發(fā)帖量呈正相關(guān),漲跌幅與發(fā)帖量呈負(fù)相關(guān)。股票每日的漲跌幅與情緒指數(shù)和意見分歧度具有比較明顯的相關(guān)性,而收盤價、前一日的收盤價、成交量和成交總額與情緒指數(shù)和意見分歧度的相關(guān)性并不大。
實驗結(jié)果表明,本文提出的基于 FinBERTCNN 股吧評論情感分析方法能有效解決現(xiàn)有模型缺少優(yōu)質(zhì)的評論標(biāo)注數(shù)據(jù)集用于訓(xùn)練、難以處理專業(yè)詞匯和提取特征不全面的問題。與現(xiàn)有情感分析方法相比,該模型能夠自動學(xué)習(xí)股吧評論中的語義特征和局部特征,處理股票評論中的專業(yè)詞匯,全面地學(xué)習(xí)股票評論特征,從而提高對股吧評論情感分類的有效性。目前,針對投資者情感與股市波動關(guān)系的研究大多基于 A 股市場,本文則以“上證 50”成分股評論情感作為研究對象,證明了單只股票投資者情感與股市波動也存在相關(guān)性,為研究投資者情感對股票市場預(yù)測、股票交易策略的構(gòu)建等任務(wù)具有重要意義的結(jié)論提供了佐證。
本文針對現(xiàn)有模型存在缺乏優(yōu)質(zhì)的股票評論標(biāo)注數(shù)據(jù)集用于模型訓(xùn)練,無法處理專業(yè)詞匯,特征提取過于單一等問題,提出一種基于FinBERT-CNN 的情感分析方法對股吧評論進(jìn)行投資者情感分析。系統(tǒng)首先利用預(yù)訓(xùn)練模型FinBERT 對評論提取語義特征,然后利用卷積神經(jīng)網(wǎng)絡(luò)提取局部特征,最后通過 Softmax 分類器輸出情感傾向。實驗結(jié)果表明,基于 FinBERTCNN 的情感分析方法的準(zhǔn)確率達(dá)到了 0.870 4,均優(yōu)于現(xiàn)有模型。此外,本文還對單只股票評論情感與市場波動的相關(guān)性進(jìn)行了驗證。在下一步的研究中,將結(jié)合股票評論數(shù)據(jù)情感分析結(jié)果進(jìn)行股票交易方法的構(gòu)建,并提出高效的股票交易策略方法。