張 莉,丁毛毛,李 瑋,王 穎,呂靜賢,王笑一
(1.天津大學(xué),天津 300072;2.中國農(nóng)業(yè)大學(xué),北京 100193;3.索爾福德大學(xué),英國 曼徹斯特 03101;4.華北電力大學(xué),北京 102206;5.波爾多第一大學(xué),法國 波爾多 33000)
為提高企業(yè)信譽,維護(hù)客戶,提高銷量,相關(guān)企業(yè)都會設(shè)立一個客服崗位,通過客戶終端與客戶聯(lián)系,提供銷前服務(wù)和銷后服務(wù)。然而,若是問題得不到及時、有效的解決,客戶會頻繁地聯(lián)系商家客服,如果客服尚未一對一服務(wù),問題就會被重復(fù)地記錄,嚴(yán)重干擾維修人員的分配,經(jīng)常造成無人處理問題或者多人同時處理一個問題的現(xiàn)象,不僅降低了客戶服務(wù)滿意度,還造成了資源浪費[1]。針對上述現(xiàn)象,如何解決客服終端重復(fù)記錄的冗余數(shù)據(jù)問題成為很多商家客戶服務(wù)領(lǐng)域的難點。
冗余數(shù)據(jù)是指相似度較高或者重復(fù)的數(shù)據(jù)。若是不能有效地將其消除,會直接影響客服服務(wù)質(zhì)量。關(guān)于冗余數(shù)據(jù)消除的研究有很多,大部分方法的原理都是通過計算相似性來檢測重復(fù)數(shù)據(jù)并消除,即計算數(shù)據(jù)之間的距離,距離越近,代表數(shù)據(jù)之間的相似性越高,將相似度高的數(shù)據(jù)只保留一個,即完成冗余數(shù)據(jù)消除[2]。這種方法操作簡單,效率快,但是只對小規(guī)模的數(shù)據(jù)有效,一旦數(shù)據(jù)規(guī)模很大,這種方法的處理效率就會受到極大的限制。
針對基于相似度的消除方法存在的問題,研究基于決策樹算法的客服終端冗余數(shù)據(jù)迭代消除方法。通過本研究以期為客服終端冗余數(shù)據(jù)處理提供新的解決思路,提高面對大量冗余數(shù)據(jù)的處理能力。
對于企業(yè)和商家來說,客戶終端數(shù)據(jù)有利于提高服務(wù)質(zhì)量,挖掘潛在客服,為銷售策略制定提供重要依據(jù)[3]。客戶的重復(fù)咨詢導(dǎo)致客服終端數(shù)據(jù)中存在很多重復(fù)記錄,這些重復(fù)記錄就被稱為冗余數(shù)據(jù)。冗余使得數(shù)據(jù)利用困難。為此,有必要進(jìn)行冗余數(shù)據(jù)消除處理。在這里通過引入決策樹算法尋找同類數(shù)據(jù),計算同類數(shù)據(jù)之間的相似度計算,以解決基于相似度的消除方法在處理大規(guī)模數(shù)據(jù)能力較差的問題。
客服終端冗余數(shù)據(jù)消除首要環(huán)節(jié)是集成各個客服終端中的記錄[4]。為此,首先就要將這些客服終端中記錄下的數(shù)據(jù)集中到一起,以進(jìn)行后續(xù)的處理。在本章節(jié)采用數(shù)據(jù)倉庫法對客服終端中的數(shù)據(jù)進(jìn)行抽取,完成數(shù)據(jù)集成工作。集成過程如圖1所示[5]。
圖1 數(shù)據(jù)倉庫
數(shù)據(jù)倉庫中ETL工具是關(guān)鍵,主要作用是將數(shù)據(jù)從各個客服終端中抽取出來,然后對數(shù)據(jù)進(jìn)行轉(zhuǎn)換,使得數(shù)據(jù)具有一致性,最后將其裝載到數(shù)據(jù)倉庫當(dāng)中,等待進(jìn)一步的處理[6]。
為降低后續(xù)冗余數(shù)據(jù)查找和消除難度,需要對集成客服終端數(shù)據(jù)進(jìn)行預(yù)處理[7]。預(yù)處理過程包括兩個環(huán)節(jié),下面進(jìn)行具體分析。
1.2.1 字符類數(shù)據(jù)處理
1)去掉停用詞
去掉停用詞,即去除文字記錄中沒有實際意義的詞,如“的”“地”“嗎”等。去除方法是對比停用詞詞典[8]。只要是出現(xiàn)在詞典上的詞,文字記錄中都可以直接刪除。
2)中文分詞
中文分詞是指將字符串切分成單獨的詞[9]。具體過程如下:
步驟1:構(gòu)造分詞詞典。
步驟2:輸入待切分的中文字符串,將其記為D,長度記為L。
步驟3:判斷長度L是否大于1?若大于,進(jìn)入下一個環(huán)節(jié);否則,分詞結(jié)束。
步驟4:計算D中每個字開頭詞語的最大詞長,記為l1,l2,…,ln。
步驟5:比較l1,l2,…,ln,并取其中的最大值lmax。
步驟6:比較lmax與L。若lmax>L,讓最大匹配初始長度等于L;否則,則等于lmax。
步驟7:以L或者lmax為最大詞長,進(jìn)行正向最大匹配。
步驟8:根據(jù)匹配結(jié)果實現(xiàn)分詞。
步驟9:是否所有記錄都分詞完畢?若完畢,完成所有字符類數(shù)據(jù)的分詞;否則回到步驟2。
1.2.2 數(shù)值類數(shù)據(jù)處理
1)缺失值填補
針對數(shù)據(jù)中缺失部分進(jìn)行填補,以保證數(shù)據(jù)完整[10]。原理是計算缺失值所在序列的數(shù)據(jù)平均值,讓平均值填補上缺失位置,計算公式如下:
(1)
式中,n代表缺失值所在序列的長度;x1,x2,…,xn代表除缺失值外序列中所有數(shù)值;xi代表缺失數(shù)據(jù)。
2)離散值處理
離散值主要是指與正常值區(qū)別較大的數(shù)值,包括異常值、錯誤值。去除方法可以通過分箱操作直接清除[11]。
通過上述幾個部分的預(yù)處理工作,客服終端數(shù)據(jù)更加完整、規(guī)范,方便后續(xù)的運算和處理。
若是通過計算所有數(shù)據(jù)的相似度來消除冗余,消除工作量巨大,工作效率較慢,因此在計算相似度之前,先通過決策樹算法分類客服終端大數(shù)據(jù),以降低后期消除工作的難度[12-13]。
選擇ID3決策樹,計算信息增益,并選擇最大信息增益對應(yīng)的屬性構(gòu)建分裂規(guī)則,實現(xiàn)數(shù)據(jù)分類[14]。信息增益計算公式如下:
G(X,A)=F(X)-F(X|A)
(2)
其中,
(3)
(4)
式中,G(X,A)代表信息增益;F(X)代表信息熵;F(X|A)代表條件熵;Sk代表集合X中屬于第k類樣本的樣本子集;Xi代表X中屬性A取第i個值的樣本子集;Xik表示Xi中屬于第k類的樣本子集。
ID3構(gòu)建決策樹過程如下:
步驟1:初始化并設(shè)置信息增益的閾值,記為E。
步驟2:輸入m個訓(xùn)練樣本。
步驟3:創(chuàng)建一個初始節(jié)點。
步驟4:判斷樣本是否為同一類輸出?若為同一類輸出,則算法終止,把節(jié)點標(biāo)記為樹葉節(jié)點,并標(biāo)記該類別為Pi;否則進(jìn)入下一個環(huán)節(jié)。
步驟5:計算所有屬性,選擇信息增益最大的屬性作為節(jié)點的分類屬性,記為Amax。
步驟6:判斷Amax是否小于E?若小于,回到步驟3;否則,進(jìn)入下一個步驟。
步驟7:分裂屬性中的每一個值都延伸出一個相應(yīng)的分支,并依據(jù)屬性值劃分樣本。
步驟8:判斷分支是否還有樣本?若有樣本,重復(fù)上述過程;否則,得到一棵決策樹[15]。
通過訓(xùn)練樣本,完成了決策樹的構(gòu)建?;跇?gòu)建好的決策樹實現(xiàn)客服終端數(shù)據(jù)分類。
基于上述決策樹分類結(jié)果,計算同類間數(shù)據(jù)的相似度,以此實現(xiàn)客服終端冗余數(shù)據(jù)迭代消除。
在整個冗余數(shù)據(jù)消除過程中,同一類的類間相似度計算和消除器設(shè)計兩個步驟最為關(guān)鍵[16]。下面針對這兩個關(guān)鍵步驟進(jìn)行具體分析。
1.4.1 類間相似度計算
類間相似度計算,即計算同一類數(shù)據(jù)間的相似性。計算公式如下:
(5)
其中,
(6)
將相似度Sim(i,j)與設(shè)定的判別閾值Q作對比,判斷是否為冗余數(shù)據(jù)。判斷規(guī)則如下:
(1)當(dāng)Sim(i,j)>Q時,認(rèn)為數(shù)據(jù)是冗余數(shù)據(jù);
(2)當(dāng)Sim(i,j)≤Q時,認(rèn)為數(shù)據(jù)不是冗余數(shù)據(jù)。
1.4.2 消除器設(shè)計
消除器的作用是根據(jù)冗余判斷結(jié)果消除冗余數(shù)據(jù)。消除器結(jié)構(gòu)如圖2所示。
圖2 消除器結(jié)構(gòu)圖
消除器是依據(jù)冗余判斷規(guī)則,按照時間順序逐一消除,最后留下相似數(shù)據(jù)中小于閾值Q的數(shù)據(jù),組成消除后的客服終端數(shù)據(jù),完成冗余數(shù)據(jù)消除。
為測試研究方法在客服終端冗余數(shù)據(jù)迭代消除中的應(yīng)用效果,以文獻(xiàn)[2]提出的基于最大時間閾值與自適應(yīng)步長的數(shù)據(jù)去冗余方法作為實驗對照方法,與研究方法的實驗結(jié)果進(jìn)行對比。
客服終端數(shù)據(jù)測試樣本共有10個,其中前6個為訓(xùn)練樣本,用于構(gòu)建決策樹;后4個為測試樣本,用于測試方法的消除效果。各個樣本的數(shù)據(jù)量、屬性個數(shù)以及冗余率如表1所示。
表1 樣本的數(shù)據(jù)量、屬性個數(shù)以及冗余率
按照1.3節(jié)流程,首先計算屬性的信息增益,選擇最大信息增益的屬性作為分類規(guī)則,然后借助8個訓(xùn)練樣本,通過ID3構(gòu)建決策樹。以樣本1為例,構(gòu)建的決策樹結(jié)構(gòu)如圖3所示。
圖3 樣本1的決策樹結(jié)構(gòu)圖
利用構(gòu)建的決策樹對剩余4個測試樣本進(jìn)行分類,分類結(jié)果如圖4所示。
圖4 決策樹分類結(jié)果
選擇空間縮減比作為冗余數(shù)據(jù)消除效果評價指標(biāo)。該指標(biāo)計算公式如下:
(7)
式中,R代表空間縮減比;c代表刪除的冗余數(shù)據(jù)量;C代表樣本數(shù)據(jù)總量。
計算類間數(shù)據(jù)相似度,完成最終的冗余數(shù)據(jù)消除處理。根據(jù)消除結(jié)果計算空間縮減比,結(jié)果如表2所示。
表2 冗余數(shù)據(jù)消除結(jié)果
對比表1實際結(jié)果,與文獻(xiàn)[2]方法相比,研究方法的空間縮減比更接近真實的冗余率,說明消除效果更好,準(zhǔn)確性更高。
客服終端的作用是記錄用戶需求,對制定銷售策略以及提供售后服務(wù)都具有十分重要的作用,因此其咨詢記錄的價值非常高。然而,目前由于冗余數(shù)據(jù)的存在使得客服終端數(shù)據(jù)的挖掘十分困難。針對上述問題,提出了基于決策樹算法的客服終端冗余數(shù)據(jù)迭代消除方法。該研究首先通過決策樹對客服終端數(shù)據(jù)分類,然后通過計算類內(nèi)數(shù)據(jù)間的相似度冗余消除。通過測仿真測試,證明了所研究消除方法的有效性。受到研究時間和篇幅的限制,研究深度有待進(jìn)一步提升。下一階段研究方向為如何改進(jìn)決策樹算法,因為決策樹算法本身存在一定的缺陷,在一定程度上會影響冗余數(shù)據(jù)檢測準(zhǔn)確性。