尹杰,倪鵬銳
(阜陽工業經濟學校信息技術系,安徽阜陽 236032)
傳統網站分類方式效率低下且易出錯,快速且準確地識別出網站類型,有利于令查詢過程更為高效[1-2]。
Word2vec[3]無法區分多義詞,ELMO[4]和BERT[5]依據詞的上下文進行動態編碼。ERNIE2.0[6]提出多任務增量學習策略,有效捕獲詞匯、句法和語義信息。機器學習方法[7]需要構建特征工程,無法保證提取特征的準確性,不適合處理大規模的網站數據。文獻[8]針對專利文本分類任務,提出了BERTCNN 模型,CNN 僅能提取局部語義特征。文獻[9]提出了基于BERT-BiLSTM 的違法網站檢測模型,BiLSTM 模塊運算效率低,僅能捕獲文本的上下文語義。文獻[10]引入均勻詞向量卷積模塊,提出了基于BERT-AWC 的文本分類模型。文獻[11]將自注意力機制融入到BiGRU 和多粒度卷積神經網絡。CNN和LSTM 模塊無法聚焦于對網站類型識別結果影響較大的關鍵特征。
文中提出了基于ERNIE2.0-MCNN-BiSRU-AT的網站類型識別模型,利用ERNIE2.0 將網站文本向量化,解決靜態詞向量無法表示多義詞的問題;多特征融合網絡同時捕獲多個尺度下的文本局部語義和上下文序列融合特征;軟注意機制賦予模型識別關鍵特征的能力。
基于ERNIE2.0-MCNN-BiSRU-AT 的網站類型識別模型整體結構如圖1 所示,主要組成模塊有ERNIE2.0 預訓練模型、多特征融合網絡、軟注意力機制和線性分類層。

圖1 整體模型結構
其中,ERNIE2.0 負責提取網站文本的動態向量矩陣,將離散的文本轉化為機器可處理的數字形式;多特征融合網絡采用多個通道的結合CNN 和BiSRU模塊對網站文本進行語義特征學習,同時保留原始的上下文信息抽取的通道;對于每個通道輸出的分類特征,軟注意力機制計算每個特征對網站類型識別結果的關鍵程度,達到信息聚合的目的,避免無關特征影響識別結果。
ERNIE2.0 模型采用海量數據和相關先驗知識持續構建無監督預訓練任務,并在多個任務上進行增量學習,捕捉中文語料句子句法和語義方面的特征信息。ERNIE2.0 模型結構如圖2 所示。

圖2 ERNIE2.0模型結構
ERNIE2.0 模型結構主要由多層Transformer 編碼器構成,自注意力機制能夠提取句子內部詞與詞之間的依賴關系,獲取句子語法結構特征。Transformer 編碼器能夠捕獲每個token 在文本序列中的上下文信息,并生成上下文語境表征嵌入。對于給定的序列,其起始位置是預定義的分隔符[CLS];對于輸入為多段的任務,不同段之間用預定義的[SEP]分隔。
其中,Trans 表示Transformer 編碼器;E=(E1,E2,Ei,…,En)為模型輸入向量,Ei表示文本中的第i個詞的向量表示,由字向量、位置向量和分割向量相加而成。相關過程如圖3 所示。
經過編碼器訓練后得到符合上下文依賴的動態向量表示T=(T1,T2,Ti,…,Tn),Ti代表第i個詞的語義向量表示,作為多特征融合網絡的輸入向量。
多特征融合網絡主要組模塊為多尺度卷積網絡和雙向簡單循環單元,在多個尺度下捕獲文本詞和短語級別的上下文序列特征。多尺度卷積網絡通過設定不同大小的卷積核,提取多個尺度下網站文本局部語義特征,確保獲取特征的多樣性,為確保語義特征不丟失,不使用池化技術選取關鍵特征,具體卷積實現過程如圖4 所示。

圖4 卷積實現過程
相關計算過程如式(1)所示。
其中,w為卷積核;?表示卷積操作;m為窗口大小;Ti:i+m-1表示T中第i到i+m-1 行詞向量表示;f代表激活函數,為模型加入非線性因素,由于RELU 函數在訓練過程中容易出現神經元壞死現象,導致模型特征學習能力下降,從而影響訓練效果,文中采用性能更優的非線性激活函數Swish[12]。Swish 函數具備無上界有下界、平滑、非單調的特性,訓練過程中通過Swish 函數獲取固定分布,加速模型收斂和提升訓練效果。Swish 函數計算過程如式(2)所示。
其中,β為可訓練參數。通過多次操作滑動窗口得到局部特征向量C=(c1,c2,…,cn-m+1),設置卷積核組合大小為(2,3),得到特征向量C2和C3。
簡單循環單元[13](Simple Recurrent Unit,SRU)利用高速跳過連接和簡化狀態計算以提供更多的并行性,循環過程中當前狀態計算擺脫對上一個時間步輸出狀態的依賴,在任何維度和步驟中進行并行運算,提高了模型并行計算能力,訓練效率優于傳統LSTM[14]和GRU[15]模塊。相關計算過程如式(3)-(6)所示。
其中,符號*表示對應矩陣元素相乘;rt和ft分別代表重置門和遺忘門,負責控制當前步驟狀態信息流入下一步時間步驟的程度大小。由式(6)過程可知,ht的計算不再依賴ht-1,能在任何維度和步驟中并行化執行對應元素矩陣乘法。為捕獲網站文本完整語義特征,搭建雙向簡單循環單元(Bidirectional SRU,BiSRU),提取完整上下文序列特征提高語義特征捕捉的全面性[16]。Ht為前向和后向簡單循環單元在t時間步的狀態輸出和拼接結果,
將原始語義向量表示T和局部特征向量C2、C3分別輸入到不同通道的BiSRU,獲取BiSRU 模塊輸出的最后時間狀態HL,多個通道分別得到和,拼接組合成向量表示HL。相關計算過程如式(7)所示。
將多特征融合網絡輸出的序列特征向量HL輸入到軟注意力機制層,計算每個特征對網站類型識別結果的注意力得分,加權求和后得到整體注意力特征表示A。相關計算過程如式(8)-(10)所示。
將注意力特征表示A經線性層映射到分類空間,計算得到分類概率P,最后由Top 函數取得每行最大概率對應標簽為網站類型識別結果R,計算過程如式(11)-(12)所示。
由于目前沒有公開標注的網站類型識別標準數據集,為確保實驗結果的有效性,使用Scrapy 爬蟲框架獲取多個門戶社交平臺上的網站文本數據,對重復數據進行過濾后獲取原始網站樣本數據。原始樣本中存在較多的無任何語義的特殊字符,采用正則表達式進行清洗,僅保留含有語義的文字表述。經處理后得到標準樣本數量共16 000 條。采用人工標注的方式將數據樣本劃分為財經、娛樂、軍事、科技、健康、體育、教育和社會共8個類別,按照9∶1的比例隨機拆分為訓練集和驗證集,數據集詳情如表1 所示。

表1 數據集詳情
為驗證文中模型ERNIE2.0-MCNN-BiSRU-AT在網站類型識別任務上的有效性,采用準確率(Accuracy)、精確率(Precision)、召回率(Recall)和F1值作為模型評估指標,F1 值為準確率和召回率的整體評價指標,更能反映出模型的綜合性能。
實驗環境采用Linux 服務器,顯卡型號為GTX3090,顯存大小為24 GB;使用深度學習框架Pytorch1.7.1 進行模型編寫和訓練,采用第三方庫如Numpy 等計算模型性能指標和進行文本數據預處理。
模型參數設置如下:BiSRU 模塊隱藏層大小為256,層數為2;卷積模塊中卷積核大小為(2,3),特征圖數量均為128;軟注意力層維度512;損失函數為多分類交叉熵損失函數;序列截斷長度為150;批處理大小為32,學習率為1×10-5;訓練輪次為6;采用RAdam[17]動態調整學習率大小,加快訓練收斂速度和提高模型訓練效果。
為驗證文中模型在網站類型識別任務上的有效性,采用近期性能較優秀的深度學習模型BERTCNN、BERT-BiLSTM、BERT-AWC 和BiGRU-ATCNN 進行實驗對比;并設置大量消融實驗以驗證每個模塊對性能的貢獻程度。為降低隨機數影響模型性能,固定隨機數種子,采用10 次冷啟動實驗結果的平均值作為最終結果。
模型實驗評估指標如表2 所示。由表2 可得,ERNIE2.0-MCNN-BiSRU-AT模型F1值達到了95.67%,較BERT-CNN、BERT-BiLSTM、BERT-AWC和BiGRU-AT-CNN 模型分別提高了4.52%、4.24%、3.4%和3.34%,證明了ERNIE2.0 模型、多特征融合網絡和軟注意力機制三者結合的有效性,能夠提升網站類型識別性能。

表2 模型實驗結果
為驗證ERNIE2.0 提取文本動態向量表示的有效性,采用Word2vec、ELMO 和BERT 詞向量模型進行實驗對比,由表2 結果可知,ERNIE2.0 用作詞嵌入層時,模型F1值最高,達到了94.23%,證明了ERNIE2.0能夠融合領域知識動態調整向量表征,解決一詞多義問題,提升詞的表征能力。Word2vec 模型訓練過程缺乏位置信息,每個詞由唯一向量表示,無法依據具體上下文語境進行動態學習,因此分類效果較差。
為驗證軟注意力的有效性,設置ERNIE2.0-MCNN-BiSRU 與ERNIE2.0-MCNN-BiSRU-AT進行實驗對比,結果表明加入軟注意力機制模塊AT 后,模型F1 值提高了1.44%,軟注意力通過計算每個特征對網站類型識別結果的注意力得分,賦予關鍵特征更高權重,加權求和后得到注意力表征,以達到信息篩選的目的,提升模型分類性能。
模型ERNIE2.0-MCNN-BiSRU-AT 和ERNIE 2.0-MCNN-BiLSTM-AT 每個輪次訓練時間結果如圖5 所示。由圖5 結果可知,ERNIE2.0-MCNNBiSRU-AT 模型訓練耗時均低于ERNIE2.0-MCNNBiLSTM-AT,說明了BiSRU 模塊通過高速跳過連接和狀態計算獨立化改進,提高了并行運算速度,訓練效率優于BiLSTM 模型,同時維持高效的序列建模能力。

圖5 模型訓練時間
綜上所述,ERNIE2.0-MCNN-BiSRU-AT 模型能有效識別出網站類型,是解決海量網站類型分類問題的實用方法。
針對網站類型識別任務,提出了基于ERNIE2.0-MCNN-BiSRU-AT 的網站類型識別模型。利用預訓練模型ERNIE2.0 提取網站文本的動態向量表示,解決了一詞多義問題,效果優于實驗對比的其他詞向量模型;多特征融合網絡同時捕獲文本局部語義特征和上下文序列特征,確保獲取特征的全面性,軟注意力機制賦予模型識別關鍵特征的能力。在網站文本類型識別數據集上進行實驗,識別效果優于實驗對比模型,證明了文中模型的有效性。在未來的研究將考慮使用圖片和視頻等其他模態信息,基于多模態進行網站類型識別,進一步提升識別精度。