国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      系統(tǒng)異常檢測方法和裝置與流程

      文檔序號:11929960閱讀:447來源:國知局
      系統(tǒng)異常檢測方法和裝置與流程

      本發(fā)明涉及檢測技術,尤其涉及一種系統(tǒng)異常檢測方法和裝置。



      背景技術:

      現代通信網絡極其龐大復雜,在日常運行和維護中,運營商通過獲取關鍵性能指標(Key Performance Indicator,簡稱KPI)、關鍵質量指標(Key Quality Indicator,簡稱KQI)、故障管理(Fault Management,簡稱FM)數據等若干網絡統(tǒng)計指標來監(jiān)控網絡的運行狀況。

      目前,主要通過檢測業(yè)務的KPI來判斷網絡是否發(fā)生異?,F象,通常將網絡分為區(qū)域級和小區(qū)級進行KPI異常檢測,區(qū)域級的KPI通常具有較平穩(wěn)的周期性波動規(guī)律,KPI異常容易檢測,而小區(qū)級中由于業(yè)務量較小、話單樣本數少等原因,KPI通常會存在隨機的抖動,而且,小區(qū)級的KPI數量通常是海量級的,因此,實現小區(qū)級KPI異常檢測比較困難?,F有技術中也存在一些小區(qū)級的KPI異常檢測方法,例如,名稱為《一種在云端的高音喇叭長期異常檢測技術(A Novel Technique for Long-Term Anomaly Detection in the Cloud Tweeter)》的文獻提出來的一種異常檢測算法,用以檢測社交網絡中的異常事件,例如,檢測照片上傳數量的異常等。該異常檢測算法的核心方法是混合季節(jié)性的極端學生化偏差(Seasonal Hybrid ESD,簡稱S-H-ESD,其中,ESD為極端學生化偏差(Extreme Studentized Deviate,簡稱ESD)),該方法的步驟具體如下:

      步驟1:采用基于Loess的季節(jié)效應時間序列分級算法(Seasonal Decomposition of Time Series by Loess,簡稱STL)算法將獲取到的KPI序列分解為三個序列:包含周期信息的序列,包含趨勢信息的序列,包含剩余信息的序列。

      步驟2:從KPI序列中去除包含周期信息的序列,并將去除包含周期信息的序列的KPI序列中的中位數去除。

      步驟3:采用ESD檢驗方法對步驟2最終獲得的KPI序列進行異常檢測,具體為用步驟2最終獲得的KPI序列的中位數來代替ESD檢驗公式中的均值,用步驟2最終獲得的KPI序列的中位絕對偏差(MAD)來代替ESD檢驗公式中的標準差,從而計算出KPI的標準分數(z-score)。

      步驟4:根據KPI的標準分數z-score對異常檢測結果進行后過濾,輸出異常檢測結果,對異常檢測結果中的異常的KPI進行研究,從而獲取網絡的運行狀況。

      經過試驗驗證,現有技術中通過減去周期信息序列的KPI異常檢測方法,無法準確的檢測到異常的KPI,甚至會出現無法檢測到異常的KPI的現象,因此,導致KPI異常檢測的準確率和效率很低。



      技術實現要素:

      本發(fā)明提供一種系統(tǒng)異常檢測方法和裝置,可以準確的檢測出系統(tǒng)中的KPI異常,檢測效率高。

      第一方面,本發(fā)明實施例提供一種系統(tǒng)異常檢測方法,包括:獲取業(yè)務系統(tǒng)的KPI序列;對所述KPI序列進行序列分解,得到包含周期信息的第一KPI序列以及包含趨勢信息的第二KPI序列;對所述第一KPI序列是否具有周期性進行評估處理,并且對所述第二KPI序列是否具有趨勢性進行評估處理;根據評估結果,對所述KPI序列進行異常檢測。本實施例中,對分解獲得的包含周期信息的周期序列進行周期性評估,對包含趨勢信息的趨勢序列進行趨勢性評估,根據KPI序列的周期性和趨勢性分多種情況,具有針對性的采用不同的方法對不同情況下的KPI序列進行檢測,可以準確的檢測出KPI異常,檢測效率高。

      結合第一方面,在第一方面的第一種可能實現方式中,所述根據評估結果,對所述KPI序列進行異常檢測,包括:若所述第一KPI序列沒有周期性且所述第二KPI序列沒有趨勢性,則對所述KPI序列的全部數據建立數據分布進行單點異常檢測;若所述第一KPI序列有周期性且所述第二KPI序列沒有趨勢性,則對所述KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測;若所述第一KPI序列沒有周期性且所述第二KPI序列有趨勢性,則對所述KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從所述KPI序列刪除掉所述異常點,再進行單點異常檢測;若所述第一KPI序列有周期性且所述第二KPI序列有趨勢性,則對所述第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從所述KPI序列中刪除所述異常點,再進行單點異常檢測。本實施例中,根據KPI序列的周期性和趨勢性分四種情況,針對每種情況的采用不同的方法進行異常檢測,可以準確的檢測出KPI異常,檢測效率高。

      結合第一方面的第一種可能實現方式,在第一方面的第二種可能實現方式中,若所述第一KPI序列沒有周期性且所述第二KPI序列沒有趨勢性,則對所述KPI序列的全部數據建立數據分布進行單點異常檢測,包括:根據所述KPI序列的全部數據計算所述KPI序列的截尾均值和所述KPI序列的標準差;根據所述截尾均值和所述標準差計算所述KPI序列中每個數據的標準分數z-score;將所述z-score大于第一預設閾值或所述z-score小于第二預設閾值的數據標記為異常數據,得到包括所述異常數據的第三KPI序列;對所述第三KPI序列進行異常結果后過濾,并輸出異常檢測結果。本實施例的方法,KPI在不同時刻的方差差異較小,同時也沒有趨勢效應,所以可以統(tǒng)一地用所有的數據,計算KPI序列中每個數據的z-score根據z-score判斷每個點的KPI異常程度,方法簡單,檢測效率高。

      結合第一方面的第一種可能實現方式,在第一方面的第三種可能實現方式中,若所述第一KPI序列有周期性且所述第二KPI序列沒有趨勢性,則對所述KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,包括:根據所述KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差;根據所述截尾均值和所述標準差計算所述相同時刻KPI的標準分數z-score;將所述z-score大于第一預設閾值或所述z-score小于第二預設閾值的數據標記為異常數據,得到包括異常數據的第四KPI序列;對所述第四KPI序列進行異常結果后過濾,并輸出異常檢測結果。本實施例的方法,KPI在不同時刻可能出現不同的方差,因此,根據KPI序列各周期中的同一時刻的數據計算z-score,不論計算哪一個周期中統(tǒng)一時刻的z-score,其標準差均是相同的,從而避免了不同時刻的方差差異造成的KPI異常檢測不準確的問題。

      結合第一方面的第一種可能實現方式,在第一方面的第四種可能實現方式中,若所述第一KPI序列沒有周期性且所述第二KPI序列有趨勢性,則對所述KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從所述KPI序列中刪除掉所述異常點,再進行單點異常檢測,包括:根據變化點檢測算法從所述KPI序列中確定分裂點,將所述KPI序列分為多個KPI子序列;將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value;對所述每個KPI子序列的p-value進行多重比較校正,獲得所述每個KPI子序列的校正p值adj.p-value;將均值最大或者均值最小的KPI子序列與所述adj.p-value大于預設閾值的KPI子序列標記為第一異常KPI序列;從所述KPI序列中減去所述第一異常KPI序列,獲得第五KPI序列;對所述第五KPI序列的全部數據建立數據分布進行單點異常檢測,獲得第二異常KPI序列;對所述第一異常KPI序列和所述第二異常KPI序列異常結果后過濾,并輸出異常檢測結果。本實施例的方法,用PELT對KPI序列進行change points檢測,尋找KPI序列發(fā)生趨勢變化的點,從而檢測時段異常;同時對剩余的序列用第一種方案中的方法,進行單點異常檢測,可以準確的檢測出發(fā)生異常的KPI,保證的異常檢測的準確性。

      結合第一方面的第一種可能實現方式,在第一方面的第五種可能實現方式中,若所述第一KPI序列有周期性且所述第二KPI序列有趨勢性,則對所述第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從所述KPI序列中刪除所述異常點,再進行單點異常檢測,包括:根據變化點檢測算法從所述第二KPI序列中確定分裂點,將所述第二KPI序列分為多個KPI子序列;將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value;對所述每個KPI子序列的p-value進行多重比較校正,獲得所述每個KPI子序列的校正p值adj.p-value;將均值最大或者均值最小的KPI子序列與所述adj.p-value大于預設閾值的KPI子序列標記為第三異常KPI序列;從所述KPI序列中減去所述第三異常KPI序列,獲得第六KPI序列;對所述第六KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,獲取第四異常KPI序列;對所述第三異常KPI序列和所述第四異常KPI序列異常結果后過濾,并輸出異常檢測結果。本實施例的方法,用PELT算法對KPI序列分解后的趨勢序列(T)進行change points檢測,尋找KPI序列發(fā)生趨勢變化的點,用于檢測時段異常,可以有效去除周期效應的干擾;同時對剩余的序列用第二種方案中的方法,進行單點異常檢測,不僅保證了異常檢測的準確性,也提高了異常檢測的效率。

      結合第一方面的第一種至第五種中的任一種可能實現方式,在第一方面的第六種可能實現方式中,所述對所述第一KPI序列是否具有周期性進行評估處理,包括:根據公式計算所述第一KPI序列的周期值Effects;其中,Var(S)為所述第一KPI序列的方差,Var(KPI)為所述KPI序列的方差;若所述第一KPI序列的周期值Effects大于預設周期閾值,則所述第一KPI序列具有周期性。

      結合第一方面的第一種至第六種中的任一種可能實現方式,在第一方面的第七種可能實現方式中,所述對所述第二KPI序列是否具有趨勢性進行評估處理,包括:根據公式計算所述第二KPI序列的趨勢值EffectT;其中,為Var(T)所述第二KPI序列的方差,Var(KPI)為所述KPI序列的方差;若所述第二KPI序列的趨勢值EffectT大于預設趨勢閾值,則所述第二KPI序列具有趨勢性。

      結合第一方面的第一種至第七種中的任一種可能實現方式,在第一方面的第八種可能實現方式中,所述獲取業(yè)務系統(tǒng)的KPI序列,包括:在業(yè)務系統(tǒng)上進行業(yè)務數據采集;根據業(yè)務規(guī)則對所采集的業(yè)務數據進行KPI計算,得到原始KPI序列;對所述原始KPI序列進行預處理,得到所述KPI序列,所述預處理包括對極端離群的數據點處理和對缺失數據的處理。

      結合第一方面的第八種可能實現方式,在第一方面的第九種可能實現方式中,所述對極端離群的數據點處理,包括:根據所述KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差;根據所述截尾均值和所述標準差計算所述相同時刻KPI的標準分數z-score;判斷所述z-score的絕對值是否大于第三預設閾值,若是,則將所述z-score對應的數據標記為異常數據進行輸出,并將所述異常數據設置為缺失數據,返回執(zhí)行根據所述KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差的步驟;若否,則輸出所述z-score對應的數據。本實施例的方法,對一個周期內不同的時刻單獨進行極端值檢測,避免了不同時刻的KPI之間存在方差差異,造成異常檢測不準確的問題。

      結合第一方面的第八種或第九種可能實現方式,在第一方面的第十種可能實現方式中,所述對缺失數據的處理,包括:根據公式計算所述KPI序列的加權平均值hat(xi);其中,xi和xi+kt為所述KPI序列中不同周期同一時刻的數據,wk為所述KPI序列中的數據對應的權重,t為所述KPI序列的周期,k為大于等于1的正整數;采用所述KPI序列的加權平均值hat(xi)代替所述KPI序列中的缺失數據。

      第二方面,本發(fā)明實施例提供一種系統(tǒng)異常檢測裝置,包括:獲取模塊,用于獲取業(yè)務系統(tǒng)的KPI序列;分解模塊,用于對所述KPI序列進行序列分解,得到包含周期信息的第一KPI序列以及包含趨勢信息的第二KPI序列;評估模塊,用于對所述第一KPI序列是否具有周期性進行評估處理,并且對所述第二KPI序列是否具有趨勢性進行評估處理;檢測模塊,用于根據評估結果,對所述KPI序列進行異常檢測。

      結合第二方面,在第二方面的第一種可能實現方式中,若所述評估模塊確定所述第一KPI序列沒有周期性且所述第二KPI序列沒有趨勢性,則所述檢測模塊對所述KPI序列的全部數據建立數據分布進行單點異常檢測;

      若所述評估模塊確定所述第一KPI序列有周期性且所述第二KPI序列沒有趨勢性,則所述檢測模塊對所述KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測;

      若所述評估模塊確定所述第一KPI序列沒有周期性且所述第二KPI序列有趨勢性,則所述檢測模塊對所述KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從所述KPI序列刪除掉所述異常點,再進行單點異常檢測;

      若所述評估模塊確定所述第一KPI序列有周期性且所述第二KPI序列有趨勢性,則所述檢測模塊對所述第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從所述KPI序列中刪除所述異常點,再進行單點異常檢測。

      結合第二方面的第一種可能實現方式,在第二方面的第二種可能實現方式中,若所述評估模塊確定所述第一KPI序列沒有周期性且所述第二KPI序列沒有趨勢性,則所述檢測模塊對所述KPI序列的全部數據建立數據分布進行單點異常檢測,包括:所述檢測模塊根據所述KPI序列的全部數據計算所述KPI序列的截尾均值和所述KPI序列的標準差;根據所述截尾均值和所述標準差計算所述KPI序列中每個數據的標準分數z-score;將所述z-score大于第一預設閾值或所述z-score小于第二預設閾值的數據標記為異常數據,得到包括所述異常數據的第三KPI序列;對所述第三KPI序列進行異常結果后過濾,并輸出異常檢測結果。

      結合第二方面的第一種可能實現方式,在第二方面的第三種可能實現方式中,若所述評估模塊確定所述第一KPI序列有周期性且所述第二KPI序列沒有趨勢性,則所述檢測模塊對所述KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,包括:所述檢測模塊根據所述KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差;根據所述截尾均值和所述標準差計算所述相同時刻KPI的標準分數z-score;將所述z-score大于第一預設閾值或所述z-score小于第二預設閾值的數據標記為異常數據,得到包括異常數據的第四KPI序列;對所述第四KPI序列進行異常結果后過濾,并輸出異常檢測結果。

      結合第二方面的第一種可能實現方式,在第二方面的第四種可能實現方式中,若所述評估模塊確定所述第一KPI序列沒有周期性且所述第二KPI序列有趨勢性,則所述檢測模塊對所述KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從所述KPI序列刪除掉所述異常點,再進行單點異常檢測,包括:所述檢測模塊根據變化點檢測算法從所述KPI序列中確定分裂點,將所述KPI序列分為多個KPI子序列;將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value;對所述每個KPI子序列的p-value進行多重比較校正,獲得所述每個KPI子序列的校正p值adj.p-value;將均值最大或者均值最小的KPI子序列與所述adj.p-value大于預設閾值的KPI子序列標記為第一異常KPI序列;從所述KPI序列中減去所述第一異常KPI序列,獲得第五KPI序列;對所述第五KPI序列的全部數據建立數據分布進行單點異常檢測,獲得第二異常KPI序列;對所述第一異常KPI序列和所述第二異常KPI序列異常結果后過濾,并輸出異常檢測結果。

      結合第二方面的第一種可能實現方式,在第二方面的第五種可能實現方式中,若所述評估模塊確定所述第一KPI序列有周期性且所述第二KPI序列有趨勢性,則所述檢測模塊對所述第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從所述KPI序列中刪除所述異常點,再進行單點異常檢測,包括:所述檢測模塊根據變化點檢測算法從所述第二KPI序列中確定分裂點,將所述第二KPI序列分為多個KPI子序列;將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value;對所述每個KPI子序列的p-value進行多重比較校正,獲得所述每個KPI子序列的校正p值adj.p-value;將均值最大或者均值最小的KPI子序列與所述adj.p-value大于預設閾值的KPI子序列標記為第三異常KPI序列;從所述KPI序列中減去所述第三異常KPI序列,獲得第六KPI序列;對所述第六KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,獲取第四異常KPI序列;對所述第三異常KPI序列和所述第四異常KPI序列異常結果后過濾,并輸出異常檢測結果。

      結合第二方面的第一種至第五種中的任一種可能實現方式,在第二方面的第六種可能實現方式中,所述評估??鞂λ龅谝籏PI序列是否具有周期性進行評估處理,包括:所述評估模快根據公式計算所述第一KPI序列的周期值Effects;其中,Var(S)為所述第一KPI序列的方差,Var(KPI)為所述KPI序列的方差;若所述第一KPI序列的周期值Effects大于預設周期閾值,則所述第一KPI序列具有周期性。

      結合第二方面的第一種至第六種中的任一種可能實現方式,在第二方面的第七種可能實現方式中,所述評估模塊對所述第二KPI序列是否具有趨勢性進行評估處理,包括:所述評估模塊根據公式計算所述第二KPI序列的趨勢值EffectT;其中,為Var(T)所述第二KPI序列的方差,Var(KPI)為所述KPI序列的方差;若所述第二KPI序列的趨勢值EffectT大于預設趨勢閾值,則所述第二KPI序列具有趨勢性。

      結合第二方面的第一種至第七種中的任一種可能實現方式,在第二方面的第八種可能實現方式中,所述獲取模塊具體用于在業(yè)務系統(tǒng)上進行業(yè)務數據采集;根據業(yè)務規(guī)則對所采集的業(yè)務數據進行KPI計算,得到原始KPI序列;對所述原始KPI序列進行預處理,得到所述KPI序列,所述預處理包括對極端離群的數據點處理和對缺失數據的處理。

      結合第二方面的第八種可能實現方式,在第二方面的第九種可能實現方式中,所述獲取模塊對極端離群的數據點處理,包括:所述獲取模塊根據所述KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差;根據所述截尾均值和所述標準差計算所述相同時刻KPI的標準分數z-score;判斷所述z-score的絕對值是否大于第三預設閾值,若是,則將所述z-score對應的數據標記為異常數據進行輸出,并將所述異常數據設置為缺失數據,返回執(zhí)行根據所述KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差的步驟;若否,則輸出所述z-score對應的數據。

      結合第二方面的第八種或第九種可能實現方式,在第二方面的第十種可能實現方式中,所述獲取模塊對缺失數據的處理,包括:所述獲取模塊根據公式計算所述KPI序列的加權平均值hat(xi);其中,xi和xi+kt為所述KPI序列中不同周期同一時刻的數據,wk為所述KPI序列中的數據對應的權重,t為所述KPI序列的周期,k為大于等于1的正整數;采用所述KPI序列的加權平均值hat(xi)代替所述KPI序列中的缺失數據。

      第二方面提供的系統(tǒng)異常檢測裝置,可用于執(zhí)行第一方面的系統(tǒng)異常檢測方法,裝置的每種實現方式的實現原理和有益效果與對應方法的實現方式和有益效果類似,此處不再贅述。

      附圖說明

      為了更清楚地說明本發(fā)明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。

      圖1本發(fā)明實施例提供的系統(tǒng)異常檢測方法的應用場景示意圖;

      圖2為本發(fā)明實施例一提供的系統(tǒng)異常檢測方法的流程圖;

      圖3為KPI序列的分解示意圖;

      圖4為本發(fā)明實施例二提供的系統(tǒng)異常檢測方法的流程圖;

      圖5為本發(fā)明實施例三提供的系統(tǒng)異常檢測方法的流程圖;

      圖6為本發(fā)明實施例四提供的系統(tǒng)異常檢測方法的流程圖;

      圖7為本發(fā)明實施例五提供的系統(tǒng)異常檢測方法的流程圖;

      圖8為本發(fā)明實施例六提供的系統(tǒng)異常檢測方法的流程圖;

      圖9為極端離群的數據點處理方法流程圖;

      圖10為本發(fā)明實施例七提供的系統(tǒng)異常檢測裝置的結構示意圖;

      圖11為本發(fā)明實施例八提供的服務器的結構示意圖。

      具體實施方式

      下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

      本發(fā)明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”、“第三”“第四”等(如果存在)是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數據在適當情況下可以互換,以便這里描述的本發(fā)明的實施例例如能夠以除了在這里圖示或描述的那些以外的順序實施。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或器的過程、方法、系統(tǒng)、產品或設備不必限于清楚地列出的那些步驟或器,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或器。

      圖1本發(fā)明實施例提供的系統(tǒng)異常檢測方法的應用場景示意圖。如圖1所示,該場景包括服務器1、基站2、基站3、終端4、終端5、終端6、終端7。基站2和基站3為小區(qū)中的終端進行通信,為用戶提供業(yè)務服務,服務器1從基站2和基站3采集業(yè)務數據,根據業(yè)務規(guī)則計算業(yè)務數據的KPI,例如,計算數據流中的丟包率的KPI、通話質量的KPI等,對每個小區(qū)的業(yè)務數據的KPI進行異常檢測,從而判斷網絡運行狀況,及時的對異常點進行維護。

      下面以具體地實施例對本發(fā)明的技術方案進行詳細說明。下面這幾個具體的實施例可以相互結合,對于相同或相似的概念或過程可能在某些實施例不再贅述。

      圖2為本發(fā)明實施例一提供的系統(tǒng)異常檢測方法的流程圖。本實施例的執(zhí)行主體為服務器,具體可以為移動、電信等運營商服務器,如圖2所示,該方法包括以下步驟:

      步驟101、獲取業(yè)務系統(tǒng)的KPI序列。

      在本實施例中,服務器在通信設備上進行業(yè)務數據的采集,并根據業(yè)務規(guī)則獲取業(yè)務數據的KPI,例如,通過基站采集業(yè)務數據,獲取每個時刻的業(yè)務數據的丟包率對應的KPI,形成KPI序列。KPI序列是一個時間序列,時間粒度可以根據業(yè)務需要來定義,例如,以分鐘、小時等時間粒度來獲取KPI序列

      步驟102、對KPI序列進行序列分解,得到包含周期信息的第一KPI序列以及包含趨勢信息的第二KPI序列。

      在本實施例中,在實際業(yè)務中,KPI異常包含兩種形式:一種是單點的異常,比如某天07:00的KPI突然變差,之后又恢復正常;一種是時段的異常,即一段時間內KPI都比較差。根據這種異常特征,可以用STL算法來實現KPI序列的分解,圖3為KPI序列的分解示意圖,如圖3所示,可以將KPI序列分解為三個時間序列的和:只包含周期信息的周期序列S,即第一KPI序列,只包含趨勢信息的趨勢序列T,即第二KPI序列,以及包含剩余殘差信息的序列R。

      步驟103、對第一KPI序列是否具有周期性進行評估處理,并且對第二KPI序列是否具有趨勢性進行評估處理。

      在本實施例中,由于不同的KPI指標有不同的分布情況,有些KPI序列有很強的周期性,而有些KPI序列則沒有。趨勢性是指長期來看KPI序列是否呈現出上升/下降等狀態(tài)。由于在網絡中KPI的指標一般都在某個水平上波動,當KPI出現了這種趨勢效應時,可能意味著發(fā)生了一個時段的異常。可以通過計算周期序列S的方差與KPI序列的方差的比值來評估周期性的程度,通過計算趨勢序列T的方差與KPI序列的方差的比值來評估趨勢性的程度。

      步驟104、根據評估結果,對KPI序列進行異常檢測。

      在本實施例中,格局評估結果,采用不同的方法對不同情況下的KPI序列進行異常檢測,例如,當KPI序列具有周期性、沒有趨勢性時,KPI在不同時刻可能出現不同的方差,因此,各級根據KPI序列的不同周期的同一時刻的數據來計算該時刻的標準分數(z-score),根據z-score判斷該時刻的KPI是否異常。當KPI序列具有趨勢性和周期性時,則需要對KPI分解后的包含趨勢信息的序列進行分裂點檢測,然后進行時段異常檢測;然后刪除掉這些異常點,再進行單點異常檢測。

      現有技術中,進行KPI異常檢測時,僅是將KPI序列中包含周期信息的序列去除,根據剩余KPI序列中的數據計算z-score,并根據z-score判斷某一時刻的KPI是否異常,經過試驗證明,該方法檢測到的KPI異常并不準確,而且,很多情況無法檢測到KPI異常,導致KPI異常檢測的準確率和效率很低。本實施例中,對分解獲得的包含周期信息的周期序列進行周期性評估,對包含趨勢信息的趨勢序列進行趨勢性評估,根據KPI序列的周期性和趨勢性分多種情況,具有針對性的采用不同的方法對不同情況下的KPI序列進行檢測,可以準確的檢測出KPI異常,檢測效率高。

      本實施例提供的系統(tǒng)異常檢測方法,服務器獲取業(yè)務系統(tǒng)的KPI序列,對KPI序列進行序列分解,得到包含周期信息的第一KPI序列以及包含趨勢信息的第二KPI序列,對第一KPI序列是否具有周期性進行評估處理,并且對第二KPI序列是否具有趨勢性進行評估處理,根據評估結果,對KPI序列進行異常檢測。由于對分解獲得的包含周期信息的周期序列進行周期性評估,對包含趨勢信息的趨勢序列進行趨勢性評估,根據KPI序列的周期性和趨勢性分多種情況,具有針對性的采用不同的方法對不同情況下的KPI序列進行檢測,可以準確的檢測出KPI異常的點,檢測效率高。

      可選地,在圖2所示實施例中,根據評估結果,對KPI序列進行異常檢測,可以包括以下四種方案:

      第一種方案:若第一KPI序列沒有周期性且第二KPI序列沒有趨勢性,則對KPI序列的全部數據建立數據分布進行單點異常檢測。

      在本實施例中,對于這種類型的KPI序列,沒有周期效應,KPI在不同時刻的方差差異較小,同時也沒有趨勢效應,所以可以統(tǒng)一地用所有的數據,構建一個分布,根據這個分布來計算每個點的KPI異常程度。

      第二種方案:若第一KPI序列有周期性且第二KPI序列沒有趨勢性,則對KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測。

      在本實施例中,對于這種類型的KPI序列,由于存在周期效應,KPI在不同時刻可能出現不同的方差,所以需要針對一個周期內的不同時刻單獨進行異常檢測,例如,檢測某天07:00的KPI是否異常時,可以用30天的所有07:00時刻的數據計算trimmed均值和標準差,來進行異常檢測。

      第三種方案:若第一KPI序列沒有周期性且第二KPI序列有趨勢性,則對KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從KPI序列刪除掉異常點,再進行單點異常檢測。

      在本實施例中,這種類型的KPI可能包含時段異常和單點異常。由于只存在趨勢效應,我們用一個變化點(change points)檢測算法修剪的精確線性時間分裂點檢測算法(Pruned Exact Linear Time,簡稱PELT)對KPI序列進行change points檢測,尋找KPI序列發(fā)生趨勢變化的點,用于檢測時段異常;同時對剩余的序列(去除上述異常點后的KPI序列),用第一種方案中的方法,進行單點異常檢測。

      第四種方案:若第一KPI序列有周期性且第二KPI序列有趨勢性,則對第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從KPI序列中刪除異常點,再進行單點異常檢測。

      在本實施例中,這種類型的KPI可能包含時段異常和單點異常。由于存在趨勢效應和周期效應,我們用一個change points檢測算法PELT對KPI序列分解后的趨勢序列(T)進行change points檢測,尋找KPI序列發(fā)生趨勢變化的點,用于檢測時段異常。該方法的好處是可以去除周期效應的干擾;同時對剩余的序列(去除上述異常點后的KPI序列),用第二種方案中的方法,進行單點異常檢測。

      下面針對這四種情況分別詳細描述本實施例的方案。

      圖4為本發(fā)明實施例二提供的系統(tǒng)異常檢測方法的流程圖。本實施例涉及的上述第一種方案,即若第一KPI序列沒有周期性且第二KPI序列沒有趨勢性,則對KPI序列的全部數據建立數據分布進行單點異常檢測的具體實現方式。如圖4所示,該方法包括以下步驟:

      步驟201、根據KPI序列的全部數據計算KPI序列的截尾均值和KPI序列的標準差。

      在本實施例中,截尾(trimmed)均值是指按時間順序刪除KPI序列的全部數據中部分最大值和最小值后,用剩余數據計算的平均值,例如,刪除KPI序列的全部數據中的5%的最大值和5%的最小值,用剩余的數據計算平均值,該平均值即為trimmed均值;標準差也是用KPI序列的全部的數據來計算。

      步驟202、根據截尾均值和標準差計算KPI序列中每個數據的z-score。

      在本實施例中,根據公式來計算z-score,其中,xn為KPI序列中的數據。

      步驟203、將z-score大于第一預設閾值或z-score小于第二預設閾值的數據標記為異常數據,得到包括異常數據的第三KPI序列。

      在本實施例中,第一預設閾值和第二預設閾值可以根據實際需求來設置,例如,可以將第一預設閾值設置為4.5、5,將第二預設閾值設置為-4.5、-5等,若該數據的z-score大于4.5或者小于-4.5,則被標記為異常數據

      步驟204、對第三KPI序列進行異常結果后過濾,并輸出異常檢測結果。

      在本實施例中,異常結果后過濾是指根據業(yè)務要求而設置篩選條件,通過篩選的才算為異常,用于對異常檢測結果的后過濾,例如,若帥選條件為丟包率大于5%,則對第三KPI序列中數據的丟包率進行判斷,若數據的丟包率大于5%,則將該數據輸出,否則,將該數據濾除,則異常檢測結果中包括第三KPI序列中丟包率大于5%的數據。本實施例中的篩選條件還可以是其它的限制條件,本領域技術人員可以根據實際情況來設置,本發(fā)明中不加以限制。

      本實施例提供的系統(tǒng)異常檢測方法,由于第一KPI序列沒有周期性且第二KPI序列沒有趨勢性,KPI在不同時刻的方差差異較小,同時也沒有趨勢效應,所以可以統(tǒng)一地用所有的數據,計算KPI序列中每個數據的z-score根據z-score判斷每個點的KPI異常程度,方法簡單,檢測效率高。

      圖5為本發(fā)明實施例三提供的系統(tǒng)異常檢測方法的流程圖。本實施例涉及的上述第二種方案,即若第一KPI序列有周期性且第二KPI序列沒有趨勢性,則對KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測的具體實現方式。如圖5所示,該方法包括以下步驟:

      步驟301、根據KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差。

      步驟302、根據截尾均值和標準差計算相同時刻KPI的標準分數z-score。

      步驟303、將z-score大于第一預設閾值或z-score小于第二預設閾值的數據標記為異常數據,得到包括異常數據的第四KPI序列。

      步驟304、對第四KPI序列進行異常結果后過濾,并輸出異常檢測結果。

      本實施例提供的系統(tǒng)異常檢測方法與圖4所示實施例的方法不同的是,本實施例的輸入序列為KPI序列各周期中的同一時刻的數據,可以用{xi,xi+t,xi+2t,…,xi+kt}表示KPI序列各周期中同一個時刻一個子序列,t表示周期,k=1,2,3,…;例如,KPI序列包括30天的數據,周期t為24小時,若需要檢測某一天07:00的KPI是否異常,則可以將這30天中每天07:00的數據構成輸入序列,計算該時刻的z-score,從而判斷該點的KPI是否異常。本實施例中其它步驟的方法實現原理與圖4所示實施例的方法實現原理類似,此處不再贅述。

      本實施例提供的系統(tǒng)異常檢測方法,由于第一KPI序列有周期性且第二KPI序列沒有趨勢性,存在周期效應,KPI在不同時刻可能出現不同的方差,因此,根據KPI序列各周期中的同一時刻的數據計算z-score,不論計算哪一個周期中統(tǒng)一時刻的z-score,其標準差均是相同的,從而避免了不同時刻的方差差異造成的KPI異常檢測不準確的問題。

      圖6為本發(fā)明實施例四提供的系統(tǒng)異常檢測方法的流程圖。本實施例涉及的上述第三種方案,即第一KPI序列沒有周期性且第二KPI序列有趨勢性,則對KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從KPI序列刪除掉異常點,再進行單點異常檢測的具體實現方式。如圖6所示,該方法包括以下步驟:

      步驟401、根據變化點檢測算法從KPI序列中確定分裂點,將KPI序列分為多個KPI子序列。

      在本實施例中,變化點檢測算法可以為PELT算法,從KPI序列的全部數據找到變化點(change points),也即分裂點,根據change points將KPI序列分為多個KPI子序列。例如,KPI序列包括某個月1號到30號的KPI數據,通過PELT算法檢測出,1號-10號的KPI值均為10,11號到20的KPI值均為100,21號-30號的KPI值均為12,則可以將1號-10號的數據劃分為一個KPI子序列,將11號到20的數據劃分為一個KPI子序列,將21號-30號的數據劃分為一個KPI子序列。

      步驟402、將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value。

      在本實施例中,可以將均值最大或者均值最小的KPI子序列標記為M序列,將M序列的均值與其他的KPI子序列的均值進行比較,獲取每個KPI子序列的p值p-value。當預先定義的異常為均值越大越異常時,則選擇均值最大的這些點為異常點。反之,如果預先定義均值越小越異常時,則選擇均值最小的這些點為異常點。

      步驟403、對每個KPI子序列的p-value進行多重比較校正,獲得每個KPI子序列的校正p值adj.p-value。

      步驟404、將均值最大或者均值最小的KPI子序列與adj.p-value大于預設閾值的KPI子序列標記為第一異常KPI序列。

      在本實施例中,可以根據實際需求設置預設閾值,一般預設閾值可以為0.05,若adj.p-value大于0.05,則將該KPI子序列標記為異常KPI序列??梢詫序列和異常KPI序列標記為D1序列。

      本實施例中,步驟401-步驟404為時段異常檢測的過程。

      步驟405、從KPI序列中減去第一異常KPI序列,獲得第五KPI序列。

      在本實施例中,從KPI序列中減去第一異常KPI序列相當于將第一異常KPI序列中的數據均設置為缺失數據。

      步驟406、對第五KPI序列的全部數據建立數據分布進行單點異常檢測,獲得第二異常KPI序列。

      在本實施例中,對第五KPI序列的全部數據建立數據分布進行單點異常檢測的方法與圖4所示實施例的方法相同,此處不再贅述。

      步驟407、對第一異常KPI序列和第二異常KPI序列異常結果后過濾,并輸出異常檢測結果。

      本實施例提供的系統(tǒng)異常檢測方法,當第一KPI序列沒有周期性且第二KPI序列有趨勢性時,這種類型的KPI可能包含時段異常和單點異常,由于只存在趨勢效應,我們用PELT對KPI序列進行change points檢測,尋找KPI序列發(fā)生趨勢變化的點,從而檢測時段異常;同時對剩余的序列用第一種方案中的方法,進行單點異常檢測,不僅可以檢測時段異常,還可以檢測單點異常,可以準確的檢測出發(fā)生異常的KPI,保證的異常檢測的準確性。

      圖7為本發(fā)明實施例五提供的系統(tǒng)異常檢測方法的流程圖。本實施例涉及的上述第四種方案,即第一KPI序列有周期性且第二KPI序列有趨勢性,則對第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從第KPI序列中刪除異常點,再進行單點異常檢測的具體實現方式。如圖7所示,該方法包括以下步驟:

      步驟501、根據變化點檢測算法從第二KPI序列中確定分裂點,將第二KPI序列分為多個KPI子序列。

      在本實施例中,與圖6所示實施例的方法不同的是,本實施例中的輸入數列為第二KPI序列。

      步驟502、將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value。

      步驟503、對每個KPI子序列的p-value進行多重比較校正,獲得每個KPI子序列的校正p值adj.p-value。

      步驟504、將均值最大或者均值最小的KPI子序列與adj.p-value大于預設閾值的KPI子序列標記為第三異常KPI序列;

      步驟505、從KPI序列中減去第三異常KPI序列,獲得第六KPI序列。

      步驟506、對第六KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,獲取第四異常KPI序列。

      在本實施例中,對第六KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,獲取第四異常KPI序列的方法和圖5所示實施例中的方法相同,此處不再贅述。

      步驟507、對第三異常KPI序列和第四異常KPI序列異常結果后過濾,并輸出異常檢測結果。

      本實施例提供的系統(tǒng)異常檢測方法,當第一KPI序列有周期性且第二KPI序列有趨勢性時,這種類型的KPI可能包含時段異常和單點異常。由于存在趨勢效應和周期效應,我們用PELT算法對KPI序列分解后的趨勢序列(T)進行change points檢測,尋找KPI序列發(fā)生趨勢變化的點,用于檢測時段異常,可以有效去除周期效應的干擾;同時對剩余的序列用第二種方案中的方法,進行單點異常檢測,不僅保證了異常檢測的準確性,也提高了異常檢測的效率。

      圖8為本發(fā)明實施例六提供的系統(tǒng)異常檢測方法的流程圖。本實施例是在圖2-圖7所示實施例的基礎上,對部分方法步驟細化,如圖8所示,該方法包括以下步驟:

      步驟601、在業(yè)務系統(tǒng)上進行業(yè)務數據采集。

      在本實施例中,服務器可以通過基站對業(yè)務系統(tǒng)上業(yè)務數據進行采集。

      步驟602、根據業(yè)務規(guī)則對所采集的業(yè)務數據進行KPI計算,得到原始KPI序列。

      在本實施例中,業(yè)務規(guī)則可以為計算數據的丟包率對應的KPI,也可以為計算通話質量對應的KPI等。

      步驟603、對原始KPI序列進行預處理,得到KPI序列,預處理包括對極端離群的數據點處理和對缺失數據的處理。

      在本實施例中,極端離群的數據點是指嚴重偏離KPI正常分布的數據點,可以通過極端值來判斷該數據點是否為極端離群的數據點。比如,在通常情況下,KPI只在0-10之間波動,而突然有一個時刻,KPI的取值為100,那么這個值就是一種極端值,該數據點即為極端離群的數據點。通常,可以用“偏離均值5倍標準差”的這個標準來界定極端值。同時,由于在通信系統(tǒng)中存在閑時和忙時的問題,我們對一個周期內不同的時刻單獨進行極端值檢測,比如在判斷某天07:00的數據是否是極端值時,只根據所有天07:00的數據來進行判斷,從而避免了不同時刻的KPI之間存在方差差異,造成異常檢測不準確的問題。圖9為極端離群的數據點處理方法流程圖,如圖9所示,該方法包括以下步驟:

      步驟6031、根據KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差。

      步驟6032、根據截尾均值和標準差計算相同時刻KPI的標準分數z-score;

      步驟6033、判斷z-score的絕對值是否大于第三預設閾值,若是,則分別執(zhí)行步驟6034,若否,則執(zhí)行步驟6035。

      步驟6034、將z-score對應的數據標記為異常數據進行輸出,并將異常數據設置為缺失數據,返回執(zhí)行步驟6031。

      步驟6035、輸出z-score對應的數據。

      在本實施例中,缺失數據處理是指將KPI序列中包含的缺失數據補齊。缺失數據有兩個來源,一種是原來就有的缺失,一種有由于極端離群的數據點處理產生的缺失。可以用每個周期的同一時刻的值的加權平均來估計缺失數據。對缺失數據的處理,包括:根據公式計算KPI序列的加權平均值hat(xi);采用KPI序列的加權平均值hat(xi)代替KPI序列中的缺失數據。其中,xi和xi+kt為KPI序列中不同周期同一時刻的數據,wk為KPI序列中的數據對應的權重,,其中權重隨著相隔周期的增加而下降,t為KPI序列的周期,k為大于等于1的正整數。

      步驟604、對KPI序列進行序列分解,得到包含周期信息的第一KPI序列以及包含趨勢信息的第二KPI序列。

      步驟605、根據公式計算第一KPI序列的周期值Effects。

      其中,Var(S)為第一KPI序列的方差,Var(KPI)為KPI序列的方差。

      步驟606、若第一KPI序列的周期值Effects大于預設周期閾值,則第一KPI序列具有周期性。

      在本實施例中,預設周期閾值可以設置為0.5,但并不以此為限。

      步驟607、根據公式計算第二KPI序列的趨勢值EffectT。

      其中,為Var(T)第二KPI序列的方差,Var(KPI)為KPI序列的方差。

      步驟608、若第二KPI序列的趨勢值EffectT大于預設趨勢閾值,則第二KPI序列具有趨勢性。

      在本實施例中,預設趨勢閾值可以設置為0.5,但并不以此為限。

      步驟609、根據評估結果,對KPI序列進行異常檢測。

      本實施提供的系統(tǒng)異常檢測方法,適用于多個網絡KPI的異常檢測,相比于基于預測的異常檢測算法和Seasonal Hybrid ESD算法,本發(fā)明的方法特異度和敏感度更高,并且,本發(fā)明實施例提出的系統(tǒng)異常檢測方法可以區(qū)分單點異常和時段異常,為業(yè)務上的應用提供了更準確的支撐。

      本發(fā)明提供的系統(tǒng)異常檢測方法還可應用于其他方面的異常檢測,比如用戶的異常行為檢測,還可用于生成業(yè)務告警,輔助網絡運維。

      圖10為本發(fā)明實施例七提供的系統(tǒng)異常檢測裝置的結構示意圖。如圖10所示,該裝置包括獲取模塊11、分解模塊12、評估模塊13和檢測模塊14。獲取模塊11用于獲取業(yè)務系統(tǒng)的KPI序列;分解模塊12用于對KPI序列進行序列分解,得到包含周期信息的第一KPI序列以及包含趨勢信息的第二KPI序列;評估模塊13用于對第一KPI序列是否具有周期性進行評估處理,并且對第二KPI序列是否具有趨勢性進行評估處理;檢測模塊14用于根據評估結果,對KPI序列進行異常檢測。

      本實施例的裝置,可用于執(zhí)行圖2所示方法實施例的技術方案,其實現原理和技術效果類似,此處不再贅述。

      可選地,若評估模塊13確定第一KPI序列沒有周期性且第二KPI序列沒有趨勢性,則檢測模塊14對KPI序列的全部數據建立數據分布進行單點異常檢測;若評估模塊13確定第一KPI序列有周期性且第二KPI序列沒有趨勢性,則檢測模塊14對KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測;若評估模塊13確定第一KPI序列沒有周期性且第二KPI序列有趨勢性,則檢測模塊14對KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從KPI序列刪除掉異常點,再進行單點異常檢測;若評估模塊13確定第一KPI序列有周期性且第二KPI序列有趨勢性,則檢測模塊14對第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從KPI序列中刪除異常點,再進行單點異常檢測。

      可選地,若評估模塊13確定第一KPI序列沒有周期性且第二KPI序列沒有趨勢性,則檢測模塊14對KPI序列的全部數據建立數據分布進行單點異常檢測,包括:檢測模塊14根據KPI序列的全部數據計算KPI序列的截尾均值和KPI序列的標準差;根據截尾均值和標準差計算KPI序列中每個數據的標準分數z-score;將z-score大于第一預設閾值或z-score小于第二預設閾值的數據標記為異常數據,得到包括異常數據的第三KPI序列;對第三KPI序列進行異常結果后過濾,并輸出異常檢測結果。

      可選地,若評估模塊13確定第一KPI序列有周期性且第二KPI序列沒有趨勢性,則檢測模塊14對KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,包括:檢測模塊14根據KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差;根據截尾均值和標準差計算相同時刻KPI的標準分數z-score;將z-score大于第一預設閾值或z-score小于第二預設閾值的數據標記為異常數據,得到包括異常數據的第四KPI序列;對第四KPI序列進行異常結果后過濾,并輸出異常檢測結果。

      可選地,若評估模塊13確定第一KPI序列沒有周期性且第二KPI序列有趨勢性,則檢測模塊14對KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從KPI序列刪除掉異常點,再進行單點異常檢測,包括:檢測模塊14根據變化點檢測算法從KPI序列中確定分裂點,將KPI序列分為多個KPI子序列;將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value;對每個KPI子序列的p-value進行多重比較校正,獲得每個KPI子序列的校正p值adj.p-value;將均值最大或者均值最小的KPI子序列與adj.p-value大于預設閾值的KPI子序列標記為第一異常KPI序列;從KPI序列中減去第一異常KPI序列,獲得第五KPI序列;對第五KPI序列的全部數據建立數據分布進行單點異常檢測,獲得第二異常KPI序列;對第一異常KPI序列和第二異常KPI序列異常結果后過濾,并輸出異常檢測結果。

      可選地,若評估模塊13確定第一KPI序列有周期性且第二KPI序列有趨勢性,則檢測模塊14對第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從KPI序列中刪除異常點,再進行單點異常檢測,包括:檢測模塊14根據變化點檢測算法從第二KPI序列中確定分裂點,將第二KPI序列分為多個KPI子序列;將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value;對每個KPI子序列的p-value進行多重比較校正,獲得每個KPI子序列的校正p值adj.p-value;將均值最大或者均值最小的KPI子序列與adj.p-value大于預設閾值的KPI子序列標記為第三異常KPI序列;從KPI序列中減去第三異常KPI序列,獲得第六KPI序列;對第六KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,獲取第四異常KPI序列;對第三異常KPI序列和第四異常KPI序列異常結果后過濾,并輸出異常檢測結果。

      可選地,評估??鞂Φ谝籏PI序列是否具有周期性進行評估處理,包括:評估??旄鶕接嬎愕谝籏PI序列的周期值Effects;其中,Var(S)為第一KPI序列的方差,Var(KPI)為KPI序列的方差;若第一KPI序列的周期值Effects大于預設周期閾值,則第一KPI序列具有周期性。

      可選地,評估模塊13對第二KPI序列是否具有趨勢性進行評估處理,包括:評估模塊13根據公式計算第二KPI序列的趨勢值EffectT;其中,為Var(T)第二KPI序列的方差,Var(KPI)為KPI序列的方差;若第二KPI序列的趨勢值EffectT大于預設趨勢閾值,則第二KPI序列具有趨勢性。

      可選地,獲取模塊11具體用于在業(yè)務系統(tǒng)上進行業(yè)務數據采集;根據業(yè)務規(guī)則對所采集的業(yè)務數據進行KPI計算,得到原始KPI序列;對原始KPI序列進行預處理,得到KPI序列,預處理包括對極端離群的數據點處理和對缺失數據的處理。

      可選地,獲取模塊11對極端離群的數據點處理,包括:獲取模塊11根據KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差;根據截尾均值和標準差計算相同時刻KPI的標準分數z-score;判斷z-score的絕對值是否大于第三預設閾值,若是,則將z-score對應的數據標記為異常數據進行輸出,并將異常數據設置為缺失數據,返回執(zhí)行根據KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差的步驟;若否,則輸出z-score對應的數據。

      可選地,獲取模塊11對缺失數據的處理,包括:獲取模塊11根據公式計算KPI序列的加權平均值hat(xi);其中,xi和xi+kt為KPI序列中不同周期同一時刻的數據,wk為KPI序列中的數據對應的權重,t為KPI序列的周期,k為大于等于1的正整數;采用KPI序列的加權平均值hat(xi)代替KPI序列中的缺失數據。

      本實施例的裝置,可用于執(zhí)行圖2~圖9所示任一方法實施例的技術方案,其實現原理和技術效果類似,此處不再贅述。

      圖11為本發(fā)明實施例八提供的服務器的結構示意圖。如圖11所示,所述服務器包含一個或多個端口508,與收發(fā)器(transceiver)506相耦合。收發(fā)器506可以是發(fā)射器,接收器或其組合,從其他網絡節(jié)點通過端口508發(fā)送或接收數據包。處理器502耦合到收發(fā)器506,用于處理數據包。處理器502可包含一個或多個多核處理器和/或存儲器504。處理器502可以是一個通用處理器,專用集成電路(application specific integrated circuit,ASIC),或數字信號處理器(DSP)。

      存儲器504可為非瞬時性的存儲介質,與處理器502相耦合,用于保存不同類型的數據。存儲器504可包含只讀存儲器(read only memory,ROM),隨機存取存儲器(random access memory,RAM)或者可存儲信息和指令的其他類型的動態(tài)存儲設備,也可以是磁盤存儲器。存儲器504可用于保存實現圖2或圖3所述相關方法的指令。

      處理器502具體用于執(zhí)行以下操作:獲取業(yè)務系統(tǒng)的KPI序列;對KPI序列進行序列分解,得到包含周期信息的第一KPI序列以及包含趨勢信息的第二KPI序列;對第一KPI序列是否具有周期性進行評估處理,并且對第二KPI序列是否具有趨勢性進行評估處理;根據評估結果,對KPI序列進行異常檢測。

      可選地,處理器502根據評估結果,對KPI序列進行異常檢測,包括:若第一KPI序列沒有周期性且第二KPI序列沒有趨勢性,則處理器502對KPI序列的全部數據建立數據分布進行單點異常檢測;若第一KPI序列有周期性且第二KPI序列沒有趨勢性,則處理器502對KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測;若第一KPI序列沒有周期性且第二KPI序列有趨勢性,則處理器502對KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從KPI序列刪除掉異常點,再進行單點異常檢測;若第一KPI序列有周期性且第二KPI序列有趨勢性,則處理器502對第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從KPI序列中刪除異常點,再進行單點異常檢測。

      可選地,若第一KPI序列沒有周期性且第二KPI序列沒有趨勢性,則處理器502對KPI序列的全部數據建立數據分布進行單點異常檢測,包括:處理器502根據KPI序列的全部數據計算KPI序列的截尾均值和KPI序列的標準差;根據截尾均值和標準差計算KPI序列中每個數據的標準分數z-score;將z-score大于第一預設閾值或z-score小于第二預設閾值的數據標記為異常數據,得到包括異常數據的第三KPI序列;對第三KPI序列進行異常結果后過濾,并輸出異常檢測結果。

      可選地,若第一KPI序列有周期性且第二KPI序列沒有趨勢性,則處理器502對KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,包括:處理器502根據KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差;根據截尾均值和標準差計算相同時刻KPI的標準分數z-score;將z-score大于第一預設閾值或z-score小于第二預設閾值的數據標記為異常數據,得到包括異常數據的第四KPI序列;對第四KPI序列進行異常結果后過濾,并輸出異常檢測結果。

      可選地,若第一KPI序列沒有周期性且第二KPI序列有趨勢性,則處理器502對KPI序列的全部數據建立分裂點檢測,然后進行時段異常檢測并從KPI序列中刪除掉異常點,再進行單點異常檢測,包括:處理器502根據變化點檢測算法從KPI序列中確定分裂點,將KPI序列分為多個KPI子序列;將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value;對每個KPI子序列的p-value進行多重比較校正,獲得每個KPI子序列的校正p值adj.p-value;將均值最大或者均值最小的KPI子序列與adj.p-value大于預設閾值的KPI子序列標記為第一異常KPI序列;從KPI序列中減去第一異常KPI序列,獲得第五KPI序列;對第五KPI序列的全部數據建立數據分布進行單點異常檢測,獲得第二異常KPI序列;對第一異常KPI序列和第二異常KPI序列異常結果后過濾,并輸出異常檢測結果。

      可選地,若第一KPI序列有周期性且第二KPI序列有趨勢性,則處理器502對第二KPI序列進行分裂點檢測,然后進行時段異常檢測并從KPI序列中刪除異常點,再進行單點異常檢測,包括:處理器502根據變化點檢測算法從第二KPI序列中確定分裂點,將第二KPI序列分為多個KPI子序列;將均值最大或者均值最小的KPI子序列與其他KPI子序列的均值差異進行比較,獲取每個KPI子序列的p值p-value;對每個KPI子序列的p-value進行多重比較校正,獲得每個KPI子序列的校正p值adj.p-value;將均值最大或者均值最小的KPI子序列與adj.p-value大于預設閾值的KPI子序列標記為第三異常KPI序列;從KPI序列中減去第三異常KPI序列,獲得第六KPI序列;對第六KPI序列各周期中的同一時刻的數據建立數據分布進行單點異常檢測,獲取第四異常KPI序列;對第三異常KPI序列和第四異常KPI序列異常結果后過濾,并輸出異常檢測結果。

      可選地,處理器502對第一KPI序列是否具有周期性進行評估處理,包括:處理器502根據公式計算第一KPI序列的周期值Effects;其中,Var(S)為第一KPI序列的方差,Var(KPI)為KPI序列的方差;若第一KPI序列的周期值Effects大于預設周期閾值,則第一KPI序列具有周期性。

      可選地,處理器502對第二KPI序列是否具有趨勢性進行評估處理,包括:處理器502根據公式計算第二KPI序列的趨勢值EffectT;其中,為Var(T)第二KPI序列的方差,Var(KPI)為KPI序列的方差;若第二KPI序列的趨勢值EffectT大于預設趨勢閾值,則第二KPI序列具有趨勢性。

      可選地,處理器502獲取業(yè)務系統(tǒng)的KPI序列,包括:處理器502在業(yè)務系統(tǒng)上進行業(yè)務數據采集;根據業(yè)務規(guī)則對所采集的業(yè)務數據進行KPI計算,得到原始KPI序列;對原始KPI序列進行預處理,得到KPI序列,預處理包括對極端離群的數據點處理和對缺失數據的處理。

      可選地,處理器502對極端離群的數據點處理,包括:處理器502根據KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差;根據截尾均值和標準差計算相同時刻KPI的標準分數z-score;判斷z-score的絕對值是否大于第三預設閾值,若是,則將z-score對應的數據標記為異常數據進行輸出,并將異常數據設置為缺失數據,返回執(zhí)行根據KPI序列各周期中的同一時刻的數據計算相同時刻KPI的截尾均值和標準差的步驟;若否,則輸出z-score對應的數據。

      可選地,處理器502對缺失數據的處理,包括:處理器502根據公式計算KPI序列的加權平均值hat(xi);其中,xi和xi+kt為KPI序列中不同周期同一時刻的數據,wk為KPI序列中的數據對應的權重,t為KPI序列的周期,k為大于等于1的正整數;采用KPI序列的加權平均值hat(xi)代替KPI序列中的缺失數據。

      本實施例的服務,可以用于執(zhí)行圖2-圖9所示任一方法實施例的技術方案,其實現原理和技術效果類似,此處不再贅述。

      本領域普通技術人員可以理解:實現上述各方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質包括:ROM、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質。

      最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的范圍。

      當前第1頁1 2 3 
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1