鐘愛,梁小青,肖梅,向黎藜,段凱,李竹
(國網(wǎng)重慶市電力公司營銷服務(wù)中心,重慶 400000)
在大數(shù)據(jù)時代背景下[1],電力企業(yè)有資源更有能力利用先進(jìn)技術(shù)充分挖掘文本數(shù)據(jù)價值,推進(jìn)服務(wù)能力提升。電力企業(yè)在多年的客戶服務(wù)過程中已經(jīng)累積了大量的客戶文本等服務(wù)訴求數(shù)據(jù),主要為95598投訴意見工單數(shù)據(jù)[2],但是局限于目前人工分析的瓶頸,導(dǎo)致整體分析效率不高,無法全面及時地分析到位,分析深度不深,分析的廣度不夠,無法精準(zhǔn)快速定位用戶訴求熱點,同時對95598工單的分析也是零散且成效甚微的。在目前大數(shù)據(jù)技術(shù)高速發(fā)展的背景下,對于文本等非結(jié)構(gòu)化的數(shù)據(jù)已經(jīng)有了成熟的機(jī)器分析技術(shù),故已具備了相當(dāng)?shù)臈l件進(jìn)行基于文本的結(jié)構(gòu)化信息提取,并基于信息提取結(jié)果探索客戶訴求熱點及工單的深度分析,以有效提升分析效率,強化分析深度和廣度,訴求精準(zhǔn)管控,從而精準(zhǔn)定位風(fēng)險工單,達(dá)到投訴精準(zhǔn)管控的目的,達(dá)到服務(wù)及分析能力智能提升的目標(biāo)。
命名實體知識圖譜[3-7]是由投訴意見工單各業(yè)務(wù)關(guān)鍵點鏈接起來的結(jié)構(gòu)化信息提取架構(gòu)。通過對投訴意見工單進(jìn)行結(jié)構(gòu)化信息提取,可快速了解投訴用戶類型、用戶所在臺區(qū)線路等、所屬業(yè)務(wù)、投訴原因關(guān)鍵點等。
95598工單的信息結(jié)構(gòu)化提取具體提取什么信息需要根據(jù)實際業(yè)務(wù)情況進(jìn)行梳理,每個業(yè)務(wù)模塊需要關(guān)注的側(cè)重點都不相同,所以需要結(jié)合各業(yè)務(wù)口業(yè)務(wù)經(jīng)驗以及業(yè)務(wù)關(guān)注點對文本中的關(guān)鍵信息進(jìn)行梳理,本文主要針對頻繁停電、電壓質(zhì)量、業(yè)擴(kuò)報裝以及營業(yè)廳四個業(yè)務(wù)模塊的投訴意見工單進(jìn)行信息結(jié)構(gòu)化提取工作。通過梳理大量工單,結(jié)合業(yè)務(wù)專家的經(jīng)驗,設(shè)計基于業(yè)務(wù)主題的信息抽取框架,確定所需信息的結(jié)構(gòu)化字段。
目前線上數(shù)據(jù)主要來源于營銷業(yè)務(wù)系統(tǒng),主要包含如下:客戶檔案信息、95598投訴工單處理情況文本數(shù)據(jù)、歷史95598投訴工單處理情況文本數(shù)據(jù)、95598意見工單數(shù)據(jù)等。在業(yè)務(wù)看來投訴意見工單都表示用戶針對某一問題有投訴意向,需要深度挖掘,所以本次研究主要關(guān)注投訴意見工單兩種類型,在95598投訴意見工單中,包含文本信息最多且最需要花費人力的為受理內(nèi)容和處理內(nèi)容,所以文本結(jié)構(gòu)化信息的提取主要聚焦投訴意見工單的受理文本和處理文本。 針對本文模型訓(xùn)練緣故,需要工單的文本標(biāo)注數(shù)據(jù),主要來源于線下人工對工單處理情況的梳理數(shù)據(jù),此部分?jǐn)?shù)據(jù)僅作為模型訓(xùn)練使用,不影響系統(tǒng)運行與實施。
分詞的目的是將文本根據(jù)一定的規(guī)則進(jìn)行分詞處理,便于提取文本的特征值,為文本提供特征值對比的詞組。目前市面上有很對相對成熟的自動分詞包,如jieba,HanLP等,這些包都采用基于大規(guī)模訓(xùn)練語料的統(tǒng)計方法,本文主要采用jieba分詞包對文本進(jìn)行分詞處理。
去除余綴詞匯的工作是本文預(yù)處理中必不可少的,去出余綴詞匯之后可以有效減少詞匯噪音,更好的保留有效文本特征,獲得更好的文本特性,使得分類模型達(dá)到更高的精度。
①刪除標(biāo)點符號:標(biāo)點符號在文本中不具有任何語義表達(dá)作用,可歸類為額外信息,刪除標(biāo)點符號能有效減少文本數(shù)據(jù),提升模型訓(xùn)練性能。
②停用詞、稀缺詞去除:停用詞通常自身并無什么明確的意義,只有將其放入一個完整的句子中才有一定作用的詞匯。所以在進(jìn)行分詞之后,停用詞作為單獨的一個詞匯,并不能表達(dá)明確的意思,例如語氣助詞、副詞、介詞、連接詞等;本文主要采用百度停止詞匯表,并在其基礎(chǔ)上收集投訴工單中的介詞、問候語等詞匯創(chuàng)建停用詞庫,根據(jù)停用詞庫去除投訴文本中的相應(yīng)詞匯,達(dá)到清洗文本的目的。稀缺詞是指只存在于少數(shù)工單里的詞匯。低頻詞匯因其稀有性,對模型性能提升極其有限,可以替換稀缺詞為其他同義詞以提高詞頻,或者直接刪除以提升模型迭代效率。
③消歧轉(zhuǎn)換:95598投訴意見工單內(nèi)容有部分是音譯文本,因此文本描述中存在的一些同音的錯別字,需要對這些詞匯進(jìn)行消歧轉(zhuǎn)換,例如:對“陪產(chǎn)”,“賠長”等詞進(jìn)行消歧處理轉(zhuǎn)換,轉(zhuǎn)換為“賠償”。
④習(xí)慣用語去除:文本中類似“情況反映反映”、“客戶表示滿意”,是不同文本類別的通用文本,詞頻高但對于分類沒有幫助,應(yīng)當(dāng)去除以便提升模型迭代效率。
詞向量是自然語言處理中常見的一個操作,自然語言理解的問題要轉(zhuǎn)化為機(jī)器學(xué)習(xí)的問題,需要將文字符號內(nèi)容數(shù)字化,變成機(jī)器代碼可識別的內(nèi)容,本文主要采用TF-IDF的方式進(jìn)行詞向量化。
TF-IDF是一種統(tǒng)計方法,用以評估一字詞對于一個文件集或一個語料庫中的其中一份文件的重要程度。字詞的重要性隨著它在文件中出現(xiàn)的次數(shù)成正比增加,但同時會隨著它在語料庫中出現(xiàn)的頻率成反比下降。TF-IDF的主要思想是:如果某個單詞在一篇文章中出現(xiàn)的頻率TF高,并且在其他文章中很少出現(xiàn),則認(rèn)為此詞或者短語具有很好的類別區(qū)分能力,適合用來分類。
TF是詞頻:表示詞條(關(guān)鍵字)在文本中出現(xiàn)的頻率,這個數(shù)字通常會被歸一化(一般是詞頻除以文章總詞數(shù)), 以防止它偏向長的文件。
(1)
IDF是逆向文件頻率:某一特定詞語的IDF,可以由總文件數(shù)目除以包含該詞語的文件的數(shù)目,再將得到的商取對數(shù)得到。如果包含詞條t的文檔越少, IDF越大,則說明詞條具有很好的類別區(qū)分能力。
(2)
TF-IDF實際上是TF*IDF,某一特定文件內(nèi)的高詞語頻率,以及該詞語在整個文件集合中的低文件頻率,可以產(chǎn)生出高權(quán)重的TF-IDF。因此,TF-IDF傾向于過濾掉常見的詞語,保留重要的詞語。
TF-IDF=TF*IDF
(3)
正則算法,也稱作正則表達(dá)式(Regular Expression)[11-13]是一種強大的、便捷的、高效的文本處理工具,它可以表示單字符、字符串集合等更加復(fù)雜的搜索模式。主要是使用單個字符串來描述、匹配一系列滿足某種句法規(guī)則的字符串,正則表達(dá)式通常被用來檢索、替換那些匹配某個模式的文本。
一個正則表達(dá)式RE是符號集合∑{ε,|,·,*,(,)}上的一個字符串,它可以遞歸定義如下:
空字符ε是正則表達(dá)式。
任意字符α∈∑是正則表達(dá)式。
如果RE1和RE2都是正則表達(dá)式,則(RE1),(RE1·RE2),(RE1|RE2)和(RE1*)亦是正則表達(dá)式。
正則表達(dá)式RE所表達(dá)的語言是∑上的一個字符串集合。根據(jù)RE的結(jié)構(gòu),可以將它遞歸的定義如下:
如果RE是ε,則L(RE)={ε},即空串。
如果RE是α∈∑,則L(RE)={α},即包含一個字符的單串。
如果RE是(RE1)這種形式,則L(RE)=L(RE1)。
如果RE是(RE1RE2)這種形式,則L(RE)=L(RE1)L(RE2),其中W1W2可以看字符串w的集合,其中,w=w1w2并且w1∈W1,w2∈W2。
如果RE是(RE1|RE2)這種形式,則L(RE)=L(RE1)∪L(RE2),是這兩種語言的并集,“|”成為操作符。
如果RE是(RE1*)這種形式,則L(RE)=L(RE)*=Ui>0L(RE)i,其中L0={ε}并且Li=LLi-1,它表示字符串集合是由0個或者多個RE1表達(dá)的字符串連接而成,“*”稱為操作符。
在文本T中搜索正則表達(dá)式RE的問題就是找到文本中所有屬于語言L(RE)的字串。搜索的方法首先將正則表達(dá)式解析成一棵表達(dá)式樹,然后將表達(dá)式樹轉(zhuǎn)換成非確定性有限自動機(jī)(NFA),直接使用NFA進(jìn)行搜索是可行的,然而NFA算法處理速度通常比較慢,一般地,搜索過程最壞情況的時間復(fù)雜度是O(mm),但是所需儲存空間并不多。另一種策略是將NFA變成確定性有限自動機(jī)(DFA),他的搜索時間是O(n),但是構(gòu)成這樣一個自動機(jī)所需的最壞情況時間和空間復(fù)雜度都是O(2m)。
非確定性有限自動機(jī)(NFA),一個字母可以標(biāo)記離開狀態(tài)的多條邊,并且ε也可以標(biāo)記一條邊;這說明NFA的匹配過程面臨很多的岔路,需要做出選擇,一旦某條岔路失敗,就需要回溯。圖1是正則表達(dá)式(a|b)*abb對應(yīng)的NFA,它相當(dāng)直觀,基本可以從正則表達(dá)式直接轉(zhuǎn)換而來。
圖1 正則表達(dá)式對應(yīng)的NFAFig.1 NFA corresponding to regular expression
確定性有限自動機(jī)(DFA),對于每個狀態(tài)以及字母表中的每個字母,只能有一條以該字母為標(biāo)記的,離開該狀態(tài)的邊;這說明DFA的匹配過程是確定的,每個字母是需要匹配一次。與上面NFA等價的DFA如下圖:
圖2 與NFA等價的DFAFig.2 DFA equivalent to NFA
將NFA轉(zhuǎn)化成DFA:由于NFA和DFA的能力是一樣的,每個NFA必然可以轉(zhuǎn)化成一個等價的DFA。既然DFA對每個輸入可以到達(dá)的狀態(tài)時是確定的,那么輸入串s在NFA中可能達(dá)到的狀態(tài)集合對應(yīng)為等價DFA中某個狀態(tài)。從這個思路出發(fā),可以構(gòu)造出DFA。具體步驟如下:
(1)首先NFA的初始狀態(tài)0不接受ε,因此可以構(gòu)造出DFA的初始狀態(tài)(0);
(2)集合(0)輸入a,在NFA中能夠到達(dá)(0,1),于是構(gòu)造出此狀態(tài),以及從(0)到(0,1)的邊,標(biāo)記為a;
(3)集合(0)輸入b,能到達(dá)的還是(0),因此構(gòu)造出從(0)到自身的一條標(biāo)記為b的邊;
(4)集合(0,1)輸入a,能夠到達(dá)的還是(0,1),與上一步類似;
(5)集合(0,1)輸入b,能夠給到達(dá)的是(0,2),構(gòu)造狀態(tài)(0,2)及相應(yīng)的邊;
(6)集合(0,2)輸入a, 能夠到達(dá)(0,1),沒有新狀態(tài),添加一條邊;
(7)集合(0,2)輸入b,能夠給達(dá)到(0,3),構(gòu)造新狀態(tài)(0,3);
(8)集合(0,3)輸入a,能夠到達(dá)(0,1),添加一條邊即可;
(9)集合(0,3)輸入b,能夠給達(dá)到(0),添加一條邊即可;
(10)沒有新狀態(tài),結(jié)束。
最終得到的DFA如下,(0,3)包含了NFA的終結(jié)狀態(tài)3,因此也是DFA的中介狀態(tài),對狀態(tài)重新命名可以得到上面同樣的DFA。
圖3 將NFA轉(zhuǎn)化成DFAFig.3 Convert NFA into DFA
在95598投訴意見工單文本中存在大量可由正則表達(dá)式進(jìn)行抽取的關(guān)鍵文本信息,正則表達(dá)式在原始輸入時就需要構(gòu)造一個非空的初始狀態(tài),這在實際應(yīng)用中可理解為正則表達(dá)式可識別的規(guī)則條件。提煉樣本集中所要抽取相關(guān)信息的文本描述方式,歸納所要抽取的內(nèi)容規(guī)則,并將不同信息規(guī)則具體化。以用戶編號為例,用戶編號由10位數(shù)字構(gòu)成,且在文本中會用以下方式描述“客戶編號為”,“用戶編號為”、“戶號為”,根據(jù)文本中提煉的規(guī)則,利用正則表達(dá)式固定化,在文本中利用相關(guān)代碼去匹配需要找到的信息。臺區(qū)編號、工單編號等信息可用同樣的方式進(jìn)行提煉歸納,并最終轉(zhuǎn)化為正則表達(dá)式來抽取信息。
在受理內(nèi)容和處理內(nèi)容中出現(xiàn)的用戶編號,在電力系統(tǒng)中是識別用戶的唯一標(biāo)志,有了用戶編號之后,可以在相關(guān)電力系統(tǒng)中查詢到用戶的相關(guān)信息,如用戶的用電類別、城農(nóng)網(wǎng)狀態(tài)、電壓等級等基礎(chǔ)信息,可將業(yè)務(wù)關(guān)注的用戶基本狀態(tài)進(jìn)行關(guān)聯(lián)展示。在每條工單數(shù)據(jù)的用戶編號都成功抽取之后,就可以用用戶編號回溯看該用戶是否存在重復(fù)工單投訴的情況,這種類型的用戶值得業(yè)務(wù)著重關(guān)注。
正則算法的信息抽取流程如圖4所示:
圖4 涉及編號等信息抽取流程Fig.4 Involving information extraction process such as numbering
命名實體識別[14-28],就是識別這些實體指稱的邊界和類別。主要關(guān)注人名、地名和組織機(jī)構(gòu)名這三類專有名詞的識別方法,進(jìn)而實現(xiàn)信息抽取[29-31]。命名實體識別可以看作一個序列化數(shù)據(jù)的標(biāo)注問題。輸入是帶有詞性標(biāo)記的詞序列。在分詞和詞性標(biāo)注的基礎(chǔ)上進(jìn)行命名實體識別的過程就是對部分詞語進(jìn)行拆分、組合(確定實體邊界)和重新分類(確定實體類別)的過程,最后輸出一個最優(yōu)的“詞形/詞性”序列WC*/TC*。計算最優(yōu)“詞形/詞性”序列WC*/TC*的方法有三種:詞形特征模型、詞性特征模型和混合模型。
①詞形模型
詞形特征模型根據(jù)詞形序列W產(chǎn)生候選命名實體,用Viterbi確定最優(yōu)詞形序列WC*。目前的大部分系統(tǒng)都是從這個層面來設(shè)計命名實體識別算法的。
②詞性模型
詞性特征模型根據(jù)詞性序列T產(chǎn)生候選命名實體,用Viterbi確定最優(yōu)詞性序列TC*。目前只有較少的系統(tǒng)使用。
③混合模型
詞形和詞性混合模型是根據(jù)詞形序列W和詞性序列T產(chǎn)生候選命名實體,一體化確定最優(yōu)序列WC*/TC*,即基于多特征的識別算法。
詞形和詞性混合的漢語命名實體識別模型結(jié)合了詞形特征模型和詞性特征模型的優(yōu)點,可以描述成下面式子的形式:
(WC*/TC*)
=arg max(WC,TC)P(WC,TC|W,T)
=arg max(WC,TC)P(WC,TC,E,T)/P(W,T)
≈arg max(WC,TC)P(WC,W)×[P(TC,T)]β
≈arg max(WC,TC)P(WC)×P(W|WC)×[P(TC)×P(T|TC)]β
(4)
式子中的β是平衡因子,平衡詞形特征和詞性特征的權(quán)重,β>0。式子由四部分組成,分別稱之為:詞形上下文模型P(WC)、詞性上下文模型P(TC)、實體詞形模型P(W|WC)和實體詞性模型P(T|TC)。
詞形上下文模型和詞性上下文模型均可采用三元語法模型近似描述:
(5)
實體模型則根據(jù)人名、普通地名和機(jī)構(gòu)名、單字地名和簡稱機(jī)構(gòu)名分別建立相應(yīng)的實體模型。
人名實體模型用下式描述:
P(wwti1……wwtik|WCi)
=p(wwti1……wwtik|BEeMNe1MNe2……MNet-2ENe)
×P(wwtik|ENe,wwtik-1)
(6)
單字地名實體模型用下式描述:
(7)
引入逃逸概率計算權(quán)值,如下式所示:
=λNP(wn|w1……wn-1)+λN-1P(wn|w1……wn-1)+……+λ1P(wn)+λ1ρ0
(8)
基于多特征模型的命名實體識別方法綜合運用了詞形特征和詞性特征的作用,針對不同實體的結(jié)構(gòu)特點,分別建立實體識別模型。
命名實體識別模型信息提取流程如圖5所示:
圖5 命名實體識別模型信息抽取流程FIG.5 Named entity recognition model information extraction process
(1)客戶服務(wù)訴求熱點信息臺賬展示
對結(jié)構(gòu)化提取的客戶訴求關(guān)鍵信息和分析得出的客戶服務(wù)熱點進(jìn)行整理,針對業(yè)務(wù)人員關(guān)注的維度進(jìn)行分析,形成頻繁停電、電壓質(zhì)量、營業(yè)廳、業(yè)擴(kuò)報裝四類業(yè)務(wù)的客戶服務(wù)訴求熱點信息臺賬,展示95598工單關(guān)鍵信息結(jié)構(gòu)化提取內(nèi)容,精準(zhǔn)定位客戶服務(wù)熱點訴求。
以營業(yè)廳業(yè)務(wù)為例,捕捉紅線問題/輿情風(fēng)險、原因關(guān)鍵點、涉及費用糾紛/不涉及費用糾紛等客戶服務(wù)熱點訴求,便于使用人員精準(zhǔn)定位每張工單、每個涉及用戶的服務(wù)熱點訴求,具體情況可結(jié)合本地實際業(yè)務(wù)情況。
(2)客戶服務(wù)訴求熱點可視化展示
基于結(jié)構(gòu)化的關(guān)鍵信息、客戶本質(zhì)訴求分析結(jié)果及客戶信息等相關(guān)工單數(shù)據(jù),開發(fā)設(shè)計客戶服務(wù)訴求熱點分析看板,提供一種非常清晰的溝通方式,使業(yè)務(wù)管理者能夠更快地理解和處理他們的信息,使用機(jī)器學(xué)習(xí)技術(shù)幫助業(yè)務(wù)管理者找到任意一種查詢的相關(guān)信息,從時間與空間維度分析客戶訴求趨勢,基于工單中投訴關(guān)鍵詞的變化,捕捉新增的業(yè)務(wù)訴求點,實現(xiàn)客戶投訴關(guān)鍵指標(biāo)的展示與監(jiān)控,及時抓取客戶關(guān)注的熱點問題,依托指標(biāo)數(shù)據(jù)深入挖掘分析影響范圍、存在問題和未來發(fā)展趨勢,深化過程管控,提供高維的可視化效果和高效的智能分析能力,為管理層提供多元化重大決策的制定和發(fā)展方向的研判。
通過圖表等形式,從供電單位、行政區(qū)域、業(yè)務(wù)類型等維度對客戶服務(wù)訴求熱點進(jìn)行可視化展示。捕捉業(yè)務(wù)環(huán)節(jié)投訴情況,明確不同業(yè)務(wù)環(huán)節(jié)的投訴情況;明確投訴原因關(guān)鍵點,為做更好的服務(wù)提供支撐;定位不同區(qū)域投訴情況,精準(zhǔn)定位各區(qū)域服務(wù)質(zhì)量,更直觀、更全面地管控各區(qū)域服務(wù)質(zhì)量。具體展示情況可結(jié)合本地實際業(yè)務(wù)情況。
(3)針對網(wǎng)格的網(wǎng)格訴求熱點可視化展示
在日常電力系統(tǒng)管理中,主要以供電單位以及營業(yè)所為主要管理單元,但在實際的管理中,臺區(qū)化和網(wǎng)格化管理更為精細(xì),將95598服務(wù)熱點數(shù)據(jù)與臺區(qū)數(shù)據(jù)以及網(wǎng)格數(shù)據(jù)相結(jié)合,從更小的單元對用戶進(jìn)行管理,更好地管控用戶服務(wù)訴求。
以自然語言處理技術(shù)為基礎(chǔ),應(yīng)用大數(shù)據(jù)分析技術(shù),分析95598投訴意見工單的“處理情況”長文本內(nèi)容實現(xiàn)投訴類別智能分類,同時分析投訴意見工單,對業(yè)擴(kuò)報裝、頻繁停電、電壓質(zhì)量、營業(yè)廳等業(yè)務(wù)的客戶訴求處理進(jìn)行深入分析,挖掘?qū)е略V求產(chǎn)生的企業(yè)內(nèi)部的管理原因,提取結(jié)構(gòu)化的關(guān)鍵信息。通過定位分析過程中人工投入大且需要大量經(jīng)驗積累的關(guān)鍵業(yè)務(wù)點,利用機(jī)器學(xué)習(xí)技術(shù)有效替代,讓機(jī)器替代人工,有效提升員工分析效率,降低基層員工工作壓力,提升分析深度和廣度,提升敏銳客戶服務(wù)智能分析能力,同時對客戶訴求進(jìn)行趨勢與熱點分析,分析相關(guān)業(yè)務(wù)特點,從而有效提高溯源效率、解放勞動力、提升客戶服務(wù)品質(zhì)。主要實現(xiàn)以下目標(biāo):
構(gòu)建投訴意見工單處理情況智能分類模型,實現(xiàn)投訴意見工單的智能分類,大幅提高分析精度與效率,解放勞動力。
構(gòu)建基于不同業(yè)務(wù)模塊的命名實體識別模型,抽取關(guān)鍵業(yè)務(wù)信息,實現(xiàn)客戶本質(zhì)訴求和管理缺陷的精準(zhǔn)定位。
基于命名實體識別模型的應(yīng)用,聯(lián)合其他相關(guān)業(yè)務(wù)數(shù)據(jù),挖掘客戶服務(wù)需求,制訂差異化服務(wù)策略,有效提升服務(wù)能力,提高用戶滿意度,提升企業(yè)形象。