(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023016146
(43)【公開日】2023-02-02
(54)【発明の名称】解析装置、解析方法及び解析プログラム
(51)【国際特許分類】
G06F 11/07 20060101AFI20230126BHJP
G06F 11/34 20060101ALI20230126BHJP
【FI】
G06F11/07 193
G06F11/34 147
G06F11/07 140Q
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2021120263
(22)【出願日】2021-07-21
(71)【出願人】
【識別番号】598057291
【氏名又は名称】株式会社富士通エフサス
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】奥山 賢二
(72)【発明者】
【氏名】奥中 康弘
(72)【発明者】
【氏名】小木曽 満宜
(72)【発明者】
【氏名】持田 哲也
(72)【発明者】
【氏名】玉木 義彦
(72)【発明者】
【氏名】高橋 学
(72)【発明者】
【氏名】田中 文夫
(72)【発明者】
【氏名】内藤 守
(72)【発明者】
【氏名】道端 圭二
(72)【発明者】
【氏名】福田 彰
(72)【発明者】
【氏名】花田 恭一
(72)【発明者】
【氏名】山田 貴裕
(72)【発明者】
【氏名】小林 幹京
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042KK17
5B042MA08
5B042MA14
5B042MC40
(57)【要約】
【課題】ログデータからトラブルの対応に有効な情報を特定して、オペレータを支援すること。
【解決手段】解析装置100は、解析対象のログデータ145の特徴量を抽出し、ログデータの特徴量を入力データとし、トラブルの症状を正解ラベルとする学習データ143を基にして学習されたモデル144に、解析対象のログデータから抽出した特徴量を入力することで、解析対象のログデータ145に対応したトラブルの症状を特定する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ログデータの特徴量を入力データとし、トラブルの症状を正解ラベルとする学習データを基にして学習されたモデルを記憶する記憶部と、
解析対象のログデータから抽出された特徴量を前記モデルに入力することで、前記解析対象のログデータに対応したトラブルの症状を特定する特定部と、
を有することを特徴とする解析装置。
【請求項2】
前記学習データの正解ラベルに設定される前記トラブルの症状には、トラブルの発生した製品の情報、トラブルの現象の情報、および、トラブルの原因に関する情報が含まれ、前記特定部は、解析対象のログデータから特徴量を前記モデルに入力することで、前記解析対象のログデータに対応した、トラブルの発生した製品の情報、トラブルの現象の情報、および、トラブルの原因に関する情報を特定することを特徴とする請求項1に記載の解析装置。
【請求項3】
前記解析対象のログデータに含まれる所定のメッセージの出現回数を、前記特徴量として抽出する抽出部を更に有することを特徴とする請求項1に記載の解析装置。
【請求項4】
前記特定部は、特定したトラブルの発生した製品の情報に関連するインシデント情報を更に特定することを特徴とする請求項2に記載の解析装置。
【請求項5】
前記特定部は、前記解析対象のログデータと、前記トラブルの症状と、前記インシデント情報とを対応付けて出力する処理を更に実行することを特徴とする請求項4に記載の解析装置。
【請求項6】
解析対象のログデータの特徴量を抽出し、
ログデータの特徴量を入力データとし、トラブルの症状を正解ラベルとする学習データを基にして学習されたモデルに、前記解析対象のログデータから抽出した特徴量を入力することで、前記解析対象のログデータに対応したトラブルの症状を特定する、
処理をコンピュータが実行することを特徴とする解析方法。
【請求項7】
解析対象のログデータの特徴量を抽出し、
ログデータの特徴量を入力データとし、トラブルの症状を正解ラベルとする学習データを基にして学習されたモデルに、前記解析対象のログデータから抽出した特徴量を入力することで、前記解析対象のログデータに対応したトラブルの症状を特定する、
処理をコンピュータに実行させることを特徴とする解析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、解析装置等に関する。
【背景技術】
【0002】
企業では、サポートサイトを作成し、自社の製品やサービスを利用するユーザに対して、トラブル対応等を行っている。たとえば、サポートサイトでは、過去のトラブル事例や失敗事例とともに、よくある質問とその回答をまとめたFAQ(Frequently Asked Questions)を用意することが一般的である。
【0003】
ユーザは、トラブルが発生した場合には、サポートサイトのFAQを参照して、トラブルの解消を図り、FAQで解消できない場合には、サポートセンターのオペレータに対して、電話やメールによる問い合わせを行っている。オペレータは、サービス提供時に記録されたログデータを参照して、トラブルの対応を検討する場合もある。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】住友電工情報システム、“コールセンター効率化”、[online]、[令和3年6月23日検索]、インターネット<URL:https://www.sei-info.co.jp/quicksolution/case-studies/cases/crm.html>
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、ログデータには様々な情報が混在しているため、オペレータがログデータをそのまま参照して、トラブル対応に役立てることは容易なことではない。このため、ログデータを基にして、トラブルの対応に有効な情報を特定し、オペレータを支援することが求められている。
【0006】
1つの側面では、本発明は、ログデータからトラブルの対応に有効な情報を特定して、オペレータを支援することができる解析装置、解析方法及び解析プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
第1の案では、解析装置は、記憶部と、特定部とを有する。記憶部は、ログデータの特徴量を入力データとし、トラブルの症状を正解ラベルとする学習データを基にして学習されたモデルを記憶する。特定部は、解析対象のログデータから抽出された特徴量をモデルに入力することで、解析対象のログデータに対応したトラブルの症状を特定する。
【発明の効果】
【0008】
ログデータを基にしてトラブルの対応に有効な情報を特定し、オペレータを支援することができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、本実施例に係る解析装置の構成を示す機能ブロック図である。
【
図2】
図2は、学習データのデータ構造の一例を示す図である。
【
図3】
図3は、評価データのデータ構造の一例を示す図である。
【
図4】
図4は、本実施例に係る解析装置の学習フェーズの処理手順を示すフローチャートである。
【
図5】
図5は、本実施例に係る解析装置の評価フェーズの処理手順を示すフローチャートである。
【
図6】
図6は、実施例の解析装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0010】
以下に、本願の開示する解析装置、解析方法及び解析プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例0011】
本実施例に係る解析装置の構成について説明する。
図1は、本実施例に係る解析装置の構成を示す機能ブロック図である。
図1に示すように、この解析装置は、通信部110、入力部120、表示部130、記憶部140、制御部150を有する。
【0012】
通信部110は、有線または無線通信によって、外部装置との間で情報の送受信を行う。たとえば、通信部110は、NIC(Network Interface Card)等によって実現される。解析装置100は、通信部110を介して、後述するナレッジDB141、ログデータ145を受信してもよい。
【0013】
入力部120は、解析装置100の制御部150に各種の情報を入力するための入力装置である。入力部120は、キーボードやマウス、タッチパネル等に対応する。オペレータ等は、入力部120を操作して、後述するログデータ145を入力してもよい。
【0014】
表示部130は、制御部150から出力される情報を表示する表示装置である。表示部130は、有機EL(Electro Luminescence)ディスプレイ、液晶ディスプレイ、タッチパネル等に対応する。
【0015】
記憶部140は、ナレッジDB(Data Base)141、質問詳細データ142、学習データ143、モデル144、ログデータ145、評価データ146を有する。記憶部140は、たとえば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
【0016】
ナレッジDB141は、過去のトラブル対応に関するナレッジ情報を保持するデータベースである。たとえば、ナレッジDB141には、過去に発生したトラブル対応に紐づく情報を識別するためのインシデント番号、トラブルの対応履歴のログデータ(システムログ)が含まれる。
【0017】
質問詳細データ142は、ナレッジDB141に含まれるデータのうち、一部のデータを抽出したものである。たとえば、質問詳細データ142には、インシデント番号や、このインシデント番号に対応するトラブル対応履歴のテキストデータ等が含まれる。
【0018】
学習データ143は、モデル144を学習するためのデータである。
図2は、学習データのデータ構造の一例を示す図である。
図2に示すように、この学習データ143は、インシデント番号と、正解ラベルデータと、入力データとを有する。インシデント番号は、過去に発生したトラブル対応に紐づく情報を識別する番号である。
【0019】
正解ラベルデータには、OS(Operating System)コード、製品コード、製品コンポーネント、クローズコード、現象名が含まれる。OSコードは、OSを識別する情報である。製品コードは、製品を識別する情報である。製品コンポーネントは、製品に含まれる部品を識別する情報である。正解ラベルデータに含まれる各情報は、トラブルの症状に相当する。
【0020】
クローズコードは、トラブル対応がどのような判断で終了したのかを示す情報である。たとえば、クローズコードには、ハード故障、ソフトウェア障害、操作ミス、設定ミス等が含まれる。
【0021】
現象名は、トラブルの現象名を示す情報である。たとえば、現象名には、システム停止、処理停止、処理結果異常等が含まれる。
【0022】
たとえば、
図2のインシデント番号「0001」に対応するOSコードは「OS-A」、製品コード「製品-A」、製品コンポーネント「コンポーネント-A」、クローズコード「ハード故障」、現象名「システム停止」となる。
【0023】
入力データには、ログデータから検出されるメッセージM1~Mnの出現回数が設定される。各メッセージは、予め設定される固有の文字列である。ログデータから検出されるメッセージM1~Mnの出現回数は、ログデータの特徴量の一例である。
【0024】
たとえば、
図2のインシデント番号「0001」に対応するログデータに含まれるメッセージM1の出現回数が「1」、メッセージM2の出現回数が「0」、メッセージM3の出現回数が「3」、メッセージMnの出現回数が「1」である旨が設定される。
【0025】
モデル144は、決定木等の機械学習モデルである。本実施例では、モデル144を決定木として説明を行うが、NN(Neural Network)等で実現してもよい。
【0026】
ログデータ145は、評価の対象となるログデータであり、トラブル発生時の履歴が含まれる。ログデータ145には、固有のインシデント番号が割り当てられる。
【0027】
評価データ146は、ログデータ145から抽出される特徴量を保持する。
図3は、評価データのデータ構造の一例を示す図である。
図3に示すように、この評価データ146は、インシデント番号と、インシデント番号に対応するログデータ145から検出されるメッセージM1~Mnの出現回数が設定される。
【0028】
たとえば、
図3に示す例では、ログデータ145には、インシデント番号「9999」が設定される。また、ログデータ145に含まれるメッセージM1の出現回数が「1」、メッセージM2の出現回数が「0」、メッセージM3の出現回数が「3」、メッセージMnの出現回数が「1」である旨が設定される。
【0029】
図1の説明に戻る。制御部150は、前処理部151、学習処理部152、抽出部153、特定部154を有する。たとえば、制御部150は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)により実現される。また、制御部150は、たとえば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実行されてもよい。
【0030】
前処理部151は、ナレッジDB141のデータを外部装置から受信し、記憶部140に登録する。前処理部151は、ナレッジDB141を走査して、トラブル対応に関連する情報を抽出し、抽出した情報を、質問詳細データ142として、記憶部140に登録する。たとえば、ナレッジDB141のうち、所定の項目に関連付けられたテキストデータや、インシデント番号を含む一定範囲のテキストデータ(トラブル対応の履歴)を引き抜き、質問詳細データ142に設定する。
【0031】
前処理部151は、質問詳細データ142を基にして、学習データ143を生成する。たとえば、前処理部151は、インシデント番号に対応する質問詳細データ142のテキストデータを走査し、所定のメッセージを特定し、出現回数をカウントする。前処理部151は、インシデント番号と、メッセージの出現回数とを対応付けて、入力データとする。
【0032】
また、前処理部151は、インシデント番号に関連する正解ラベルデータ(OSコード、製品コード、製品コンポーネント、クローズコード、現象名)を、外部装置から取得する。なお、ナレッジDB141に、インシデント番号に関連する正解ラベルデータが登録されている場合には、前処理部151は、ナレッジDB141から、正解ラベルデータを検出してもよい。
【0033】
前処理部151は、上記のように、インシデント番号に対応する正解ラベルデータ、入力データを取得し、学習データ143に登録する。前処理部151は、各インシデント番号について、上記処理を繰り返し実行する。
【0034】
学習処理部152は、学習データ143を用いて、モデル144の機械学習を実行する。たとえば、学習処理部152は、入力データをモデル144に入力した場合の出力が、正解ラベルデータの出力結果となるように、モデル144のパラメータを調整する。学習データ143を用いて決定木を学習する手法は、いかなる従来技術を用いてもよい。
【0035】
抽出部153は、ログデータ145を、外部装置または入力部120から取得し、取得したログデータ145を、記憶部140に登録する。抽出部153は、ログデータ145から特徴量を抽出することで、評価データ146を生成し、記憶部140に登録する。たとえば、抽出部153は、ログデータ145を走査し、予め設定された複数のメッセージの出現回数をカウントする。抽出部153は、ログデータ145に設定されたインシデント番号と、各メッセージの出現回数を、評価データ146に設定する。
【0036】
特定部154は、評価データ146を、学習済みのモデル144に入力することで、トラブルの症状を特定する。たとえば、トラブルの症状として、ログデータ145に関連する、OSコード、製品コード、製品コンポーネント、クローズコード、現象名が、モデル144から出力される。
【0037】
特定部154は、製品コードの情報を、外部装置に出力し、製品コードに関するマニュアル情報、製品コードに関連したトラブルのインシデント番号を問い合わせる。これにより、特定部154は、製品コードに対応するインシデント番号、マニュアル情報を取得する。以下の説明では、製品コードに関連したトラブルのインシデント番号を、「関連インシデント番号」と表記する。
【0038】
特定部154は、トラブルの症状(たとえば、OSコード、製品コード、製品コンポーネント、クローズコード、現象名)、関連インシデント番号、マニュアル情報を対応付けた画面情報を生成し、表示部130に出力して表示させる。特定部154は、ログデータ145を外部装置から取得している場合には、外部装置に画面情報を送信してもよい。
【0039】
次に、本実施例に係る解析装置100の処理手順の一例について説明する。
図4は、本実施例に係る解析装置の学習フェーズの処理手順を示すフローチャートである。
図4に示すように、解析装置100の前処理部151は、ナレッジDB141から、質問詳細データ142を抽出する(ステップS101)。
【0040】
前処理部151は、質問詳細データ142および外部装置から取得した正解ラベルデータを基にして、学習データ143を生成する(ステップS102)。
【0041】
解析装置100の学習処理部152は、学習データ143を用いてモデル144を学習する(ステップS103)。学習処理部152は、学習済みのモデル144を、記憶部に登録する(ステップS104)。
【0042】
図5は、本実施例に係る解析装置の評価フェーズの処理手順を示すフローチャートである。解析装置100の抽出部153は、ログデータ145の入力を受け付ける(ステップS201)。抽出部153は、ログデータ145から特徴量を抽出することで、評価データ146を生成する(ステップS202)。
【0043】
解析装置100の特定部154は、評価データ146を学習済みのモデル144に入力して、トラブルの症状(OSコード、製品コード、製品コンポーネント、クローズコード、現象名)を特定する(ステップS203)。
【0044】
特定部154は、トラブルの症状に対応するインシデント番号およびマニュアル情報を取得する(ステップS204)。特定部154は、トラブルの症状にインシデント番号およびマニュアル情報を対応付けた画面情報を生成する(ステップS205)。特定部154は、画面情報を表示部130に表示させる(ステップS206)。
【0045】
次に、本実施例に係る解析装置100の効果について説明する。解析装置100は、質問詳細データ142のようなログデータの特徴量を入力データ、トラブルの症状を正解ラベルとした学習データ143によって学習したモデル144に、解析対象のログデータ145の特徴量を入力して、出力結果を提示する。これによって、トラブル対応に有効な情報を抽出して、オペレータを支援することができる。
【0046】
解析装置100は、学習データ143として用いるトラブルの症状として、OSコード、製品コード、製品コンポーネント、クローズコード、現象名を利用する。これによって、オペレータは、対応中のトラブルの対応に役立つ情報を得ることができる。
【0047】
解析装置100は、ログデータ145から特徴量(メッセージの出現回数)を抽出し、モデル144に入力する。これによって、モデル144に入力すべきデータを絞り込むことができる。
【0048】
解析装置100は、トラブルの発生した製品の情報を関連するインシデント番号を更に特定する。これによって、トラブルの発生したログデータ145に関連する情報を、インシデント番号を用いて容易に収集することができる。
【0049】
次に、上記実施例に示した解析装置100と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。
図6は、実施例の解析装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【0050】
図6に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203とを有する。また、コンピュータ200は、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行う通信装置204と、インタフェース装置205とを有する。また、コンピュータ200は、各種情報を一時記憶するRAM206と、ハードディスク装置207とを有する。そして、各装置201~207は、バス208に接続される。
【0051】
ハードディスク装置207は、前処理プログラム207a、学習処理プログラム207b、抽出プログラム207c、特定プログラム207dを有する。また、CPU201は、各プログラム207a~207dを読み出してRAM206に展開する。
【0052】
前処理プログラム207aは、前処理プロセス206aとして機能する。学習処理プログラム207bは、学習処理プロセス206bとして機能する。抽出プログラム207cは、抽出プロセス206cとして機能する。特定プログラム207dは、特定プロセス206dとして機能する。
【0053】
前処理プロセス206aの処理は、前処理部151の処理に対応する。学習処理プロセス206bの処理は、学習処理部152の処理に対応する。抽出プロセス206cの処理は、抽出部153の処理に対応する。特定プロセス206dの処理は、特定部154の処理に対応する。
【0054】
なお、各プログラム207a~207dについては、必ずしも最初からハードディスク装置207に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD-ROM、DVD、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ200が各プログラム207a~207dを読み出して実行するようにしてもよい。