孫際勇
【摘要】 ? ?本文以海量物聯網數據為基礎,采用機器學習挖掘NB-IOT智能抄表業務邏輯,最終建立分析模型,創新使用“三元三階”分析方法定位問題原因。在網絡接入階段,通過網絡指標分析問題;在業務執行階段,通過智能抄表業務邏輯發現問題;在休眠階段,基于業務行為與數據規律定位問題。
【關鍵詞】 ? ?NB-IoT智能表 ? ?三元三階 ? ?業務邏輯
引言:
1.概述
智能抄表是物聯網技術革新的產物,改善了抄表行業的諸多問題。相對于傳統抄表而言,智能抄表具有計價靈活、實時監控、遠程報警切斷功能以及能實現大數據分析等優勢。
物聯網抄表的發展經歷多個階段,最早的物聯網表是以短信方式進行通訊,因定位超前且費用高被淘汰。第二階段是GPRS模組加SIM卡模式,采用傳統GPRS網絡與服務端通信。國家近年大力推廣物聯網技術,NB-IoT作為LPWAN物聯網領域的主流技術,正展現出強大的發展潛力。基于NB-IoT技術的智能抄表因具備低功耗、可海量接入、節約人力成本等優勢而受追捧,被廣泛應用于城市智慧能源傳輸建設。
2.優勢
NB-IoT網絡是基于蜂窩網絡的窄帶物聯網技術,聚焦低功耗廣域網,支持物聯網設備在廣域網的蜂窩數據連接,具備單獨部署、與現有網絡聯合部署多種方案,NB-IoT網絡可彌補GSM/CDMA技術在物聯網領域的不足。
智能抄表如采用NB-IoT網絡接入,可利用NB-IoT網絡的PSM節能模式,提高智能表電池使用壽命。利用該超強覆蓋能力,解決傳統網絡覆蓋死角信號差問題,提高接入成功率。
和傳統人工抄表相比,智能抄表還具備以下優勢:
1)節約能源公司人力成本,提高抄表效率和準確率。
2)以累積的能源使用量大數據為基礎,為階梯定價、能源傳輸管網規劃等城市建設提供支撐。
一、研究內容
1.1 現階段面臨的主要問題
NB-IoT智能抄表屬于新興業務,目前處于摸索應用期,還有部分環節需要完善。NB-IoT智能抄表業務過程中涵蓋終端、模組、無線網絡、核心網、IOT平臺、應用服務器等多個環節,涉及能源公司、平臺集成廠商、電信運營商,跨專業溝通成本大,出現故障時需要各專業的人員逐段排查。使用傳統的分析方法很難快速定位故障。
1.2 基于運營商管道數據的解決方案
區別于傳統各專業逐段排查的方法,本次通過運營商海量管道數據為基礎,采用機器學習算法構建業務識別模型,建立智能抄表業務信息庫,并梳理智能抄表業務邏輯,根據業務邏輯構建故障分析模型。
分析模型創新使用“三元三階”方法,從網絡接入、業務執行及休眠三階段開展分析,結合分析模型從終端側、網絡側及服務側三個維度實現故障原因快速定位。
二、三元三階分析方法
以NB-IoT智能抄表為樣例數據開展分析,共收集約20萬臺智能表終端信息,以及1個月的運營商管道數據。
通過對20萬NB-IoT智能表數據挖掘分析發現智能表具備如下交互特征:
1.智能表與網絡及服務器交互有固定時間周期、且交互時間短;
2.智能表大多時間處于休眠階段,休眠時與網絡無數據交互。
根據特征,結合網絡數據攜帶的PSM定時器時長可確定智能表大部分時間屬于休眠狀態,具備明顯的網絡接入、業務交互、休眠三個階段的特性。再結合智能表數據交互的三個網元維度,開展三元三階故障分析。
三元:智能抄表端到端業務的流程主要涉及3個網元,分別是智能表終端側、運營商管道側、智能表服務側;
三階:智能表全業務流程往往包含網絡接入、業務執行以及休眠三個階段;
三元三階:
網絡接入階段,通過失敗原因值分析法和失敗聚類分析法對接入流程開展分析定位;
業務執行階段,結合設備業務邏輯排查業務流程問題點,定位具體故障網元;
休眠階段,結合應用側和運營商管道的設備歷史數據通過聚類分析法定位故障網元。
2.1 網絡接入階段分析
在NB-IoT設備網絡接入階段,對隨機接入、RRC連接建立及附著等接入成功率進行分析,通過接入失敗原因值及接入失敗終端多維度聚類分析定位接入失敗原因,輸出故障網元。
通過移動網絡管道數據發現825個設備網絡接入階段中,附著成功率相對較差,占采樣設備的0.41%。智能表設備附著失敗導致在網絡接入階段失敗。結合信令數據附著失敗原因值分析,查看設備的Attach Reject消息攜帶原因值,有25%的設備失敗原因為“EPS services not Allowed”,根據返回的原因值可知,由于核心網簽約數據異常導致附著被拒,初步定界為網絡側原因;有53%的設備失敗原因為“Network failure”,根據返回的原因值分析主要原因為Update Location Request中上報的IMEI與簽約IMEI不同導致附著失敗,初步定界為設備側原因;其他21%的設備通過多維度(設備型號、MME、小區以及服務器等)聚類分析發現,大部分集中在個別小區,初步定位小區問題導致附著失敗。
總結上述案例,智能表網絡接入階段故障排查借助網絡接入成功率指標分析,網絡接入成功率通過附著成功率分析實現故障問題定界,分析步驟如下:
步驟1:通過移動管道數據分析智能表終端成功率指標;
步驟2:基于運營商管道數據分析網絡接入失敗終端的失敗原因值及分布情況;
步驟3:通過失敗原因值分析,一方面直接定位出故障原因,另一方面通過運營商管道數據多維度(包括終端型號、小區、核心網、時間等維度)聚類分析定位出故障網元。
2.2業務執行階段分析
業務執行階段,針對智能表遠程抄表、實時計費、報警提醒等業務流程開展分析,采集大量應用側及運營商管道數據進行機器學習,識別出各業務數據的業務邏輯,再基于設備業務邏輯排查問題點,定位具體故障網元。
通過智能抄表業務的運營商管道數據建立信息庫,并進行數據挖掘,發現抄表業務整體信令流程如下圖2。
基于上述信令流程開展分析,結合應用側提供的智能抄表業務流程(包括建鏈、鑒權、數據上報、拆鏈等)進行抄表業務邏輯識別工作。采用機器學習建模分析智能抄表業務信令數據特征(地址、協議、信息長度、數據包信息等),將各項信令數據特征進行關聯組合,并根據智能抄表過程中的建鏈流程、鑒權流程、數據上報流程以及拆鏈流程劃分關聯數據流,最后通過業務識別算法基于數據流特征完成抄表業務邏輯識別,識別結果如下:
NB-IoT智能抄表業務邏輯主要包括四個建鏈過程、兩個鑒權過程、兩個數據上報過程以及一個拆鏈過程。
對智能抄表數據進行分析,抄表失敗主要是抄表業務流程失敗導致,占比74%,占總設備數3.5%。結合智能表業務邏輯對智能抄表故障問題進行排查發現抄表業務失敗原因主要集中在鑒權確認過程,智能表服務器下發鑒權確認消息后,物聯網平臺轉發該命令到表端,在25秒內下發三次表端均沒有響應,命令超時,導致抄表失敗。情況如下:
結合上述分析可知,智能抄表業務失敗是由于終端側故障導致。
總結上述案例,智能表業務執行階段故障排查,通過運營商管道數據挖掘,結合機器學習識別智能表業務邏輯。基于業務邏輯開展業務流程故障排查分析,分析步驟如下:
步驟1:通過運營商管道數據分析智能表終端業務成功率指標;
步驟2:基于運營商管道數據挖掘智能抄表業務流程;
步驟3:基于智能表業務邏輯對具體業務流程進行故障排查,輸出故障業務流程;
步驟4:通過運營商管道數據對故障流程進行分析,定位具體故障點。
2.3休眠階段分析
NB-IoT智能表在休眠階段處于PSM工作模式下,此狀態智能表注冊在網,保持在線狀態,但信令不可達。在此階段智能表終端側與智能表服務側無數據交互,需要結合智能表終端歷史狀態對終端進行監控。此階段智能表終端設備存在的主要問題是設備失聯故障問題,結合應用側和運營商管道設備歷史數據通過聚類分析法定位故障網元。
使用部分智能表故障終端信息,結合運營商管道數據挖掘分析發現,約0.99%的故障終端智能表在數據交互周期內無數據上報,結合智能表歷史數據,初步判斷這部分終端設備疑似存在失聯故障問題。
2.3.1型號集中性分析
分析發現智能表終端共涉及4個型號,分別是型號A1、B1、C1和D1,針對疑似失聯設備開展型號集中性分析發現,失聯故障問題并無明顯集中在個別型號上,如下:
2.3.2區域集中性分析
統計疑似失聯設備的區域分布情況發現大部分故障設備無明顯集中情況,存在152個設備集中分布在2個小區覆蓋范圍內,需要進一步排查這兩個小區所覆蓋區域是否存在網絡問題導致NB-IoT智能表終端失聯。
2.3.3失聯故障率分析
針對疑似失聯終端設備的失聯周期開展分析,挖掘失聯故障率高的設備需要進一步分析其終端設備是否存在故障。
總結上述案例,分析步驟如下:
步驟1:通過智能抄表業務規則以及運營商管道數據分析,總結智能抄表業務上報時間規律;
步驟2:基于智能表數據交互周期判斷其數據交互周期內終端側與服務側有無數據交互,反推終端設備是否存在失聯故障問題;
步驟3:通過疑似失聯設備型號集中性分析定位失聯故障原因,輸出故障終端型號;
步驟4:通過疑似失聯設備區域分布分析定位失聯設備集中區域,輸出覆蓋異常區域;
步驟5:通過疑似失聯設備故障率分析定位異常失聯設備,輸出故障終端設備。
2.4 智能表分析結果
經過 “三元三階”分析法確定,NB-IoT智能抄表失敗在網絡接入、業務執行以及休眠三個階段業務失敗分布如下:
通過“三元三階”分析方法實現83%以上的抄表失敗設備問題定界,其中設備側問題占比78.81%,網絡側問題占比4.64%。
三、業務流程故障排查模型
上章提到,業務執行階段的分析采用機器學習建模及業務識別算法進行業務邏輯識別工作,并基于業務邏輯分析完成該階段的故障定位。本章將具體介紹機器學習建模的過程以及業務識別算法內容。
3.1 業務邏輯的識別
3.1.1業務的識別流程
對于機器業務識別方法來說,機器學習識別算法是提高識別能力的重要因素,可應用的系統平臺需多方面考慮,諸如計算復雜程度及識別速率等。
機器學習業務識別算法分兩步:識別模型的建立與業務分類。
首先需要利用樣本數據進行訓練來建立識別模型,然后將模型輸入到分類器進行業務分類。訓練的輸入樣本數據可來自采集的業務流量數據或者直接抓取業務數據。最后基于五元組信息(源地址、目的地址、傳輸層協議類型、包長度以及數據包信息)拆分成不同的數據流來統計流的特征。數據流的特征和算法識別參數集用來建立流識別模型,機器算法的參數依靠具體的機器學習算法從簡單到復雜演進,部分算法可能不依賴參數。業務分類器完成業務識別訓練,即可對流進行識別分類,分類器可以實現業務識別。
3.1.2業務識別算法
將提取的數據包按五元組分類, 每一類就是一個數據流。通過各類數據流的關聯,并捕捉關聯流的特征定義特征包。通過數據包五元組信息與已識別出特征的數據包的五元組相匹配, 選擇出有分類代表性的最優特征子集,最后將采樣數據樣本和最優特征集訓練XGBoost模型進行業務識別,如下圖:
3.1.3 XGBoost算法介紹
極限梯度提升(eXtreme Gradient Boosting)是GBDT的一種提升算法,它繼承了GBDT并進行改進,假設訓練集D={xi, yi} (|D|=n,xi∈Rm, yi∈R)包含n個樣本和m個特征,在第t次迭代中構造了一個回歸樹ft,其目標函數的形式包含兩部分:損失函數和正則化項,如下所示:
式中,——第t次迭代的預測值
——第i個樣本目標值與預測值之間的損失函數
Ω——加入的正則化項,表示決策樹的復雜度
Ω用于抑制過擬合現象,控制模型的復雜度,保證在模型簡單的基礎上最小化訓練誤差。采用泰勒展開式近似定義目標函數Obj(t),即
其中,是損失函數的一階梯度和二階梯度。由于與ft無關,所以最小化目標函數的過程中可以忽略。在XDBoost中,數的復雜度定義為
式中,wj——第j個葉子節點所分配的權重
T——回歸樹中的節點數
γ——葉子節點的系數
使XGBoost在最小化目標函數的同時相當于對回歸樹做了預剪枝處理,防止訓練模型過擬合。綜合誤差項和正則化項,目標函數可以寫成
由上式可以得出一個關于wj的一元二次方程,為此可以得出每棵回歸樹的最優權重和最優目標函數。
最終目標函數與回歸樹的樹形結構有關,數的剪枝生成問題轉化為尋找最優樹結構。目標函數越小,表示樹的結構最優,在進行節點分裂時,XGBoost采用目標函數計算加入分割點后與之前目標函數的大小比較,比較后再決定是否添加節點。XGBoost采用貪心算法獲得最優樹結構。利用XGBoost的貪心策略進行回歸樹的分割,構造最優樹結構,隨著模型的迭代,根據殘差不斷進行優化。
3.2 抄表業務流程模型構建
通過上述機器學習算法識別NB-IoT智能抄表業務邏輯,流程如下:
1.通過數據挖掘提取數據流特征,包括數據流源地址、目標地址、流量大小、協議類型、數據流特定信息等;
2.通過各類數據流關聯,并捕捉關聯流特征定義特征包;
3.基于數據流特征及算法特征建立識別模型;
4.通過機器學習進行業務識別,并輸出業務邏輯。
結合上述流程完成智能抄表業務邏輯識別,智能抄表業務邏輯包含4個建鏈流程、2個鑒權流程、2個數據上報流程和1個拆鏈流程,結合NB-IoT智能抄表業務邏輯和“三元三階”分析法構建NB-IoT智能抄表業務故障智能排查模型。
四、結束語
本方案運用了海量物聯網大數據資源,通過機器學習挖掘NB-IoT智能抄表業務邏輯,并建立分析模型 ,結合“三元三階”分析方法,實現對智能表故障問題智能排查。
以智能表為例,創新使用“三元三階”分析方法,在網絡接入階段,通過附著失敗原因值和附著失敗設備多維度聚類分析定位設備測、網絡側以及服務側問題;在業務執行階段,通過智能抄表業務邏輯故障排查定位設備側、網絡側以及服務側問題;在休眠階段,利用智能表信息數據和運營商歷史管道數據進行設備失聯問題排查定位設備側、網絡側問題。其中,在業務執行階段采用智能表運營商管道數據,建立智能表業務信息庫,挖掘智能表業務數據流特征,通過數據流特征關聯劃分樣本業務,繼而進行機器學習識別智能抄表業務,進一步識別智能抄表業務邏輯,通過業務邏輯分析定位業務執行階段故障問題。
基于運營商管道數據,挖掘智能抄表業務特征,通過機器學習識別智能抄表業務,識別業務邏輯,建立抄表業務分析模型。在此基礎上,實現NB-IoT智能抄表業務故障問題智能排查。
參 ?考 ?文 ?獻
[1] 吳騰.面向數據挖掘的網絡流量預測及業務識別算法研究[D].重慶: 重慶郵電大學, 2019:53-57.