金融文本信息情感分析(負(fù)面及主體判定)

向AI轉(zhuǎn)型的程序員都關(guān)注了這個(gè)號(hào)???
機(jī)器學(xué)習(xí)AI算法工程?? 公眾號(hào):datayx
給定一條金融文本和文本中出現(xiàn)的金融實(shí)體列表,
負(fù)面信息判定:判定該文本是否包含金融實(shí)體的負(fù)面信息。如果該文本不包含負(fù)面信息,或者包含負(fù)面信息但負(fù)面信息未涉及到金融實(shí)體,則負(fù)面信息判定結(jié)果為0。
負(fù)面主體判定:如果任務(wù)1中包含金融實(shí)體的負(fù)面信息,繼續(xù)判斷負(fù)面信息的主體對(duì)象是實(shí)體列表中的哪些實(shí)體。
分析:
給定一條金融信息X以及對(duì)應(yīng)的實(shí)體集合S, 我們首先要判斷該金融信息是否包含負(fù)面信息;如果包含負(fù)面信息,需要找出負(fù)面信息的主體E。
輸入:金融信息
輸出:是否包含負(fù)面信息(0/1);負(fù)面信息主體的集合E(其中E是S的子集)
簡(jiǎn)單來說就是需要判定給定金融文本是否包含金融實(shí)體的負(fù)面信息,并從給定實(shí)體列表中找出負(fù)面實(shí)體。
開源代碼 數(shù)據(jù)集 獲取:
關(guān)注微信公眾號(hào) datayx ?然后回復(fù)??金融? 即可獲取。
AI項(xiàng)目體驗(yàn)地址 https://loveai.tech


通過統(tǒng)計(jì)發(fā)現(xiàn)在訓(xùn)練集合測(cè)試集中有大量的title和text是相似的,這需要作數(shù)據(jù)處理去除掉這些冗余信息,涉及到輸入文本的選擇問題。

由上圖可知,title和text長(zhǎng)度在訓(xùn)練集和測(cè)試集中的分布幾乎一致。
由于數(shù)據(jù)集中很多樣本的title和text一樣或者很相近,因此不是所有樣本都需要考慮將title和text拼接作為文本,因此統(tǒng)計(jì)了title與text的編輯距離小于100的樣本數(shù)量在訓(xùn)練集和測(cè)試集中的占比,如下圖所示:

經(jīng)大致分析發(fā)現(xiàn),實(shí)體列表中很多實(shí)體與該列表中其它實(shí)體存在包含關(guān)系,而大多數(shù)子實(shí)體都不是key_entity;因此我們統(tǒng)計(jì)了實(shí)體列表中含有子實(shí)體的樣本數(shù)量在訓(xùn)練集和測(cè)試集中的占比,可視化結(jié)果如下:

以下是我們對(duì)本題的難點(diǎn)描述和解題思路展示:

因?yàn)樵擃}數(shù)據(jù)不規(guī)范,含有噪聲,因此需要對(duì)文本進(jìn)行清洗,清洗流程如下圖所示:

我們還對(duì)實(shí)體列表進(jìn)行了相關(guān)處理,即去子詞:

方案設(shè)計(jì)
首先展示我們團(tuán)隊(duì)的整體方案,如下圖所示:

我們總共提出了三種不同方案來解決該問題,分別是:
實(shí)體SA(Sentiment Analysis)
文檔SA+實(shí)體SA
多任務(wù)模型
接下來分別對(duì)三種方案進(jìn)行講解,第一種是實(shí)體SA,即把兩個(gè)子任務(wù)當(dāng)成一個(gè)實(shí)體情感分析-分類任務(wù):

樣本構(gòu)造樣例:

以下是文本構(gòu)造方法設(shè)計(jì):

文本構(gòu)造之后我們對(duì)該樣本實(shí)體列表中的其它實(shí)體進(jìn)行了替換,起到了標(biāo)記其它實(shí)體位置的作用,替換方案如下:

最后是模型設(shè)計(jì),我們通過構(gòu)造句子對(duì)分類任務(wù),微調(diào)bert模型:

第二種是文檔SA+實(shí)體SA,該方法就是先判斷樣本是否是負(fù)面的,如果樣本是負(fù)面的再判斷該樣本的實(shí)體列表中每個(gè)實(shí)體的情感:

下圖是文檔SA、實(shí)體SA的輸入設(shè)計(jì)和模型構(gòu)建方法:

第三種是多任務(wù)模型,該方法將兩個(gè)子任務(wù)結(jié)合起來共同學(xué)習(xí);該方法啟發(fā)于層次性多任務(wù)模型[2] 和多任務(wù)中的特征共享[3]:


將多任務(wù)模型應(yīng)用到本賽題中,將bert的最底層[CLS]向量取出來,在其后接兩個(gè)單獨(dú)的全連接層;兩個(gè)全連接層分別對(duì)應(yīng)文檔情感二分類任務(wù)和實(shí)體二分類任務(wù)的特征表示,最后再在兩個(gè)特征表示后面加上相應(yīng)的輸出層;微調(diào)過程中損失函數(shù)由上圖的公式計(jì)算得出。
經(jīng)過線上驗(yàn)證,我們的文檔SA效果應(yīng)該就比其它團(tuán)隊(duì)高至少將近一個(gè)千分點(diǎn),因此為了方便后期模型融合和糾正方案一和方案三的negative準(zhǔn)確性,本團(tuán)隊(duì)提出了情感校驗(yàn)的后處理方法,如下圖所示:


最后是模型融合,我們分別嘗試了stacking和voting,最終決定采用voting,因?yàn)関oting效果更好,魯棒性更強(qiáng)。

方案總結(jié)

三種方案對(duì)比下來,多任務(wù)模型表現(xiàn)優(yōu)于另外兩種方案。

初賽受規(guī)則的影響,有點(diǎn)過擬合A榜;到了復(fù)賽階段,摒棄了所有后處理人工規(guī)則,因此在B榜切換之后只降了5個(gè)萬分點(diǎn),足以說明模型的穩(wěn)定性。在文本預(yù)處理方面我們團(tuán)隊(duì)進(jìn)行了充分地探索,提出了實(shí)體掩蓋和多種文本構(gòu)造方法;在模型方面,我們提出了bert+特征三輸入、多任務(wù)模型;最后還提出了情感校驗(yàn),進(jìn)一步提升了預(yù)測(cè)的準(zhǔn)確性。
閱讀過本文的人還看了以下文章:
TensorFlow 2.0深度學(xué)習(xí)案例實(shí)戰(zhàn)
基于40萬表格數(shù)據(jù)集TableBank,用MaskRCNN做表格檢測(cè)
《基于深度學(xué)習(xí)的自然語言處理》中/英PDF
Deep Learning 中文版初版-周志華團(tuán)隊(duì)
【全套視頻課】最全的目標(biāo)檢測(cè)算法系列講解,通俗易懂!
《美團(tuán)機(jī)器學(xué)習(xí)實(shí)踐》_美團(tuán)算法團(tuán)隊(duì).pdf
《深度學(xué)習(xí)入門:基于Python的理論與實(shí)現(xiàn)》高清中文PDF+源碼
python就業(yè)班學(xué)習(xí)視頻,從入門到實(shí)戰(zhàn)項(xiàng)目
2019最新《PyTorch自然語言處理》英、中文版PDF+源碼
《21個(gè)項(xiàng)目玩轉(zhuǎn)深度學(xué)習(xí):基于TensorFlow的實(shí)踐詳解》完整版PDF+附書代碼
《深度學(xué)習(xí)之pytorch》pdf+附書源碼
PyTorch深度學(xué)習(xí)快速實(shí)戰(zhàn)入門《pytorch-handbook》
【下載】豆瓣評(píng)分8.1,《機(jī)器學(xué)習(xí)實(shí)戰(zhàn):基于Scikit-Learn和TensorFlow》
《Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn)》PDF+完整源碼
汽車行業(yè)完整知識(shí)圖譜項(xiàng)目實(shí)戰(zhàn)視頻(全23課)
李沐大神開源《動(dòng)手學(xué)深度學(xué)習(xí)》,加州伯克利深度學(xué)習(xí)(2019春)教材
筆記、代碼清晰易懂!李航《統(tǒng)計(jì)學(xué)習(xí)方法》最新資源全套!
《神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)》最新2018版中英PDF+源碼
將機(jī)器學(xué)習(xí)模型部署為REST API
FashionAI服裝屬性標(biāo)簽圖像識(shí)別Top1-5方案分享
重要開源!CNN-RNN-CTC 實(shí)現(xiàn)手寫漢字識(shí)別
同樣是機(jī)器學(xué)習(xí)算法工程師,你的面試為什么過不了?
前海征信大數(shù)據(jù)算法:風(fēng)險(xiǎn)概率預(yù)測(cè)
【Keras】完整實(shí)現(xiàn)‘交通標(biāo)志’分類、‘票據(jù)’分類兩個(gè)項(xiàng)目,讓你掌握深度學(xué)習(xí)圖像分類
VGG16遷移學(xué)習(xí),實(shí)現(xiàn)醫(yī)學(xué)圖像識(shí)別分類工程項(xiàng)目
特征工程(二) :文本數(shù)據(jù)的展開、過濾和分塊
如何利用全新的決策樹集成級(jí)聯(lián)結(jié)構(gòu)gcForest做特征工程并打分?
Machine Learning Yearning 中文翻譯稿
全球AI挑戰(zhàn)-場(chǎng)景分類的比賽源碼(多模型融合)
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
python+flask搭建CNN在線識(shí)別手寫中文網(wǎng)站
中科院Kaggle全球文本匹配競(jìng)賽華人第1名團(tuán)隊(duì)-深度學(xué)習(xí)與特征工程
不斷更新資源
深度學(xué)習(xí)、機(jī)器學(xué)習(xí)、數(shù)據(jù)分析、python
?搜索公眾號(hào)添加:?datayx??
機(jī)大數(shù)據(jù)技術(shù)與機(jī)器學(xué)習(xí)工程
?搜索公眾號(hào)添加:?datanlp
長(zhǎng)按圖片,識(shí)別二維碼
