本發(fā)明屬于金融文本情感分析領(lǐng)域,具體涉及一種金融實(shí)體與情感聯(lián)合抽取方法。
背景技術(shù):
1、在金融文本應(yīng)用的真實(shí)場景下,金融實(shí)體表述具有多樣性,有人名、公司名、股票名稱和品牌名等,這些實(shí)體事前難以給定。另外,一個句子有可能包含多個實(shí)體,且金融實(shí)體長度較長,實(shí)體間還存在某種語義關(guān)系,而不同的金融實(shí)體的情感表達(dá)也有可能不同,甚至情感是隱式表達(dá)。例如,“現(xiàn)如今網(wǎng)絡(luò)借貸平臺很多,京東金融深受用戶喜愛,而錢寶網(wǎng)、雅堂金融、唐小僧以及聯(lián)璧金融被業(yè)內(nèi)稱為四大高返平臺,在唐小僧之前,錢寶網(wǎng)及雅堂金融已經(jīng)爆雷?!保谠摾又?,涉及多個金融實(shí)體“京東金融、錢寶網(wǎng)、雅堂金融、唐小僧、聯(lián)璧金融”,它們所在句子的情感觀點(diǎn)表達(dá)有所不同,其情感極性也不盡相同,例如,“京東金融”的情感觀點(diǎn)為“深受用戶喜愛”,而“錢寶網(wǎng)”和“雅堂金融”的情感觀點(diǎn)隱喻表達(dá)“爆雷”。因此,實(shí)體及其情感觀點(diǎn)表達(dá)的識別是實(shí)體級情感分析的關(guān)鍵。因此,對金融文本實(shí)體的情感分析可以為普通用戶進(jìn)行投資與消費(fèi)提供合理、可靠的參考意見,同時,為金融行業(yè)的智能客服、智能監(jiān)控以及建立金融風(fēng)險智能預(yù)警與防控系統(tǒng)提供重要的技術(shù)支持,也有利于商家創(chuàng)新智能金融產(chǎn)品和服務(wù),發(fā)展金融新業(yè)態(tài)。
2、在金融領(lǐng)域,實(shí)體級情感分析研究還比較少,且面臨許多問題,金融實(shí)體專有名詞表達(dá)具有多樣性,使得一些分詞工具難以準(zhǔn)確地進(jìn)行切分,例如,“錢寶網(wǎng)、雅堂金融、唐小僧以及聯(lián)璧金融被業(yè)內(nèi)稱為四大高返平臺”,存在多個實(shí)體;金融領(lǐng)域的情感表達(dá)具有隱式性,使得其識別的精度難以保證,例如,“在唐小僧之前,錢寶網(wǎng)及雅堂金融已經(jīng)爆雷”?,F(xiàn)有的研究大都給定金融實(shí)體,在此基礎(chǔ)上對其情感極性進(jìn)行判別。但對于金融領(lǐng)域真實(shí)場景下,所涉及的金融實(shí)體較多,一般無法給出。而現(xiàn)在預(yù)訓(xùn)練語言模型和聯(lián)合學(xué)習(xí)框架的學(xué)習(xí)機(jī)制為解決金融實(shí)體抽取和情感極性判別提供了重要的理論基礎(chǔ),因此,如何建立金融實(shí)體間的語義關(guān)系以及實(shí)體與觀點(diǎn)表達(dá)間的關(guān)系以及實(shí)體與所在句子之間的交互信息表示,是進(jìn)行金融實(shí)體與情感極性聯(lián)合抽取亟待解決的問題。本發(fā)明提供一種提出了金融實(shí)體與情感的聯(lián)合抽取方法,可以服務(wù)于智慧金融與金融輿情分析。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的是為了識別實(shí)體及其情感極性,而提出一種基于多任務(wù)的金融實(shí)體與情感的聯(lián)合抽取方法。該方法針對金融實(shí)體長度較長及金融實(shí)體間存在語義關(guān)系的特點(diǎn),設(shè)計(jì)了句子嵌入表示、深層語義表示、實(shí)體抽取序列與情感表示序列交互和實(shí)體情感聯(lián)合抽取,提升了金融實(shí)體與情感極性二元組聯(lián)合抽取的性能。在實(shí)體級情感分析數(shù)據(jù)集上,二元組聯(lián)合抽取的在p值和f1值上分別達(dá)到了66.55%和67.27%,均高于目前最好的方法。
2、為達(dá)到上述目的本發(fā)明采用了以下技術(shù)方案:
3、本發(fā)明的構(gòu)思為:首先利用預(yù)訓(xùn)練模型bert-wwm-ext對句子進(jìn)行初始表示,再通過多頭自注意力機(jī)制獲得句子的多個得分矩陣,將獲得實(shí)體的多個得分矩陣分別構(gòu)建多個圖卷積網(wǎng)絡(luò),以此獲得實(shí)體的深層語義表示,在此基礎(chǔ)上,通過利用實(shí)體為查詢的多頭注意力機(jī)制,獲得實(shí)體與句子之間的交互信息表示,建立融合實(shí)體的句子信息表示,并通過transformer解碼層,實(shí)現(xiàn)金融實(shí)體及其情感極性的判別。
4、一種金融實(shí)體與情感聯(lián)合抽取方法,包括以下步驟:
5、步驟1,采用bert-wwm-ext模型對給定的金融句子進(jìn)行嵌入表示h;
6、步驟2,將步驟1得到的嵌入表示h作為輸入,構(gòu)建金融實(shí)體與情感聯(lián)合抽取模型,包括:
7、1)實(shí)體表示:利用自注意力機(jī)制,獲得金融句子m個不同的圖卷積網(wǎng)絡(luò)的深層語義表示即得到金融句子的深層語義hgcn,將其線性變換,進(jìn)而建立實(shí)體的深層語義表示hete;
8、2)實(shí)體抽?。簩τ诘玫綄?shí)體的深層語義表示hete,再使用softmax函數(shù),獲得每個詞是否為實(shí)體的標(biāo)記;
9、3)實(shí)體序列與情感表示序列交互:采用多頭注意力機(jī)制對實(shí)體的深層語義表示hete和句子嵌入表示h進(jìn)行交互,獲得交互后的句子表示hs;
10、4)實(shí)體情感極性判別:利用交互后的句子表示hs,再通過transformer解碼層,采用全連接操作,得到情感判別的句子表示hesc,再使用softmax函數(shù),獲得實(shí)體的情感極性判別結(jié)果,最終實(shí)現(xiàn)金融實(shí)體和情感極性二元組的聯(lián)合抽取。
11、進(jìn)一步,所述步驟1中采用bert-wwm-ext模型對給定的金融句子進(jìn)行嵌入表示h,具體為:
12、將給定的金融句子表示為“[cls]句子[sep]”,以獲得句子的字級嵌入表示h[x]∈r(n+2)×d,公式如下:
13、h[1:x]=bert(s)
14、其中s表示給定句子,x表示bert-wwm-ext的最大編碼層數(shù),h[x]層用于完成實(shí)體抽取任務(wù)。
15、更進(jìn)一步,所述bert-wwm-ext模型采用共享bert-wwm-ext,聯(lián)合完成實(shí)體抽取任務(wù)和金融實(shí)體情感極性判別任務(wù)。其中低層、中間層和高層,其中低層獲取短語級信息,中間層獲取語言信息,高層獲取與任務(wù)相關(guān)的信息。
16、進(jìn)一步,所述步驟2中建立實(shí)體的深層語義表示hete,具體為:
17、(1)詞的注意力得分矩陣:利用自注意力機(jī)制,將句子中的詞與詞看作query和key,獲取句子中每個詞的注意力得分矩陣,公式如下:
18、
19、其中,wq∈rd×d和wk∈rd×d表示可學(xué)習(xí)的參數(shù)矩陣,d表示輸入結(jié)點(diǎn)維度,q和k分別表示自注意力機(jī)制中的query和key,t表示矩陣的轉(zhuǎn)置運(yùn)算;
20、(2)圖卷積網(wǎng)絡(luò)中的結(jié)點(diǎn)表示:在圖卷積網(wǎng)絡(luò)中,網(wǎng)絡(luò)的第l層的第i個詞結(jié)點(diǎn)的隱層向量表示hi(l),公式如下:
21、
22、其中,aij表示圖卷積網(wǎng)絡(luò)上的第i個詞結(jié)點(diǎn)與鄰居的第j個詞結(jié)點(diǎn)的關(guān)聯(lián)程度,wl表示圖卷積網(wǎng)絡(luò)中第l層的權(quán)重矩陣,表示網(wǎng)絡(luò)的第l-1層的第i個詞結(jié)點(diǎn)的隱層向量表示,bl表示第l層的偏置項(xiàng),σ表示relu激活函數(shù),n表示圖卷積網(wǎng)絡(luò)總層數(shù);
23、(3)基于圖卷積網(wǎng)絡(luò)的句子深層語義表示:利用圖卷積網(wǎng)絡(luò)得到句子中所有結(jié)點(diǎn)的表示后,最后得到句子s的深層語義表示hgcn(s),公式如下:
24、
25、其中,表示句子在圖卷積網(wǎng)絡(luò)中第i個詞結(jié)點(diǎn),i取1,2,…,n,m;
26、(4)多頭注意力機(jī)制下的句子融合表示:根據(jù)上述(1)中多個自注意力機(jī)制得到的句子的多個詞打分矩陣a,相應(yīng)地建立k個圖卷積網(wǎng)絡(luò),再采用線性變換將k個圖網(wǎng)絡(luò)融合,獲得實(shí)體的深層語義表示hete。
27、進(jìn)一步,所述步驟2中獲得交互后的句子表示hs,具體為:
28、將實(shí)體的深層語義表示hete作為多頭注意力機(jī)制的query,句子作為多頭注意力機(jī)制的key和value,第i個頭注意力的句子表示如下:
29、
30、其中,和表示可學(xué)習(xí)的參數(shù)矩陣,m表示注意力頭數(shù),dk=dv=d/m,q,k和v分別表示注意力機(jī)制中的query,key和value;
31、通過m個頭注意力的句子表示hs如下:
32、hs=multihead(q,k,v)=concat(head1,...,headm)wo。
33、進(jìn)一步,所述步驟2中金融實(shí)體與情感聯(lián)合抽取模型的訓(xùn)練方法如下:
34、s1,對于實(shí)體抽取,通過線性變換,將k個圖卷積神經(jīng)網(wǎng)絡(luò)的深層語義表示higcn進(jìn)行線性融合,獲得實(shí)體的深層語義表示hete,實(shí)體邊界判別概率pete如下:
35、
36、pete=softmax(hete)
37、
38、其中,wiete和bete分別表示可訓(xùn)練的權(quán)重矩陣和偏置參數(shù);
39、實(shí)體邊界判別概率pete利用交叉熵目標(biāo)函數(shù)進(jìn)行聯(lián)合訓(xùn)練,得到實(shí)體抽取的損失late,公式如下:
40、
41、其中,若第i個位置是否為實(shí)體的邊界,則否則
42、在訓(xùn)練模型時,將情感極性判別任務(wù)視為極性序列標(biāo)簽時,存在生成的實(shí)體序列標(biāo)簽不一致問題。例如,金融實(shí)體“京東白條”的情感極性可能為正面、中性、負(fù)面。因此,在實(shí)體情感極性判別前,利用pete得到實(shí)體的邊界[bind:eind],聯(lián)合實(shí)體的情感極性判別,過程如下:
43、hesc=hetewesc+besc
44、oi=max(hesc[bind:eind])
45、
46、其中,hesc[bind:eind]表示從bind到eind的片段的hesc,max表示序列維度的最大池化運(yùn)算符,wesc表示可訓(xùn)練的權(quán)重矩陣,besc表示可訓(xùn)練的偏置參數(shù),表示第i個實(shí)體邊界的情感概率,wh可訓(xùn)練的參數(shù)權(quán)重矩陣;
47、由實(shí)體的情感極性判別概率,得到聯(lián)合實(shí)體的情感判別損失lasc,公式如下:
48、
49、其中,若第i個詞為實(shí)體的邊界,則否則
50、s2,為了使模型具有魯棒性,利用虛擬對抗訓(xùn)練,輸入句子字級嵌入表示e進(jìn)行一定的擾動,產(chǎn)生的對抗損失lvat如下:
51、
52、e*=e+r
53、r=αq/||q||2
54、
55、e′=e+ξd
56、其中,dkl(·||·)表示kl散度,p(·|·)表示模型條件概率,θ表示當(dāng)前參數(shù)常數(shù),α和ξ表示超參數(shù),d表示從正態(tài)分布n(0,1)中采樣的參數(shù),表示梯度運(yùn)算;
57、s3,最終損失由實(shí)體抽取損失late、情感極性判別損失lasc、對抗損失lvat聯(lián)合共同確定,最終損失如下:
58、l=late+lasc+lvat。
59、與現(xiàn)有技術(shù)相比本發(fā)明具有以下優(yōu)點(diǎn):
60、1、針對句子中詞間關(guān)系度量,在bert-wwm-ext模型表示句子的基礎(chǔ)上,采用多頭自注意力機(jī)制分別獲得詞間不同關(guān)系的矩陣,并采用網(wǎng)絡(luò)中的不同層的表示融合,使句子的語義表示更全面。
61、2、針對基于詞間關(guān)系的句子深層表示,采用多頭自注意力機(jī)制,建立基于詞間關(guān)系的關(guān)系矩陣,由此建立基于gcn網(wǎng)絡(luò)中句子的詞結(jié)點(diǎn)表示,實(shí)現(xiàn)句子的深層語義表示。
62、3、針對實(shí)體與句子的融合表示,將獲得的實(shí)體作為查詢項(xiàng),建立多頭注意力機(jī)制的融合實(shí)體信息的句子表示,使本發(fā)明對句子中情感極性更加有針對性。
63、4、設(shè)計(jì)了實(shí)體及情感的聯(lián)合判別模型,使句子中的多個實(shí)體及其觀點(diǎn)可以進(jìn)行有效的建模,提升本發(fā)明對實(shí)體及其情感極性的識別性能。
64、5、本發(fā)明采用了多任務(wù)的學(xué)習(xí)機(jī)制訓(xùn)練模型,調(diào)整共享的參數(shù)。在句子的深層表示、實(shí)體與句子中情感的交互信息表示、以及實(shí)體及其情感極性的預(yù)測過程中,取得較好的效果。