張莉, 王穎, 趙陽, 崔涵翔, 劉娟
(1.國家電網(wǎng)有限公司客戶服務(wù)中心, 天津 300306; 2.北京中電普華信息技術(shù)有限公司, 北京 100031)
電力客服系統(tǒng)是供電企業(yè)與電力客戶之間的重要紐帶,用戶投訴成了該系統(tǒng)亟待解決的核心挑戰(zhàn)。用戶在用電過程中提出的投訴內(nèi)容對于提升用戶體驗(yàn)和保障電力系統(tǒng)運(yùn)行質(zhì)量十分重要。目前,對于電力投訴工單數(shù)據(jù)的分析方法主要由專業(yè)人員對大量的電力投訴工單進(jìn)行人工數(shù)據(jù)分析。這種人工分析方法在分析大量的投訴工單時存在效率不足和主觀偏差的問題[1]。因此,需要提出一種基于人工智能技術(shù)的電力投訴工單分析模型,以自動、高效和準(zhǔn)確地對投訴工單進(jìn)行分類。
工單分類問題是文本分類問題的分支。近年來,文本分類問題得到了許多研究人員的關(guān)注[2]。周慶平等[3]提出了基于采用K最鄰近(KNN)的文本分類算法,使用改進(jìn)統(tǒng)計量方法對文本特征進(jìn)行聚類分析。周源等[4]提出一種改進(jìn)的TF-IDF(Term Frequency-Inverse Document Frequency)文本特征提取方法來解決文本結(jié)構(gòu)信息忽略和特征詞分布的問題。廖列法等[5]提出一種基于LDA(Latent Dirichlet Allocation)的文本分類模型,利用LDA模型對文本語料庫建模來達(dá)到分類的目的。陳海紅[6]提出基于多核支持向量機(jī)(SVM)的文本分類方法進(jìn)行文本特征提取。以上基于淺層機(jī)器學(xué)習(xí)的文本分類方法雖然有訓(xùn)練快速的優(yōu)點(diǎn),但在面對長文本分析時,淺層機(jī)器學(xué)習(xí)模型往往欠缺特征學(xué)習(xí)能力和泛化能力。
為了解決淺層學(xué)習(xí)模型的限制問題,目前研究中廣泛關(guān)注了深度學(xué)習(xí)模型,包括卷積神經(jīng)網(wǎng)絡(luò)(CNN)和長短時記憶網(wǎng)絡(luò)(LSTM)實(shí)現(xiàn)文本分類成了研究熱點(diǎn)。張?jiān)葡璧萚7]提出了基于LSTM的電網(wǎng)文本信息的分類模型。李洋等[8]提出了基于CNN和雙向長短時記憶網(wǎng)絡(luò)(BiLSTM)融合的文本分類模型,利用CNN提取文本信息再利用BiLSTM學(xué)習(xí)文本間的上下文關(guān)聯(lián)。雖然基于深度學(xué)習(xí)模型的文本分類模型取得了優(yōu)于淺層機(jī)器學(xué)習(xí)模型的性能,但對于長文本的分析仍是文本分類的難點(diǎn)。因此,本文提出了一種分級信息融合的電力投訴工單分類模型,來提升工單中長文本的分析能力。該模型首先利用BiLSTM來學(xué)習(xí)單詞間的依賴關(guān)系,同時運(yùn)用TextCNN學(xué)習(xí)句子間的相互關(guān)聯(lián),再將各級學(xué)習(xí)到的特征利用MLP實(shí)現(xiàn)特征層融合,最終得到電力投訴工單的分類結(jié)果。
文本的稀疏編碼可以將眾多的單詞映射到一個共享的空間,但當(dāng)詞匯庫中的單詞類別眾多時,會出現(xiàn)“維數(shù)災(zāi)難”的問題。為了應(yīng)對這一挑戰(zhàn),BOJANOWSKI等[9]提出了Word2vec框架用于對單詞進(jìn)行編碼,如圖1所示。Word2vec不僅是一種有效的降維方法,有助于避免“維數(shù)災(zāi)難”問題,而且由于考慮了單詞之間的上下文關(guān)聯(lián),還能夠減輕語義鴻溝帶來的問題。

圖1 Word2vec詞嵌入方法
TextCNN是由KIM[10]在2014年提出并應(yīng)用至文本分類任務(wù)的。TextCNN的網(wǎng)絡(luò)結(jié)構(gòu)模型如圖2所示。TextCNN通過不同大小的一維卷積核對輸入矩陣進(jìn)行不同尺度的語義學(xué)習(xí)。首先在輸入數(shù)據(jù)的每個維度上進(jìn)行不同尺度的一維卷積運(yùn)算,得到不同尺度的特征圖。對特征圖進(jìn)行第一次池化得到特征的向量表示以達(dá)到信息壓縮的目的。接下來再對得到的所有向量再進(jìn)行一次池化,并拼接得到包含所有尺度特征的一維特征向量。將得到的特征向量輸入到輸出層,得到當(dāng)前句子的分類結(jié)果。

圖2 TextCNN的網(wǎng)絡(luò)結(jié)構(gòu)模型
在文本分類任務(wù)中,文本的上下文關(guān)聯(lián)信息對于分類結(jié)果起著至關(guān)重要的作用[11]。因此,廣泛應(yīng)用了能夠?qū)W習(xí)雙向語義相關(guān)信息的雙向長短時記憶網(wǎng)絡(luò)(BiLSTM)在文本語義識別中[12]。BiLSTM的輸入門Gi、遺忘門Gf、輸出門Go、記憶細(xì)胞更新、t時間步的輸出可被表示為
Gi=σ(WiYt-1+UiXt+bi)
(1)
Gf=σ(WfYt-1+UfXt+bf)
(2)
Go=σ(WoYt-1+UoXt+bo)
(3)
C′=tanh(WcYt-1+UcXt+bc)
(4)
Ct=Gf×Ct-1+Gi×C′
(5)
Yt=Go×tanh(Ct)
(6)
其中,σ(·)表示Sigmoid激活函數(shù),Wi、Wf、Wo分別對應(yīng)每個門的權(quán)重,tanh(·)表示tanh激活函數(shù),Yt-1表示(t-1)時間步的輸出,Xt表示t時間步的輸入,Wi、Wf、Wo分別對應(yīng)前一個時刻輸出到每個門的權(quán)重,Ui、Uf、Uo分別對應(yīng)當(dāng)前時刻輸入到每個門的權(quán)重,bi、bf、bo分別為每個門的偏置項(xiàng),Xt表示t時間步的輸入,C′表示狀態(tài)變量,Ct-1表示(t-1)時間步的記憶細(xì)胞,Ct表示t時間步的記憶細(xì)胞。BiLSTM將文本序列兩個方向的最后一個時間步的輸出Yleft和Yright進(jìn)行拼接,并進(jìn)行最后的輸出預(yù)測Y。
Y=Softmax(concatenate(Yleft,Yright))
(7)
其中,concatenate(·)表示拼接2個輸出Yleft和Yright,Softmax(·)表示激活函數(shù)Softmax。

本文網(wǎng)絡(luò)結(jié)構(gòu)在CPU Intel Core i7-9700F和GPU NIVIDA GTX1060的平臺上運(yùn)行程序。數(shù)據(jù)集是從電網(wǎng)客服中心的記錄中獲取的,包含了3萬個投訴工單樣本。這些工單記錄了客戶對電網(wǎng)的反饋信息,共分為5類:服務(wù)投訴(C1)、營業(yè)投訴(C2)、停送電投訴(C3)、供電質(zhì)量投訴(C4)和電網(wǎng)建設(shè)意見(C5)。在數(shù)據(jù)準(zhǔn)備階段,已經(jīng)進(jìn)行了句子分割、數(shù)據(jù)清洗等預(yù)處理操作。最后,將整個數(shù)據(jù)集劃分成了訓(xùn)練集和測試集,比例為9∶1,以便進(jìn)行模型的訓(xùn)練和評估。
Word2vec詞嵌入算法的隱含層神經(jīng)元個數(shù)設(shè)置為200,詞向量的維度設(shè)置為100。TextCNN的卷積核大小分別3×1、4×1和5×1,每一種卷積核的數(shù)量為100。BiLSTM隱含層為2,每層的神經(jīng)元個數(shù)分別64和32。損失函數(shù)為交叉熵函數(shù),優(yōu)化算法選取adam,學(xué)習(xí)率為0.001,隨機(jī)失活率設(shè)計為0.3,迭代次數(shù)設(shè)置為100,批訓(xùn)練樣本數(shù)量為64。
根據(jù)表1可知,本文提出的分級信息融合模型在測試集上對5類工單分類表現(xiàn)出了良好的性能。平均正確率達(dá)到0.922,宏-F1分?jǐn)?shù)為0.930,這表明該模型能夠相對準(zhǔn)確地對投訴工單數(shù)據(jù)進(jìn)行分類。此外,對于停送電投訴(C3)的分類正確率最高,達(dá)到0.960,顯示出了在該類別上的出色性能。然而,對于營業(yè)投訴(C2)的分類正確率最低,僅為0.884。這可能是因?yàn)槲谋緝?nèi)容的復(fù)雜性和相似性,而造成一些舉報被誤分類為服務(wù)投訴(C1)或供電質(zhì)量投訴(C4)等其他類別中。為了進(jìn)一步提高對營業(yè)投訴的分類性能,可以考慮進(jìn)一步優(yōu)化模型或者增加更多的特征工程。

表1 分級信息融合模型的工單分類結(jié)果
在比較實(shí)驗(yàn)中,將本文提出的模型與TextCNN、BiLSTM和深度置信網(wǎng)絡(luò)(DBN)等模型在分類性能上進(jìn)行比較,根據(jù)表2可以看出,本文提出的分級信息融合模型在分類性能上表現(xiàn)出了明顯的優(yōu)勢。相對于其他3個模型,該模型分別提升了1.9%、5.3%和13.5%。這個顯著的性能提升可能是由于本文所提出的模型綜合運(yùn)用了多個策略,包括使用TextCNN有效地學(xué)習(xí)語句級的語義信息,使用BiLSTM對單詞級的上下文關(guān)聯(lián)進(jìn)行了有效的學(xué)習(xí),最后應(yīng)用MLP實(shí)現(xiàn)了多級信息融合。這些策略的組合提高了對投訴工單的分類性能,使得模型在這項(xiàng)任務(wù)上表現(xiàn)出色。

表2 不同網(wǎng)絡(luò)模型的性能比較
本文對電力投訴工單數(shù)據(jù)的分類進(jìn)行了研究,針對投訴工單數(shù)據(jù)中的長文本提出了分級信息融合模型,有針對性地學(xué)習(xí)了單詞級和語句級的語義特征并進(jìn)行了分級信息的融合。首先通過Word2vec得到詞向量和語義矩陣,再通過TextCNN學(xué)習(xí)語句級的語義特征,同時應(yīng)用BiLSTM學(xué)習(xí)單詞間的上下文關(guān)聯(lián),將語句級和單詞級的深度特征進(jìn)行特征層融合,最終輸入至多層感知機(jī),得到投訴工單的預(yù)測結(jié)果。