(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-09-12
(54)【発明の名称】異常検出方法および装置
(51)【国際特許分類】
G06N 20/00 20190101AFI20220905BHJP
【FI】
G06N20/00 130
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021578200
(86)(22)【出願日】2020-05-19
(85)【翻訳文提出日】2021-12-30
(86)【国際出願番号】 CN2020090936
(87)【国際公開番号】W WO2021004161
(87)【国際公開日】2021-01-14
(31)【優先権主張番号】201910605053.9
(32)【優先日】2019-07-05
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】510020354
【氏名又は名称】中▲興▼通▲訊▼股▲ふぇん▼有限公司
【氏名又は名称原語表記】ZTE CORPORATION
【住所又は居所原語表記】ZTE Plaza Keji Road South,Hi-Tech Industrial Park,Nanshan District Shenzhen,Guangdong 518057 China
(74)【代理人】
【識別番号】100199819
【氏名又は名称】大行 尚哉
(74)【代理人】
【識別番号】100087859
【氏名又は名称】渡辺 秀治
(72)【発明者】
【氏名】杜永生
(72)【発明者】
【氏名】羅穎燕
(72)【発明者】
【氏名】潘春錦
(57)【要約】
【課題】本願は、異常検出方法及び装置を開示する。
【解決手段】前記方法は、異常検出アルゴリズムごとに、収集された第1データの第1特徴データを、前記異常検出アルゴリズムにより検出する(Nは1以上の整数)ことと、1種類以上の異常検出アルゴリズムの第1検出結果が異常である場合、前記第1データの第1特徴データに対して信頼度チェックを行って第1チェック結果を得ることと、第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定することと、を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
N種類の異常検出アルゴリズムのそれぞれについて、収集された第1データの第1特徴データを、前記異常検出アルゴリズムにより検出して第1検出結果を得ることであって、そのうち、Nは1以上の整数であることと、
1種類以上の異常検出アルゴリズムの第1検出結果が異常である場合、前記第1データの第1特徴データに対して信頼度チェックを行って第1チェック結果を得ることと、
第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定することと、
を含む、
ことを特徴とする異常検出方法。
【請求項2】
この方法は、さらに、以下のいずれか一つ又は複数を含み、
前記第2検出結果が異常であり、かつ、ユーザの異常キャンセル情報を受信した場合、前記第1データを、正常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加することと、
前記第2検出結果が異常であり、かつ、ユーザの異常確認情報を受信した場合、前記第1データを、異常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加することであり、
そのうち、前記アノテーションサンプルライブラリーにおける、正常または異常とラベル付けされたサンプルは、前記異常検出アルゴリズムの教師あり学習モデルをトレーニングするために用いられ、前記異常検出アルゴリズムは、前記教師あり学習モデルに基づいて前記第1データの第1特徴データを検出して前記第1検出結果を得る、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記の第1データの第1特徴データに対して信頼度チェックを行うことは、
前記第1データの第1特徴データに対して、データ有効性チェック、セキュリティ区間チェック、ネットワーク全体の寄与度チェック、異常継続性チェックの少なくとも一つを行うことを含む、
ことを特徴とする請求項1または2に記載の方法。
【請求項4】
前記の第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定することは、
前記第1検出結果が異常である異常検出アルゴリズムのうちの1種類以上の異常検出アルゴリズムの信頼度が前記第1プリセット閾値以上である場合、前記第2検出結果が異常であると決定することと、
前記第1検出結果が異常である異常検出アルゴリズムの信頼度がいずれも前記第1プリセット閾値よりも小さい場合、前記第1チェック結果を前記第2検出結果とすることのいずれか一つまたは複数を含む、
ことを特徴とする請求項1または2に記載の方法。
【請求項5】
前記異常検出アルゴリズムの信頼度には、前記異常検出アルゴリズムの一致率が含まれる、
ことを特徴とする請求項1または2に記載の方法。
【請求項6】
前記の第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定する前に、さらに、
前記異常検出アルゴリズムごとに、前記異常検出アルゴリズムの一致率を算出することを含む、
ことを特徴とする請求項5に記載の方法。
【請求項7】
前記の異常検出アルゴリズムの一致率を算出することは、
前記一致率として、第1数量と第2数量との比を決定することを含み、
そのうち、前記第1数量は、予め設定された時間内に収集された全ての第2データのうち、前記異常検出アルゴリズムを用いて前記第2データの第2特徴データを検出して得られた第3検出結果と、前記第2データの第2特徴データに対して信頼度チェックを行って得られた第2チェック結果とが同一となる第2データの数量であり、
前記第2数量は、予め設定された時間内に収集された全ての第2データのうち、前記異常検出アルゴリズムを用いて前記第2データの第2特徴データを検出して得られた第3検出結果が異常である第2データの数量である、
ことを特徴とする請求項6に記載の方法。
【請求項8】
プロセッサと、
前記プロセッサによって実行されるときに、請求項1~7のいずれか1項に記載の異常検出方法を実現する命令が記憶されたコンピュータ読み取り可能な記憶媒体と、
を備える、
ことを特徴とする異常検出装置。
【請求項9】
プロセッサによって実行されるときに、請求項1~7のいずれか1項に記載の異常検出方法のステップを実現するコンピュータプログラムが記憶された、
ことを特徴とするコンピュータ読み取り可能な記憶媒体。
【請求項10】
N種類の異常検出アルゴリズムのそれぞれについて、収集された第1データの第1特徴データを、前記異常検出アルゴリズムにより検出して第1検出結果を得、そのうち、Nは1以上の整数であり、1種類以上の異常検出アルゴリズムの第1検出結果が異常である場合、前記第1データの第1特徴データに対して信頼度チェックを行って第1チェック結果を得る検出モジュールと、
第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定する決定モジュールと、
を備える、
ことを特徴とする異常検出装置。
【発明の詳細な説明】
【関連出願の相互参照】
【0001】
本願は、出願番号が201910605053.9であり、出願日が2019年7月5日である中国特許出願に基づいて提出され、この中国特許出願についての優先権を主張するものであり、この中国特許出願の開示全体は、援用により本願に組み込まれるものとする。
【技術分野】
【0002】
本願は、通信の運用および保守の分野に関するが、これらに限定されるものではなく、特に、異常検出方法および装置に関する。
【背景技術】
【0003】
通信の運用および保守の分野では、電気通信運営サービスのいくつかの重要業績評価指標(KPI、Key Performance Index)が検出され、例えば、無線接続率、パケット損失率、現在のユーザ数、トラフィックの増減などが検出される。KPIに異常(または劣化)が生じると、通信環境の変化やソフトハードウェア等の不具合による可能性が高くなる。運用および保守担当者は、問題をタイムリーに発見して解決することで、ユーザの満足度を効果的に向上させ、会社の評判を維持することができる。しかしながら、通信ネットワークではKPIの数が多く、種類が千万でありながら、到来する5G通信技術は、KPI数が倍増し、運用および保守担当者による人手でリアルタイムにネットワーク全体のKPIデータをモニタリング・メンテナンスすることが困難になってきている。このため、通信ネットワークKPIの異常検出と保守に対するインテリジェント化需要もますます強くなっている。
【0004】
かかるインテリジェント化異常検出システムは、機械学習技術に基づくことが多く、通信の運用および保守の分野では、機械学習を導入する初期段階で、確実なモデルをトレーニングして検出するために十分なアノテーションサンプルを蓄積することは基本的に困難である。それは、ラベリングのコストが高い、つまりKPI数が多いと同時に、手動ラベリングの敷居が高く、大量の業務知識に依存する必要があるからである。しかしながら、教師なし学習アルゴリズムに依存することや、教師あり学習アルゴリズムを比較的少ないサンプルでトレーニングすることは、検出結果の信頼度を確保することが難しい。
【発明の概要】
【0005】
本願実施例は、異常検出方法を提供し、この異常検出方法は、N(Nは1以上の整数)種類の異常検出アルゴリズムのそれぞれについて、収集された第1データの第1特徴データを、前記異常検出アルゴリズムにより検出して第1検出結果を得ることと、1種類以上の異常検出アルゴリズムの第1検出結果が異常である場合、前記第1データの第1特徴データに対して信頼度チェックを行って第1チェック結果を得ることと、第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定することと、を含む。
【0006】
本願実施例は、異常検出装置をさらに提供し、この異常検出装置は、プロセッサと、前記プロセッサによって実行されるときに、上記のいずれかの異常検出方法を実現する命令が記憶されたコンピュータ読み取り可能な記憶媒体と、を備える。
【0007】
本願実施例は、プロセッサによって実行されるときに、上記のいずれかの異常検出方法のステップを実現するコンピュータプログラムが記憶されたコンピュータ読み取り可能な記憶媒体をさらに提供する。
【0008】
本願実施例は、異常検出装置をさらに提供し、この異常検出装置は、N(Nは1以上の整数)種類の異常検出アルゴリズムのそれぞれについて、収集された第1データの第1特徴データを、前記異常検出アルゴリズムにより検出して第1検出結果を得、1種類以上の異常検出アルゴリズムの第1検出結果が異常である場合、前記第1データの第1特徴データに対して信頼度チェックを行って第1チェック結果を得る検出モジュールと、第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定する決定モジュールと、を備える。
【0009】
本願実施例の他の特徴および利点は、後述する明細書で述べられ、且つ、部分的に明細書から明らかになったり、本願実施例を実施することにより明らかになったりする。本願実施例の目的および他の利点は、明細書、特許請求の範囲および図面で特定される構成により実現および取得することができる。
【図面の簡単な説明】
【0010】
添付図面は、本願の技術案をさらに理解するために使用され、明細書の一部を構成し、本願の実施例とともに本願の技術案を解釈するためのものであり、本願の技術案に対する制限を構成するものではない。
【
図1】
図1は、本願の一実施例に係る異常検出方法のフローチャートである。
【
図2】
図2は、本願の別の実施例に係る異常検出装置の構成を示す図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら、本願の実施例について詳細に説明する。なお、コンフリクトしない場合、本願における実施例及び実施例における特徴は、互いに任意に組み合わせることができる。
【0012】
添付図面のフローチャートに示されるステップは、例えば、一群のコンピュータが命令を実行可能なコンピュータシステムにおいて実行されてもよい。そして、フローチャートには、論理的な順序が示されているが、ある場合には、示されたステップや記述のステップが、これとは異なる順序で実行されてもよい。
【0013】
図1を参照して、本願の一実施例は異常検出方法を提案し、この方法は、N(Nは1以上の整数)種類の異常検出アルゴリズムのそれぞれについて、収集された第1データの第1特徴データを、前記異常検出アルゴリズムにより検出して第1検出結果を得るステップ100を含む。
【0014】
本願実施例において、第1データは、異常検出を必要とする任意のデータ、例えばKPIデータなどであってもよい。
【0015】
たとえば、セル1の無線リソース制御(RRC、 Radio Resource Control)について、接続成功率指標が確立され、第1データは、時系列数data1および相関データdata2を含む。
【0016】
ここで、data1は、{(t1、x1)、・・・、(tw、xw)}と表記され、twは、検出待ち時刻であり、xwは、twに対応するRRC確立接続成功率の値であり、サンプリング時間粒度はTであり、つまり、tw-tw-1=Tであり、data2は、[xeff、xref、pre_res、obj_id、KPI_id]と表記され、xeffは、tw時刻に対応するRRC確立接続要求数であり、xrefは、RRC確立接続失敗回数であり、pre_resは、tw-1時刻が異常であるか否かであり、obj_idは、セルidであり、KPI_idは、検出待ちKPIのidである。
【0017】
本願実施例において、第1データが収集された後に、第1データからN種類の異常検出アルゴリズムに必要な第1特徴データの全てを一度に抽出し、収集された第1データの第1特徴データを、各異常検出アルゴリズムにより検出して第1検出結果を得る際に、抽出した特徴データの中から、その異常検出アルゴリズムに必要な第1特徴データを選択するようにすることができる。あるいは、収集された第1データの第1特徴データを、各異常検出アルゴリズムにより検出して第1検出結果を得る際に、収集された第1データからその異常検出アルゴリズムに必要な第1特徴データを抽出するようにすることができる。
【0018】
もちろん、全ての第1データについて特徴抽出を行う必要もなく、特徴抽出を行う必要のない第1データについては、第1データをそのまま第1特徴データとすればよい。
【0019】
一つの例示的な実施例において、第1データの特徴データを抽出する前に、まず第1データをクリーニングし、クリーニングされた第1データから特徴データを抽出する。もちろん、全ての第1データについてクリーニングを行う必要もなく、一部の第1データについてクリーニングを行ってもよく、本願実施例はこれを限定するものではない。
【0020】
例えば、上記data1とdata2については、data1をクリーニングするが、data2をクリーニングしない。例えば、data1に欠測値がある場合は、欠測したデータを、例えば線形補間、平均などの方法でパディングする。
【0021】
data1をクリーニングした後、クリーニングされたdata1の中から第1特徴データを抽出する。例えば、クリーニングされたdata1に対して、特徴統計(例えば、最大値xmax、最小値xmin、平均値xmean、中央値xmedian、標準偏差xstdなど)、周期性判定、分類特徴の構築(例えば、twに対してワンホット(one-hot)エンコーディングを行い、時間、曜日等を含む)、xwの前年比・前月比(YoY/ MoM)、一階差分、二階差分などを算出する。
【0022】
data2をそのまま第1特徴データに入れ、最終的に第1特徴データを得て、feature data=[f1、f2、..、fn]と記す。
【0023】
本願実施例において、異常検出アルゴリズムは、統計的学習アルゴリズム(例えば、3-sigma、指数加重移動平均法(EWMA、Exponentially Weighted Moving-Average)、差分統合移動平均自己回帰モデル(ARIMA、Autoregressive Integrated Moving Average Model)など)、教師なし分類アルゴリズム(例えば、アイソレーションフォレスト(Isolation Forest)、単一分類サポートベクターマシン(SVM、Support Vector Machine)(one-class SVM)、変分自己符号化(Variational Auto-Encode)など)、教師あり学習アルゴリズム(例えば、ロジスティック回帰、極端勾配向上(XGBoost、extreme Gradient Boosting)、ディープ・ニューラルネットワーク(DNN、Deep Neural Network)など)によるものであってもよい。本願実施例は、可能な異常データを全て検出することを目的として、複数種の異常検出アルゴリズムを用いて異常検出を行うものである。例えば、上記data1及びdata2から抽出された第1特徴データについて、3-sigma、EWMA、Holt-Winters、及びXGBoostアルゴリズムを用いて検出した第1検出結果は、それぞれ、resl=1、res2=0、res3=0、res4=1であり、ここで、0は正常、1は異常を示す。
【0024】
ステップ101:1種類以上の異常検出アルゴリズムの第1検出結果が異常である場合、前記第1データの第1特徴データに対して信頼度チェックを行って第1チェック結果を得る。
【0025】
本願実施例において、ユーザはインタフェースを介して、信頼度チェックのチェック条件の設定、信頼度評価方法の選択、および、関連パラメータの設定を行うことができ、また、プロファイルを作成することで、チェック条件、信頼度評価方法および関連パラメータを導入することもできる。具体的な実現形態は、本願実施例に限定されない。
【0026】
一つの例示的な実施例において、第1データの第1特徴データに対して信頼度チェックを行うことは、前記第1データの第1特徴データに対して、データ有効性チェック、セキュリティ区間チェック、ネットワーク全体の寄与度チェック、異常継続性チェックの少なくとも一つを行うことを含む。
【0027】
上述の信頼度チェックを行う具体的なルールは、専門家が業務経験、分野知識に基づいて与え、ユーザがページに関連した設定を行ったり、プロファイルを導入したりすることができる。
【0028】
例えば、上記のdata1及びdata2から抽出された第1特徴データについて、第1特徴データに対するデータ有効性チェックは、つまり、RRC確立接続要求数xeffが第2プリセット閾値xeff_thresholdより大きいか否かを検出し、RRC確立接続要求数が第2プリセット閾値よりも大きい場合、第1データが有効であるとして、第1特徴データに対するセキュリティ区間チェックを継続し、RRC確立接続要求数が第2プリセット閾値以下である場合、第1データが無効であるとして、第1データは正常(即ち、第1チェック結果は正常)であり、チェックは終了する。ここで、xeff_thresholdは、専門家が業務経験、分野知識に基づいて与え、具体的には、ユーザがページに関連した設定を行ったり、プロフィールを導入したりすることができる。
【0029】
第1特徴データに対するセキュリティ区間チェックは、つまり、RRC確立接続成功率xwがセキュリティ区間[xmin、xmax]内にあるか否かを検出し、RRC確立接続成功率がセキュリティ区間内にある場合、第1データが正常(即ち、第1チェック結果が正常)であるとして、チェックを終了し、RRC確立接続成功率がセキュリティ区間内にない場合、第1特徴データに対するネットワーク全体の寄与度チェックを継続する。ここで、セキュリティ区間[xmin、xmax]は、専門家が業務経験、分野知識に基づいて与え、具体的には、ユーザがページに関連した設定を行ったり、プロファイルを導入したりすることができる。
【0030】
第1特徴データに対するネットワーク全体の寄与度チェックは、つまり、RRC確立接続失敗回数xrefが第3プリセット閾値xref_thresholdより大きいか否かを検出し、RRC確立接続失敗回数が第3プリセット閾値よりも大きい場合、第1チェック結果が異常であると決定し、RRC確立接続失敗回数が第3プリセット閾値以下である場合、第1特徴データに対する継続性チェックを継続する。ここで、xref_thresholdは、専門家が業務経験、分野知識に基づいて与え、具体的には、ユーザがページに関連した設定を行ったり、プロフィールを導入したりすることができる。
【0031】
第1特徴データに対する継続性チェックは、つまり、tw以前の期間のチェック結果pre_resが異常であるか否か、及び二階差分の値によって継続的に劣化する傾向にあるか否かを判定し、tw以前の期間のチェック結果がいずれも異常であり、かつ劣化する傾向にある場合、第1チェック結果が異常であると決定し、tw以前の期間のチェック結果の少なくとも1つが正常、又は良化する傾向にある場合、第1チェック結果が正常であると決定し、チェックを終了する。
【0032】
ステップ102:第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定する。
【0033】
一つの例示的な実施例において、第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定することは、前記第1検出結果が異常である異常検出アルゴリズムのうちの1種類以上の異常検出アルゴリズムの信頼度が前記第1プリセット閾値以上である場合、前記第2検出結果が異常であると決定すること、及び、前記第1検出結果が異常である異常検出アルゴリズムの信頼度がいずれも前記第1プリセット閾値よりも小さい場合、前記第1チェック結果を前記第2検出結果とすることのいずれか一つまたは複数を含む。
【0034】
例えば、上記のdata1及びdata2から抽出された第1特徴データの検出において、異常検出アルゴリズムXGBoostの信頼度が第1プリセット閾値以上であり、かつ、異常検出アルゴリズム3-sigmaの信頼度が第1プリセット閾値未満の場合、第2検出結果が異常であると決定し、異常検出アルゴリズムXGBoost及び3-sigmaの信頼度がいずれも第1プリセット閾値未満の場合、第1チェック結果を第2検出結果とする。
【0035】
一つの例示的な実施例において、異常検出アルゴリズムの信頼度には、異常検出アルゴリズムの類似度照合、統計検査などが含まれる。例えば、前記異常検出アルゴリズムの一致率(重複率)である。
【0036】
他の例示的な実施例において、この方法は、第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定する前に、前記異常検出アルゴリズムごとに、前記異常検出アルゴリズムの一致率を算出することをさらに含む。
【0037】
一つの例示的な実施例において、異常検出アルゴリズムの一致率を算出することは、前記一致率として、第1数量と第2数量との比を決定することを含む。そのうち、前記第1数量は、予め設定された時間内に収集された全ての第2データのうち、前記異常検出アルゴリズムを用いて第2データの第2特徴データを検出して得られた第3検出結果と、前記第2データの第2特徴データに対して信頼度チェックを行って得られた第2チェック結果とが同一となる第2データの数量であり、前記第2数量は、予め設定された時間内に収集された全ての第2データのうち、前記異常検出アルゴリズムを用いて第2データの第2特徴データを検出して得られた第3検出結果が異常である第2データの数量である。
【0038】
例えば、直近1ヶ月における、全てのセルの、RRC確立接続成功率指標の検出結果である。すなわち、過去1ヶ月に、全てのセルの、RC確立接続成功率指標の全てのサンプルのうち、異常検出アルゴリズムによる検出結果が異常であるサンプルを用いて、合計でm個あると仮定し、かつ、各々の異常検出アルゴリズムによるサンプル毎の検出結果と、収集したデータに対する信頼度チェックによるチェック結果とを記録した上で、異常検出アルゴリズムiの、チェック結果と一致するサンプル数ciを算出すると、一致率はci/mとなる。
【0039】
本願の別の実施例において、この方法は、以下のいずれか一つ又は複数を更に含み、すなわち、前記第2検出結果が異常であり、かつ、ユーザの異常キャンセル情報を受信した場合、前記第1データを、正常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加することと、前記第2検出結果が異常であり、かつ、ユーザの異常確認情報を受信した場合、前記第1データを、異常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加することであり、そのうち、前記アノテーションサンプルライブラリーにおける、正常または異常とラベル付けされたサンプルは、前記異常検出アルゴリズムの教師あり学習モデルをトレーニングするために用いられ、前記異常検出アルゴリズムは、前記教師あり学習モデルに基づいて前記第1データの第1特徴データを検出して第1検出結果を得る。第1データをアノテーションサンプルとしてアノテーションサンプルライブラリーに追加し、時間の経過に伴ってアノテーションサンプルライブラリーに蓄積されるアノテーションサンプルの数が多くなるので、教師あり学習や半教師あり学習に基づく異常検出アルゴリズムは、新たに追加したアノテーションサンプルを適用して増分学習したり、教師あり学習モデルを定期的に再度トレーニングしたりすることで、教師あり学習モデルの信頼性が向上し、異常検出アルゴリズムの検出精度が向上する。
【0040】
すなわち、第2検出結果が異常である場合、異常情報が表示され、例えば、異常情報は、異常データ(すなわち、第1データ)に対応する対象名称「セル1」、発生時間tw、KPI名称「RRC確立接続成功率」、KPI値xwなどを含む。ユーザは、異常確認情報を入力して異常を確認したり、異常キャンセル情報を入力して異常を取消したり、何もしない操作を選択したりすることができる。ユーザが異常確認情報を入力する場合、第1データを、異常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加し、ユーザが異常キャンセル情報を入力する場合、第1データを、正常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加する。
【0041】
本願実施例は、複数種の異常検出アルゴリズムによる検出結果および信頼度のチェック結果に基づいて最終的な検出結果を決定するようにしたので、信頼度のチェックが専門家の業務経験や分野知識による信頼度のチェックとなるため、検出結果の信頼度が向上する。
【0042】
本願の別の実施例では、プロセッサと、前記プロセッサによって実行されるときに、上記のいずれかの異常検出方法を実現する命令が記憶されたコンピュータ読み取り可能な記憶媒体と、を備える異常検出装置が提案される。
【0043】
本願の別の実施例では、プロセッサによって実行されるときに、上記のいずれかの異常検出方法のステップを実現するコンピュータプログラムが記憶されたコンピュータ読み取り可能な記憶媒体が提案される。
【0044】
図2を参照して、本願の別の実施例では異常検出装置が提案され、N(Nは1以上の整数)種類の異常検出アルゴリズムのそれぞれについて、収集された第1データの第1特徴データを、前記異常検出アルゴリズムにより検出して第1検出結果を得、1種類以上の異常検出アルゴリズムの第1検出結果が異常である場合、前記第1データの第1特徴データに対して信頼度チェックを行って第1チェック結果を得る検出モジュール201と、第1検出結果が異常である異常検出アルゴリズムの信頼度が第1プリセット閾値以上であるか否かと、第1チェック結果とにより、第2検出結果を決定する決定モジュール202と、備える。
【0045】
本願実施例において、第1データは、異常検出を必要とする任意のデータ、例えばKPIデータなどであってもよい。
【0046】
たとえば、セル1の無線リソース制御(RRC、 Radio Resource Control)について、接続成功率指標が確立され、第1データは、時系列数data1および相関データdata2を含む。
【0047】
ここで、data1は、{(t1、x1)、・・・、(tw、xw)}と表記され、twは、検出待ち時刻であり、xwは、twに対応するRRC確立接続成功率の値であり、サンプリング時間粒度はTであり、つまり、tw-tw-1=Tであり、data2は、[xeff、xref、pre_res、obj_id、KPI_id]と表記され、xeffは、tw時刻に対応するRRC確立接続要求数であり、xrefは、RRC確立接続失敗回数であり、pre_resは、tw-1時刻が異常であるか否かであり、obj_idは、セルidであり、KPI_idは、検出待ちKPIのidである。
【0048】
本願実施例において、検出モジュール201は、第1データを収集した後に、第1データからN種類の異常検出アルゴリズムに必要な第1特徴データの全てを一度に抽出し、収集された第1データの第1特徴データを、各異常検出アルゴリズムにより検出して第1検出結果を得る際に、抽出した特徴データの中から、その異常検出アルゴリズムに必要な第1特徴データを選択することができる。あるいは、検出モジュール201は、収集された第1データの第1特徴データを、各異常検出アルゴリズムにより検出して第1検出結果を得る際に、収集された第1データからその異常検出アルゴリズムに必要な第1特徴データを抽出する。
【0049】
もちろん、全ての第1データについて特徴抽出を行う必要もなく、特徴抽出を行う必要のない第1データについては、第1データをそのまま第1特徴データとすればよい。
【0050】
一つの例示的な実施例において、検出モジュール201は、第1データの特徴データを抽出する前に、まず第1データをクリーニングし、クリーニングされた第1データから特徴データを抽出する。もちろん、全ての第1データについてクリーニングを行う必要もなく、一部の第1データについてクリーニングを行ってもよく、本願実施例はこれを限定するものではない。
【0051】
例えば、上記data1とdata2については、data1をクリーニングするが、data2をクリーニングしない。例えば、data1に欠測値がある場合は、欠測したデータを、例えば線形補間、平均などの方法でパディングする。
【0052】
data1をクリーニングした後、クリーニングされたdata1の中から第1特徴データを抽出する。例えば、クリーニングされたdata1に対して、特徴統計(例えば、最大値xmax、最小値xmin、平均値xmean、中央値xmedian、標準偏差xstdなど)、周期性判定、分類特徴の構築(例えば、twに対してワンホット(one-hot)エンコーディングを行い、時間、曜日等を含む)、xwの前年比・前月比(YoY/ MoM)、一階差分、二階差分などを算出する。
【0053】
data2をそのまま第1特徴データに入れ、最終的に第1特徴データを得て、feature data=[f1、f2、..、fn]と記す。
【0054】
本願実施例において、異常検出アルゴリズムは、統計的学習アルゴリズム(例えば、3-sigma、指数加重移動平均法(EWMA、Exponentially Weighted Moving-Average)、差分統合移動平均自己回帰モデル(ARIMA、Autoregressive Integrated Moving Average Model)など)、教師なし分類アルゴリズム(例えば、アイソレーションフォレスト(Isolation Forest)、単一分類サポートベクターマシン(SVM、Support Vector Machine)(one-class SVM)、変分自己符号化(Variational Auto-Encode)など)、教師あり学習アルゴリズム(例えば、ロジスティック回帰、極端勾配向上(XGBoost、extreme Gradient Boosting)、ディープ・ニューラルネットワーク(DNN、Deep Neural Network)など)によるものであってもよい。本願実施例は、可能な異常データを全て検出することを目的として、複数種の異常検出アルゴリズムを用いて異常検出を行うものである。例えば、上記data1及びdata2から抽出された第1特徴データについて、3-sigma、EWMA、Holt-Winters、及びXGBoostアルゴリズムを用いて検出した第1検出結果は、それぞれ、resl=1、res2=0、res3=0、res4=1であり、ここで、0は正常、1は異常を示す。
【0055】
本願実施例において、ユーザはインタフェースを介して、信頼度チェックのチェック条件の設定、信頼度評価方法の選択、および、関連パラメータの設定を行うことができ、また、プロファイルを作成することで、チェック条件、信頼度評価方法および関連パラメータを導入することもできる。具体的な実現形態は、本願実施例に限定されない。
【0056】
一つの例示的な実施例において、検出モジュール201は、具体的には、前記第1データの第1特徴データに対して、データ有効性チェック、セキュリティ区間チェック、ネットワーク全体の寄与度チェック、異常継続性チェックの少なくとも一つを行うことにより、第1データの第1特徴データに対する信頼度チェックを実現する。
【0057】
上述の信頼度チェックを行う具体的なルールは、専門家が業務経験、分野知識に基づいて与え、ユーザがページに関連した設定を行ったり、プロファイルを導入したりすることができる。
【0058】
例えば、上記のdata1及びdata2から抽出された第1特徴データについて、第1特徴データに対するデータ有効性チェックは、つまり、RRC確立接続要求数xeffが第2プリセット閾値xeff_thresholdより大きいか否かを検出し、RRC確立接続要求数が第2プリセット閾値よりも大きい場合、第1データが有効であるとして、第1特徴データに対するセキュリティ区間チェックを継続し、RRC確立接続要求数が第2プリセット閾値以下である場合、第1データが無効であるとして、第1データは正常(即ち、第1チェック結果は正常)であり、チェックは終了する。ここで、xeff_thresholdは、専門家が業務経験、分野知識に基づいて与え、具体的には、ユーザがページに関連した設定を行ったり、プロフィールを導入したりすることができる。
【0059】
第1特徴データに対するセキュリティ区間チェックは、つまり、RRC確立接続成功率xwがセキュリティ区間[xmin、xmax]内にあるか否かを検出し、RRC確立接続成功率がセキュリティ区間内にある場合、第1データが正常(即ち、第1チェック結果が正常)であるとして、チェックを終了し、RRC確立接続成功率がセキュリティ区間内にない場合、第1特徴データに対するネットワーク全体の寄与度チェックを継続する。ここで、セキュリティ区間[xmin、xmax]は、専門家が業務経験、分野知識に基づいて与え、具体的には、ユーザがページに関連した設定を行ったり、プロファイルを導入したりすることができる。
【0060】
第1特徴データに対するネットワーク全体の寄与度チェックは、つまり、RRC確立接続失敗回数xrefが第3プリセット閾値xref_thresholdより大きいか否かを検出し、RRC確立接続失敗回数が第3プリセット閾値よりも大きい場合、第1チェック結果が異常であると決定し、RRC確立接続失敗回数が第3プリセット閾値以下である場合、第1特徴データに対する継続性チェックを継続する。ここで、xref_thresholdは、専門家が業務経験、分野知識に基づいて与え、具体的には、ユーザがページに関連した設定を行ったり、プロフィールを導入したりすることができる。
【0061】
第1特徴データに対する継続性チェックは、つまり、tw以前の期間のチェック結果pre_resが異常であるか否か、及び二階差分の値によって継続的に劣化する傾向にあるか否かを判定し、tw以前の期間のチェック結果がいずれも異常であり、かつ劣化する傾向にある場合、第1チェック結果が異常であると決定し、tw以前の期間のチェック結果の少なくとも1つが正常、又は良化する傾向にある場合、第1チェック結果が正常であると決定し、チェックを終了する。
【0062】
一つの例示的な実施例において、決定モジュール202は、具体的には以下のいずれか一つまたは複数を実行する。すなわち、前記第1検出結果が異常である異常検出アルゴリズムのうちの1種類以上の異常検出アルゴリズムの信頼度が前記第1プリセット閾値以上である場合、前記第2検出結果が異常であると決定すること、及び、前記第1検出結果が異常である異常検出アルゴリズムの信頼度がいずれも前記第1プリセット閾値よりも小さい場合、前記第1チェック結果を前記第2検出結果とすることである。
【0063】
例えば、上記のdata1及びdata2から抽出された第1特徴データの検出において、異常検出アルゴリズムXGBoostの信頼度が第1プリセット閾値以上であり、かつ、異常検出アルゴリズム3-sigmaの信頼度が第1プリセット閾値未満の場合、第2検出結果が異常であると決定し、異常検出アルゴリズムXGBoost及び3-sigmaの信頼度がいずれも第1プリセット閾値未満の場合、第1チェック結果を第2検出結果とする。
【0064】
一つの例示的な実施例において、異常検出アルゴリズムの信頼度には、異常検出アルゴリズムの類似度照合、統計検査などが含まれる。例えば、前記異常検出アルゴリズムの一致率(重複率)である。
【0065】
他の例示的な実施例において、決定モジュール202は、前記異常検出アルゴリズムごとに、前記異常検出アルゴリズムの一致率を算出することにも用いられる。
【0066】
一つの例示的な実施例において、決定モジュール202は、具体的には、以下の方法により異常検出アルゴリズムの一致率の算出を実現する。すなわち、前記一致率として、第1数量と第2数量との比を決定することであり、そのうち、前記第1数量は、予め設定された時間内に収集された全ての第2データのうち、前記異常検出アルゴリズムを用いて第2データの第2特徴データを検出して得られた第3検出結果と、前記第2データの第2特徴データに対して信頼度チェックを行って得られた第2チェック結果とが同一となる第2データの数量であり、前記第2数量は、予め設定された時間内に収集された全ての第2データのうち、前記異常検出アルゴリズムを用いて第2データの第2特徴データを検出して得られた第3検出結果が異常である第2データの数量である。
【0067】
例えば、直近1ヶ月における、全てのセルの、RRC確立接続成功率指標の検出結果である。すなわち、過去1ヶ月に、全てのセルの、RC確立接続成功率指標の全てのサンプルのうち、異常検出アルゴリズムによる検出結果が異常であるサンプルを用いて、合計でm個あると仮定し、かつ、各々の異常検出アルゴリズムによるサンプル毎の検出結果と、収集したデータに対する信頼度チェックによるチェック結果とを記録した上で、異常検出アルゴリズムiの、チェック結果と一致するサンプル数ciを算出すると、一致率はci/mとなる。
【0068】
本願の別の実施例において、決定モジュール202は、以下のいずれか一つまたは複数を実行することにも用いられる。すなわち、前記第2検出結果が異常であり、かつ、ユーザの異常キャンセル情報を受信した場合、前記第1データを、正常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加することと、前記第2検出結果が異常であり、かつ、ユーザの異常確認情報を受信した場合、前記第1データを、異常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加することであり、そのうち、前記アノテーションサンプルライブラリーにおける、正常または異常とラベル付けされたサンプルは、前記異常検出アルゴリズムの教師あり学習モデルをトレーニングするために用いられ、前記異常検出アルゴリズムは、前記教師あり学習モデルに基づいて前記第1データの第1特徴データを検出して第1検出結果を得る。第1データをアノテーションサンプルとしてアノテーションサンプルライブラリーに追加し、時間の経過に伴ってアノテーションサンプルライブラリーに蓄積されるアノテーションサンプルの数が多くなるので、教師あり学習や半教師あり学習に基づく異常検出アルゴリズムは、新たに追加したアノテーションサンプルを適用して増分学習したり、教師あり学習モデルを定期的に再度トレーニングしたりすることで、教師あり学習モデルの信頼性が向上し、異常検出アルゴリズムの検出精度が向上する。
【0069】
すなわち、第2検出結果が異常である場合、異常情報が表示され、例えば、異常情報は、異常データ(すなわち、第1データ)に対応する対象名称「セル1」、発生時間tw、KPI名称「RRC確立接続成功率」、KPI値xwなどを含む。ユーザは、異常確認情報を入力して異常を確認したり、異常キャンセル情報を入力して異常を取消したり、何もしない操作を選択したりすることができる。ユーザが異常確認情報を入力する場合、第1データを、異常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加し、ユーザが異常キャンセル情報を入力する場合、第1データを、正常とラベル付けされたサンプルとしてアノテーションサンプルライブラリーに追加する。
【0070】
本願実施例は、複数種の異常検出アルゴリズムによる検出結果および信頼度のチェック結果に基づいて最終的な検出結果を決定するようにしたので、信頼度のチェックが専門家の業務経験や分野知識による信頼度のチェックとなるため、検出結果の信頼度が向上する。
【0071】
当業者であれば、上述した方法の全部または一部の手順、システム、装置における機能モジュール/ユニットは、ソフトウェア、ファームウェア、ハードウェア、及びこれらの組み合わせとして実施され得ることを理解できる。ハードウエア実施形態では、上記の説明で言及された機能モジュール/ユニット間の区分けは、必ずしも物理コンポーネントの区分けに対応するわけではない。例えば、一つの物理コンポーネントは複数の機能を有してもよく、あるいは、一つの機能又はステップは、複数の物理コンポーネントが協働して実行されてもよい。幾つかのコンポーネント又は全てのコンポーネントは、デジタルシグナルプロセッサまたはマイクロプロセッサなどのプロセッサによって実行されるソフトウェアとして、またはハードウェアとして、または特定用途向け集積回路などの集積回路として実施され得る。このようなソフトウェアは、コンピュータ読取可能な媒体に配布されてもよく、コンピュータ読取可能な媒体は、コンピュータ記憶媒体(または非一時的媒体)および通信媒体(または一時的媒体)を含むことができる。当業者にとって周知のように、コンピュータ記憶媒体という用語は、情報(コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、その他のデータなど)を記憶するための任意の方法又は技術で実施される揮発性及び不揮発性、リムーバブルメディア、及び非リムーバブルメディアを含む。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリ、その他のメモリ技術、CD-ROM、デジタル多機能ディスク(DVD)、その他の光ディスク格納、マガジン、磁気テープ、ディスク格納、その他の磁気格納装置、または所望の情報を格納し、コンピュータにアクセス可能な任意のその他のメディアを含むが、これらに限らない。また、当業者にとって周知のように、通信媒体は通常、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、あるいはキャリアやその他の伝送メカニズムなどの変調データ信号に含まれる他のデータを含み、かつ任意の情報配信媒体を含むことができる。
【0072】
本願実施例に開示された実施形態は、以上の通りであるが、上記内容は本願実施例の理解を容易にするためのものであり、本願実施例を限定するものではない。いずれの本願実施例に属する技術分野の当業者も、本願実施例に開示されている精神と範囲を逸脱することなく、実施の形態および細部において何らかの修正と変化を加えることができるが、本願の保護範囲は、特許の請求範囲に限定された範囲を基準にすべきである。
【国際調査報告】