輿情數(shù)據(jù)通過底層的大數(shù)據(jù)采集系統(tǒng),流入中間層的 ETL 數(shù)據(jù)處理平臺,經(jīng)過初級的數(shù)據(jù)處理轉(zhuǎn)化之后,向上進入數(shù)據(jù)挖掘核心處理環(huán)節(jié);此階段進行數(shù)據(jù)標準化、文本深度分析,如地域識別、智能分詞、情感判定、垃圾過濾等,經(jīng)過文本處理的結(jié)果,即脫離了原始數(shù)據(jù)的狀態(tài),具備了客戶屬性,基于客戶定制的監(jiān)測和預警規(guī)則,信息將在下一階段實時的推送給終端客戶,負面判定的準確度、召回率,直接影響客戶的服務體驗和服務認可度。

? 難點與挑戰(zhàn)

輿情業(yè)務中的情感分析難點,主要體現(xiàn)在以下幾個方面:

1. 輿情的客戶群體是復雜多樣的,涉及行業(yè)多達24個(如下圖所示),不同行業(yè)數(shù)據(jù)特點或敏感判定方案不盡相同,靠一個模型難以解決所有問題;

2. 輿情監(jiān)測的數(shù)據(jù)類型繁多, 既有常規(guī)的新聞、微信公眾號等媒體文章數(shù)據(jù),又有偏口語化的微博、貼吧、問答數(shù)據(jù),情感模型往往需要針對不同渠道類型單獨訓練優(yōu)化,而渠道粒度的模型在不同客戶上效果表現(xiàn)也差別巨大;

3. 客戶對情感的訴求是有差異的,有些客戶會有自己專屬的判定條件。通用的情感模型難以適應所有客戶的情感需求。

4. 隨著時間推移,客戶積累和修正的情感數(shù)據(jù)難以發(fā)揮價值。無法實現(xiàn)模型增量訓練和性能的迭代提高。

5. 對于關(guān)注品牌、主體監(jiān)測客戶,需要進行特定目標(實體)情感傾向性(ATSA)判定。那么信息抽取就是一個難題。

6. 對于新聞類數(shù)據(jù),通常存在標題和正文兩個文本域。如何提取有價值的文本信息作為模型輸入也是面臨的困難。

二、情感分析在百分點輿情的發(fā)展歷程

從2015年開始,百分點輿情便開始將機器學習模型應用在早期的負面判定中;到2020年,我們已經(jīng)將深度遷移學習場景化和規(guī)模化,也取得了不錯的成果;

2015年:抓取百萬級別的口碑電商評論數(shù)據(jù),使用邏輯回歸進行建模,做為情感分析的BaseLine;

2016年:主要側(cè)重于技術(shù)上的遞進,進入深度學習領(lǐng)域。引入word2vec在大規(guī)模語料集上進行訓練,獲得具有更好語義信息的詞向量表示,替代基于Tfidf等傳統(tǒng)的統(tǒng)計特征。隨后在TextCnn、TextRnn等深度學習算法進行更新迭代,盡管得到數(shù)字指標的提高,但是對于實際業(yè)務的幫助還是不足。

2017年:結(jié)合輿情全業(yè)務特點,需要能做到針對品牌、主體的情感監(jiān)測。提出 Syntax and Ruler-based Doc sentiment analysis的方式,依據(jù)可擴充的句法規(guī)則以及敏感詞庫進行特定的分析。該方式在敏感精準度指標上是有提升的,但是卻有較低的召回。同時在進行規(guī)則擴充時,也比較繁瑣。

2019年上半年:以Bert為代表的遷移學習誕生,并且可以在下游進行fine-tune,使用較小的訓練數(shù)據(jù)集,便能取得不錯的成績。進行以輿情業(yè)務數(shù)據(jù)為基礎(chǔ),構(gòu)建一個簡易的文本平臺標注平臺,在其上進行訓練數(shù)據(jù)的標注,構(gòu)建了一個通用的情感模型分類器。評測指標 F1值為 0.87,后續(xù)對 ERNIE1.0 進行嘗試,有兩個百分點的提升。

2019年下半年:主要從輿情的業(yè)務問題入手,通過優(yōu)化提取更加精準、貼近業(yè)務的情感摘要作為模型輸入,使用定制化模型以及多模型融合方案,聯(lián)合對數(shù)據(jù)進行情感打標。并提出基于情感實體(主體)的負面信息監(jiān)測,下述統(tǒng)稱ATSA(aspect-term sentiment analysis),使用 Bert-Sentence Pair 的訓練方式, 將 摘要文本、實體聯(lián)合輸入,進行實體的情感傾向性判定。在定點客戶上取得不錯的成績,最后的F1值能達到 0.95。

2020年:將細化領(lǐng)域做到客戶級別,定制私有化情感模型。同時將加大對特定實體的細粒度情感分析(ATSA)的優(yōu)化;同時,通過內(nèi)部 AI訓練平臺的規(guī)?;瘧?,做到模型的全生命周期管理,簡化操作流程,加強對底層算力平臺的資源管控。

三、預訓練語言模型與技術(shù)解析

下圖大致概括了語言模型的發(fā)展狀況(未完全統(tǒng)計):

在2019年度情感分析實踐中,率先使用預訓練語言模型 Bert,提高了情感分析的準確率。后來具有更小參數(shù)量的ALBERT的提出,使生產(chǎn)環(huán)境定制化情感模型成為可能。這里就主要介紹BERT以及ALBERT。

? BERT

BERT(Bidirectional Encoder Representations from Transformerss)的全稱是基于 Transformer 的雙向編碼器表征,其中「雙向」表示模型在處理某一個詞時,它能同時利用前面的詞和后面的詞兩部分信息(如下圖所示)。

在BERT中, 主要是以兩種預訓練的方式來建立語言模型。

1.MLM(Masked LM)

MLM可以理解為完形填空,作者會隨機mask每一個句子中15%的詞,用其上下文來做預測,例如:my dog is hairy → my dog is [MASK]。此處將hairy進行了mask處理,然后采用非監(jiān)督學習的方法預測mask位置的詞是什么,具體處理如下:

 之后讓模型預測和還原被遮蓋掉或替換掉的部分。

2.NSP(Next Sentence Prediction)

首先我們拿到屬于上下文的一對句子,也就是兩個句子,之后我們要在這兩段連續(xù)的句子里面加一些特殊 token:  [cls] 上一句話,[sep] 下一句話. [sep]

也就是在句子開頭加一個 [cls],在兩句話之中和句末加 [sep],具體地就像下圖一樣:

BERT在文本摘要、信息檢索、數(shù)據(jù)增強、閱讀理解等任務中,也有實際的應用和發(fā)展。更多關(guān)于Bert相關(guān)介紹,請參照百分點認知智能實驗室往期文章。

? ALBERT

ALBERT的全稱是A Lite BERT for Self-supervised Learning of Language Representations(用于語言表征自監(jiān)督學習的輕量級BERT),相對于Bert而言,在保證參數(shù)量小的情況下,也能保持較高的性能。當然同樣的模型還有 DistilBERT、TinyBERT。

1.ALBERT 和BERT的比較

下圖是BERT和ALBERT在訓練速度和性能上的整體比較:

2.ALBERT的目標

在基于預訓練語言模型表征時,增加模型大小一般可以提升模型在下游任務中的性能。但是通過增加模型大小會帶來以下問題:

在將Bert-large的隱層單元數(shù)增加一倍, Bert-xlarge在基準測試上準確率顯著降低。

ALBERT核心目標就是解決上述問題, 下面就來介紹ALBERT在精簡參上的優(yōu)化。

3.ALBERT模型優(yōu)化

明確參數(shù)的分布,對于有效可靠的減少模型參數(shù)十分有幫助。ALBERT同樣也只使用到Transformer的Encoder階段,如下圖所示:

圖中標明的藍色方框和紅色方框為主要的參數(shù)分布區(qū)域:

具體參數(shù)優(yōu)化如下:

Factorized embedding parameterization(對Embedding因式分解)

ALBERT認為,token embedding是沒有上下文依賴的表述,而隱藏層的輸出值不僅包括了詞本身的意思還包括一些上下文信息,因此應該讓H>>E,所以ALBERT的詞向量的維度是小于encoder輸出值維度的。在NLP任務中,通常詞典都會很大,embedding matrix的大小是E×V。

ALBERT采用了一種因式分解(Factorized embedding parameterization)的方法來降低參數(shù)量。首先把one-hot向量映射到一個低維度的空間,大小為E,然后再映射到一個高維度的空間,當E<<H時參數(shù)量減少的很明顯。如下圖所示:

可以看到,經(jīng)過因式分解。參數(shù)量從O(V * H) 變?yōu)镺(V*E + E*H),參數(shù)量將極大減小。如下圖所示:在H=768條件下,對比E=128和E=768,參數(shù)量減少17%,而整體性能下降0.6%。

在后續(xù)的實驗環(huán)境(所有的優(yōu)化匯總后),對 embedding size 的大小進行評估,得出在  E=128時,性能達到最佳。

Cross-layer parameter sharing(跨層參數(shù)共享)

下圖是對BERT-Base Attention分布的可視化。對于一個隨機選擇的句子,我們可視化來自不同Layer的Head的Attention分布??梢钥吹?,底層的Attention分布類似于頂層的Attention分布。這一事實表明在某種程度上,它們的功能是相似的。

Transformer中共享參數(shù)有多種方案,只共享feed-forward層,只共享attention層,ALBERT結(jié)合了上述兩種方案,feed-forward層與attention層都實現(xiàn)參數(shù)共享,也就是說共享encoder內(nèi)的所有參數(shù)。但是需要主要的是,這只是減少了參數(shù)量,推理時間并沒有減少。如下圖所示:在采用 all-shared模式下,參數(shù)量減少70%,性能下降小于3%。

在經(jīng)過上述的參數(shù)優(yōu)化后,整體參數(shù)量有了極大的縮減,訓練速度也極大加快。后續(xù)作者又在模型變寬和模型變深上做了幾組實驗。如下:

模型變寬

當我們增加 H 大小時,性能會逐漸提高。在H=6144時,性能明顯下降。如下圖所示:

模型變深

在以ALBERT-large為基礎(chǔ)參數(shù),設置不同的layer大小,發(fā)現(xiàn)layer=48的性能要差于layer=24的性能,如下圖所示: 

一些實驗表示NSP(BERT-style)非但沒有作用,反而會對模型帶來一些損害。作者接著提出SOP(ALBERT-style)的優(yōu)化模式。具體如下:

Inter-sentence coherence loss(句子連貫性)

在ALBERT中,為了去除主題識別的影響,提出了一個新的任務 sentence-order prediction(SOP),SOP的正樣本和NSP的獲取方式是一樣的,負樣本把正樣本的順序反轉(zhuǎn)即可。SOP因為是在同一個文檔中選的,只關(guān)注句子的順序并沒有主題方面的影響。并且SOP能解決NSP的任務,但是NSP并不能解決SOP的任務,該任務的添加給最終的結(jié)果提升了一個點。

在后續(xù)的實驗中, ALBERT在訓練了100w步之后,模型依舊沒有過擬合,于是乎作者果斷移除了dropout,沒想到對下游任務的效果竟然有一定的提升。

當然作者對于增加訓練數(shù)據(jù)和訓練時長也做了詳盡的對比和測試,這里不再進行描述。

在最初的 ALBERT發(fā)布時,是只有中文的。感謝數(shù)據(jù)工程師徐亮以及所在的團隊,于 2019 年 10 月,開源了首個中文預訓練的中文版 ALBERT 模型。

? 項目地址: https://github.com/brightmart/albert_zh

四、情感分析在輿情的應用實踐

? 業(yè)務調(diào)研

2019上半年,輿情服務的整體情感判定框架已經(jīng)遷移到以Bert訓練為基礎(chǔ)的情感模型上,得出的測試指標 F1 值為 0.86,相較于舊版模型提升顯著; 但是雖然數(shù)據(jù)指標提升明顯,業(yè)務端實際感受卻并不明顯。因此我們對代表性客戶進行采樣調(diào)查,輔助我們找出生產(chǎn)指標和實驗室指標差異所在。同時針對上文提到的關(guān)于輿情業(yè)務中情感分析的痛點和難點,進行一次深度業(yè)務調(diào)研: 

1.客戶情感滿意度調(diào)查

2.文本作用域(模型輸入文本選擇)調(diào)研

這里將文本作用域分為以下幾個層次,分布情況如下圖所示:

3.情感判定因素

這里對判定因素做以下介紹:

我們針對上述調(diào)研結(jié)果進行詳盡分析,最終確定走情感細粒度模型的道路。

? 情感分析的落地實踐

精簡版本的情感架構(gòu)概覽如下:

接下來會基于此進行講述,大致分為如下幾個層次:

1.輸入層

這里主要是獲取相應文本輸入,以及客戶的文本作用域規(guī)則和檢索詞、主體詞,供下游的文本作用域生成提供對應的條件。

2.文本作用域

依據(jù)文本作用域規(guī)則,生成對應的模型輸入,請參照上文對文本作用域的闡述。這里實驗內(nèi)容針對的是情感摘要。首先將文本進行分句,然后依據(jù)對每一個句子和檢索詞進行匹配,通過BM25計算相關(guān)性。這里限制的文本長度在256內(nèi)。在文本域優(yōu)化后, 對線上的10家客戶進行對比分析,實驗條件如下:

進行對比分析(客戶名稱已脫敏),每個客戶的情感摘要和文本標題效果依次展示。如下圖所示:

可以發(fā)現(xiàn)整體效果是有極大提升的。但是也可以看到部分客戶的敏感精準率是偏低的,這個和客戶的敏感分布有關(guān),大部分的敏感占比只有總數(shù)據(jù)量的 10% ~20%,有些甚至更加低。所以面臨一個新的問題,如何提升非均勻分布的敏感精準度。這個會在下文進行陳述。 

3.情感判定因素

由上文的情感因素分布得知, 情感對象(實體)的因素占54%,基于實體的情感傾向性判定(ATSA)是一個普適需求。如果這里直接使用通用情感分析判定(SA),在輿情的使用場景中會存在高召回,低精準的的情況。接下來會對此進行相關(guān)解決方案的的論述。

4.模型層

在19年初, 使用Bert-Base(12L,768H)進行fine-tune,得到如下指標:情感準確性:0.866, 敏感精準率: 0.88,敏感召回:0.84,F1: 0.867;后來在ERNIE1.0上進行嘗試,情感準確性能提升2個百分點。不過因為PaddlePaddle的生態(tài)問題,沒有選擇ERNIE。這是一個符合自然語義的情感模型, 但是對于輿情客戶來說,這還遠遠不夠。

 對生產(chǎn)環(huán)境的埋點日志分析,發(fā)現(xiàn)客戶存在大量的屏蔽操作。選取近一個月屏蔽最多的10個話題進行分析,如下圖所示:

通過調(diào)研和分析發(fā)現(xiàn),這些數(shù)據(jù)雖然命中關(guān)鍵詞,但是數(shù)據(jù)相關(guān)度比較低。在情感判定之前引入相關(guān)度判定, 對于非相關(guān)的數(shù)據(jù),一律判定為非敏感。對于精準數(shù)據(jù)再次進行情感分析判定,大大提升敏感精準率。在工程上選取ALBERT進行模型訓練可以達到部署多個模型的目的。觀測到,單個模型在推理階段,在Gpu(RTX 2080)上占用的顯存大約在600MiB,極大節(jié)省資源。

部分客戶相關(guān)度模型效果如下:

部分客戶實施相關(guān)度判定,由于數(shù)據(jù)特征比較明顯,可以很容易達到比較精準的數(shù)據(jù)效果,但是并不適用于所有客戶。相關(guān)度模型的引入,即達到篩選相關(guān)數(shù)據(jù)的目的,也能減少情感判定噪音數(shù)據(jù)的干擾,提升敏感精準度。

5.ATSA-面向情感實體的情感傾向性分析

ATSA(aspect-term sentiment analysis) 要解決就是在特定情感實體下的情感傾向性判定問題。這里主要借鑒《Utilizing BERT for Aspect-Based Sentiment Analysis via Constructing Auxiliary Sentence》文中的思想。這個工作做得非常聰明,它把本來情感計算的常規(guī)的單句分類問題,通過加入輔助句子,改造成了句子對匹配任務。很多實驗證明了:BERT是特別適合做句子對匹配類的工作的,所以這種轉(zhuǎn)換無疑能更充分地發(fā)揮BERT的應用優(yōu)勢。

輿情中要解決的問題如下:

A公司和B公司的情感傾向性是非敏感的, 而C公司卻是敏感的。要解決這個問題,要面臨兩個問題:

在輿情的業(yè)務場景中,可以簡化問題,由于情感實體是提前給定的, 所以不需要做實體識別和信息抽取, 只需要對特定實體的情感傾向性進行判定。整體流程如下:

主要是利用 Bert Sentence-Pair,文本與實體聯(lián)合訓練,得到輸出標簽。目前實驗證明,經(jīng)過這種問題轉(zhuǎn)換,在保證召回率提升的情況下,準確率和精準率都得到了提高。選取一個客戶進行對比測試,如下所示:

上述是一個正負樣本及其不均勻的情況,增加敏感精準率將提高客戶的滿意度。目前的實現(xiàn)的機制還略顯簡單,未來還將持續(xù)投入。

6.情感規(guī)則引擎

在部分客戶場景中, 他們的業(yè)務規(guī)則是明確的或者是可窮舉的。這里會做一些長尾詞挖掘、情感新詞發(fā)現(xiàn)等工作來進行輔助, 同時要支持實時的干預機制,快速響應。比如某些客戶的官方微博經(jīng)常會發(fā)很多微博,他們會要求都判定成非敏感。這里不再做過多介紹。

五、長期規(guī)劃

? AI 訓練平臺的構(gòu)建

軟件開發(fā)領(lǐng)域和模型開發(fā)領(lǐng)域的流程是不同的,如下所示:

可以看到,構(gòu)建模型是困難的。在輿情架構(gòu)發(fā)展中,線上多模型是必然的趨勢,也就意味著需要一個平臺能夠快速支持和構(gòu)建一個定制化模型,來滿足真實的應用場景。這就需要從底層的算力資源進行管控、輿情數(shù)據(jù)的標準化制定和積累、模型的生命周期管理等多方面進行衡量。關(guān)于 AI 訓練平臺的構(gòu)建以及在輿情領(lǐng)域的應用實踐,我們將在后續(xù)文章做進一步闡述。

? 持續(xù)學習,增量迭代

隨著輿情客戶對系統(tǒng)的深度使用,一般會有情感標簽的人工糾正。所以需要保證模型可以進行增量迭代,減少客戶的負反饋。

? 多實體的情感傾向分析

對包含有多個實體信息的文本,針對每一個系統(tǒng)識別到的實體,做自動情感傾向性判斷(敏感、非敏感),并給出相應的置信度,包括實體庫的構(gòu)建。

? 提升垂直類情感情感分析效果

在垂類上(App、餐飲、酒店等)情感傾向性分析準確率上加大優(yōu)化力度。

隨著輿情業(yè)務的發(fā)展,各領(lǐng)域客戶都沉淀了大量與業(yè)務貼近的優(yōu)質(zhì)數(shù)據(jù),如何有效使用這些數(shù)據(jù),形成情感效果聯(lián)動反饋機制,為業(yè)務賦能,是情感分析領(lǐng)域面臨的新的挑戰(zhàn)。在2019年的實踐中,通過場景化的情感分析框架落地應用,對情感效果做到了模型定制化干預,真正提高了客戶滿意度。這種機制具有整體精度高、定制能力強、業(yè)務感知明顯的特點。在后續(xù)工作中,將以 模型訓練自動化與人工反饋相結(jié)合的方式,將模型定制能力規(guī)?;?、平臺化,實現(xiàn)情感分析在輿情場景下千人千面的效果。

百分點輿情洞察系統(tǒng)

百分點輿情洞察系統(tǒng)(MediaForce)是一款沉淀多年的互聯(lián)網(wǎng)公開輿情 SAAS 分析系統(tǒng),覆蓋全網(wǎng)主流資訊站點及社交媒體的公開數(shù)據(jù),幫助企業(yè)迅速發(fā)現(xiàn)輿情熱點,掌握負面和輿論動向,為上萬客戶提供精準的輿情分析服務。

參考資料:

來源:百分點

分享到

xiesc

相關(guān)推薦