劉海濱 中國鐵塔股份有限公司響應(yīng)中心工程師
中國鐵塔股份有限公司是3家電信企業(yè)聯(lián)合出資成立的通信基礎(chǔ)設(shè)施服務(wù)企業(yè),目的是推動資源共享,減少重復建設(shè),避免“雙塔并立”、“多塔林立”等情形,并提升效率效益。公司主營通信鐵塔、基站機房等配套設(shè)施及室內(nèi)分布系統(tǒng)的建設(shè)、維護和運營,兼營基站設(shè)備的維護。
為及時、準確地掌握各機房等設(shè)施的狀態(tài),公司建立了完整的動環(huán)監(jiān)控系統(tǒng),能夠及時掌握全國百萬級站址及相關(guān)設(shè)備的情況。在有異?;蚬收蠒r,能夠及時告警并智能合并相關(guān)告警,生成工單,直接派發(fā)給一線的維護人員。一線維護人員通過終端APP可以及時接收工單并上站維護。
由于各站址地理位置、氣候環(huán)境等都具有一定的特殊性和復雜性,某些工單的告警會自動清除,此時有些派單就浪費了一線維護人員的人力物力。因此,對工單進行研究分析,為進一步實施智能派單作出理論分析基礎(chǔ)。
表1 歷史完結(jié)工單
對歷史完結(jié)工單進行分析統(tǒng)計,約有77.6%的工單告警會自動清除(見表1);未上站維護且自動清除的工單占總工單的比例約為65.4%(見表2)。因此,不需上站且自動清除的工單是本次分析的重點。
表2 未上站維護且自動清除的工單
智能派單的目的是減少一線維護人員無效上站的次數(shù),對發(fā)出的工單確實需要維護人員上站維護。那么智能派單的基礎(chǔ)就是工單不需要人員上站維護而且告警會自動消除,通過上述分析可知,這一部分占到了樣本工單的65.4%,具有相當大的分析價值和操作空間,本文分析所指的工單告警就是這一部分。
通過分析樣本數(shù)據(jù),告警自動消除且未上站的工單中排名前20位的工單告警類型如表3所示。
從表3可以看出,排名第1的“交流輸入停電告警”占工單告警問題中的36.31%,而第20名告警只占告警總量的0.22%。前20名告警的累積比占告警總量的98.24%,即在所有告警中98.24%都在這20個告警中。因此,本文主要分析前20名告警,且排列順序均按此表中的次序排列。
首先判斷一個工單的告警是否會自動消除,如果告警不能自動消除,就只能派單,讓一線維護人員上站檢修。如預測的告警會自動消除,如何決策何時派發(fā)該告警生成的工單給一線維護人員,既能保證站址維護的質(zhì)量,又可最大化地避免一線維護人員的空跑,高效利用人力資源,節(jié)約成本。因此,智能派單分為兩步,一是預測該告警產(chǎn)生的工單是否會自動消除;二是統(tǒng)計分析該告警消除的時間分布情況,來決定何種告警何時派單效果較好。
表3 前20位工單告警類型
分析告警是否會自動清除,采用的是機器學習中的KNN(k-NearestNeighbor)方法,即K近鄰法。
K最近鄰(KNN,k-NearestNeighbor)算法是機器學習中十大算法之一。所謂K最近鄰,就是K個最近的鄰居的意思,即每個樣本都可以用它最接近的K個鄰居來代表。
KNN算法的核心思想是:如果一個樣本在特征空間中有K個最相鄰的樣本中的大多數(shù)屬于某一個類別,則判定該樣本也屬于這個類別,并具有這個類別上樣本的特性。該方法在確定分類決策上只依據(jù)最鄰近的一個或者幾個樣本的類別來決定待分類樣本所屬的類別。KNN方法在類別決策時,只與極少量的相鄰樣本有關(guān)。KNN方法主要靠周圍有限的鄰近的樣本,而不是靠判別類域的方法來確定所屬類別,因此對于類域交叉或重疊較多的待分樣本集來說,KNN方法較其他方法更為適合。
KNN方法的核心思想如圖1所示。圖1中,問號處圓點要被決定賦予哪個類,是屬于三角形還是四方形?KNN的思想是以問號處的圓點為圓心,畫等距離線(如實線圓圈與虛線圓圈),如果K=3,由于三角形所占比例為2/3,圓點將被賦予三角形類;如果K=5,由于四方形比例為3/5,因此圓點被賦予四方形類。
以告警清除方式作為被預測值,預測告警是否會自動消除,本次試驗中經(jīng)過測試K=7時預測的效果最好。訓練時,對不同告警賦予了不同的權(quán)重值,權(quán)重值為各告警在樣本中出現(xiàn)的次數(shù),并且將是否上站作為一個輸入項,通過對樣本集的訓練,KNN對測試集的預測效果如表4所示。
說明如下:
data_test_label是測試集標簽,即在測試集中已知每個樣本是屬于哪個類的,以行為代表,0代表告警為手工清除,1代表告警為自動清除,即行的數(shù)據(jù)代表實際情況。
data_test_pred是通過KNN方法對測試集作預測分類,0表示預測告警為手工清除,1表示預測告警為自動清除,以列為代表。
表4 KNN對測試集的預測效果
Row Total代表本行有多少數(shù)據(jù),即測試樣本中實際為0或1的有多少數(shù)據(jù)。
ColumnTotal代表本列有多少數(shù)據(jù),即測試樣本中預測為0或1的有多少數(shù)據(jù)。
具體說明舉例如下:
測試樣本中為0的數(shù)據(jù)實際有16919行(即0與Row Total列組合處),通過KNN測試為0的數(shù)據(jù)為14210行(即0,0組合外,表示預測正確),通過KNN預測為1的數(shù)據(jù)為2709行(即0,1組合處,表示預測錯誤)。
測試樣本中為1的數(shù)據(jù)實際有57969行(即1與Row Total列組合處),通過KNN測試為0的數(shù)據(jù)為339行(即1,0組合處,表示預測錯誤),通過KNN預測為測試樣本中1的數(shù)據(jù)為57630行(即1,1組合處,表示預測正確)。
以三行三列位置處(1,1組合處)具體說明,測試樣本中實際為1的樣本數(shù)為57969行(即1與Row Total列交集),其中預測為1(即預測正確)的數(shù)據(jù)有57630行(即1,1組合處),正確率為0.994(57630/57969),錯誤(1,0組合處)率為0.006(339/57969)。預測為1的數(shù)據(jù)一共有60339行(Column Total行與1組合處),預測正確的有57630行(1,1組合),預測正確率為0.955(57630/60339)。預測為1實際也為1的數(shù)據(jù)有57630行,占測試總樣本(Column Total行與Row Total列組合處)中的0.770(57630/74888),測試總樣本為74888行(Column Total行與Row Total列組合處)。其他數(shù)據(jù)同理。
測試樣本中,實際為0、1的比例分別是0.226(16919/74888,0與 Row Total列組合處)與 0.774(57969/74888,1與Row Total列組合處);預測結(jié)果中,預測為0、1的比例分別為0.194(14549/74888,Column Total行與 0組合處)與 0.806(60339/74888,Column Total行與1組合處)。
由表4可知,當預測一個工單的告警會自動消除時,準確率為95.5%(即1,1組合處),即預測一個告警會自動消除,95.5%是真的會自動消除的,4.5%的概率是不會自動消除的,即預測錯誤的概率為4.5%。
根據(jù)對歷史工單告警恢復時間的分析,工單告警為自動消除且不需要上站的前10名累計占92.46%,前20名累計占98.24%,覆蓋了絕大多部分情況,因此關(guān)于告警恢復時間的分析,均是針對工單告警會自動消除且不需要上站的情況(即表3中的數(shù)據(jù)),前20名告警分布時間如圖2所示。
圖2中縱坐標是告警名稱,按告警占比例排序,從下到上,占比依次由大到小,可見橫作標是告警消除需要的時間(持續(xù)時間),此圖標示出不同種類的告警在告警自動消除所需時間上的大概分布情況。通過告警種類與持續(xù)時間的對比(顏色的濃密代表了數(shù)據(jù)是否密集),不同告警持續(xù)的時間不同,離異點的情況也不同,但總體可以看出,大部分都會小于500min。
如圖3所示,每種告警數(shù)據(jù)分布不同,每種告警對應(yīng)行的著色從左到右由深到淺,表示數(shù)據(jù)分布由集中到分散,具體數(shù)據(jù)的集中分布程度的展示,需要通過箱線圖(見圖4)。
如從0~12的自然數(shù)中,13個數(shù)從小到大排列,最小的是0,對應(yīng)圖5中下角線(表示最小值,即下部分虛線最下的橫線),最大的是12,對應(yīng)圖4中的上角線(表示最大值,即上部分虛線最上的橫線)。
四分位數(shù)(Quartile),即統(tǒng)計學中,把所有數(shù)值由小到大排列并分成四等份,處于三個分割點位置的數(shù)值就是四分位數(shù)。
第一四分位數(shù)(Q1),又稱“較小四分位數(shù)”,等于該樣本中所有數(shù)值由小到大排列后第25%的數(shù)字,對應(yīng)圖表3中柱體的下邊線,在本例中是3。
第二四分位數(shù)(Q2),又稱“中位數(shù)”,等于該樣本中所有數(shù)值由小到大排列后第50%的數(shù)字,對應(yīng)圖表3中柱體的中線,在本例中是6。
圖2 前20名告警分布時間
第三四分位數(shù)(Q3),又稱“較大四分位數(shù)”,等于該樣本中所有數(shù)值由小到大排列后第75%的數(shù)字,對應(yīng)圖表1中柱體的上邊線,在本例中是9。
第三四分位數(shù)與第一四分位數(shù)的差距又稱四分位距(InterQuartileRange,IQR),對應(yīng)圖表1中的整個柱體,在本例中是6。
圖4的箱線圖是垂直顯示,圖5是橫向顯示,箱線圖含義相同。
箱線圖用于展示數(shù)據(jù)分布情況,示例中數(shù)據(jù)是均勻分布,所以圖形看起來是對稱的,但實際中數(shù)據(jù)千差萬別,如某些數(shù)據(jù)比較集中,第一四分位數(shù)可能與第二四分位數(shù)重合等情況發(fā)生。
圖4 箱線圖(垂直顯示)
圖6是圖3的箱線圖展示,進一步說明各種告警在不需要上站維護時自動恢復所需要的時間分布情況。
以“交流輸入停電告警”為例,25%的數(shù)據(jù)是在15min以下,50%的數(shù)據(jù)約是在47min以下。而“非法進入告警”的第一四分位數(shù)、第二四分位數(shù)及第三四分位數(shù)間差距比較小,75%的數(shù)據(jù)約是65min以下。具體數(shù)據(jù)參見表5。
圖3 500min以下告警種類和時間
圖5 箱線圖(橫向顯示)
通過KNN算法預測分析一個告警是否會自動清除,在一定情況下可考慮延遲派單,根據(jù)圖6和表5所示,延遲一定時間在相應(yīng)的概率下工單的告警會自動清除,如“交流輸入停電告警”,延遲15min,有25%的概率告警會自動消除;如延遲47min,有50%的概率告警會自動消除。
系統(tǒng)目前每日產(chǎn)生12萬左右的工單,65.4%會自動消除且不需要上站操作。如果將某些告警產(chǎn)生的派單作一定的延時,可減少許多派單量,如排名第一的“交流輸入停電告警”,占比為36.31%,如果延時派單15min約可減少25%的工單量,即減少的工單量約為7124(120000×0.654×0.3631×0.25)條;上站維護的工單量占工單總量的13.4%,如果按照這個比例進行推算(假定上站維護的工單量與工單問題保持一定的線性關(guān)系),減少的7124條工單會間接減少954(7124×0.134)次上站,以每次上站維護成本200元計算,只此一項每天就可節(jié)省成本約19.08萬元。
圖6 圖3箱線圖展示
對同一個站址的告警已實現(xiàn)基于規(guī)則的智能合并,大大減少了重復告警及無效告警的產(chǎn)生。在告警產(chǎn)生后,基于何種標準及狀況需要一線維護人員上站進行檢修維護,根據(jù)行業(yè)特點和實際情況決定。
目前,分析的方法與結(jié)論還有一些局限性:數(shù)據(jù)是抽樣獲取,沒有覆蓋一個完整的生命周期,如果想更準確,需要大數(shù)據(jù)分析,獲得多個生命周期的數(shù)據(jù)。此次分析只是針對本公司該問題解決方案的一個大致畫像及探索方向,包括對特征值的提取、算法的選擇及參數(shù)優(yōu)化等。
離異點比較多,說明數(shù)據(jù)分布不成正態(tài)分布,第一四分位數(shù)可能不足25%的比例。
目前,只能預測告警是否會自動消除,至于告警產(chǎn)生的具體原因及消除原因并不清楚,需要調(diào)研分析。
以上分析只是對智能派單實現(xiàn)思路的一種嘗試,在告警恢復的時間分布分析中,可以進一步細分,如加入時間、地域、設(shè)備品牌、天汽等因素,結(jié)合告警產(chǎn)生的原因等因素,這樣可以作到更精細、更準確的分析評估。在決定是否需要派單以及何時派單時,更加的客觀全面,更加合理有效地利用一線工作人員的人力資源,作到精確、高效維護,不斷提高維護保障的質(zhì)量與效率。
表5 工單時間分布