(57)【要約】【課題】ネットワークの障害に係わる問合せに対して精度の高い回答を作成する。【解決手段】ネットワーク分析装置は、ネットワークの障害に係わる問合せに対して回答を作成するために、保存部、第１の選択部、第２の選択部、回答決定部を備える。保存部は、過去に受信した問合せ文と対応する回答との対応関係を表す第１の情報、および、過去に受信した機器ログと対応する回答との対応関係を表す第２の情報を保存する。第１の選択部は、第１の情報に基づいて、新たな問合せ文に対して第１の回答候補を選択すると共に、第１の回答候補の確信度を算出する。第２の選択部は、第２の情報に基づいて、新たな機器ログに対して第２の回答候補を選択すると共に、第２の回答候補の確信度を算出する。回答決定部は、第１の回答候補およびその確信度、並びに第２の回答候補およびその確信度に基づいて、新たな問合せ文に対する回答を決定する。【選択図】図１１
2020187470.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークの障害に係わる問合せ文および前記問合せ文に対応する機器ログを含む問合せに対して回答を提供するネットワーク分析装置であって、
過去に受信した問合せ文と前記問合せ文を含む問合せに対して提供された回答との対応関係を表す第１の情報、および、過去に受信した機器ログと前記機器ログを含む問合せに対して提供された回答との対応関係を表す第２の情報を保存する保存部と、
前記第１の情報に基づいて、新たな問合せ文に対して複数の回答パターンの中から第１の回答候補を選択すると共に、前記第１の回答候補の確からしさを表す第１の確信度を算出する第１の選択部と、
前記第２の情報に基づいて、前記新たな問合せ文に対応する新たな機器ログに対して前記複数の回答パターンの中から第２の回答候補を選択すると共に、前記第２の回答候補の確からしさを表す第２の確信度を算出する第２の選択部と、
前記第１の回答候補、前記第１の確信度、前記第２の回答候補、および前記第２の確信度に基づいて、前記新たな問合せ文に対する回答を決定する回答決定部と、
を備えるネットワーク分析装置。
【請求項２】
前記新たな機器ログから、前記新たな問合せ文の中に記述されている時刻に係わる情報に対応する時間領域内のログ情報を抽出する抽出部をさらに備え、
前記第２の選択部は、前記第２の情報に基づいて、前記抽出部により抽出されたログ情報に対して前記複数の回答パターンの中から第２の回答候補を選択すると共に、前記第２の回答候補の確からしさを表す第２の確信度を算出する
ことを特徴とする請求項１に記載のネットワーク分析装置。
【請求項３】
前記回答決定部は、前記第１の確信度および前記第２の確信度の平均値に基づいて、前記新たな問合せ文に対する回答を決定する
ことを特徴とする請求項１または２に記載のネットワーク分析装置。
【請求項４】
前記回答決定部は、前記第１の回答候補、前記第１の確信度、前記第２の回答候補、および前記第２の確信度に基づいて前記新たな問合せ文に対する回答を決定するときに、前記第１の回答候補と前記第２の回答候補との間の相関を表す相関値に基づいて、前記第１の確信度および前記第２の確信度の寄与率を決定する
ことを特徴とする請求項１または２に記載のネットワーク分析装置。
【請求項５】
前記相関値が小さいほど、前記第１の確信度に対して相対的に前記第２の確信度の寄与率が高い
ことを特徴とする請求項４に記載のネットワーク分析装置。
【請求項６】
前記第１の回答候補と前記第２の回答候補との間の相関を表す相関値が所定の閾値より大きいときは、前記新たな問合せと前記回答決定部により決定される回答との対応関係が前記第１の情報に追加される
ことを特徴とする請求項１〜５のいずれか１つに記載のネットワーク分析装置。
【請求項７】
前記第２の選択部は、
前記新たな機器ログから１または複数のワードを抽出する処理においてネットワーク機器のインタフェース番号を強制的に抽出し、
前記第２の情報および前記新たな機器ログから抽出したワードに基づいて前記第２の回答候補を決定する
ことを特徴とする請求項１に記載のネットワーク分析装置。
【請求項８】
ネットワークの障害に係わる問合せ文および前記問合せ文に対応する機器ログを含む問合せに対して回答を提供するネットワーク分析方法であって、
過去に受信した問合せ文と前記問合せ文を含む問合せに対して提供された回答との対応関係を表す第１の情報に基づいて、新たな問合せ文に対して複数の回答パターンの中から第１の回答候補を選択すると共に、前記第１の回答候補の確からしさを表す第１の確信度を算出し、
過去に受信した機器ログと前記機器ログを含む問合せに対して提供された回答との対応関係を表す第２の情報に基づいて、前記新たな問合せ文に対応する新たな機器ログに対して前記複数の回答パターンの中から第２の回答候補を選択すると共に、前記第２の回答候補の確からしさを表す第２の確信度を算出し、
前記第１の回答候補、前記第１の確信度、前記第２の回答候補、および前記第２の確信度に基づいて、前記新たな問合せ文に対する回答を決定する
ことを特徴とするネットワーク分析方法。
【請求項９】
過去に受信したネットワークの障害に係わる問合せ文と前記問合せ文を含む問合せに対して提供された回答との対応関係を表す第１の情報に基づいて、ネットワークの障害に係わる新たな問合せ文に対して複数の回答パターンの中から第１の回答候補を選択すると共に、前記第１の回答候補の確からしさを表す第１の確信度を算出し、
過去に受信した機器ログと前記機器ログを含む問合せに対して提供された回答との対応関係を表す第２の情報に基づいて、前記新たな問合せ文に対応する新たな機器ログに対して前記複数の回答パターンの中から第２の回答候補を選択すると共に、前記第２の回答候補の確からしさを表す第２の確信度を算出し、
前記第１の回答候補、前記第１の確信度、前記第２の回答候補、および前記第２の確信度に基づいて、前記新たな問合せ文に対する回答を決定する
処理をプロセッサに実行させるネットワーク分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを分析する装置、方法、およびプログラムに係わる。
【背景技術】
【０００２】
ネットワークの障害が発生したとき、ユーザ（例えば、通信サービス事業者）は、ネットワーク機器の保守運用者（例えば、ネットワーク機器のベンダ）に問合せを行う。この場合、ユーザは、例えば、図１に示すように、保守運用者に電子メールを送信する。電子メールは、問合せ文を含む。問合せ文には、障害の状況が記述される。また、この電子メールには、必要に応じて機器ログが添付される。
【０００３】
保守運用者は、ユーザから受信する問合せ文に基づいて障害の原因を推定する。このとき、保守運用者は、過去に受信した問合せ文と対応する回答とをまとめたＱ＆Ａ文面、および過去にユーザから受信した機器ログを保持する。よって、保守運用者は、Ｑ＆Ａ文面および機器ログを参照して障害の原因を推定し、対策案を作成する。そして、保守運用者は、推定される原因および対策案を含む回答をユーザに送信する。
【０００４】
更に、近年では、コンピュータを利用して回答文を作成する方法が実用化されている。この場合、コンピュータは、ユーザから受信する問合せ文を利用して過去のＱ＆Ａ文面を検索することで、障害の原因および対策案を提案する。
【０００５】
なお、監視システムにより検知された障害に対して精度の高い対応方法を提示する方法が提案されている（例えば、特許文献１）。また、既存の文書に含まれている質問内容と当該質問内容に対する回答内容とを容易かつ効果的に利用するための方法が提案されている（例えば、特許文献２）。さらに、関連する技術が特許文献３〜５に記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１８−１３６６５６号公報
【特許文献２】特開平１１−００３３３５号公報
【特許文献３】特開２００２−２３０００４号公報
【特許文献４】特開２０１１−０６５３８０号公報
【特許文献５】特開２００５−１８１９２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述のように、保守運用者（又は、保守運用者のコンピュータ）は、ユーザから受信する問合せ文に対して、障害の原因を推定し、対策案を作成する。ところが、ユーザは、障害の状況を正確に記述できないことがある。そして、問合せ文が障害の状況を正確に表していないときは、障害の原因が精度よく推定されず、不適切な対応策が提案されることがある。
【０００８】
この問題は、例えば、推定した障害の原因と機器ログとの整合性をチェックすることで解決または緩和され得る。しかし、このような整合性のチェックは、保守運用者の負担が大きい。
【０００９】
本発明の１つの側面に係わる目的は、ネットワークの障害に係わる問合せに対して精度の高い回答を作成する装置および方法を提供することである。
【課題を解決するための手段】
【００１０】
本発明の１つの態様のネットワーク分析装置は、ネットワークの障害に係わる問合せ文および前記問合せ文に対応する機器ログを含む問合せに対して回答を提供する。このネットワーク分析装置は、過去に受信した問合せ文と前記問合せ文を含む問合せに対して提供された回答との対応関係を表す第１の情報、および、過去に受信した機器ログと前記機器ログを含む問合せに対して提供された回答との対応関係を表す第２の情報を保存する保存部と、前記第１の情報に基づいて、新たな問合せ文に対して複数の回答パターンの中から第１の回答候補を選択すると共に、前記第１の回答候補の確からしさを表す第１の確信度を算出する第１の選択部と、前記第２の情報に基づいて、前記新たな問合せ文に対応する新たな機器ログに対して前記複数の回答パターンの中から第２の回答候補を選択すると共に、前記第２の回答候補の確からしさを表す第２の確信度を算出する第２の選択部と、前記第１の回答候補、前記第１の確信度、前記第２の回答候補、および前記第２の確信度に基づいて、前記新たな問合せ文に対する回答を決定する回答決定部と、を備える。
【発明の効果】
【００１１】
上述の態様によれば、ネットワークの障害に係わる問合せに対して精度の高い回答を作成できる。
【図面の簡単な説明】
【００１２】
【図１】ユーザからの問合せに対して回答を作成する方法の一例を示す図である。
【図２】ネットワーク分析装置の一例を示す図である。
【図３】問合せ文に対応する回答候補を選択する方法の一例を示す図である。
【図４】問合せ文のワードベクトルを作成する方法の一例を示す図である。
【図５】問合せ文に対応する回答候補を選択する方法の一例を示すフローチャートである。
【図６】機器ログに対応する回答候補を選択する方法の一例を示す図である。
【図７】機器ログのワードベクトルを作成する方法の一例を示す図である。
【図８】機器ログに対応する回答候補を決定する方法の一例を示すフローチャートである。
【図９】問合せ文および機器ログに基づいて回答候補の確信度を計算する方法の一例を示す図である。
【図１０】問合せ文および機器ログに基づいて回答を決定する方法の一例を示すフローチャートである。
【図１１】ネットワーク分析装置の処理の一例を模式的に示す図である。
【図１２】ネットワーク分析装置のハードウェア構成の一例を示す図である。
【図１３】相関値に応じて確信度を計算する方法の例を示す図（その１）である。
【図１４】相関値に応じて確信度を計算する方法の例を示す図（その２）である。
【図１５】相関値に応じて確信度を計算する方法の一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
図２は、本発明の実施形態に係わるネットワーク分析装置の一例を示す。ネットワーク分析装置１は、ユーザからネットワークの障害に係わる問合せを受け付ける。ユーザは、例えば、ネットワーク上で通信サービスを提供する通信サービス事業者に相当する。問合せは、この実施例では、ネットワークの障害に係わる問合せ文およびその問合せ文に対応する機器ログを含む。そして、ネットワーク分析装置１は、問合せに対して回答を提供する。回答は、必要に応じて保守運用者により編集された後、ユーザに提供される。
【００１４】
ネットワーク分析装置１は、保存部１０、受信部１１、保存部１２、保存部１３、選択部１４、抽出部１５、選択部１６、回答決定部１７を備える。なお、ネットワーク分析装置１は、図２に示していない他の要素を備えていてもよい。
【００１５】
保存部１０は、回答パターン情報を保存する。回答パターン情報は、ネットワーク障害に係わる問合せに対する回答のサンプルを表す。なお、ネットワーク障害の原因は、予め推定可能である。また、ネットワーク障害の原因が特定されれば、その障害を復旧させるための対策は概ね決まっている。したがって、保守運用者は、推定される原因ごとに、ネットワーク障害に対する回答パターンを予め作成しておくことができる。
【００１６】
受信部１１は、ユーザから送信される問合せを受信する。問合せは、上述したように、ネットワークの障害に係わる問合せ文およびその問合せ文に対応する機器ログを含む。問合せ文は、例えば、電子メールにより送信される。この場合、問合せ文は、ユーザにより記述される。機器ログは、ネットワーク機器の動作状況を時系列に記録した情報である。また、機器ログは、例えば、電子メールに添付される。
【００１７】
保存部１２は、受信部１１が過去に受信した問合せ文とその問合せ文を含む問合せに対して提供された回答との対応関係を表す情報（以下、「問合せ分／回答対応情報」と呼ぶことがある。）を保存する。また、保存部１２は、問合せ文／回答対応情報に基づいて作成される分類モデルを保存する。
【００１８】
保存部１３は、受信部１１が過去に受信した機器ログとその機器ログを含む問合せに対して提供された回答との対応関係を表す情報（以下、「機器ログ／回答対応情報」と呼ぶことがある。）を保存する。また、保存部１３は、機器ログ／回答対応情報に基づいて作成される分類モデルを保存する。
【００１９】
選択部１４は、受信部１１が新たに受信した問合せ文に対する回答候補として、予め決められている複数の回答パターンの中から１または複数の回答パターンを選択する。このとき、選択部１４は、保存部１２に保存されている問合せ文／回答対応情報および分類モデルを使用する。また、選択部１４は、選択した各回答パターン（即ち、問合せ文に対応する回答候補）の確からしさを表す確信度を算出する。なお、予め決められている複数の回答パターンは、回答パターン情報として、保存部１０に登録されている。
【００２０】
抽出部１５は、受信部１１が新たに受信した機器ログから、その機器ログに対応する問合せ文の中に記述されている時刻に係わる情報に基づいて、所定の時間領域内のログ情報を抽出する。例えば、問合せ文の中にネットワーク障害が発生した時刻が記述されているときは、その時刻の近傍の時間領域内のログ情報が抽出される。ただし、ネットワーク分析装置１は、必ずしも抽出部１５を備えていなくてもよい。
【００２１】
選択部１６は、受信部１１が新たに受信した機器ログ（または、抽出部１５から出力されるログ情報）に対する回答候補として、上述した複数の回答パターンの中から１または複数の回答パターンを選択する。このとき、選択部１６は、保存部１３に保存されている機器ログ／回答対応情報および分類モデルを使用する。また、選択部１６は、選択した各回答パターン（即ち、機器ログに対応する回答候補）の確からしさを表す確信度を算出する。
【００２２】
回答決定部１７は、選択部１４により選択された回答パターンおよびその確信度、並びに、選択部１６により選択された回答パターンおよびその確信度に基づいて、受信部１１が新たに受信した問合せ文に対する回答を決定する。この回答は、必要に応じて保守運用者により編集された後、ユーザに提供される。また、新たな問合せ文とその回答との対応関係を表す問合せ文／回答対応情報は、保存部１２に蓄積される。同様に、新たな機器ログとその回答との対応関係を表す機器ログ／回答対応情報は、保存部１３に蓄積される。さらに、保存部１２、１３に情報が追加されると、それぞれ分類モデルが更新される。
【００２３】
図３は、問合せ文に対応する回答候補を選択する方法の一例を示す。この例では、保存部１２には、図３（ａ）に示す問合せ文／回答対応情報が保存されているものとする。
【００２４】
問合せ文／回答対応情報は、インシデント番号、各ワードの出現数、および回答パターンを含む。インシデント番号は、過去にユーザから受信した問合せを識別する。この例では、１つの問合せに対して１つのインシデント番号が与えられている。出現数は、所定のルールに従って問合せ文から抽出される各ワードが出現した回数を表す。たとえば、インシデント番号Ｉ−００１で識別される問合せの問合せ文において、ワードＷ１は３回出現し、ワードＷ２は出現せず、ワードＷｎは１回出現している。回答パターンは、問合せに対してユーザに提供された回答を表す。この例では、インシデント番号Ｉ−００１で識別される問合せに対して「回答パターンＰ１」が提供されている。
【００２５】
選択部１４は、新たな問合せに含まれる問合せ文に基づいて、ワードベクトルを作成する。このとき、選択部１４は、前処理として、新たな問合せ文に対して形態素解析を実行する。ここで、選択部１４は、不要語および抽出語が定義された辞書を備える。そして、選択部１４は、この辞書を使用して、新たな問合せ文に対して品詞分解および単語抽出を行う。さらに、選択部１４は、新たな問合せ文から抽出した各ワードの出現数をカウントすることでワードベクトルを作成する。図３（ａ）に示す例では、新たな問合せ文において、ワードＷ１は２回出現し、ワードＷ２は１回出現し、ワードＷｎは出現しない。
【００２６】
続いて、選択部１４は、新たな問合せ文に基づいて作成したワードベクトルを分類モデルに与える。分類モデルは、図３（ａ）に示す問合せ文／回答対応情報に基づいて作成されているものとする。一例としては、分類モデルは、図３（ｂ）に示すニューラルネットワークにより実現される。この場合、ニューラルネットワークは複数のレイヤから構成され、各レイヤは複数のノードを含む。そして、各ノードにおいて、各入力値に対してそれぞれウエイトが乗算される。
【００２７】
分類モデルにワードベクトルが与えられると、回答候補として、そのワードベクトルに適合する１または複数の回答パターンが出力される。このとき、例えば、入力ワードベクトルと問合せ文／回答対応情報中の各ワードベクトルとの間の距離に基づいて、１または複数の回答パターンが選択される。なお、ニューラルネットワークのウエイトは、たとえば、ユーザからの問合せに対して回答が決定される毎に、問合せ文と回答との組合せに応じて機械学習により更新される。
【００２８】
この例では、新たな問合せ文（即ち、入力ワードベクトル）に対して３個の回答パターンが選択されている。なお、図３（ｃ）においては、各回答パターンは、ネットワーク障害の原因（電源故障、ＢＦＤ（Bi-directional Forwarding Detection）断、メモリ故障）に対応している。
【００２９】
確信度は、新たな問合せ文（すなわち、入力ワードベクトル）に対して選択された各回答パターンの確からしさを表す。また、確信度は、この例では、各回答パターンの確信度の和が１００パーセントになるように決定される。
【００３０】
なお、図３に示す例では、ニューラルネットワークを利用して分類モデルが実現されるが、本発明はこの構成に限定されるものではない。すなわち、分類モデルは、任意の方法で構成され得る。例えば、分類モデルは、ＳＶＭ（Support Vector Machine）で実現してもよい。
【００３１】
図４は、問合せ文のワードベクトルを作成する方法の一例を示す。この実施例では、選択部１４が参照する辞書には、不要語として、「弊社」「内容」「確認」「対応」などが登録されている。また、抽出語として「Ａ拠点」「装置ｘｘ」「ＢＦＤ断」などが登録されている。そして、選択部１４は、問合せ文において各抽出語が出現する回数をカウントすることにより、その問合せ文に対応するワードベクトルを作成する。
【００３２】
図５は、問合せ文に対応する回答候補を選択する方法の一例を示すフローチャートである。このフローチャートの処理は、新たな問合せ文が入力されたときに、選択部１４により実行される。
【００３３】
Ｓ１において、選択部１４は、新たな問合せ文に対して形態素解析を行う。このとき、選択部１４は、品詞分解および単語抽出を実行する。単語抽出においては、不要語および抽出語が登録された辞書が参照される。
【００３４】
Ｓ２において、選択部１４は、新たな問合せ文に対応するワードベクトルを作成する。このとき、問合せ文中で各抽出語が出現する回数をカウントすることにより、その問合せ文のワードベクトルが作成される。
【００３５】
Ｓ３において、選択部１４は、作成したワードベクトルを分類モデルに与えることにより、回答候補として、問合せ文に対応する１または複数の回答パターンを選択する。各回答パターンには、確信度が付与されている。すなわち、新たな問合せ文に対して、確信度が付与された回答候補が出力される。
【００３６】
このように、ネットワーク分析装置１は、新たな問合せ文に対して１または複数の回答パターンを含む回答候補を出力する。ただし、ユーザは、障害の状況を正確に記述できないことがある。すなわち、問合せ文は、障害の状況を正確に記述していないことがある。そして、問合せ文が障害の状況を正確に表していないときは、障害の原因が正しく推定されず、適当でない回答候補が出力されるおそれがある。
【００３７】
この問題を解決または緩和するために、ネットワーク分析装置１は、問合せ文に対応する回答候補を出力すると共に、機器ログに対応する回答候補を出力する。そして、ネットワーク分析装置１は、問合せ文に対応する回答候補および機器ログに対応する回答候補の双方に基づいて、問合せに対する回答を作成する。
【００３８】
図６は、機器ログに対応する回答候補を選択する方法の一例を示す。この例では、保存部１３には、図６（ａ）に示す機器ログ／回答対応情報が保存されているものとする。
【００３９】
機器ログ／回答対応情報は、インシデント番号、各ワードの出現数、および回答パターンを含む。インシデント番号は、図３を参照して説明したように、過去にユーザから受信した問合せを識別する。なお、この実施例では、各問合せにおいて、１つの問合せ文に対して１つの機器ログが添付されるものとする。出現数は、所定のルールに従って機器ログから抽出される各ワードが出現した回数を表す。例えば、インシデント番号Ｉ−００１で識別される問合せの機器ログにおいて、ワードＬ１は２回出現し、ワードＬ２は３回出現し、ワードＬｍは出現しない。回答パターンは、図３を参照して説明したように、問合せに対してユーザに提供された回答を表す。
【００４０】
選択部１６は、新たな問合せに含まれる機器ログに基づいて、ワードベクトルを作成する。ただし、機器ログには、一般に、大量の情報が記録されている。よって、機器ログ全体に基づいてワードベクトルを作成しようとすると、ネットワーク分析装置１の処理量が増大してしまう。また、障害と係わりのない情報について分析が行われるおそれもある。そこで、ネットワーク分析装置１は、抽出部１５を備えるようにしてもよい。
【００４１】
抽出部１５は、新たな機器ログに対応する問合せ文から、ネットワーク障害が発生した時刻に係わる情報を取得する。また、抽出部１５は、問合せ文から取得した情報に基づいて、ネットワーク障害が発生した時刻に対応する時間領域を決定する。そして、抽出部１５は、機器ログから、決定した時間領域内のログ情報を抽出する。たとえば、図４に示すケースにおいては、抽出部１５は、対応する問合せ文から「2019/01/29 12:12:05 ＢＦＤ断発生」を取得する。そうすると、抽出部１５は、ログ情報を抽出すべき時間領域として「2019/01/29 12:12:05 ±１時間」を決定する。この場合、抽出部１５は、入力機器ログから、この時間領域内のログ情報を抽出する。抽出されたログ情報は、選択部１６に与えられる。
【００４２】
したがって、選択部１６は、抽出部１５により抽出されたログ情報に基づいてワードベクトルを作成する。ここで、機器ログ（または、ログ情報）に基づいてワードベクトルを作成する方法は、問合せ文に基づいてワードベクトルを作成する方法と実質的に同じである。この実施例では、図６（ａ）に示すワードベクトルが作成される。
【００４３】
続いて、選択部１６は、新たな機器ログに基づいて作成したワードベクトルを分類モデルに与える。分類モデルは、図６（ａ）に示す機器ログ／回答対応情報に基づいて作成されているものとする。また、分類モデルは、例えば、図６（ｂ）に示すニューラルネットワークにより実現される。但し、分類モデルは、ニューラルネットワーク以外の方法で実現してもよい。そして、分類モデルにワードベクトルが与えられると、回答候補として、そのワードベクトルに適合する１または複数の回答パターンが出力される。この例では、新たな機器ログ（即ち、入力ワードベクトル）に対して、図６（ｃ）に示す回答パターンが選択されている。また、選択された各回答パターンには、確信度が付与されている。
【００４４】
図７は、機器ログのワードベクトルを作成する方法の一例を示す。この例では、抽出部１５により抽出されたログ情報が選択部１６に入力される。ここで、抽出部１５は、図４に示す問合せ文に基づいて、機器ログの一部の情報を抽出する。図４に示す例では、問合せ文は、2019/01/29 12:12:05に障害が発生したことを記述している。そして、抽出部１５は、この障害が発生した時刻に対して±５分の期間内のイベントに係わるログ情報を抽出している。
【００４５】
選択部１６が参照する辞書には、不要語として、「on」「is」「to」などが登録されている。また、抽出語として、「BFD」「down」「heartbeat」などが登録されている。そして、選択部１６は、機器ログにおいて各抽出語が出現する回数をカウントすることにより、その機器ログのワードベクトルを作成する。
【００４６】
図８は、機器ログに対応する回答候補を選択する方法の一例を示すフローチャートである。このフローチャートの処理は、新たな機器ログが入力されたときに、抽出部１５および選択部１６により実行される。
【００４７】
Ｓ１１において、抽出部１５は、対応する問合せ文から時刻に係わる情報を取得する。Ｓ１２において、抽出部１５は、Ｓ１１で取得した情報に基づいて、ログ情報を抽出すべき時間領域を決定する。Ｓ１３において、抽出部１５は、機器ログから、Ｓ１２で決定した時間領域内のログ情報を抽出する。
【００４８】
Ｓ１４〜Ｓ１６の処理は、図５に示すＳ１〜Ｓ３の処理と実質的に同じである。すなわち、Ｓ１４において、選択部１６は、機器ログ（又は、ログ情報）に対して形態素解析を行う。Ｓ１５において、選択部１６は、機器ログのワードベクトルを作成する。そして、Ｓ１６において、選択部１６は、作成したワードベクトルを分類モデルに与えることにより、機器ログに対応する１または複数の回答パターンを出力する。各回答パターンには、確信度が付与されている。すなわち、新たな機器ログに対して、確信度が付与された回答候補が出力される。
【００４９】
このように、ネットワーク分析装置１は、問合せ文および機器ログを含む問合せを受信すると、問合せ文に対応する１または複数の回答パターンおよび機器ログに対応する１または複数の回答パターンを選択する。ここで、問合せ文に対応する各回答パターンには確信度Ｃ１が付与されており、機器ログに対応する各回答パターンには確信度Ｃ２が付与されている。そして、ネットワーク分析装置１は、各回答パターンについて、確信度Ｃ１および確信度Ｃ２に基づいて確信度Ｃ３を計算する。
【００５０】
図９は、問合せ文および機器ログの双方に基づいて各回答候補の確信度を計算する方法の一例を示す。この実施例では、問合せ文に基づく回答候補として、回答パターンＰ１、Ｐ２、Ｐ３が得られている。回答パターンＰ１、Ｐ２、Ｐ３の確信度Ｃ１は「２０％、３０％、５０％」である。また、機器ログに基づく回答候補としても、回答パターンＰ１、Ｐ２、Ｐ３が得られている。ただし、機器ログに基づいて得られる回答パターンＰ１、Ｐ２、Ｐ３の確信度Ｃ２は「１０％、７０％、２０％」である。
【００５１】
回答決定部１７は、確信度Ｃ１および確信度Ｃ２に基づいて、各回答パターンに対して確信度Ｃ３を計算する。この実施例では、回答決定部１７は、各回答パターンについて確信度Ｃ１および確信度Ｃ２の平均を計算することで確信度Ｃ３を得る。すなわち、回答パターンＰ１、Ｐ２、Ｐ３の確信度Ｃ３として「１５％、５０％、３５％」が算出される。
【００５２】
なお、図９に示す例では、問合せ文に対して選択された回答パターンと機器ログに対して選択された回答パターンとが互いに一致しているが、本発明はこのようなケースに限定されるものではない。一例として、問合せ文に対して選択された回答パターンおよびその確信度Ｃ１が「Ｐ１：２０％、Ｐ２：３０％、Ｐ３：５０％」であり、機器ログに対して選択された回答パターンおよびその確信部Ｃ２が「Ｐ２：８０％、Ｐ３：２０％」であるものとする。この場合、機器ログに対して得られる回答パターンＰ１の確信度Ｃ２が「ゼロ％」であるものとして確信度Ｃ３が算出される。そうすると、各回答パターンの確信度Ｃ３は「１０％、５５％、３５％」である。
【００５３】
そして、回答決定部１７は、各回答パターンの確信度Ｃ３に基づいて、ユーザからの問合せに対する回答を決定する。具体的には、確信度Ｃ３の最も高い回答パターンが、ユーザに提供する回答として選択される。この実施例では、回答パターンＰ２の確信度Ｃ３が最も高い。したがって、回答決定部１７は、ネットワーク障害の原因が「ＢＦＤ断」であると推定し、ＢＦＤ断に対する対応策を記述した回答文を出力する。この回答文は、ネットワーク分析装置１を使用する保守運用者からユーザに送信される。このとき、保守運用者は、必要に応じて、ネットワーク分析装置１により出力される回答文を編集または訂正してもよい。或いは、回答文は、ネットワーク分析装置１によりユーザに送信されてもよい。なお、各障害原因に対応する回答文は、予め作成されて保存部１０に保存されているものとする。
【００５４】
図１０は、問合せ文および機器ログの双方に基づいて回答を決定する方法の一例を示すフローチャートである。なお、このフローチャートの処理が実行される前に、図５に示す選択部１４による処理、および図８に示す抽出部１５および選択部１６による処理が終了しているものとする。
【００５５】
Ｓ２１において、回答決定部１７は、問合せ文に対応する各回答パターンの確信度Ｃ１を取得する。Ｓ２２において、回答決定部１７は、機器ログに対応する各回答パターンの確信度Ｃ２を取得する。Ｓ２３において、回答決定部１７は、各回答パターンについて、確信度Ｃ１および確信度Ｃ２に基づいて確信度Ｃ３を計算する。この実施例では、回答決定部１７は、各回答パターンについて確信度Ｃ１および確信度Ｃ２の平均を計算することで確信度Ｃ３を得る。Ｓ２４において、回答決定部１７は、確信度Ｃ３に基づいて、ユーザに提供すべき回答パターンを選択する。具体的には、確信度Ｃ３が最も高い回答パターンが選択される。
【００５６】
回答決定部１７により回答が決定されると、ネットワーク分析装置１は、ワードベクトルと回答との対応関係を保存部１２、１３に蓄積する。すなわち、図３（ａ）に示す新たなワードベクトルおよび回答決定部１７により選択された回答パターンが対応づけられて保存部１２に追加される。また、図６（ａ）に示す新たなワードベクトルおよび回答決定部１７により選択された回答パターンが対応づけられて保存部１３に追加される。
【００５７】
また、回答決定部１７により回答が決定されると、ネットワーク分析装置１は、機械学習により分類モデルを更新する。例えば、各分類モデルは、保存部１２、１３に追加された、ワードベクトルと回答との対応関係を表す情報に基づいて更新される。このとき、例えば、図３（ｂ）および図６（ｂ）に示すニューラルネットワークの各ノードのウエイトが更新される。
【００５８】
図１１は、ネットワーク分析装置１の処理の一例を模式的に示す。図１１において、学習フェーズは、ネットワーク分析装置１が過去に受信した問合せとその問合せに対してユーザに提供した回答との対応関係を蓄積することで実現される。このとき、分類モデルが作成および更新される。なお、分類モデル１は、問合せ文に対応する１または複数の回答パターンを選択するために使用される。また、分類モデル２は、機器ログに対応する１または複数の回答パターンを選択するために使用される。
【００５９】
ユーザから受信する問合せは、問合せ文および機器ログを含む。問合せ文が分類モデル１に入力されると、回答候補として、１または複数の回答パターンが選択される。このとき、問合せ文に対応する各回答パターンには確信度Ｃ１が付与されている。同様に、機器ログが分類モデル２に入力されると、回答候補として、１または複数の回答パターンが選択される。このとき、機器ログに対応する各回答パターンには確信度Ｃ２が付与されている。なお、問合せ文に含まれる時間情報に基づいて機器ログの情報量を削減してもよい。
【００６０】
この後、ネットワーク分析装置１は、各回答パターンについて確信度Ｃ１および確信度Ｃ２に基づいて確信度Ｃ３を計算する。そして、ネットワーク分析装置１は、確信度Ｃ３が最も高い回答パターンを、問合せに対する回答として出力する。すなわち、ネットワーク分析装置１は、問合せ文および機器ログの双方に基づいて回答を決定する。よって、問合せ文がネットワーク障害の状況を適切に記述していなくても、その障害に対して適切な回答が得られる。
【００６１】
このように、ネットワーク分析装置１は、ユーザから受信する問合せ文および機器ログの双方を利用して回答パターンを決定する。ここで、問合せ文および機器ログの双方を利用して回答を決定する他の方法として、問合せ文に基づいて回答候補を決定した後、保守運用者が、機器ログを参照して回答候補が妥当か否かを検証する手順が考えられる。よって、以下では、ネットワーク分析装置１による方法（以下、提案方法）と上述の他の方法とを比較する。
【００６２】
他の方法においては、問合せ文のみに基づいて分類モデルを作成および更新するので、機械学習の負荷は小さい。一方、提案方法においては、問合せ文に基づく分類モデルおよび機器ログに基づく分類モデルを作成および更新するので、機械学習の負荷が大きい。ただし、ネットワーク分析装置１は、ユーザから受信する機器ログ全体を参照するのではなく、問合せ文の内容に応じて決定される時間領域内のログ情報のみを参照してもよい。よって、この場合、提案方法における機械学習の負荷が削減される。
【００６３】
他の方法においては、保守運用者が機器ログを参照して回答候補が妥当か否かを検証するので、保守運用者の負荷が大きい。これに対して、提案方法では、ネットワーク分析装置１により問合せ文および機器ログの双方を利用して回答が決定されるので、保守運用者は、最終的な回答文を確認するだけでよい。すなわち、保守運用者の負荷は小さい。
【００６４】
さらに、本件出願の出願人は、１０００件のインシデントについて、問合せ文のみに基づく回答、及び、問合せ文および機器ログの双方に基づく回答の妥当性を検証した。この結果、問合せ文および機器ログの双方を考慮することで回答の妥当性が大きく向上することが確認された。
【００６５】
＜ハードウェア構成＞
図１２は、ネットワーク分析装置１のハードウェア構成の一例を示す。ネットワーク分析装置１は、プロセッサ３１、メモリ３２、入出力ＩＦ３３、記録媒体デバイス３４、通信ＩＦ３５を備える。なお、ネットワーク分析装置１は、図１２に示してない他の要素または機能を備えてもよい。
【００６６】
プロセッサ３１は、メモリ３２に格納されているネットワーク分析プログラムを実行することにより、ネットワーク分析装置１（即ち、選択部１４、抽出部１５、選択部１６、回答決定部１７）の機能を提供する。ネットワーク分析プログラムは、例えば、図５、図８、図１０に示すフローチャートの処理を記述する。よって、プロセッサ３１がネットワーク分析プログラムを実行することにより、選択部１４、抽出部１５、選択部１６、回答決定部１７が実現される。なお、図２に示す保存部１０、１２、１３は、メモリ３２により実現される。
【００６７】
入出力ＩＦ３３は、キーボード、マウス、タッチパネルなどの入力デバイスを介して入力される指示を受け付ける。また、入出力ＩＦ３３は、プロセッサ３１による処理結果を出力する。記録媒体デバイス３４は、可搬型記録媒体３６に記録されている情報またはデータを読み出すことができる。よって、ネットワーク分析プログラムは、可搬型記録媒体３６からネットワーク分析装置１に与えられてもよい。通信ＩＦ３５は、ネットワークに接続するインタフェースを提供する。よって、受信部１１は、通信ＩＦ３５に相当する。また、ネットワーク分析プログラムは、ネットワークに接続するプログラムサーバから通信ＩＦ３５を介してネットワーク分析装置１に与えられてもよい。
【００６８】
＜バリエーション１＞
図９に示す実施例では、回答決定部１７は、選択された各回答パターンについて確信度Ｃ１および確信度Ｃ２の平均を計算することで確信度Ｃ３を得る。ただし、本発明はこの方法に限定されるものではない。すなわち、回答決定部１７は、他の方法で確信度Ｃ３を得るようにしてもよい。
【００６９】
例えば、回答決定部１７は、問合せ文に対応する回答候補と機器ログに対応する回答候補との間の相関を計算する。ここで、この相関値が高ければ、問合せ文に対して正しい回答パターンが選択された可能性が高いと考えられる。一方、この相関値が低ければ、問合せ文に対して正しい回答パターンが選択された可能性が低いと考えられる。そこで、回答決定部１７は、この相関値に応じて、各回答パターンの確信度Ｃ３を計算する方法を変更する。
【００７０】
図１３に示す例では、問合せ文および機器ログに対してそれぞれ回答パターンＰ１〜Ｐ５が選択されている。そして、回答決定部１７は、問合せ文に対して選択された回答パターンＰ１〜Ｐ５と機器ログに対して選択された回答パターン候補Ｐ１〜Ｐ５との間の相関値を計算する。
【００７１】
相関値は、この実施例では、スピアマンの順位相関係数を利用して算出される。即ち、回答決定部１７は、（１）式で相関値Ｒxyを計算する。なお、ｎは、選択された回答パターンの個数を表す。Ｘｉは、問合せ文に対して選択された各回答パターンＰｉ（ｉ＝１〜５）の順位を表し、Ｙｉは、機器ログに対して選択された各回答パターンＰｉ（ｉ＝１〜５）の順位を表す。
【００７２】
【数１】
2020187470.tif 000003
【００７３】
図１３に示す例では、ｎは、５である。また、問合せ文に対して選択された回答パターンＰ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５の順位Ｘｉは、それぞれ、４、５、３、２、１である。一方、機器ログに対して選択された回答パターンＰ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５の順位Ｙｉは、それぞれ、５、４、３、２、１である。よって、ＸｉおよびＹｉを（１）式に与えることにより、相関値Ｒxyとして「0.9」が得られる。
【００７４】
ここで、相関値Ｒxyの最大値は１である。そして、回答決定部１７は、相関値Ｒxyが所定の閾値（例えば、0.6）より大きいときは、問合せ文に対して選択された回答パターンの信頼性が高いと判定する。この場合、回答決定部１７は、（２）式を使用して各回答パターンの確信度Ｃ３を計算する。
【００７５】
【数２】
2020187470.tif 000004
【００７６】
そして、回答決定部１７は、各回答パターンの確信度Ｃ３に基づいて、ユーザに提示すべき回答を決定する。具体的には、ユーザに提示すべき回答として、確信度Ｃ３が最も高い回答パターンが選択される。この実施例では、回答パターンＰ５が選択される。
【００７７】
図１４に示す例では、問合せ文に対応する回答候補と機器ログに対応する回答候補との間の相関が低い。具体的には、相関値Ｒxyは「−0.8」であり、上述した閾値以下である。この場合、回答決定部１７は、問合せ文に対して選択された回答パターンの信頼性が低いと判定する。そして、回答決定部１７は、（３）式を使用して各回答パターンの確信度Ｃ３を計算する。
【００７８】
【数３】
2020187470.tif 000005
【００７９】
相関値Ｒxyが閾値以下であるときは、ネットワーク障害が問合せ文により適切に記述されておらず、問合せ文に対応する回答候補の信頼性が低いと考えられる。したがって、この場合、問合せ文に基づく分析結果と比較して、機器ログに基づく分析結果の寄与率が高く設定される。なお、寄与率は、問合せ文に対応する各回答パターンと機器ログに対応する各回答パターンとの間で加重平均を計算するためのウエイトにより実現される。
【００８０】
そして、回答決定部１７は、各回答パターンの確信度Ｃ３に基づいて、ユーザに提示すべき回答を決定する。具体的には、ユーザに提示すべき回答として、確信度Ｃ３が最も高い回答パターンが選択される。この実施例では、回答パターンＰ５が選択される。このように、問合せ文に対応する回答候補と機器ログに対応する回答候補との間の相関が低いときは、問合せ文に基づく分析結果と異なる回答が生成されることがある。
【００８１】
図１５は、バリエーション１の処理を示すフローチャートである。なお、図１５に示すフローチャートは、図１０に示すフローチャートのＳ２３の一例に相当する。
【００８２】
Ｓ３１において、回答決定部１７は、問合せ文に対応する回答候補と機器ログに対応する回答候補との間の相関を計算する。すなわち、問合せ文に対応する１または複数の回答パターンと機器ログに対応する１または複数の回答パターンとの間の相関が計算される。相関値は、例えば、スピアマンの順位相関係数を利用して算出される。但し、相関値は、他の方法で算出してもよい。Ｓ３２において、回答決定部１７は、Ｓ３１で算出された相関値に基づいて、各回答パターンの確信度Ｃ３を計算するための式を選択する。図１３〜図１４に示した実施例では、相関値Ｒxyが閾値より大きいときは（２）式が選択され、相関値Ｒxyが閾値以下のときは（３）式が選択される。そして、Ｓ３３において、回答決定部１７は、選択した計算式を使用して、各回答パターンについて確信度Ｃ１および確信度Ｃ２から確信度Ｃ３を計算する。
【００８３】
この後、図１０に示すフローチャートのＳ２４が実行される。すなわち、ユーザに提供すべき回答として、確信度Ｃ３が最も大きい回答パターンが選択される。
【００８４】
＜バリエーション２＞
ネットワーク分析装置１は、ユーザからの問合せに対して回答を決定したときは、問合せと回答との対応関係を保存部１２、１３に保存する。例えば、問合せ文のワードベクトルと問合せに対して決定された回答パターンとの対応関係が保存部１２に保存される。また、機器ログのワードベクトルと問合せに対して決定された回答パターンとの対応関係が保存部１３に保存される。そうすると、保存部１２、１３に蓄積された情報に基づいて、機械学習により分類モデルが更新される。ここで、更新された分類モデルは、次の問合せに対する回答候補を選択するために使用される。したがって、回答の信頼性が高くないときは、問合せと回答との対応関係が、分類モデルを作成するための機械学習に使用されることは好ましくない。
【００８５】
そこで、ネットワーク分析装置１は、問合せ文に対応する回答候補と機器ログに対応する回答候補との間の相関が低いときには、問合せ文に基づく回答の信頼性が低いと判定する。一例としては、バリエーション１で使用される相関値Ｒxyが所定の閾値より小さいときは、問合せ文に基づく回答の信頼性が低いと判定する。そして、ネットワーク分析装置１は、相関値Ｒxyが閾値より小さいときは、問合せ文のワードベクトルと問合せに対して決定された回答パターンとの対応関係を保存部１２に保存しない。すなわち、信頼性の低い対応関係は、分類モデルの作成において使用されない。したがって、ユーザからの問合せに対して信頼性の低い回答パターンが選択されにくくなる。なお、相関値Ｒxyが閾値より小さい場合であっても、ネットワーク分析装置１は、機器ログのワードベクトルと問合せに対して決定された回答パターンとの対応関係を保存部１３に保存してもよい。
【００８６】
＜バリエーション３＞
上述したように、多くのケースにおいて、問合せに際してユーザから送られてくる機器ログの情報量は多い。このため、選択部１６（または、抽出部１５）は、機器ログに対して前処理を実行して情報量を削減する。例えば、図７に示す例では、選択部１６は、前処理として、ログＩＤおよび日時を含む数値情報を機器ログから削除する。他方、ネットワーク機器の障害が発生した箇所を特定するためには、そのネットワーク機器のインタフェース番号に係わる情報が重要と考えられる。したがって、選択部１６は、機器ログから、ネットワーク機器のインタフェース番号と共起する記述を抽出する。なお、図７に示す実施例では、インタフェース番号は、スロット番号／カード番号／ポート番号により構成される。例えば、下記の記述は、スロット番号１／カード番号２／ポート番号３において、ハートビート信号が検出さない状態を表している。
BFD Session on Interface 1/2/3 is down due to no heartbeat
【００８７】
このように、バリエーション３においては、機器ログからネットワーク機器のインタフェース番号と共起する記述が抽出され、その抽出された記述に基づいて、問合せに対する回答が作成される。その後、その問合せと回答との対応関係が保存部１３に蓄積され、分類モデルの更新に使用される。よって、ネットワーク分析装置１は、特定のインタフェースにおいて発生する障害の傾向を検出できる。
【符号の説明】
【００８８】
１  ネットワーク分析装置
１１  受信部
１０、１２、１３  保存部
１４、１６  選択部
１５  抽出部
１７  回答決定部
３１  プロセッサ
【図１】
2020187470.tif 000006
【図２】
2020187470.tif 000007
【図３】
2020187470.tif 000008
【図４】
2020187470.tif 000009
【図５】
2020187470.tif 000010
【図６】
2020187470.tif 000011
【図７】
2020187470.tif 000012
【図８】
2020187470.tif 000013
【図９】
2020187470.tif 000014
【図１０】
2020187470.tif 000015
【図１１】
2020187470.tif 000016
【図１２】
2020187470.tif 000017
【図１３】
2020187470.tif 000018
【図１４】
2020187470.tif 000019
【図１５】
2020187470.tif 000020