趙 偉,鄧葉勛,趙建強(qiáng),3*,李文瑞,韓 冰,歐榮安
(1.廣州市刑事科學(xué)技術(shù)研究所,廣東 廣州 510030;2.廈門市美亞柏科信息股份有限公司,福建 廈門 361008;3.西安電子科技大學(xué),陜西 西安 710071)
隨著互聯(lián)網(wǎng),特別是移動(dòng)互聯(lián)網(wǎng)的快速普及和移動(dòng)智能終端的快速發(fā)展,互聯(lián)網(wǎng)用戶持續(xù)增長,人們習(xí)慣于通過互聯(lián)網(wǎng)獲取信息、發(fā)表觀點(diǎn),進(jìn)行社會(huì)交往、網(wǎng)絡(luò)購物等。與此同時(shí),網(wǎng)絡(luò)也成為各類廣告推廣的重要媒介,各類廣告文本數(shù)據(jù)夾雜充斥在各類網(wǎng)絡(luò)平臺(tái)中。然而,由于廣告監(jiān)管、法律法規(guī)和從業(yè)人員素質(zhì)問題,虛假違法廣告在門戶網(wǎng)站、移動(dòng)客戶端和新媒體賬戶等互聯(lián)網(wǎng)媒介中屢禁不止[1],嚴(yán)重污染網(wǎng)絡(luò)空間,危害人民群眾財(cái)產(chǎn)安全。要在海量互聯(lián)網(wǎng)數(shù)據(jù)中及時(shí)發(fā)現(xiàn)識(shí)別各類違規(guī)廣告信息,及時(shí)管控處理,是網(wǎng)絡(luò)監(jiān)管部門面臨的技術(shù)挑戰(zhàn)。面對海量互聯(lián)網(wǎng)數(shù)據(jù)中的廣告文本識(shí)別,必須充分發(fā)揮人工智能技術(shù)的優(yōu)勢,利用自然語言處理技術(shù),結(jié)合文本語義分析技術(shù),自動(dòng)高效識(shí)別違規(guī)文本廣告內(nèi)容,為有效打擊網(wǎng)絡(luò)廣告犯罪行為,營造良好的互聯(lián)網(wǎng)廣告秩序提供有力技術(shù)支撐。
文本分類技術(shù)是自然語言處理研究中應(yīng)用最廣泛的研究方向。針對文本類廣告識(shí)別,早期方法主要是基于白名單與黑名單、規(guī)則過濾等技術(shù)[2]。張知臨等人[3]使用黑白名單的方法識(shí)別網(wǎng)絡(luò)文本廣告,黑名單存儲(chǔ)網(wǎng)絡(luò)違規(guī)廣告網(wǎng)站的網(wǎng)站名稱、禁用詞等預(yù)定義字段,該方法在特定領(lǐng)域下準(zhǔn)確率高,速度快,但缺點(diǎn)也明顯,靈活性差,嚴(yán)重受限黑名單質(zhì)量,對黑名單之外的廣告無法有效識(shí)別。郭慧芳等人[4]提出構(gòu)建違規(guī)詞匯庫的關(guān)鍵字匹配方法進(jìn)行網(wǎng)絡(luò)文本廣告識(shí)別,該方法簡單、高效,使用廣泛。
近年來,利用機(jī)器學(xué)習(xí)方法進(jìn)行文本分類的思路也應(yīng)用到文本廣告分析中。如樸素貝葉斯[5]、支持向量機(jī)[6]和K-近鄰算法[7]等統(tǒng)計(jì)方法在文本分類中都有良好的表現(xiàn)。林雪等人[8]提出基于語義特征的文本過濾方法,在此基礎(chǔ)上進(jìn)行機(jī)器學(xué)習(xí)建模,取得了較好的效果。但基于傳統(tǒng)機(jī)器學(xué)習(xí)的方法,必須依賴人工構(gòu)建廣告文本的特征工程,建模過程費(fèi)時(shí)費(fèi)力,判別準(zhǔn)確性也存在上限,并不能滿足特定環(huán)境下的分類要求。隨著神經(jīng)網(wǎng)絡(luò)技術(shù)的發(fā)展,涌現(xiàn)出一批利用深度神經(jīng)網(wǎng)絡(luò)處理文本分類任務(wù)的研究。Kim等人[9]采用預(yù)訓(xùn)練詞向量,使用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行文本分類,取得了很好的效果。Bojanowski等人[10]提出一種快速文本分類器fastText模型,模型簡單高效同時(shí)也具有較強(qiáng)的特征學(xué)習(xí)能力。Miyamoto等人[11]提出利用LSTM(long short-term memory)網(wǎng)絡(luò)的記憶能力且適合處理序列數(shù)據(jù)的特點(diǎn),通過構(gòu)建混合模型進(jìn)行文本分類,效果顯著。
自然語言分析處理任務(wù)中,文本的表示方法影響到文本語義的表示和文本特征的抽取。因此,針對文本詞和字的表示方法,研究者提出了不同的預(yù)訓(xùn)練語言模型。一種預(yù)訓(xùn)練語言模型是基于上下文詞嵌入方式,如Word2vec[12]、GloVe[13]、CoVe[14]和ELMo[15],詞嵌入表征被用做主任務(wù)的附加特征使用。另一種預(yù)訓(xùn)練模型是基于句子級嵌入,Howard等人[16]提出一種通用域語言模型ULMFiT,能夠?qū)崿F(xiàn)像計(jì)算機(jī)視覺領(lǐng)域的遷移學(xué)習(xí)方式,并用于任意NLP任務(wù)。使用大量未標(biāo)記數(shù)據(jù)進(jìn)行無監(jiān)督預(yù)訓(xùn)練獲取的語言模型在學(xué)習(xí)通用語言表征方面性能出色,如預(yù)訓(xùn)練模型OpenAI-GPT[17](generative pre-training)和Bert[18]。Bert是具有雙向Transformer[19]結(jié)構(gòu)的編碼器,使用掩膜語言(masked LM)模型和鄰句預(yù)測(next sentence prediction)兩種方法捕捉字符級和句子級別特征。在GLUE排行榜中,Bert刷新了11項(xiàng)NLP任務(wù)新紀(jì)錄,自然語言處理自此也進(jìn)入了預(yù)訓(xùn)練模型大規(guī)模應(yīng)用新階段。
在深入研究社交語料中廣告文本的特點(diǎn)規(guī)律基礎(chǔ)上,利用深度神經(jīng)網(wǎng)絡(luò)的強(qiáng)大特征表示能力,充分利用預(yù)訓(xùn)練語言模型的優(yōu)勢,提出一種基于語義強(qiáng)化的廣告文本識(shí)別方法CARES(Chinese text recognition based on enhanced semantic)。主要?jiǎng)?chuàng)新為:
(1)融合使用字符級和詞匯級不同層次語義表征,更全面實(shí)現(xiàn)廣告文本特征的表示;
(2)利用Bert模型高層特征包含更豐富的語義信息,使用卷積網(wǎng)絡(luò)對高層特征篩選,獲取文本中更加突出的高維特征;
(3)利用LSTM網(wǎng)絡(luò)提取句子中的關(guān)鍵語義信息,采用注意力機(jī)制強(qiáng)化句子詞匯級特征,減小無關(guān)噪聲干擾,提升模型分類的精度。
文本預(yù)處理能有效避免無效特殊符號、非法字符等對分類結(jié)果的影響。本模型文本輸入前預(yù)處理操作包括:
(1)文本清洗:清除待分析文本中包含的各類缺失值、空白、特殊符號和非法字符。
(2)去停用詞:停用詞指的是諸如代詞、介詞、連接詞等不包含或包含極少語義的詞,一般在文本中多次出現(xiàn),但實(shí)際語義價(jià)值不大。文本預(yù)處理利用停用詞表過濾去除掉文本中包含的各類停用詞。
(3)變形詞替換:在廣告文本中由于表達(dá)的多元化和多樣化,各類變形詞頻繁出現(xiàn),增加了廣告識(shí)別的難度。該文采用特殊符號替換和同音近型替換的策略,替換掉待分析文本中各類同音異形等變形詞。
該文提出的基于強(qiáng)化語義的中文廣告文本識(shí)別模型結(jié)構(gòu)如圖1所示,基于深度神經(jīng)網(wǎng)絡(luò)架構(gòu)的模型主要包括輸入層、特征抽取層、特征融合層、輸出層。
2.2.1 輸入層
輸入層接收廣告文本輸入,并對文本數(shù)據(jù)集做預(yù)處理,劃分成字符級和詞匯級粒度單元,供特征抽取層提取特征。
2.2.2 特征抽取層
該層包括字符級特征抽取和詞匯級特征抽取兩個(gè)模塊。Word2vec能夠?qū)⒃~匯映射到低維、稠密向量,表示詞語的一個(gè)潛在特征,捕獲有價(jià)值的句法和語義特性,但是詞和向量是一對一的靜態(tài)關(guān)系,無法解決一詞多義問題。Bert結(jié)構(gòu)相比以Word2vec為代表的嵌入表征方法,最突出的特性是可以動(dòng)態(tài)建模一詞多義現(xiàn)象。因此,在特征抽取層中同時(shí)采用Bert進(jìn)行字符級特征表示,有效彌補(bǔ)Word2vec表示的不足。
2.2.2.1 字符級特征抽取
基于預(yù)訓(xùn)練Bert實(shí)現(xiàn)特征抽取,使用CNN模型進(jìn)一步對特征做高層抽象。
Bert由雙向Transformer組件構(gòu)成,以字符序列作為輸入,整個(gè)語義信息會(huì)在堆棧中不斷由底層向上流動(dòng),通過聯(lián)合調(diào)節(jié)所有層中的上下文來預(yù)先訓(xùn)練深度雙向表示。經(jīng)大規(guī)模語料預(yù)訓(xùn)練后的Bert可以通過外接一個(gè)額外的輸出層進(jìn)行微調(diào),適用于廣泛任務(wù)的模型構(gòu)建,無需針對具體任務(wù)做大幅度架構(gòu)調(diào)整。Google開源了兩種不同規(guī)模Bert模型,該文選用基礎(chǔ)版Bert_BASE作為廣告文本分類任務(wù)的微調(diào)模型進(jìn)行改進(jìn)優(yōu)化。
圖1 文本分類模型
將模型輸入文本定義為x,表示具有m個(gè)字符長度的文本序列:
x={[CLS],x1,…,xm,[SEP]}
(1)
在Bert中,將序列第一個(gè)token作為句子級分類嵌入特征,使用[CLS]標(biāo)識(shí),對應(yīng)的最終隱藏狀態(tài)則被用于分類,而對于非分類任務(wù)則忽略該部分。同時(shí),為能夠?qū)⒕渥哟虬瑟?dú)立序列,使用標(biāo)識(shí)符[SEP]用于區(qū)分。當(dāng)前任務(wù)中均以單句作為輸入,并不判定前后句的相關(guān)性,因此在序列x中均以[SEP]結(jié)尾。
獲取文本的上下文表征b∈d:
b=BERT(x)
(2)
其中,d是Bert模型分類標(biāo)志位[CLS]的特征維度。
Bert中每一層Transformer的輸出都能夠被選取為有效特征供下一級表征器使用,該文選取Bert最后三層Layer12、Layer11、Layer10的內(nèi)部隱藏層第一狀態(tài)位作為卷積網(wǎng)絡(luò)的輸入矩陣:N∈3×d,其中,d是隱藏層狀態(tài)維度。選取16個(gè)濾波器Filter,大小為3×4,步長為1,對矩陣M在對應(yīng)維度方向上做卷積操作,用以提取狀態(tài)位的3-Gram特征,通過卷積操作后便可得到16個(gè)特征向量。為對特征進(jìn)一步提取,降低計(jì)算的復(fù)雜度,最后使用max-pooling方式進(jìn)行池化,即可得到高層卷積結(jié)果特征c∈p:
c=Conve2D(N)
(3)
其中,p是卷積網(wǎng)絡(luò)輸出的特征維度,此處為16。
2.2.2.2 詞匯級特征抽取
基于LSTM網(wǎng)絡(luò)提取全局語義,采用Attention機(jī)制對語義做特征強(qiáng)化。使用開源工具Word2vec獲取文本詞向量表示,通過查表操作對本任務(wù)中的詞做初始化,而未出現(xiàn)詞匯選取[-0.1,0.1]的區(qū)間做隨機(jī)初始化。
設(shè)文本經(jīng)預(yù)處理后的長度為n,得到詞匯級文本序列w:
w={w1,w2,…,xn}
(4)
經(jīng)過分布式表示模型生成的詞向量表示v:
v={v1,v2,…,vn}
(5)
使用LSTM網(wǎng)絡(luò)從上下文中挖掘隱含狀態(tài)特征。
H={h1,h2,…,hn},其中h∈q表示詞匯級隱含特征向量,維度為q,GRU單元在t時(shí)刻更新過程如下:
vt=σ(Wrvt+Urht-1+br)
(6)
zt=σ(Wzvt+Uzht-1+bz)
(7)
hc=tanh(Whvt+Uh(rt·ht-1)+bh)
(8)
ht=(1-zt)·ht-1+zt·hc
(9)
其中,σ為激活函數(shù),Wr、Wz、Wh、Ur、Uz、Uh為權(quán)重矩陣,br、bz、bh為偏置值,·表示向量點(diǎn)積運(yùn)算。ht為t時(shí)刻GRU單元的輸出。為了充分利用上下文信息,使用雙向特征作為最終的LSTM結(jié)構(gòu)輸出:
(10)
(11)
(12)
其中,⊕表示前向和后向輸出的對應(yīng)元素相加操作。
之后,將Attention機(jī)制用于動(dòng)態(tài)捕獲與特定文本類別相關(guān)的詞匯信息:
M=tanh(L)
(13)
α=softmax(wTM)
(14)
r=LαT
(15)
其中,L∈q×n,w是參數(shù)向量,由不同時(shí)間序列ht構(gòu)成,α是注意力權(quán)重分布,r表示詞匯級增強(qiáng)特征表示向量。
2.2.3 特征融合層
該文采用Early Fusion特征拼接策略,對全局特征、高層特征和強(qiáng)化特征進(jìn)行特征融合,待拼接特征包括3個(gè)模塊:
Bert模型全局特征:b;
CNN網(wǎng)絡(luò)抽取的高層特征:c;
Attention機(jī)制的強(qiáng)化LSTM特征:r。
融合特征f∈d+p+q:
f=[b;c;r]
(16)
2.2.4 輸出層
(17)
其中,W∈C×(d+p+q)表示非線性變換權(quán)重矩陣,b∈C表示非線性變換的偏移量,C表示文本類別數(shù)。經(jīng)softmax歸一化后,使用argmax計(jì)算概率值最大的文本類別標(biāo)簽。
該文研究的問題在國內(nèi)目前沒有找到公開的數(shù)據(jù)集,所以,基于已有研發(fā)項(xiàng)目從微博、微信及QQ等社交平臺(tái)上收集各類聊天短文本和社交短文本數(shù)據(jù),經(jīng)過團(tuán)隊(duì)人工標(biāo)注最終形成46 000條中文社交短文本樣本,采用分層抽樣劃分訓(xùn)練集和測試集,數(shù)據(jù)樣本分布如表1所示。
表1 廣告數(shù)據(jù)集樣本分布
數(shù)據(jù)集樣本類別示例如圖2所示。
圖2 廣告數(shù)據(jù)集樣本示例
為充分驗(yàn)證提出的識(shí)別方法的有效性,選擇廣泛應(yīng)用于文本分類的深度學(xué)習(xí)算法作為基準(zhǔn)模型:
(1)參考文獻(xiàn)[11]提出的WcLSTM循環(huán)神經(jīng)網(wǎng)絡(luò)分類模型;
(2)參考文獻(xiàn)[9]提出的TextCNN卷積神經(jīng)網(wǎng)絡(luò)分類模型;
(3)基于Bert基線的Bert-BASE文本分類模型;
(4)采用該文提出的CARES文本分類模型。
實(shí)驗(yàn)算法采用Tensorflow1.15框架實(shí)現(xiàn),硬件執(zhí)行環(huán)境配置為:Intel(R) Xeon(R) CPU E5-2677W v4 @3.00GHz處理器、128 GB內(nèi)存、64位Ubuntu16.04操作系統(tǒng)、NVIDIA GTX1080顯卡。
在WC-LSTM和TextCNN基線系統(tǒng)中,使用jieba工具對文本進(jìn)行分詞,映射成300維的Word2vec詞向量[12],最大文本長度120個(gè)詞,batch size大小維64,epoch大小8,學(xué)習(xí)率1e-5。Bert-BASE系統(tǒng)中使用chinese_L-12_H-768_A-12,最大文本長度512個(gè)字符,batch size大小5,epoch大小10,學(xué)習(xí)率5e-5。
3.4.1 對比實(shí)驗(yàn)
實(shí)驗(yàn)結(jié)果是多次實(shí)驗(yàn)數(shù)據(jù)的平均值,不同模型在測試數(shù)據(jù)集上的表現(xiàn)如表2所示。
表2 實(shí)驗(yàn)結(jié)果 %
從表2中發(fā)現(xiàn),與基線模型相比較,CARES模型在4項(xiàng)指標(biāo)中都取得了最好的成績。其中,與WcLSTM相比在準(zhǔn)確率、召回率、精度和F1值上分別提升2.12%、2.07%、2.23%、1.54%,提升最多,這表明Bert模型的微調(diào)能更豐富地表示文本語義關(guān)系,注意力機(jī)制能夠?qū)ξ谋菊Z義起到強(qiáng)化作用,有助于提升文本分類性能。與Bert-BASE相比,CARES模型在四項(xiàng)指標(biāo)上分別提升了0.63%,0.53%,0.69%,0.61%,表明字符級語義、詞匯級語義能從不同層次表現(xiàn)廣告文本的語義特點(diǎn),特征融合后具有更豐富的語義特性。
從表2發(fā)現(xiàn),以Bert為基礎(chǔ)的文本分類模型各項(xiàng)指標(biāo)都超過97%,說明Bert相比傳統(tǒng)的特征表征器能更好地表示短文本語義信息,在中文短文本分類問題上有很好的分析能力。比較TextCNN,CARES和WcLSTM網(wǎng)絡(luò),發(fā)現(xiàn)TextCNN模型的分類效果不及CARES模型,但好于WcLSTM模型,這說明卷積神經(jīng)網(wǎng)絡(luò)的特征抽取能力優(yōu)勢明顯,進(jìn)一步證明該文對Bert高層語義特征抽取的合理性和必要性。
3.4.2 實(shí)驗(yàn)分析
提出的CARES融合模型在準(zhǔn)確率、精準(zhǔn)度、召回率和F1值均優(yōu)于基準(zhǔn)文本分類模型,主要是因?yàn)椋?/p>
(1)在循環(huán)神經(jīng)網(wǎng)絡(luò)中,LSTM對文本向量處理的局限性在于以鏈狀結(jié)構(gòu)組成陣列時(shí),對短文本的深層特征挖掘能力不夠強(qiáng)。Bert模型以Transformer為組件,以多頭注意力機(jī)制的轉(zhuǎn)換器作為基礎(chǔ),天生具備處理短文本優(yōu)勢,而廣告數(shù)據(jù)多以短文本的形式出現(xiàn)。因此,Transformer抽取器能夠捕獲各種復(fù)雜的語義交互信息,能從不同角度關(guān)注到句子中的依賴關(guān)系。
(2)在卷積網(wǎng)絡(luò)模型中,CNN主要用于語言特征抽取,受到卷積核數(shù)量和長度的限制,對語境的特征抽取能力不及Transformer豐富和完整。此外,CNN全局池化操作會(huì)丟失部分結(jié)構(gòu)信息,很難發(fā)現(xiàn)文本中的轉(zhuǎn)折關(guān)系等復(fù)雜模式,導(dǎo)致模型無法表達(dá)文本上下文更深刻的語義。
(3)Bert中每一層Transformer的輸出都可以作為句子或文檔特征向量為其他模塊提供輸入,很大程度會(huì)影響模型的精度。在結(jié)構(gòu)設(shè)計(jì)上,該文依托Bert優(yōu)勢,使用卷積網(wǎng)絡(luò)對其最后3層特征進(jìn)一步做抽取,采用Attention機(jī)制對語義做特征強(qiáng)化,融合全局特征、高層特征和強(qiáng)化特征實(shí)現(xiàn)廣告文本分類,能有效捕捉文本不同層級、不同維度的重要特征,有效提升廣告文本的識(shí)別性能。
互聯(lián)網(wǎng)廣告文本的智能發(fā)現(xiàn)識(shí)別是實(shí)現(xiàn)廣告合法合規(guī)監(jiān)測的關(guān)鍵技術(shù),模型不僅能甄別聊天內(nèi)容中各類惡意和垃圾廣告,還能夠降低虛假欺詐廣告帶來的安全風(fēng)險(xiǎn),對營造安全清朗的網(wǎng)絡(luò)環(huán)境意義重大。該文以互聯(lián)網(wǎng)社交平臺(tái)中的聊天文本數(shù)據(jù)為研究對象,利用預(yù)訓(xùn)練Bert模型,強(qiáng)化語義特征,融合多層次文本特征,有針對性地提出一種中文廣告文本識(shí)別的方法,在人工收集標(biāo)注的聊天文本數(shù)據(jù)集上,CARES方法獲得了97.73%的正確率,97.75%的F1值,對比基線方法,廣告識(shí)別分類性能達(dá)到最優(yōu)。
社交聊天文本中使用的短文本往往包含大量的噪聲數(shù)據(jù),如:不規(guī)則表示、錯(cuò)別字、同形字等,該文提出的方法沒有有效解決這些問題帶來的性能影響,在后續(xù)的研究中,將繼續(xù)探索優(yōu)化方案,讓模型進(jìn)一步具備噪音容忍的能力,進(jìn)一步提升識(shí)別性能。