JP6510125B1 - 情報処理装置、情報処理方法、及び情報処理プログラム - Google Patents

情報処理装置、情報処理方法、及び情報処理プログラム Download PDF

Info

Publication number
JP6510125B1
JP6510125B1 JP2018131855A JP2018131855A JP6510125B1 JP 6510125 B1 JP6510125 B1 JP 6510125B1 JP 2018131855 A JP2018131855 A JP 2018131855A JP 2018131855 A JP2018131855 A JP 2018131855A JP 6510125 B1 JP6510125 B1 JP 6510125B1
Authority
JP
Japan
Prior art keywords
information
event
processing apparatus
information processing
events
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018131855A
Other languages
English (en)
Other versions
JP2020009333A (ja
Inventor
章人 田平
章人 田平
浩幸 柴田
浩幸 柴田
弘紀 安井
弘紀 安井
達郎 立堀
達郎 立堀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2018131855A priority Critical patent/JP6510125B1/ja
Application granted granted Critical
Publication of JP6510125B1 publication Critical patent/JP6510125B1/ja
Publication of JP2020009333A publication Critical patent/JP2020009333A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】類似事象に関連する情報を適切に抽出する。【解決手段】本願に係る情報処理装置は、取得部と、抽出部とを有する。取得部は、複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報と、複数の事象の各々に対応付けられた情報であって、対応付けられた事象に関連する情報である事象関連情報と、一の事象に関する情報を取得する。抽出部は、グラフ情報の複数のベクトルのうち、所定の基準に基づいて決定されたグラフ情報の検索の起点となる起点ベクトルを起点としてグラフ情報を検索し、複数の事象のうち、一の事象に類似する事象である類似事象を抽出することにより、類似事象に対応付けられた事象関連情報を抽出する。【選択図】図3

Description

本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
従来、種々の情報を抽出する技術が提供されている。例えば、他のカテゴリーに属する概念間の相対的な関係を考慮した上で、概念間の類似性を推定する技術が提供されている。
特開2007−213151号公報
岩崎雅二郎 "木構造型インデックスを利用した近似k最近傍グラフによる近傍検索", 情報処理学会論文誌, 2011/2, Vol. 52, No. 2. pp.817-828.
しかしながら、上記の従来技術では、類似事象に関連する情報を適切に抽出することが難しい場合がある。例えば、他のカテゴリーに属する概念間の類似性を推定するだけでは、他のカテゴリーに属する概念間の類似性を特定することができるに過ぎない。そのため、例えば同じカテゴリーに属する情報の類似性を推定することができず、類似事象に関連する情報を適切に抽出することが難しい。
本願は、上記に鑑みてなされたものであって、類似事象に関連する情報を適切に抽出する情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
本願に係る情報処理装置は、複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報と、前記複数の事象の各々に対応付けられた情報であって、対応付けられた事象に関連する情報である事象関連情報と、一の事象に関する情報を取得する取得部と、前記グラフ情報の前記複数のベクトルのうち、所定の基準に基づいて決定された前記グラフ情報の検索の起点となる起点ベクトルを起点として前記グラフ情報を検索し、前記複数の事象のうち、前記一の事象に類似する事象である類似事象を抽出することにより、前記類似事象に対応付けられた前記事象関連情報を抽出する抽出部と、を備えたことを特徴とする。
実施形態の一態様によれば、類似事象に関連する情報を適切に抽出することができるという効果を奏する。
図1は、実施形態に係る情報処理の一例を示す図である。 図2は、実施形態に係る情報処理システムの構成例を示す図である。 図3は、実施形態に係る情報処理装置の構成例を示す図である。 図4は、実施形態に係る事象情報記憶部の一例を示す図である。 図5は、実施形態に係るインデックス情報記憶部の一例を示す図である。 図6は、実施形態に係るグラフ情報記憶部の一例を示す図である。 図7は、実施形態に係るモデル情報記憶部の一例を示す図である。 図8は、実施形態に係る情報処理の一例を示すフローチャートである。 図9は、実施形態に係る生成処理の一例を示すフローチャートである。 図10は、実施形態に係る特徴量の抽出の一例を示す図である。 図11は、グラフ情報を用いた検索処理の一例を示すフローチャートである。 図12は、実施形態に係る情報処理の他の例を示す図である。 図13は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
(実施形態)
〔1.情報処理〕
図1を用いて、実施形態に係る情報処理の一例について説明する。図1は、実施形態に係る情報処理の一例を示す図である。図1では、情報処理装置100が過去に発生した事象をグラフ構造化したグラフデータ(グラフ情報)を検索することにより、類似する事象(以下、「類似事象」ともいう)を抽出する場合を示す。図1では、情報処理装置100は、各事象に対応するベクトルデータ(単に「ベクトル」ともいう)を用いて事象をグラフ構造化したグラフ情報を用いる。例えば、情報処理装置100は、各事象のログデータ(単に「ログ」ともいう)をベクトル化したベクトルを用いて事象をグラフ構造化したグラフ情報を用いる。なお、図1の例では、事象としてサーバシステムで発生するイベント(以下、「サーバイベント」ともいう)を対象とする場合を一例として示すが、事象はサーバイベントに限らず、どのような事象であってもよい。例えば、鉄道の交通に関する事象やユーザの購買等のユーザ行動に関する事象など種々の事象であってもよいが、この点についての詳細は後述する。すなわち、対象とする事象(オブジェクト)は、ベクトルとして表現可能であれば、どのような事象(情報)であってもよい。
また、情報処理装置100が用いる情報は、ベクトルに限らず、各事象の類似性を表現可能な情報であれば、どのような形式の情報であってもよい。例えば、情報処理装置100は、各事象に対応する所定のデータや値を用いて事象をグラフ構造化したグラフ情報を用いてもよい。例えば、情報処理装置100は、各事象から生成された所定の数値(例えば2進数の値や16進数の値)を用いて事象をグラフ構造化したグラフ情報を用いてもよい。例えば、ベクトルに代えて、データ間の距離(類似度)が定義されていれば任意の形態のデータであっても良い。
〔1−1.グラフ情報について〕
また、情報処理装置100は、図1中のグラフ情報GR11に示すように、各ベクトル(ノード)が有向エッジにより連結されたグラフデータを対象に情報処理を行う。なお、図1中のグラフ情報GR11に示すようなグラフ情報は、情報処理装置100が生成してもよいし、情報処理装置100は、図1中のグラフ情報GR11に示すようなグラフ情報をサービス提供装置50(図2参照)等の他の外部装置から取得してもよい。
また、ここでいう、有向エッジとは、一方向にしかデータを辿れないエッジを意味する。以下では、エッジにより辿る元、すなわち始点となるノードを参照元とし、エッジにより辿る先、すなわち終点となるノードを参照先とする。例えば、所定のノード「A」から所定のノード「B」に連結される有向エッジとは、参照元をノード「A」とし、参照先をノード「B」とするエッジであることを示す。なお、各ノードを連結するエッジは、有向エッジに限らず、種々のエッジであってもよい。例えば、各ノードを連結するエッジは、ノードを連結する方向のないエッジであってもよい。例えば、各ノードを連結するエッジは、相互に参照可能なエッジであってもよい。例えば、各ノードを連結するエッジは、全て双方向エッジであってもよい。
例えば、このようにノード「A」を参照元とするエッジをノード「A」の出力エッジという。また、例えば、このようにノード「B」を参照先とするエッジをノード「B」の入力エッジという。すなわち、ここでいう出力エッジ及び入力エッジとは、一の有向エッジをその有向エッジが連結する2つのノードのうち、いずれのノードを中心として捉えるかの相違であり、一の有向エッジが出力エッジ及び入力エッジになる。すなわち、出力エッジ及び入力エッジは、相対的な概念であって、一の有向エッジについて、参照元となるノードを中心として捉えた場合に出力エッジとなり、参照先となるノードを中心として捉えた場合に入力エッジとなる。なお、本実施形態においては、エッジについては、出力エッジや入力エッジ等の有向エッジを対象とするため、以下では、有向エッジを単に「エッジ」と記載する場合がある。
例えば、情報処理装置100は、数百万〜数億単位の事象に対応するノードを対象に処理を行うが、図面においてはその一部のみを図示する。図1の例では、説明を簡単にするために、8個のノードを図示して処理の概要を説明する。例えば、情報処理装置100は、図1中のグラフ情報GR11に示すように、ノードN1、N2、N3等に示すような複数のノード(ベクトル)を含むグラフ情報を取得する。また、図1の例では、グラフ情報GR11における各ノードは、そのノードとの間の距離が近い方から所定数のノードへのエッジ(出力エッジ)が連結される。例えば、所定数は、目的や用途等に応じて、2や5や10や100等の種々の値であってもよい。例えば、所定数が2である場合、ノードN1からは、ノードN1からの距離が最も近いノード及び2番目に距離が近い2つノードに出力エッジが連結される。なお、類似度を示す指標としての距離は、ベクトル(N次元ベクトル)間の距離として適用可能であれば、どのような距離であってもよく、例えば、ユークリッド距離やマハラノビス距離やコサイン距離等の種々の距離が用いられてもよい。
また、このように「ノードN*(*は任意の数値)」と記載した場合、そのノードはノードID「N*」により識別されるノードであることを示す。例えば、「ノードN1」と記載した場合、そのノードはノードID「N1」により識別されるノードである。
また、図1中のグラフ情報GR11では、ノードN10は、ノードN7へ向かう有向エッジであるエッジE7が連結される。すなわち、ノードN10は、ノードN7とエッジE7により連結される。このように「エッジE*(*は任意の数値)」と記載した場合、そのエッジはエッジID「E*」により識別されるエッジであることを示す。例えば、「エッジE11」と記載した場合、そのエッジはエッジID「E11」により識別されるエッジである。例えば、ノードN10を参照元とし、ノードN7を参照先として連結されるエッジE7により、ノードN10からノードN7に辿ることが可能となる。この場合、有向エッジであるエッジE7は、ノードN10を中心として識別される場合、出力エッジとなり、ノードN7を中心として識別される場合、入力エッジとなる。また、図1のグラフ情報GR11中の双方向矢印は、両方のノードから他方のノードへの有向エッジが連結されることを示す。例えば、グラフ情報GR11中のノードN2とノードN451との間の双方向矢印は、ノードN2からノードN451へ向かう有向エッジと、ノードN451からノードN2へ向かう有向エッジとの2つのエッジが連結されることを示す。
また、図1中のグラフ情報GR11は、ユークリッド空間であってもよい。また、図1に示すグラフ情報GR11は、各ベクトル間の距離等の説明のための概念的な図であり、グラフ情報GR11は、多次元空間である。例えば、図1に示すグラフ情報GR11は、平面上に図示するため2次元の態様にて図示されるが、例えば100次元や1000次元等の多次元空間であるものとする。
ここで、ベクトルデータ間の距離は、事象の類似性を示し、距離が近いほど類似している。本実施形態においては、グラフ情報GR11における各ノードの距離を対応する各オブジェクト間の類似度とする。例えば、各ノードに対応するオブジェクト(事象)の類似性が、グラフ情報GR11内におけるノード間の距離として写像されているものとする。例えば、各ノードに対応する概念間の類似度が各ノード間の距離に写像されているものとする。ここで、図1に示す例においては、グラフ情報GR11における各ノード間の距離が短いオブジェクト同士の類似度が高く、グラフ情報GR11における各ノード間の距離が長いオブジェクト同士の類似度が低い。例えば、図1中のグラフ情報GR11において、ノードID「N35」により識別されるノードと、ノードID「N693」により識別されるノードとは近接している、すなわち距離が短い。そのため、ノードID「N35」により識別されるノードに対応するオブジェクトと、ノードID「N693」により識別されるノードに対応するオブジェクトとは類似度が高いことを示す。
また、例えば、図1中のグラフ情報GR11において、ノードID「N7」により識別されるノードと、ノードID「N2」により識別されるノードとは遠隔にある、すなわち距離が長い。そのため、ノードID「N7」により識別されるノードに対応するオブジェクトと、ノードID「N2」により識別されるノードに対応するオブジェクトとは類似度が低いことを示す。
〔1−2.ベクトル生成〕
また、ここでいう、各ノード(ベクトル)は、各オブジェクト(事象)に対応する。システムのログが様々なシステムの状態を示す数値データであれば、それをベクトルデータとして、そのまま扱うことも可能である。しかし、システムのログデータが、数値データ等のベクトルデータとして直接扱うことが可能ではない情報である場合には、ベクトルデータへの変換が必要となる。例えば、サービス提供装置50が出力するログデータが、文字情報(テキストメッセージ)である場合には、ベクトルデータへの変換が必要となる。ここで、図1の例では、ログデータが、所定の自然言語(例えば英語)を用いて記載されたログデータ(文字情報)であるものとして以下説明する。この場合、情報処理装置100は、自然言語処理に関する種々の従来技術を用いて、ログデータをベクトル化してもよい。例えば、情報処理装置100は、Word2VecやSentence2VecやDoc2Vecのようなアルゴリズム等を用いて、ログデータからベクトルを生成してもよい。例えば、情報処理装置100は、過去に発生した事象のログデータから、Sentence2Vecを用いてベクトルを生成する。例えば、情報処理装置100は、文字情報であるログデータLG1、LG2、LG451等から、Sentence2Vecを用いてベクトルを生成する。
図1の例では、情報処理装置100は、Sentence2Vecであるモデルを用いて各事象のログデータからN次元ベクトルを生成する場合を一例として説明する。図1の例では、情報処理装置100は、モデル情報記憶部124(図7参照)に示すように、モデルID「M1」により識別されるモデル(モデルM1)を用いて、各事象のログデータからベクトルを生成する。上記のように、「モデルM*(*は任意の数値)」と記載した場合、そのモデルはモデルID「M*」により識別されるモデルであることを示す。例えば、「モデルM1」と記載した場合、そのモデルはモデルID「M1」により識別されるモデルである。また、モデル情報記憶部124に示すように、モデルM1は用途「ベクトル化(システム)」、すなわち所定のシステムにおける情報をベクトル化するために用いられるモデルであり、その具体的なモデルデータが「モデルデータMDT1」であることを示す。
例えば、情報処理装置100は、Sentence2VecであるモデルM1に事象のログデータを入力することにより、モデルM1からログデータをベクトル化した情報(ベクトルデータ)を出力させる。なお、情報処理装置100は、ログデータの種別に応じて種々のモデルを用いてもよいが、この点についての詳細は後述する。
〔1−3.処理例〕
ここから、情報処理装置100は、サービス提供装置50から一の事象のログデータ(以下、「クエリ」ともいう)を取得し、一の事象に類似する事象に関する情報提供をサービス提供装置50の管理者に行う場合を一例として説明する。図1の例では、サービス提供装置50は、所定のサービスを提供するとともに、ログを出力するサーバであって、管理者MG1により管理されるコンピュータである。図1の例では、サービス提供装置50は、所定のサービスにおける処理等に応じてログを生成(出力)する。また、管理者MG1は、端末装置10を用いて、サービス提供装置50の管理や保守等を行う。情報処理装置100は、サービス提供装置50が出力するログを取得し、ログが所定の条件を満たす場合、ログに対応する事象の類似事象を検索する検索処理を行う。
図1の例では、サービス提供装置50において、一の事象が発生する(ステップS10)。例えば、サービス提供装置50において、一の事象である事象Xが発生する。そして、所定のアラートXである事象Xの発生に応じて、サービス提供装置50は、事象XのログデータLGXを出力する。サービス提供装置50は、事象Xの内容を示す自然言語で記載されたログデータLGXを出力する。そして、サービス提供装置50は、ログデータLGXを情報処理装置100へ送信する。なお、サービス提供装置50は、所定の条件を満たすログのみを情報処理装置100へ送信してもよい。サービス提供装置50は、アラートやエラー等の通常とは異なる事象の発生を示すログを情報処理装置100へ送信してもよい。
そして、情報処理装置100は、一の事象に関する事象情報(ログデータ)を取得する(ステップS11)。図1の例では、情報処理装置100は、端末装置10から事象Xに関するログデータLGXを取得する。そして、情報処理装置100は、一の事象が所定の条件を満たすかどうかを判定する。情報処理装置100は、一の事象が通常の事象と異なる事象であるかどうかを判定する。図1の例では、情報処理装置100は、事象Xが所定のアラートXであるため、事象Xを通常の事象と異なる事象であると判定する。すなわち、情報処理装置100は、事象Xが所定の条件を満たすと判定する。そして、情報処理装置100は、以下の事象Xの類似事象に対応付けられた事象関連情報を抽出する処理を行う。すなわち、情報処理装置100は、一の事象が発生したタイミングに基づいて、事象Xの類似事象に対応付けられた事象関連情報を抽出する処理を行う。
なお、サービス提供装置50が所定の条件を満たすログのみを情報処理装置100に送信する場合、情報処理装置100は、条件判定をすることなく、サービス提供装置50から取得したログに対応する類似事象の抽出を行ってもよい。
事象Xが所定の条件を満たすと判定した情報処理装置100は、事象Xに対応するログデータLGXからグラフ情報の探索に用いるベクトルを生成する。図1の例では、情報処理装置100は、処理群PS11に示すような処理により、事象Xに対応するベクトルを生成する。情報処理装置100は、事象Xに関するログデータLGXをモデルM1に入力する(ステップS12)。具体的には、情報処理装置100は、事象X発生時に所定のサーバシステムのサーバ装置が出力したログデータLGXをモデルM1に入力する。このように、情報処理装置100は、モデルM1にログデータLGXの入力することにより、モデルM1を用いて、ログデータLGXからベクトルを生成する(ステップS13)。すなわち、情報処理装置100は、モデルM1にログデータLGXの入力することにより、ログデータLGXをベクトル化する。
このように、情報処理装置100は、Sentence2VecであるモデルM1を用いて、ログデータLGXからベクトルデータVDX(単に「ベクトルVDX」ともいう)を生成する。図1の例では、情報処理装置100は、Sentence2VecであるモデルM1を用いて、1次元目の要素が「0.6」であり、2次元目の要素が「0.3」であるようなベクトルVDXを生成する。なお、ベクトルの各要素(値)は、種々の値であってもよい。例えば、ベクトルの各要素(値)は、小数点以下の数値を含む実数であってもよいし、整数であってもよい。
そして、情報処理装置100は、事象Xに類似する事象(類似事象)を検索する(ステップS14)。例えば、情報処理装置100は、非特許文献1に開示されるような近傍検索の技術等の種々の従来技術を適宜用いて、事象Xの類似事象を検索してもよい。
図1の例では、情報処理装置100は、情報群INF11に示すように、グラフ情報GR11やインデックス情報IND11を用いて事象Xの類似事象を検索する。例えば、情報処理装置100は、グラフ情報記憶部123(図6参照)から事象に関するグラフ情報GR11を取得する。また、例えば、情報処理装置100は、インデックス情報記憶部122(図5参照)から、グラフ情報GR11における検索の起点となるノード(以下、「起点ベクトル」ともいう)の決定に用いるインデックス情報IND11を取得する。なお、インデックス情報IND11は、情報処理装置100が生成してもよいし、情報処理装置100は、インデックス情報IND11をサービス提供装置50や情報提供装置(図示省略)等の他の外部装置から取得してもよい。
そして、情報処理装置100は、一の事象(クエリ)に対応する起点ベクトルを決定(特定)するために、インデックス情報IND11を用いる。図1の例では、情報処理装置100は、事象XのベクトルVDXに対応する起点ベクトルを決定(特定)するために、インデックス情報IND11を用いる。すなわち、情報処理装置100は、ベクトルVDXとインデックス情報IND11とを用いて、グラフ情報GR11における起点ベクトルを決定する。
図1中のインデックス情報IND11は、図5中のインデックス情報記憶部122に示す階層構造を有する。例えば、インデックス情報IND11は、ルートRTの直下に位置する第1階層のノード(ベクトル)が、節点VT1、VT2等であることを示す。また、例えば、インデックス情報IND11は、節点VT2の直下の第2階層のノードが、節点VT2−1〜VT2−4(図示せず)であることを示す。また、例えば、インデックス情報IND11は、節点VT2−2の直下の第3階層のノードが、ノードN35、ノードN451、ノードN693、すなわちグラフ情報GR11中のノード(ベクトル)であることを示す。
例えば、情報処理装置100は、図1中のインデックス情報IND11に示すような木構造型のインデックス情報を用いて、グラフ情報GR11における起点ベクトルを決定する(ステップS15)。図1の例では、情報処理装置100は、ベクトルVDXを生成した後、インデックス情報IND11を上から下へ辿ることにより、インデックス情報IND11の近傍候補となる起点ベクトルを特定することにより、効率的に検索クエリ(一の事象)に対応する起点ベクトルを決定することができる。
例えば、情報処理装置100は、インデックス情報IND11をルートRTからリーフノード(グラフ情報GR11中のノード(ベクトル))まで辿ることにより、ベクトルVDXに対応する起点ベクトルを決定してもよい。図1の例では、例えば、情報処理装置100は、インデックス情報IND11をルートRTからノードN451まで辿ることにより、ノードN451を起点ベクトルとして決定する。なお、図1の例では、説明を簡単にするために、起点ベクトルを1つ決定する場合を示すが、情報処理装置100は、複数個の起点ベクトルを決定してもよい。例えば、情報処理装置100は、ノードN451、N35、N693、N2等の複数個のベクトル(ノード)を起点ベクトルとして決定してもよい。なお、インデックス情報IND11を用いずに、検索開始時にグラフ情報GR11からランダムに1つ以上のノードを選択し、それを起点ベクトルとしてもよいし、または、予め指定された1つ以上のノードを起点ベクトルとしても良い。
例えば、情報処理装置100は、木構造に関する種々の従来技術を適宜用いて、インデックス情報IND11をルートRTからリーフノードまで辿ることにより、辿りついたリーフノードを起点ベクトルとして決定してもよい。例えば、情報処理装置100は、ベクトルVDXとの類似度に基づいて、インデックス情報IND11を下へ辿ることにより、起点ベクトルを決定してもよい。例えば、情報処理装置100は、ルートRTから節点VT1、VT2等のいずれの節点に辿るかを、ベクトルVDXと節点VT1、VT2との類似度に基づいて決定してもよい。例えば、情報処理装置100は、ルートRTから節点VT1、VT2等のうち、ベクトルVDXとの類似度が最も高い節点VT2へ辿ると決定してもよい。また、例えば、情報処理装置100は、節点VT2から節点VT2−1〜VT2−4等のうち、ベクトルVDXとの類似度が最も高い節点VT2−2へ辿ると決定してもよい。また、例えば、情報処理装置100は、節点VT2−2からノードN35、N451、N693等のうち、ベクトルVDXとの類似度が最も高い節点ノードN451へ辿ると決定してもよい。
そして、情報処理装置100は、グラフ情報GR11を検索することにより、事象Xの類似事象を抽出する(ステップS16)。例えば、情報処理装置100は、ノードN451の近傍に位置するノードを類似事象として抽出する。例えば、情報処理装置100は、ノードN451からの距離が近いノードを類似事象として抽出する。例えば、情報処理装置100は、ノードN451を起点として、エッジを辿ることにより、ノードN451から到達可能なノードを類似事象として抽出する。例えば、情報処理装置100は、所定数(例えば、2個や10個等)のノードを類似事象として抽出する。例えば、情報処理装置100は、図11に示すような検索処理により、事象Xの類似事象を抽出してもよいが、詳細は後述する。図1の例では、情報処理装置100は、ノードN451を起点として、グラフ情報GR11を探索することにより、ノードN451やノードN35やノードN256等を類似事象として抽出する。例えば、情報処理装置100は、事象Xとの類似度が高い方から順に、ノードN451、ノードN35、ノードN256等の順で抽出する。
そして、情報処理装置100は、抽出した類似事象に対応付けられた事象関連情報を抽出する(ステップS16−1)。図1の例では、情報処理装置100は、類似事象一覧情報SELに示すように、抽出した類似事象に対応付けられた事象関連情報を抽出する。例えば、情報処理装置100は、事象情報記憶部121(図4参照)に記憶された情報のうち、各類似事象に対応付けられた事象関連情報を抽出する。情報処理装置100は、事象関連情報として、コメントや自動実行フラグやスコア等の情報を抽出する。情報処理装置100は、類似事象として抽出した事象#451(ノードN451)、事象#35(ノードN35)、事象#256(ノードN256)等の各々に対応付けられた事象関連情報を抽出する。
図1中の類似事象一覧情報SELに示す「自動実行フラグ」は、コメントに基づく情報処理装置の自動実行の有無を示す。「自動実行フラグ」が「0」、すなわち自動実行が無しの場合、「コメント」には、対応する事象への対処内容を示す情報が含まれるものとする。例えば、「自動実行フラグ」が「0」である場合、「コメント」には、対応する事象への対処内容を自然言語で示す文字情報が含まれるものとする。例えば、事象への対処内容を示すコメントCM451は、「システム再起動」等の具体的な対処内容を示す情報であってもよい。
また、「自動実行フラグ」が「1」、すなわち自動実行が有りの場合、「コメント」は、処理を自動実行可能な形式の情報である指令情報であるものとする。例えば、処理を自動実行可能な形式の情報であるコメントCM256は、自動実行に用いる情報(プログラムやコマンド等)であってもよい。
図1中の類似事象一覧情報SELに示す「スコア」は、対応する事象のスコアを示す。例えば、「スコア」は、対応する事象の評価を示す。「スコア」は、対応する事象における対応を示すコメント等の評価を示す情報であってもよい。例えば、スコアSC451は、「0.5」等の具体的な数値であってもよい。例えば、スコアSC35は、「3.5」等の具体的な数値であってもよい。
また、図1中の類似事象一覧情報SELに示す「類似度」は、対応する事象と検索クエリとなった事象(以下、「対象事象」ともいう)との類似度を示す。例えば、情報処理装置100は、検索処理において算出した類似度を用いてもよい。例えば、「類似度」は、「0」以上「1」以下の値であってもよい。「類似度」の値が大きい程、対応する事象が対象事象と類似していることを示す。例えば、類似度DS451は、「0.8」等の具体的な数値であってもよい。例えば、類似度DS35は、「0.65」等の具体的な数値であってもよい。例えば、情報処理装置100は、検索処理において算出した各類似事象と対象事象との類似度を用いてもよい。
そして、情報処理装置100は、類似事象の順位付けを行う(ステップS17)。図1の例では、情報処理装置100は、各類似事象のスコアや類似度等に基づいて、各類似事象のランキングスコアを生成する。例えば、情報処理装置100は、各類似事象のスコアと類似度とを乗算することにより、各類似事象のランキングスコアを算出する。なお、情報処理装置100は、上記に限らず、種々の情報や算出式を用いて、各類似事象のランキングスコアを算出してもよい。
図1の例では、情報処理装置100は、ランキング一覧情報RKLに示すように、各類似事象のランキングスコアを算出する。情報処理装置100は、事象#451のランキングスコアをランキングスコアRS451と算出する。また、情報処理装置100は、事象#35のランキングスコアをランキングスコアRS35と算出する。そして、情報処理装置100は、各類似事象のランキングスコアに基づいて、各類似事象の順位付けを行う。情報処理装置100は、ランキングスコアが高い類似事象から順に順位付けを行う。図1の例では、情報処理装置100は、ランキングスコアが高い方から順に、1位「事象#35」、2位「事象#2」、3位「事象#451」等と順位付けする。なお、情報処理装置100は、ランキングスコアに限らず種々の情報を適宜用いて、各類似事象の順位付けを行ってもよい。
そして、情報処理装置100は、提供対象事象を決定する(ステップS18)。図1の例では、情報処理装置100は、順位が1位である事象#35を提供対象事象に決定する。なお、情報処理装置100は、1つに限らず複数の事象を提供対象事象に決定してもよい。
そして、情報処理装置100は、決定した提供対象事象に関する情報を提供する(ステップS19)。図1の例では、情報処理装置100は、提供対象事象である事象#35を示す情報や事象#35のコメントCM35を事象Xに類似する事象や事象Xへの対処内容として、管理者MG1が利用する端末装置10に提供する。なお、情報処理装置100は、提供対象事象である事象#35に関する情報とともに、事象XのログデータLGXを、管理者MG1が利用する端末装置10に提供してもよい。情報処理装置100からコメントCM35を受信した管理者MG1は、コメントCM35に基づいてサービス提供装置50で発生した事象Xへの対応を行う(ステップS20)。
上述したように、情報処理装置100は、グラフ情報GR11やインデックス情報IND11を用いて、管理者MG1から取得した事象Xの類似事象を抽出する。例えば、情報処理装置100は、インデックス情報IND11を用いて、事象Xの類似事象を抽出する際のグラフ情報GR11における起点ベクトルを決定する。そして、情報処理装置100は、決定した起点ベクトルを起点としてグラフ情報GR11を探索することにより、事象Xの類似事象を抽出する。これにより、情報処理装置100は、類似事象に関連する情報を適切に抽出することができる。情報処理装置100は、類似事象に関連する情報を高速に抽出することができる。例えば、情報処理装置100は、管理者MG1等が手作業で類似事象を抽出する場合に比べて、類似事象に関連する情報を高速に抽出することができる。
例えば、ディープラーニングといった手法で、事象を識別するという方法もあるが、多種多様な事象が存在する場合においては、各事象の事例が少ないので、学習ができずに識別精度を向上させることが難しいという問題がある。例えば、ディープラーニングといった学習手法で生成したモデルを用いて、そのモデルに事象の情報を入力し、出力されたスコアから事象を識別するという方法もあるが、多種多様な事象が存在する場合においては、各事象の事例が少ないため、モデルの精度を向上させることが難しく、事象の識別精度を向上させることが難しい。一方で、情報処理装置100は、各事象から抽出した特徴を基に生成した複数のベクトルのグラフ構造化したグラフ情報を用いて検索を行うことにより、発生した事象に類似する類似事象を適切に抽出することができる。そのため、情報処理装置100は、発生した事象がどのような事象に該当するかを精度よく識別することができる。
そして、情報処理装置100は、類似事象に対応付けられた事象関連情報を抽出し、その事象関連情報を提供する。例えば、事象関連情報のコメントが自然言語で記載されている場合、情報処理装置100は、サービス提供装置50の管理者MG1等のシステムの管理者にコメントを提供する。これにより、情報処理装置100から事象関連情報を受信したシステムの管理者は、事象関連情報に基づいて、適切な対応を行うことができる。また、例えば、事象関連情報のコメントが情報処理装置により自動実行可能な指令情報である場合、情報処理装置100は、サービス提供装置50等の情報処理装置にコメントを提供する。これにより、情報処理装置100から事象関連情報を受信した情報処理装置は、事象関連情報に基づいて、適切な処理を自動実行することができる。なお、事象関連情報には、上記に限らず種々の情報が含まれてもよい。事象関連情報には、事象の分析結果を示す情報が記憶されてもよい。事象関連情報には、事象の分析結果に基づく理由や重要度(深刻度レベル)を示す情報が記憶されてもよい。
例えば、システム不具合等のサーバシステムにおける事象(サーバイベント)の発生時の運用において、アラートメッセージの完全一致で検索させようとした場合、メッセージの変更や揺れに対して非常に弱いという課題がある。また、単純に登録済みのデータと距離計算を行うと、揺らぎに強くなるが、データ量増大に伴い処理負荷が高まるという問題がある。そこで、情報処理システム1においては、アラートメッセージ等のログや不具合対策コメント情報等のコメントをベクトル化し、グラフ構造化する。そして、情報処理システム1においては、グラフ構造化したデータを高速で検索し、検索結果情報に基づきシステム不具合等の対応を実行可能とすることにより、システムで発生する事象に対する適切な対応を迅速に行うことができる。
また、情報処理システム1においては、アラートメッセージ等のログをキーとして、そのログに対応処置方法などコメントを対応付けてデータベース化し、アラート等の新しい事象が発生した場合に、類似する過去の事象を抽出し、その事象を示す情報に当該対応処置方法情報も付加して、管理者MG1等の管理者(運用者)へ通知する。このように、情報処理システム1においては、不具合等の事象だけでなく、事象に対する対応処置方法を運用者について通知することで、不具合対応を迅速に実行可能とする。また、情報処理システム1においては、各事象に自動実行フラグを対応付けることで、対応処置の自動化実行を実現することができる。なお、対応処置の自動化実行については、不具合事象及び処置内容ごとに、自動実行可否をマスタ登録し、当該マスタ情報に基づき実行処理を行ってもよい。また、情報処理システム1においては、自動実行フラグが無しの場合はシステム担当者に通知し、対応処置は運用担当者手動により実行可能とする。これにより、例えば、情報処理システム1においては、事象発生後、過去ログマスタ(グラフ情報)を検索した後、検索結果を運用者に通知し、修正の自動実行確認し、修正実行するという処理フローを実現することができる。
〔1−3−1.自動実行〕
また、図1の例において、自動実行フラグが「1」である事象#256の順位が1位である場合、情報処理装置100は、事象#256のコメントCM256をサービス提供装置50へ提供してもよい。情報処理装置100は、処理を自動実行させる指令情報であるのコメントCM256をサービス提供装置50へ提供してもよい。この場合、コメントCM256を情報処理装置100から受信したサービス提供装置50は、コメントCM256に基づく処理を自動実行してもよい。コメントCM256の自動処理内容が再起動である場合、サービス提供装置50は、コメントCM256に基づいて再起動処理を自動実行してもよい。なお、情報処理装置100は、処理を自動実行に関するコメントを管理者MG1が利用する端末装置10に提供してもよい。例えば、自動実行フラグが「1」である事象#256の順位が1位である場合であっても、情報処理装置100は、コメントCM256を管理者MG1が利用する端末装置10に提供してもよい。この場合、管理者MG1がコメントCM256に基づく処理をサービス提供装置50に実行させるかを判断し、サービス提供装置50に実行させると決定した場合、サービス提供装置50にコメントCM256を提供してもよい。
〔1−3−2.他の情報提供態様〕
なお、情報処理装置100は、抽出した各類似事象に対応付けられた事象関連情報を提供してもよい。この場合、情報処理装置100は、ステップS17、S18の処理を行うことなく、抽出した各類似事象に対応付けられた事象関連情報を提供してもよい。例えば、情報処理装置100は、自動実行フラグが「0」である事象関連情報を提供してもよい。例えば、情報処理装置100は、自動実行フラグが「0」である事象#451のコメントCM451や事象#35のコメントCM35を事象Xへの対処を示す情報として、管理者MG1が利用する端末装置10に提供してもよい。この場合、情報処理装置100は、自動実行フラグが「1」である事象#256のコメントCM256を管理者MG1が利用する端末装置10に提供しなくてもよい。
〔1−4.事象〕
図1の例では、事象の一例として、サーバシステムにおける事象(サーバイベント)を示したが、事象は、サーバイベントに限らず、種々の事象であってもよい。言い換えると、情報処理装置100は、所定の社会におけるイベント等の種々の事象を対象としてもよい。例えば、情報処理装置100は、天災や戦争・事故など災害や経済活動における事象等の種々の事象を対象としてもよい。例えば、情報処理装置100は、事象として、道路や鉄道や航空や船舶等の種々の交通に関する事象やユーザの購買等のユーザ行動に関する事象などを対象として、類似事象を抽出してもよい。
〔1−4−1.鉄道〕
例えば、情報処理装置100は、事象として、公共交通機関に関する事象を対象として、類似事象を抽出してもよい。例えば、情報処理装置100は、鉄道において発生する事象を対象として、類似事象を抽出し、事象関連情報を抽出してもよい。例えば、情報処理装置100は、鉄道において発生する遅延や運行中止等の事象を対象として、類似事象を抽出し、事象関連情報を抽出してもよい。この場合、情報処理装置100は、遅延や運行中止等の事象を示す文字情報をベクトル化することにより、グラフ情報を生成してもよい。例えば、情報処理装置100は、遅延パターンや運行中止パターン等の事象を示すログをベクトル化することにより、グラフ情報を生成してもよい。例えば、情報処理装置100は、「AA線X分遅延⇒BB線Y分遅延⇒…」等の遅延パターンや「CC線X時以降運行中止⇒…」等の運行中止パターン等の事象を示すログ(文字情報)をベクトル化することにより、グラフ情報を生成してもよい。
また、情報処理装置100は、事象関連情報として、遅延や運行中止の理由(原因)を各事象に対応付けてもよい。また、情報処理装置100は、事象関連情報として、遅延や運行中止に対する対処内容を各事象に対応付けてもよい。情報処理装置100は、事象関連情報として、遅延や運行中止時において行われた誘導行動を示す情報を各事象に対応付けてもよい。また、情報処理装置100は、事象関連情報として、遅延や運行中止に対する利用者(ユーザ)へ提供可能な代替案を示す情報を各事象に対応付けてもよい。
そして、情報処理装置100は、遅延の発生時におけるログを取得した場合、そのログを用いて類似検索を行うことにより、類似事象を抽出し、その類似事象に対応付けられた事象関連情報を抽出してもよい。そして、情報処理装置100は、抽出した事象関連情報に含まれる誘導行動を示す情報を、鉄道の管理者等に提供してもよい。そして、誘導行動を示す情報を受信した鉄道の管理者は、その誘導行動に基づく対処を行う。これにより、鉄道の管理者は、遅延等の事象に対して適切な対応を迅速に行うことができる。
〔1−4−2.ユーザ行動〕
また、情報処理装置100は、事象として、ユーザ行動に関する事象などを対象として、類似事象を抽出してもよい。情報処理装置100は、ユーザの購買に関する事象を対象として、類似事象を抽出してもよい。例えば、情報処理装置100は、IoT(Internet of Things)等に関する技術により、取得したユーザ行動に基づいて、ユーザの購買行動の事象の類似事象を抽出してもよい。
例えば、情報処理装置100は、ユーザが商品やサービス(以下、併せて「商品等」ともいう)を購入したという事象を対象として、類似事象を抽出し、事象関連情報を抽出してもよい。この場合、情報処理装置100は、ユーザが購入した商品等や購入時のコンテキスト(時間や場所等)を示す文字情報をベクトル化することにより、グラフ情報を生成してもよい。例えば、情報処理装置100は、ユーザの購入の事象を示すログをベクトル化することにより、グラフ情報を生成してもよい。
また、情報処理装置100は、事象関連情報として、購買行動を行ったユーザがその商品等を購入した理由を各事象に対応付けてもよい。また、情報処理装置100は、事象関連情報として、購買行動を行ったユーザに対して行った対処内容を各事象に対応付けてもよい。情報処理装置100は、事象関連情報として、購買行動を行ったユーザに対して効果があった対応を示す情報を各事象に対応付けてもよい。例えば、情報処理装置100は、事象関連情報として、購買行動を行ったユーザに対して推奨し、そのユーザが購入した商品等を示す情報を、効果があった対応を示す情報として、各事象に対応付けてもよい。
そして、情報処理装置100は、ユーザの購買行動の発生時におけるログを取得した場合、そのログを用いて類似検索を行うことにより、類似事象を抽出し、その類似事象に対応付けられた事象関連情報を抽出してもよい。そして、情報処理装置100は、抽出した事象関連情報に含まれる購買行動を行ったユーザに対して効果があった対応を示す情報を、所定の管理者等に提供してもよい。例えば、情報処理装置100は、マーケッタ、サービスマネージャ等に、購買行動を行ったユーザに対して効果があった対応を示す情報等の類似事象に関する情報を提供してもよい。そして、情報を受信した管理者は、その情報に基づく対処を行う。これにより、管理者は、購買行動を行ったユーザに対して適切な商品の推奨等のアプローチを行うことができる。
〔1−5.インデックス情報〕
図1の例に示すインデックス情報(インデックスデータ)は一例であり、情報処理装置100は、種々のインデックス情報を用いて、グラフ情報を検索してもよい。また、例えば、情報処理装置100は、検索時に用いるインデックスデータを生成してもよい。例えば、情報処理装置100は、高次元ベクトルを検索する検索インデックスをインデックスデータとして生成する。ここでいう高次元ベクトルとは、例えば、数百次元から数千次元のベクトルであってもよいし、それ以上の次元のベクトルであってもよい。
例えば、情報処理装置100は、図1に示すようなツリー構造(木構造)に関する検索インデックスをインデックスデータとして生成してもよい。例えば、情報処理装置100は、kd木(k-dimensional tree)に関する検索インデックスをインデックスデータとして生成してもよい。例えば、情報処理装置100は、VP木(Vantage-Point tree)に関する検索インデックスをインデックスデータとして生成してもよい。
また、例えば、情報処理装置100は、その他の木構造を有するインデックスデータとして生成してもよい。例えば、情報処理装置100は、木構造のインデックスデータのリーフがグラフデータに接続する種々のインデックスデータを生成してもよい。例えば、情報処理装置100は、木構造のインデックスデータのリーフがグラフデータ中のノードに対応する種々のインデックスデータを生成してもよい。また、情報処理装置100は、このようなインデックスデータを用いて検索を行う場合、インデックスデータを辿って到達したリーフ(ノード)からグラフデータを探索してもよい。
なお、上述したようなインデックスデータは一例であり、情報処理装置100は、グラフデータ中のクエリを高速に特定することが可能であれば、どのようなデータ構造のインデックスデータを生成してもよい。例えば、情報処理装置100は、クエリに対応するグラフ情報中のノードを高速に特定することが可能であれば、バイナリ空間分割に関する技術等の種々の従来技術を適宜用いて、インデックスデータを生成してもよい。例えば、情報処理装置100は、高次元ベクトルの検索に対応可能なインデックスであれば、どのようなデータ構造のインデックスデータを生成してもよい。例えば、情報処理装置100は、非特許文献1に記載されるようなグラフ型の検索インデックスに関する情報をインデックス情報として用いてもよい。情報処理装置100は、上述のようなインデックスデータとグラフデータとを用いることにより、所定の対象に関するより効率的な検索を可能にすることができる。
〔1−6.ベクトルの生成例〕
なお、図1の例では、情報処理装置100がSentence2VecであるモデルM1を用いて、ログデータからベクトルを生成する場合を一例として説明したが、情報処理装置100は種々のモデルを適宜用いて、ログデータをベクトル化してもよい。例えば、システムのログデータが、自然言語以外で記載された場合も含む文字情報(テキストメッセージ)、画像、または、音声等であったりする場合には、情報処理装置100は、以下のような処理により、ログデータのベクトル化を行ってもよい。
例えば、情報処理装置100は、ログデータの特徴を抽出するモデルを用いて各事象のログデータからN次元ベクトルを生成してもよい。図10の例では、情報処理装置100は、モデルID「M21」により識別されるモデル(モデルM21)を用いて、各事象のログデータからベクトルを生成してもよい。
例えば、情報処理装置100は、モデルM21に事象のログデータを入力することにより、モデルM21中の各要素(ニューロン)の値を演算し、入力したログデータと同様の情報を出力する。例えば、情報処理装置100は、中間層の各要素(ニューロン)の値を特徴量として抽出し、各事象に対応するN次元のベクトルデータを生成してもよい。
ここで、図10を用いて、各事象に対応するベクトルデータの生成の一例を示す。図10は、実施形態に係る特徴量の抽出の一例を示す図である。図10は、モデルM21の概念図である。なお、図10では、各要素(ニューロン)の各接続関係を示す線の図示を省略する。図10に示すように、モデルM21は、入力層ILと、中間層CLと、出力層OLとを含む。例えば、モデルM21の入力層ILは、事象のログデータが入力される層である。また、出力層OLは、入力層ILへの入力に応じて、入力されたログデータと同様の情報を出力される層である。
また、例えば、中間層CLの中央部の最も圧縮された圧縮層RPは、入力されたログデータの特徴を表現する層である。例えば、モデルM21の中間層CLにおいて、入力層ILから圧縮層RPまでの間は、エンコードの処理を行う部分に対応する。モデルM21の中間層CLにおいて、入力層ILから圧縮層RPまでの間は、入力されたログデータの特徴を圧縮する処理を行う部分に対応する。例えば、モデルM21の中間層CLにおいて、圧縮層RPから出力層OLまでの間は、デコードの処理を行う部分に対応する。モデルM21の中間層CLにおいて、圧縮層RPから出力層OLまでの間は、圧縮されたログデータを復元する処理を行う部分に対応する。
例えば、情報処理装置100は、圧縮層RPに含まれるニューロンNL1やニューロンNL2等の情報をベクトルに用いてもよい。例えば、情報処理装置100は、事象のログデータが入力された場合に、算出されるニューロンNL1に対応する値VE1やニューロンNL2に対応する値VE2をベクトルの要素(一の次元の値)として抽出してもよい。例えば、情報処理装置100は、事象のログデータが入力された場合に、算出されるニューロンNL1に対応する値VE1をその事象のベクトルの1次元目の要素として抽出してもよい。また、例えば、情報処理装置100は、事象のログデータが入力された場合に、算出されるニューロンNL2に対応する値VE2をその事象のベクトルの2次元目の要素として抽出してもよい。このように、情報処理装置100は、各事象のログデータをモデルM21に入力することにより、各事象に対応するベクトルを生成してもよい。なお、情報処理装置100は、各事象に対応するベクトルをサービス提供装置50等の他の外部装置から取得してもよい。なお、情報処理装置100は、ベクトルの各要素として、各ニューロンに対応する値自体を用いてもよいし、各ニューロンに対応する値に所定の係数を乗算した値を用いてもよい。
なお、情報処理装置100は、圧縮層RPの要素(ニューロン)に限らず、中間層CL中の他の要素(ニューロン)の情報をベクトルに用いてもよい。例えば、情報処理装置100は、エンコード部分のニューロンNL3やデコード部分のニューロンNL4等の情報をベクトルに用いてもよい。例えば、情報処理装置100は、事象のログデータが入力された場合に、算出されるニューロンNL3に対応する値VE3やニューロンNL4に対応する値VE4をベクトルの要素(一の次元の値)として抽出してもよい。なお、上記は、一例であり、情報処理装置100は、オートエンコーダに限らず、種々のモデルを用いて、ログデータからの特徴抽出を行ってもよい。例えば、正常な事象と正常とは異なる事象とを識別するように学習させたモデルを生成して、その中間層をベクトルデータとして抽出しても良い。また、例えば、トリプレットロス(triplet loss)といった類似性を学習する方法によりモデルを生成しても良い。また、情報処理装置100は、モデルを用いずに、特徴抽出を行ってもよい。例えば、情報処理装置100は、情報処理装置100の管理者等が設定して特徴(素性)に対応する情報をログデータから抽出し、ベクトルを生成してもよい。例えば、情報処理装置100は、エラーコードやエラーの発生箇所等の特徴(素性)に対応する情報をログデータから抽出し、ベクトルを生成してもよい。
また、例えば、情報処理装置100は、サービス提供装置50等の他の外部装置からモデルM21を取得してもよい。なお、情報処理装置100は、事象情報記憶部121(図4参照)に記憶された各事象のログデータLG1、LG2、LG451等を入力として、モデルM21を生成してもよい。例えば、端末装置10は、各事象発生時に所定のサーバシステムのサーバ装置が出力したログデータLG1、LG2、LG451等を入力として、モデルM21を生成してもよい。例えば、ログデータLG1、LG2、LG451等は、サーバ装置が出力するログ(アラートログやエラーログ等)であってもよい。例えば、ログデータLG1、LG2、LG451等は、サーバ装置が出力するエラーメッセージであってもよい。
情報処理装置100は、事象のログ情報(ログデータ)が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたログ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、入力層に入力される情報と同様の情報を出力層から出力するモデルM21を生成してもよい。なお、情報処理装置100は、ベクトル生成に用いるモデルをサービス提供装置50等の他の外部装置から取得してもよい。
〔1−7.ノード(オブジェクト)〕
図1の例では、事象の各々をノード(オブジェクト)とし、事象とノード(オブジェクト)とが1対1で対応するグラフ情報GR11を一例として説明したが、事象とノード(オブジェクト)とは1対1で対応しなくてもよい。情報処理装置100は、各事象が所定の類似関係に基づいて1つのノードとされたグラフ情報を用いてもよい。
例えば、情報処理装置100は、類似度が所定の閾値以上である事象群を、1つのノードとするグラフ情報を用いてもよい。例えば、情報処理装置100は、同様のネットワーク接続エラーに対応する事象群を、1つのノードとするグラフ情報を用いてもよい。例えば、情報処理装置100は、同様のデータベースタイムアウトに対応する事象群を、1つのノードとするグラフ情報を用いてもよい。この場合、情報処理装置100は、各ノードには対応する事象の数を示す情報を記憶部120(図3参照)に記憶してもよい。例えば、情報処理装置100は、各ノードには対応する事象の数を事象に対応した実績数を示す情報として記憶部120に記憶してもよい。この場合、情報処理装置100は、各ノードの実績数を示す情報(値)をランキングスコアの算出に用いてもよい。例えば、情報処理装置100は、クエリと各ノード(ベクトル)との類似度を示す値、各ノード(ベクトル)のスコア及び各ノードの実績数を示す値を乗算した値を、ランキングスコアとして用いてもよい。
〔1−8.他の利用例〕
なお、情報処理装置100は、管理者MG1等の種々の管理者により種々の利用が可能であってもよい。例えば、情報処理装置100は、管理者MG1等の種々の管理者に対して種々のサービスを提供可能であってもよい。この点について、図12を用いて説明する。図12は、実施形態に係る情報処理の他の例を示す図である。なお、図12では、種々の管理者のうち管理者MG1に提供する場合を一例として説明し、図1と同様の点についての説明は適宜省略する。
情報処理装置100は、管理者MG1に対して検索サービスを提供してもよい。情報処理装置100は、管理者MG1の要求に応じて、類似検索を行ってもよい。管理者MG1は、情報処理装置100に対して類似検索を要求する(ステップS21)。例えば、管理者MG1は、事象YのログデータLGYを送信することにより、情報処理装置100に対して事象Yの類似検索を要求する。管理者MG1から事象YのログデータLGYを取得した情報処理装置100は、ログデータLGYを用いて、事象Yの類似事象を抽出する。しそして、情報処理装置100は、抽出した類似事象に関する情報(類似事象情報)を検索結果として、管理者MG1に提供する(ステップS22)。例えば、情報処理装置100は、事象Yの類似事象を示す情報やその類似事象に対応づけられた事象関連情報を、管理者MG1が利用する端末装置10に提供する。
情報処理装置100は、管理者MG1に対して分析サービスを提供してもよい。情報処理装置100は、管理者MG1の要求に応じて、過去に収集したログに関する情報を提供してもよい(ステップS31)。情報処理装置100は、事象情報記憶部121(図4参照)に記憶された各事象のログデータを分析用の情報として管理者MG1が利用する端末装置10に提供する。
情報処理装置100は、管理者MG1に対して情報更新サービスを提供してもよい。情報処理装置100は、管理者MG1の要求に応じて、コメント付加等の情報更新サービスを提供してもよい(ステップS41)。情報処理装置100は、管理者MG1から取得したコメント等の情報に基づいて、事象情報記憶部121(図4参照)に記憶された各事象のコメント等の事象関連情報を更新してもよい。
〔2.情報処理システムの構成〕
図2に示すように、情報処理システム1は、端末装置10と、サービス提供装置50と、情報処理装置100とが含まれる。端末装置10と、サービス提供装置50と、情報処理装置100とは所定のネットワークNを介して、有線または無線により通信可能に接続される。図2は、実施形態に係る情報処理システムの構成例を示す図である。なお、図2に示した情報処理システム1には、複数台の端末装置10や、複数台のサービス提供装置50や、複数台の情報処理装置100が含まれてもよい。
端末装置10は、システムの管理者等のユーザによって利用される情報処理装置である。端末装置10は、管理者等による種々の操作を受け付ける。なお、以下では、端末装置10を管理者と表記する場合がある。すなわち、以下では、管理者を端末装置10と読み替えることもできる。なお、上述した端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。例えば、端末装置10は、所定のサーバシステムを管理者が利用する情報処理装置であってもよい。端末装置10は、情報処理装置100から一の事象の類似事象を示す情報や類似事象の事象関連情報を受信する。例えば、端末装置10は、情報処理装置100から受信した事象関連情報に基づいて、一の事象が発生したサービス提供装置50に対する所定の処理を行う。
サービス提供装置50は、所定のサービスを提供する情報処理装置である。サービス提供装置50は、情報処理システム1において、所定のサービスを提供するサーバ装置であってもよい。サービス提供装置50は、ユーザに種々のサービスを提供する情報処理装置であってもよい。また、サービス提供装置50は、処理に応じてログを生成(出力)する情報処理装置である。サービス提供装置50は、処理ごとにログを出力してもよい。サービス提供装置50は、所定の事象が発生した場合、ログを出力する。サービス提供装置50は、エラーや不具合等の所定の事象が発生した場合、アラートメッセージやエラーメッセージをログとして出力する。また、サービス提供装置50が複数台ある場合は、複数のサービス提供装置50は、種々のサービスを提供する。
情報処理装置100は、起点ベクトルを起点としてグラフ情報を検索することにより、複数の事象のうち、一の事象に類似する事象である類似事象を抽出するコンピュータである。例えば、情報処理装置100は、一の事象に関する事象情報を取得し、事象情報と、グラフ情報の検索の起点となる起点ベクトルに関する情報と基づいて、起点ベクトルを決定する。
情報処理装置100は、管理者等に種々の情報提供を行うための情報が格納する。例えば、情報処理装置100は、端末装置10から一の事象のログデータを取得すると、クエリに類似する事象(ベクトルデータ等)を検索し、検索結果を端末装置10に提供する。図1の例では、情報処理装置100は、端末装置10から一の事象のログデータを取得すると、一の事象に類似する事象を検索し、検索結果である類似事象に対応付けられた事象関連情報を端末装置10に提供する。また、情報処理装置100は、検索結果である類似事象を示す情報を端末装置10に提供する。例えば、情報処理装置100が端末装置10に提供するデータは、事象の名称や事象のログデータ自体であってもよいし、URL(Uniform Resource Locator)等の対応するデータを参照するための情報を含んでもよい。
また、情報処理システム1には、種々の情報を提供する情報提供装置(図示省略)が含まれてもよい。情報提供装置は、情報処理装置100に種々の情報提供を行うための情報が格納された情報処理装置である。例えば、情報提供装置は、ウェブサーバ等の種々の外部装置から収集した事象情報等が格納されてもよい。例えば、情報提供装置は、グラフ情報やインデックス情報やモデル等の種々の情報を情報処理装置100に提供する情報処理装置である。
〔3.情報処理装置の構成〕
次に、図3を用いて、実施形態に係る情報処理装置100の構成について説明する。図3は、実施形態に係る情報処理装置の構成例を示す図である。図3に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワーク(例えば図2中のネットワークN)と有線または無線で接続され、端末装置10やサービス提供装置50との間で情報の送受信を行う。
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、図3に示すように、事象情報記憶部121と、インデックス情報記憶部122と、グラフ情報記憶部123と、モデル情報記憶部124とを有する。
(事象情報記憶部121)
実施形態に係る事象情報記憶部121は、事象(オブジェクト)に関する各種情報を記憶する。例えば、事象情報記憶部121は、事象IDやベクトルデータを記憶する。図4は、実施形態に係る事象情報記憶部の一例を示す図である。図4に示す事象情報記憶部121は、「事象ID」、「事象」、「ログデータ」、「ベクトルデータ」、「事象関連情報」といった項目が含まれる。
「事象ID」は、事象(オブジェクト)を識別するための識別情報を示す。また、「事象」は、事象IDにより識別される事象の具体的な名称や内容等を示す。なお、図4の例では、事象を「事象#1」といった抽象的な符号で示すが、「ネットワークエラー#1」、「データベースエラー#1」等の具体的なエラー内容を示す情報やエラー種別を示す情報等が含まれてもよい。
「ログデータ」は、事象IDにより識別される事象の発生時に取得されたログを示す。なお、図4の例では、ログデータを「LG1」といった抽象的な符号で示すが、各ログデータは、サーバ等が出力したログ(アラートログやエラーログ等)やログから抽出された各要素を示す情報等が含まれてもよい。ログデータは、自然言語が用いられた文字情報であってもよい。例えば、ログデータは、「Failed to do something」、「Network connection error」、「DB timeout error」等の文字情報(文字列)であってもよい。
「ベクトルデータ」は、事象IDにより識別される事象(オブジェクト)に対応するベクトルデータ(ベクトル情報)を示す。すなわち、図4の例では、事象(オブジェクト)を識別する事象IDに対して、オブジェクトに対応するベクトルデータが対応付けられて登録されている。「ベクトルデータ」は、ログデータがベクトル化された情報であってもよい。例えば、「ベクトルデータ」は、自然言語で記載されたログデータが、Word2VecやSentence2VecやDoc2Vec等によりベクトル化された情報であってもよい。
「事象関連情報」は、対応する事象に関連する情報を示す。「事象関連情報」には、「コメント」、「自動実行フラグ」、「スコア」といった項目が含まれる。「コメント」は、対応する事象に関する情報を示す。なお、図4の例では、コメントを「CM1」といった抽象的な符号で示すが、「実行計画を確認」等の具体的な対処内容を示す情報や自動実行に用いる情報(プログラムやコマンド等)等が含まれてもよい。
「コメント」には、対応する事象の分析結果を示す情報が含まれてもよい。また、「コメント」には、対応する事象の発生理由を示す情報が含まれてもよい。また、「コメント」には、対応する事象の発生後における行動を示す情報が含まれてもよい。また、「コメント」には、対応する事象への対処内容を示す情報が含まれてもよい。
「自動実行フラグ」は、コメントに基づく情報処理装置の自動実行の有無を示す。「自動実行フラグ」が「1」、すなわち自動実行が有りの場合、「コメント」は、処理を自動実行可能な形式の情報である指令情報であってもよい。また、自動実行が有りの場合、「コメント」には、所定の処理を自動実行可能な形式の情報の格納場所を示すファイルパス名などであってもよい。
「スコア」は、対応する事象のスコアを示す。例えば、「スコア」は、対応する事象の評価を示す。また、「スコア」は、対応する事象における対応を示すコメント等の評価を示す情報であってもよい。例えば、「スコア」は、その値が大きい程、その事象に対応する事象関連情報の価値が高いことを示してもよい。例えば、「スコア」は、その値が大きい程、その事象に対応するコメントが的確であることを示してもよい。なお、図4の例では、スコアを「SC1」といった抽象的な符号で示すが、「0.5」や「10」等の具体的な数値であるものとする。
例えば、図4の例では、事象ID「EV1」により識別される事象(オブジェクト)は、「0.1,0.3,0.25,...」の多次元(N次元)のベクトルデータが対応付けられることを示す。例えば、事象#1については、モデルM1等により、事象#1の特徴を示す「0.1,0.3,0.25,...」の多次元(N次元)のベクトルデータがログデータLG1から抽出されたことを示す。事象#1は、コメントがコメントCM1であることを示す。コメントCM1は、「実行計画を確認」という管理者に所定の行動を促す情報であることを示す。また、事象#1は、自動実行フラグが「0」であり、自動実行が無であることを示す。また、事象#1は、スコアがスコアSC1であることを示す。
なお、事象情報記憶部121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、事象情報記憶部121は、各事象の発生日時に関する情報を記憶してもよい。
(インデックス情報記憶部122)
実施形態に係るインデックス情報記憶部122は、インデックスに関する各種情報を記憶する。図5は、実施形態に係るインデックス情報記憶部の一例を示す図である。具体的には、図5の例では、インデックス情報記憶部122は、ツリー構造のインデックス情報を示す。図5の例では、インデックス情報記憶部122は、「ルート階層」、「第1階層」、「第2階層」、「第3階層」等といった項目が含まれる。なお、「第1階層」〜「第3階層」に限らず、インデックスの階層数に応じて、「第4階層」、「第5階層」、「第6階層」等が含まれてもよい。
「ルート階層」は、インデックスを用いた起点ノードの決定の開始点となるルート(最上位)の階層を示す。「第1階層」は、インデックスの第1階層に属するノード(節点またはグラフ情報中のベクトル)を識別(特定)する情報が格納される。「第1階層」に格納されるノードは、インデックスの根(ルート)に直接結ばれる階層に対応するノードとなる。
「第2階層」は、インデックスの第2階層に属するノード(節点またはグラフ情報中のベクトル)を識別(特定)する情報が格納される。「第2階層」に格納されるノードは、第1階層のノードに結ばれる直下の階層に対応するノードとなる。「第3階層」は、インデックスの第3階層に属するノード(節点またはグラフ情報中のベクトル)を識別(特定)する情報が格納される。「第3階層」に格納されるノードは、第2階層のノードに結ばれる直下の階層に対応するノードとなる。
例えば、図5に示す例においては、インデックス情報記憶部122には、図1中のインデックス情報IND11に対応する情報が記憶される。例えば、インデックス情報記憶部122は、第1階層のノードが、節点VT1〜VT3等であることを示す。また、各節点の下の括弧内の数値は、各節点に対応するベクトルの値を示す。
また、例えば、インデックス情報記憶部122は、節点VT2の直下の第2階層のノードが、節点VT2−1〜VT2−4であることを示す。また、例えば、インデックス情報記憶部122は、節点VT2−2の直下の第3階層のノードが、ノードN35、ノードN451、ノードN693のグラフ情報GR11中のノード(ベクトル)であることを示す。
なお、インデックス情報記憶部122は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
(グラフ情報記憶部123)
実施形態に係るグラフ情報記憶部123は、グラフ情報に関する各種情報を記憶する。図6は、実施形態に係るグラフ情報記憶部の一例を示す図である。図6の例では、グラフ情報記憶部123は、「ノードID」、「事象ID」、および「エッジ情報」といった項目を有する。また、「エッジ情報」には、「エッジID」や「参照先」といった情報が含まれる。
「ノードID」は、グラフデータにおける各ノード(対象)を識別するための識別情報を示す。また、「事象ID」は、事象(オブジェクト)を識別するための識別情報を示す。
また、「エッジ情報」は、対応するノードに接続されるエッジに関する情報を示す。図6の例では、「エッジ情報」は、エッジが有向エッジである場合を示し、対応するノードから出力される出力エッジに関する情報を示す。また、「エッジID」は、ノード間を連結するエッジを識別するための識別情報を示す。また、「参照先」は、エッジにより連結された参照先(ノード)を示す情報を示す。すなわち、図6の例では、ノードを識別するノードIDに対して、そのノードに対応するオブジェクト(対象)を識別する情報やそのノードからの有向エッジ(出力エッジ)が連結される参照先(ノード)が対応付けられて登録されている。
例えば、図6の例では、ノードID「N1」により識別されるノード(ベクトル)は、事象ID「EV1」により識別される事象(オブジェクト)に対応することを示す。また、ノードID「N1」により識別されるノードからは、エッジID「E11」により識別されるエッジが、ノードID「N25」により識別されるノード(ベクトル)に連結されることを示す。すなわち、図6の例では、ノードID「N1」により識別されるノード(ベクトル)からはノードID「N25」により識別されるノード(ベクトル)に辿ることができることを示す。
なお、グラフ情報記憶部123は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、グラフ情報記憶部123は、各ノード(ベクトル)間を連結するエッジの長さが記憶されてもよい。すなわち、グラフ情報記憶部123は、各ノード(ベクトル)間の距離を示す情報が記憶されてもよい。
(モデル情報記憶部124)
実施形態に係るモデル情報記憶部124は、モデルに関する情報を記憶する。例えば、モデル情報記憶部124は、生成処理により生成されたモデル情報(モデルデータ)を記憶する。図7は、実施形態に係るモデル情報記憶部の一例を示す図である。図7に示すモデル情報記憶部124は、「モデルID」、「用途」、「モデルデータ」といった項目が含まれる。
「モデルID」は、モデルを識別するための識別情報を示す。例えば、モデルID「M1」により識別されるモデルは、図1の例に示したモデルM1に対応する。「用途」は、対応するモデルの用途を示す。また、「モデルデータ」は、対応付けられた対応するモデルのデータを示す。例えば、「モデルデータ」には、各層におけるノードと、各ノードが採用する関数と、ノードの接続関係と、ノード間の接続に対して設定される接続係数とを含む情報が含まれる。
例えば、図7に示す例において、モデルID「M1」により識別されるモデル(モデルM1)は、用途が「ベクトル化(システム)」であり、入力されたシステムのログをベクトル化するために用いられることを示す。すなわち、モデルM1は、入力されたシステムのログ情報からベクトルを生成するために用いられることを示す。例えば、モデルM1は、Sentence2Vecモデルである。また、モデルM1のモデルデータは、モデルデータMDT1であることを示す。
なお、図7では、モデルM1、M2のみを図示するが、モデルM21(図10参照)やモデルM22等、各用途(予測の対象)に応じて多数のモデル情報が記憶されてもよい。例えば、モデルM21(モデルデータMDT21)は、事象のログ情報(ログデータ)が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたログ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、入力層に入力される情報と同様の情報を出力層から出力するよう、コンピュータを機能させるためのモデルであってもよい。
また、モデルM21、M22等がDNN(Deep Neural Network)等、1つまたは複数の中間層を有するニューラルネットワークで実現されるとする。この場合、例えば、モデルM21、M22が含む第1要素は、入力層または中間層が有するいずれかのノードに対応する。また、第2要素は、第1要素と対応するノードから値が伝達されるノードである次段のノードに対応する。また、第1要素の重みは、第1要素と対応するノードから第2要素と対応するノードに伝達される値に対して考慮される重みである接続係数に対応する。
ここで、モデルM21、M22等が「y=a1*x1+a2*x2+・・・+ai*xi」で示す回帰モデルで実現されるとする。この場合、例えば、モデルM21、M22が含む第1要素は、x1やx2等といった入力データ(xi)に対応する。また、第1要素の重みは、xiに対応する係数aiに対応する。ここで、回帰モデルは、入力層と出力層とを有する単純パーセプトロンと見做すことができる。各モデルを単純パーセプトロンと見做した場合、第1要素は、入力層が有するいずれかのノードに対応し、第2要素は、出力層が有するノードと見做すことができる。
なお、モデル情報記憶部124は、上記に限らず、目的に応じて種々のモデル情報を記憶してもよい。
(制御部130)
図3の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。制御部130は、モデル情報記憶部124に記憶されているモデルM1、M2等に従った情報処理により、事象のログ情報(ログデータ)からベクトルデータを生成する。制御部130は、モデル情報記憶部124に記憶されているモデルM21等に従った情報処理により、事象のログ情報(ログデータ)が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたログ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、入力層に入力される情報と同様の情報を出力層から出力する。
図3に示すように、制御部130は、取得部131と、生成部132と、決定部133と、抽出部134と、提供部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
(取得部131)
取得部131は、各種情報を取得する。取得部131は、記憶部120から各種情報を取得する。取得部131は、事象情報記憶部121や、インデックス情報記憶部122や、グラフ情報記憶部123や、モデル情報記憶部124等から各種情報を取得する。また、取得部131は、各種情報を外部の情報処理装置から取得する。取得部131は、端末装置10やサービス提供装置50から各種情報を取得する。
取得部131は、複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報と、複数の事象の各々に対応付けられた情報であって、対応付けられた事象に関連する情報である事象関連情報と、一の事象に関する情報を取得する。取得部131は、複数の事象の各々に対応する複数の情報がベクトル化された複数のベクトルが連結されたグラフ情報を取得する。取得部131は、複数の事象の各々に対応する文字情報がベクトル化された複数のベクトルが連結されたグラフ情報を取得する。
取得部131は、複数の事象の各々の分析結果を含む事象関連情報を取得する。取得部131は、複数の事象の各々の発生理由を含む事象関連情報を取得する。取得部131は、複数の事象の各々の発生後における行動を示す情報を含む事象関連情報を取得する。取得部131は、複数の事象の各々への対処内容を示す情報を含む事象関連情報を取得する。取得部131は、複数の事象の各々への対処として所定の情報処理装置が実行した処理に基づく情報であって、情報処理装置が処理を自動実行可能な形式の情報である指令情報を含む事象関連情報を取得する。
取得部131は、複数の事象の各々の評価を示す情報を含む事象関連情報を取得する。取得部131は、複数の事象の各々の評価を示すスコアを含む事象関連情報を取得する。
取得部131は、所定のシステムにおいてログが出力される複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報を取得する。取得部131は、所定のシステムにおいてログが出力される複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報を取得する。取得部131は、所定のシステムにおけるアラートに関する複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報を取得する。取得部131は、複数の事象の各々に対応するログに関する情報がベクトル化された複数のベクトルが連結されたグラフ情報を取得する。
取得部131は、データ検索の対象となる複数のノード(ベクトル)を取得する。取得部131は、複数のノードと、複数のノードの各々を連結する複数の有向エッジを含む有向エッジ群を取得する。
取得部131は、外部の情報処理装置からグラフ情報(グラフデータ)を取得する。取得部131は、グラフ情報記憶部123からグラフ情報を取得する。取得部131は、グラフ情報を取得する。図1の例では、取得部131は、グラフ情報GR11を取得する。
取得部131は、外部の情報処理装置からインデックス情報(インデックスデータ)を取得する。取得部131は、インデックス情報記憶部122からインデックス情報を取得する。取得部131は、木構造型のインデックス情報を取得する。図1の例では、取得部131は、インデックス情報IND11を取得する。
また、取得部131は、管理者等が利用する端末装置10から一の事象に関する事象情報を取得する。取得部131は、検索クエリとして、一の事象のログデータを取得する。取得部131は、事象に関する検索クエリを取得する。取得部131は、管理者MG1が利用する端末装置10から事象Xに関するログデータLGXを取得する。
図1の例では、取得部131は、一の事象に関する事象情報(ログデータ)を取得する。取得部131は、端末装置10から事象Xに関するログデータLGXを取得する。
(生成部132)
生成部132は、各種情報を生成する。生成部132は、記憶部120に記憶された各種情報に基づいて、種々の情報を生成する。生成部132は、事象情報記憶部121や、インデックス情報記憶部122や、グラフ情報記憶部123や、モデル情報記憶部124等に基づいて、各種情報を生成する。生成部132は、取得部131により取得された各種情報に基づいて、種々の情報を生成する。生成部132は、各種情報を算出する。
図1の例では、生成部132は、Sentence2Vecであるモデルを用いて各事象のログデータからN次元ベクトルを生成する。生成部132は、モデル情報記憶部124(図7)に示すモデルM1を用いて、各事象のログデータからベクトルを生成する。
また、生成部132は、一の事象に対応するログデータからグラフ情報の探索に用いるベクトルを生成する。図1の例では、生成部132は、処理群PS11に示すような処理により、事象Xに対応するベクトルを生成する。生成部132は、事象Xに関するログデータLGXをモデルM1に入力する。具体的には、生成部132は、事象X発生時に所定のサーバシステムのサーバ装置が出力したログデータLGXをモデルM1に入力する。そして、生成部132は、ログデータLGXの入力されたモデルM1が出力する情報を用いて、ベクトルを生成する。生成部132は、ログデータLGXが入力されたモデルM1が出力するベクトルデータをログデータLGXのベクトルVDXとして用いる。図1の例では、生成部132は、モデルM1を用いて、1次元目の要素が「0.6」であり、2次元目の要素が「0.3」であるようなベクトルVDXを生成する。
また、生成部132は、事象情報記憶部121に記憶された学習データ(ログ情報)を用いて、モデルを生成してもよい。生成部132は、取得部131により取得された学習データに基づいて、入力したログ情報と同様の情報を出力するモデル(オートエンコーダ)を生成してもよい。生成部132は、入力するログ情報自体を正解情報として、入力したログ情報と同様の情報を出力するモデル(オートエンコーダ)を生成してもよい。
生成部132は、モデルM21等を生成し、生成したモデルM21等をモデル情報記憶部124に格納する。なお、生成部132は、いかなる学習アルゴリズムを用いてモデルM21を生成してもよい。生成部132は、ニューラルネットワーク(neural network)等の学習アルゴリズムを用いてモデルM21を生成する。一例として、生成部132がニューラルネットワークを用いてモデルM21等を生成する場合、モデルM21等は、一以上のニューロンを含む入力層と、一以上のニューロンを含む中間層と、一以上のニューロンを含む出力層とを有する。
生成部132は、事象のログ情報(ログデータ)が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたログ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、入力層に入力される情報と同様の情報を出力層から出力するモデルを生成する。
生成部132は、学習データに基づいてモデルを生成する。生成部132は、学習データに基づいてモデルを生成する。生成部132は、事象情報記憶部121中のログデータLG1、LG2等を学習データ(教師データ)として、学習を行なうことにより、モデルを生成する。
生成部132は、ログデータLG1が入力された場合に、モデルM21がログデータLG1と同様の情報を出力するように、学習処理を行う。生成部132は、ログデータLG2が入力された場合に、モデルM21がログデータLG2と同様の情報を出力するように、学習処理を行う。
なお、生成部132は、オートエンコーダとしてのM21に限らず、鉄道等の交通に対応するM22やユーザの購買等のユーザ行動に対応するM23等を生成してもよい。生成部132は、ニューラルネットワーク(neural network)、サポートベクターマシン(SVM)、クラスタリング、強化学習等の学習アルゴリズムを用いてモデルM22、M23等を生成する。一例として、生成部132がニューラルネットワークを用いてモデルM22、M23等を生成する場合、モデルM22、M23等は、一以上のニューロンを含む入力層と、一以上のニューロンを含む中間層と、一以上のニューロンを含む出力層とを有する。
生成部132は、モデルを生成し、生成したモデルをモデル情報記憶部124に格納する。具体的には、生成部132は、事象のログ情報(ログデータ)が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたログ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、事象の発生の予測に用いられるスコアの値を出力層から出力するモデルを生成する。生成部132は、事象のログ情報(ログデータ)が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたログ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、事象の発生の予測に用いられるスコアの値を出力層から出力するモデルM21を生成する。生成部132は、事象が発生した際のログ情報が入力された場合に、スコア「1」を出力するようにモデルM21を生成する。生成部132は、事象が発生しなかった際のログ情報が入力された場合に、スコア「0」を出力するようにモデルM21を生成する。生成部132は、モデルM21を用いて各事象のログデータからN次元ベクトルを生成してもよい。
図1の例では、生成部132は、各類似事象のスコアや類似度等に基づいて、各類似事象のランキングスコアを生成する。例えば、生成部132は、各類似事象のスコアと類似度とを乗算することにより、各類似事象のランキングスコアを算出する。生成部132は、ランキング一覧情報RKLに示すように、各類似事象のランキングスコアを算出する。生成部132は、事象#451のランキングスコアをランキングスコアRS451と算出する。また、生成部132は、事象#35のランキングスコアをランキングスコアRS35と算出する。
(決定部133)
決定部133は、各種情報を決定する。決定部133は、各種情報を判定する。決定部133は、記憶部120に記憶された各種情報に基づいて、種々の情報を決定する。決定部133は、記憶部120に記憶された各種情報に基づいて、種々の情報を判定する。決定部133は、事象情報記憶部121や、インデックス情報記憶部122や、グラフ情報記憶部123や、モデル情報記憶部124等に基づいて、各種情報を決定する。決定部133は、事象情報記憶部121や、インデックス情報記憶部122や、グラフ情報記憶部123や、モデル情報記憶部124等に基づいて、各種情報を判定する。決定部133は、取得部131により取得された各種情報に基づいて、種々の情報を決定する。決定部133は、取得部131により取得された各種情報に基づいて、種々の情報を判定する。決定部133は、取得部131により取得された事象情報と、グラフ情報の検索の起点となる起点ベクトルに関する情報と基づいて、起点ベクトルを決定する。また、決定部133は、起点ベクトルの決定に用いるインデックス情報に基づいて、起点ベクトルを決定する。また、決定部133は、木構造型のインデックス情報に基づいて、起点ベクトルを決定する。
図1の例では、決定部133は、一の事象(クエリ)に対応する起点ベクトルを決定(特定)するために、インデックス情報IND11を用いる。決定部133は、事象XのベクトルVDXに対応する起点ベクトルを決定(特定)するために、インデックス情報IND11を用いる。決定部133は、ベクトルVDXとインデックス情報IND11とを用いて、グラフ情報GR11における起点ベクトルを決定する。
決定部133は、図1中のインデックス情報IND11に示すような木構造型のインデックス情報を用いて、グラフ情報GR11における起点ベクトルを決定する。図1の例では、決定部133は、ベクトルVDXを生成した後、インデックス情報IND11を上から下へ辿ることにより、インデックス情報IND11の近傍候補となる起点ベクトルを特定することにより、効率的に検索クエリ(一の事象)に対応する起点ベクトルを決定する。
決定部133は、インデックス情報IND11をルートRTからリーフノード(グラフ情報GR11中のノード(ベクトル))まで辿ることにより、ベクトルVDXに対応する起点ベクトルを決定する。図1の例では、決定部133は、インデックス情報IND11をルートRTからノードN451まで辿ることにより、ノードN451を起点ベクトルとして決定する。
決定部133は、提供対象事象を決定する。図1の例では、決定部133は、順位が1位である事象#35を提供対象事象に決定する。
(抽出部134)
抽出部134は、各種情報を抽出する。抽出部134は、記憶部120に記憶された各種情報に基づいて、種々の情報を抽出する。抽出部134は、事象情報記憶部121や、インデックス情報記憶部122や、グラフ情報記憶部123や、モデル情報記憶部124等に基づいて、各種情報を抽出する。抽出部134は、取得部131により取得された各種情報に基づいて、種々の情報を抽出する。抽出部134は、生成部133により生成された各種情報に基づいて、種々の情報を抽出する。抽出部134は、決定部133により決定された各種情報に基づいて、種々の情報を抽出する。抽出部134は、検索処理における抽出処理を行う。
抽出部134は、取得部131により取得されたグラフ情報の複数のベクトルのうち、所定の基準に基づいて決定されたグラフ情報の検索の起点となる起点ベクトルを起点としてグラフ情報を検索することにより、複数の事象のうち、一の事象に類似する事象である類似事象を抽出する。抽出部134は、決定部132により決定された起点ベクトルを起点としてグラフ情報を検索することにより、複数の事象のうち、一の事象に類似する事象である類似事象を抽出する。抽出部134は、グラフ情報記憶部123に記憶された各ノード(ベクトル)間を連結するエッジの長さ(距離)の情報を用いてもよいし、各ノードのベクトルデータ(ベクトル情報)から各ノード(ベクトル)間を連結するエッジの長さ(距離)の情報を算出し、算出した長さ(距離)の情報を用いてもよい。
抽出部134は、グラフ情報の複数のベクトルのうち、所定の基準に基づいて決定されたグラフ情報の検索の起点となる起点ベクトルを起点としてグラフ情報を検索し、複数の事象のうち、一の事象に類似する事象である類似事象を抽出することにより、類似事象に対応付けられた事象関連情報を抽出する。抽出部134は、一の事象が所定の条件を満たす場合、グラフ情報を検索し、類似事象に対応付けられた事象関連情報を抽出する。抽出部134は、一の事象が通常の事象と異なる事象である場合、グラフ情報を検索し、類似事象に対応付けられた事象関連情報を抽出する。抽出部134は、所定のタイミングで、グラフ情報を検索し、類似事象に対応付けられた事象関連情報を抽出する。抽出部134は、抽出した類似事象のスコアに基づいて、類似事象の事象関連情報を順位付けする。
図1の例では、抽出部134は、グラフ情報GR11を検索することにより、事象Xの類似事象を抽出する。例えば、抽出部134は、ノードN451の近傍に位置するノードを類似事象として抽出する。例えば、抽出部134は、ノードN451からの距離が近いノードを類似事象として抽出する。例えば、抽出部134は、ノードN451を起点として、エッジを辿ることにより、ノードN451から到達可能なノードを類似事象として抽出する。例えば、抽出部134は、所定数(例えば、2個や10個等)のノードを類似事象として抽出する。例えば、抽出部134は、図11に示すような検索処理により、事象Xの類似事象を抽出してもよいが、詳細は後述する。図1の例では、抽出部134は、ノードN451を起点として、グラフ情報GR11を探索することにより、ノードN451やノードN35やノードN256等を類似事象として抽出する。例えば、抽出部134は、事象Xとの類似度が高い方から順に、ノードN451、ノードN35、ノードN256等の順で抽出する。
図1の例では、抽出部134は、抽出した類似事象に対応付けられた事象関連情報を抽出する。抽出部134は、類似事象一覧情報SELに示すように、抽出した類似事象に対応付けられた事象関連情報を抽出する。例えば、抽出部134は、事象情報記憶部121(図4参照)に記憶された情報のうち、各類似事象に対応付けられた事象関連情報を抽出する。抽出部134は、事象関連情報として、コメントや自動実行フラグやスコア等の情報を抽出する。抽出部134は、類似事象として抽出した事象#451(ノードN451)、事象#35(ノードN35)、事象#256(ノードN256)等の各々に対応付けられた事象関連情報を抽出する。
抽出部134は、各類似事象のランキングスコアに基づいて、各類似事象の順位付けを行う。抽出部134は、ランキングスコアが高い類似事象から順に順位付けを行う。図1の例では、抽出部134は、ランキングスコアが高い方から順に、1位「事象#35」、2位「事象#2」、3位「事象#451」等と順位付けする。
(提供部135)
提供部135は、各種情報を提供する。提供部135は、端末装置10やサービス提供装置50等の外部の情報処理装置に各種情報を提供する。提供部135は、端末装置10やサービス提供装置50に各種情報を送信する。提供部135は、端末装置10に各種情報を配信する。提供部135は、取得部131により取得された各種情報に基づいて、種々の情報を提供する。提供部135は、生成部132により生成された各種情報に基づいて、種々の情報を提供する。提供部135は、抽出部134により抽出された各種情報に基づいて、種々の情報を提供する。提供部135は、抽出部134により抽出された類似事象の事象関連情報を提供する。提供部135は、抽出部134により抽出された類似事象に基づいて、所定のサービスを提供する。また、提供部135は、類似事象に関する情報提供サービスを提供する。提供部135は、端末装置10に類似事象に関する情報を提供する。提供部135は、類似事象に対応付けられた事象関連情報に関する情報提供サービスを提供する。
提供部135は、クエリに対応する事象ID(オブジェクトID)を検索結果として提供する。提供部135は、抽出部134により抽出された事象IDをサービス提供装置50へ提供する。提供部135は、抽出部134により抽出された事象IDをクエリに対応するベクトルを示す情報としてサービス提供装置50に提供する。提供部135は、抽出部134により抽出された事象IDにより特定される類似事象に対応付けられた事象関連情報に関する情報提供サービスを提供する。また、提供部135は、生成部132により生成されたモデルを外部の情報処理装置へ提供してもよい。
図1の例では、提供部135は、決定部133により決定された提供対象事象に関する情報を提供する。提供部135は、提供対象事象である事象#35を示す情報や事象#35のコメントCM35を事象Xに類似する事象や事象Xへの対処内容として、管理者MG1が利用する端末装置10に提供する。
〔4.情報処理のフロー〕
次に、図8を用いて、実施形態に係る情報処理システム1による情報処理の手順について説明する。図8は、実施形態に係る情報処理の一例を示すフローチャートである。
図8に示すように、情報処理装置100は、一の事象に関する事象情報(ログデータ)を取得する(ステップS101)。図1の例では、情報処理装置100は、端末装置10から事象Xに関するログデータLGXを取得する。
情報処理装置100は、事象に関するグラフ情報を取得する(ステップS102)。例えば、情報処理装置100は、グラフ情報記憶部123から事象に関するグラフ情報GR11を取得する。
そして、情報処理装置100は、モデルを用いて一の事象に関するログデータからベクトルを生成する(ステップS103)。図1の例では、情報処理装置100は、モデル情報記憶部124に記憶されたモデルM1を用いて、ログデータLGXからベクトルVDXを生成する。
そして、情報処理装置100は、生成したベクトルとインデックス情報を用いて起点ベクトルを決定する(ステップS104)。図1の例では、情報処理装置100は、ベクトルVDXと、インデックス情報記憶部122に記憶されたインデックス情報IND11とを用いて、起点ベクトルをノードN451に決定する。
そして、情報処理装置100は、グラフ情報を検索し、一の事象の類似事象を抽出することにより、類似事象に対応付けられた事象関連情報を抽出する(ステップS105)。図1の例では、情報処理装置100は、ノードN451を起点として、グラフ情報GR11を探索し、ノードN451やノードN35を類似事象として抽出することにより、事象#451に対応するコメントCM451や事象#35に対応するコメントCM35を抽出する。
そして、情報処理装置100は、抽出した類似事象に対応する事象関連情報に関する情報を提供する(ステップS106)。図1の例では、情報処理装置100は、最も順位が高いノードN35(事象#35)に対応するコメントCM35を事象Xへの対応を示す情報として管理者MG1が利用する端末装置10に提供する。
〔5.生成処理のフロー〕
次に、図9を用いて、実施形態に係る情報処理システム1による生成処理の手順について説明する。図9は、実施形態に係る生成処理の一例を示すフローチャートである。
図9に示すように、情報処理装置100は、学習データを取得する(ステップS201)。例えば、情報処理装置100は、事象情報記憶部121から学習データを取得する。例えば、情報処理装置100は、事象情報記憶部121からログデータLG1、LG2等を学習データとして取得する。
その後、情報処理装置100は、学習データに基づきモデルを生成する(ステップS202)。例えば、情報処理装置100は、事象情報記憶部121から学習データを用いてモデルM21を生成する。例えば、情報処理装置100は、入力層に入力される情報(ログデータ)と同様の情報(ログデータ)を出力層から出力するようにモデルM1を生成する。例えば、情報処理装置100は、事象のログデータを入力とするオートエンコーダとしてのモデルM21を生成する。
〔6.検索例〕
ここで、上述したグラフ情報を用いた検索の一例を示す。なお、グラフ情報(グラフデータ)を用いた検索は下記に限らず、種々の手順により行われてもよい。この点について、図11を一例として説明する。図11は、グラフデータ(グラフ情報)を用いた検索処理の一例を示すフローチャートである。また、以下でいうオブジェクトは、ベクトルやノードと読み替えてもよい。なお、以下では、情報処理装置100が検索処理を行うものとして説明するが、検索処理は他の装置により行われてもよい。例えば、情報処理装置100は、検索クエリとして、一の事象のログデータから生成されたベクトルデータを用いる。例えば、情報処理装置100は、一の事象のログデータから生成されたベクトルデータとインデックス情報とに基づいて決定された起点ベクトルを起点としてグラフデータを検索する。図1の例では、情報処理装置100は、事象XのベクトルVDXとインデックス情報IND11とに基づいて決定された起点ベクトルであるノードN451を起点としてグラフ情報GR11を検索する。
ここでは、近傍オブジェクト集合N(G,y)は、ノードyに付与されているエッジにより関連付けられている近傍のオブジェクトの集合である。「G」は、所定のグラフデータ(例えば、グラフ情報GR11等)であってもよい。例えば、情報処理装置100は、k近傍検索処理を実行する。
例えば、情報処理装置100は、超球の半径rを∞(無限大)に設定し(ステップS300)、既存のオブジェクト集合から部分集合Sを抽出する(ステップS301)。例えば、情報処理装置100は、ルートノード(起点ベクトル)として選択されたオブジェクト(ノード)を部分集合Sとして抽出してもよい。図1の例では、情報処理装置100は、起点ベクトルであるノードN451等を部分集合Sとして抽出してもよい。また、例えば、超球とは、検索範囲を示す仮想的な球である。なお、ステップS301において抽出されたオブジェクト集合Sに含まれるオブジェクトは、同時に検索結果のオブジェクト集合Rの初期集合にも含められる。
次に、情報処理装置100は、オブジェクト集合Sに含まれるオブジェクトの中で、検索クエリオブジェクトをyとするとオブジェクトyとの距離が最も短いオブジェクトを抽出し、オブジェクトsとする(ステップS302)。図1の例では、情報処理装置100は、オブジェクト集合Sに含まれるオブジェクトの中で、検索クエリオブジェクトであるベクトルVDXとの距離が最も短いオブジェクトを抽出し、オブジェクトsとする。例えば、情報処理装置100は、オブジェクト集合Sに含まれるオブジェクトの中で、ベクトルVDXとの距離が最も短いノードN451を抽出し、オブジェクトsとする。例えば、情報処理装置100は、ルートノード(起点ベクトル)として選択されたオブジェクト(ノード)のみがオブジェクト集合Sの要素の場合には、結果的にルートノード(起点ベクトル)がオブジェクトsとして抽出される。次に、情報処理装置100は、オブジェクトsをオブジェクト集合Sから除外する(ステップS303)。
次に、情報処理装置100は、オブジェクトsとオブジェクトyとの距離d(s,y)がr(1+ε)を超えるか否かを判定する(ステップS304)。ここで、εは拡張要素であり、r(1+ε)は、探索範囲(この範囲内のノードのみを探索する。検索範囲よりも大きくすることで精度を高めることができる)の半径を示す値である。オブジェクトsとオブジェクトyとの距離d(s,y)がr(1+ε)を超える場合(ステップS304:Yes)、情報処理装置100は、オブジェクト集合Rをオブジェクトyの近傍オブジェクト集合として出力し(ステップS305)、処理を終了する。
オブジェクトsと検索クエリオブジェクトyとの距離d(s,y)がr(1+ε)を超えない場合(ステップS304:No)、情報処理装置100は、オブジェクトsの近傍オブジェクト集合N(G,s)の要素であるオブジェクトの中からオブジェクト集合Cに含まれないオブジェクトを一つ選択し、選択したオブジェクトuを、オブジェクト集合Cに格納する(ステップS306)。オブジェクト集合Cは、重複検索を回避するために便宜上設けられるものであり、処理開始時には空集合に設定される。
次に、情報処理装置100は、オブジェクトuとオブジェクトyとの距離d(u,y)がr(1+ε)以下であるか否かを判定する(ステップS307)。オブジェクトuとオブジェクトyとの距離d(u,y)がr(1+ε)以下である場合(ステップS307:Yes)、情報処理装置100は、オブジェクトuをオブジェクト集合Sに追加する(ステップS308)。
次に、情報処理装置100は、オブジェクトuとオブジェクトyとの距離d(u,y)がr以下であるか否かを判定する(ステップS309)。オブジェクトuとオブジェクトyとの距離d(u,y)がrを超える場合(ステップS309:No)、情報処理装置100は、ステップS315の判定(処理)を行う。
オブジェクトuとオブジェクトyとの距離d(u,y)がr以下である場合(ステップS309:Yes)、情報処理装置100は、オブジェクトuをオブジェクト集合Rに追加する(ステップS310)。そして、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクト数がksを超えるか否かを判定する(ステップS311)。所定数ksは、任意に定められる自然数である。例えば、ks=2やks=10等の種々の設定であってもよい。
オブジェクト集合Rに含まれるオブジェクト数がksを超える場合(ステップS311:Yes)、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクトの中でオブジェクトyとの距離が最も長い(遠い)オブジェクトを、オブジェクト集合Rから除外する(ステップS312)。
次に、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクト数がksと一致するか否かを判定する(ステップS313)。オブジェクト集合Rに含まれるオブジェクト数がksと一致する場合(ステップS313:Yes)、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクトの中でオブジェクトyとの距離が最も長い(遠い)オブジェクトと、オブジェクトyとの距離を、新たなrに設定する(ステップS314)。
そして、情報処理装置100は、オブジェクトsの近傍オブジェクト集合N(G,s)の要素であるオブジェクトから全てのオブジェクトを選択してオブジェクト集合Cに格納し終えたか否かを判定する(ステップS315)。オブジェクトsの近傍オブジェクト集合N(G,s)の要素であるオブジェクトから全てのオブジェクトを選択してオブジェクト集合Cに格納し終えていない場合(ステップS315:No)、情報処理装置100は、ステップS306に戻って処理を繰り返す。
オブジェクトsの近傍オブジェクト集合N(G,s)の要素であるオブジェクトから全てのオブジェクトを選択してオブジェクト集合Cに格納し終えた場合(ステップS315:Yes)、情報処理装置100は、オブジェクト集合Sが空集合であるか否かを判定する(ステップS316)。オブジェクト集合Sが空集合でない場合(ステップS316:No)、情報処理装置100は、ステップS302に戻って処理を繰り返す。また、オブジェクト集合Sが空集合である場合(ステップS316:Yes)、情報処理装置100は、オブジェクト集合Rを出力し、処理を終了する(ステップS317)。例えば、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクト(ノード)を検索クエリ(入力オブジェクトy)に対応する検索結果として、検索を行った端末装置10等へ提供してもよい。図1の例では、情報処理装置100は、オブジェクト集合Rに含まれるノードN451やノードN35を検索クエリ(事象XのベクトルVDX)の類似事象を示す情報として抽出する。そして、情報処理装置100は、事象Xの類似事象として抽出した事象#451(ノードN451)に対応するコメントCM451や事象#35(ノードN35)に対応するコメントCM35を抽出する。そして、図1の例では、情報処理装置100は、最も順位が高いノードN35(事象#35)に対応するコメントCM35を事象Xへの対応を示す情報として管理者MG1が利用する端末装置10に提供する。
〔7.効果〕
上述してきたように、実施形態に係る情報処理装置100は、取得部131と、抽出部134とを有する。取得部131は、複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報と、複数の事象の各々に対応付けられた情報であって、対応付けられた事象に関連する情報である事象関連情報と、一の事象に関する情報を取得する。抽出部134は、グラフ情報の複数のベクトルのうち、所定の基準に基づいて決定されたグラフ情報の検索の起点となる起点ベクトルを起点としてグラフ情報を検索し、複数の事象のうち、一の事象に類似する事象である類似事象を抽出することにより、類似事象に対応付けられた事象関連情報を抽出する。
このように、実施形態に係る情報処理装置100は、起点ベクトルを起点としてグラフ情報を検索し、複数の事象のうち、一の事象に類似する事象である類似事象を抽出することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100は、決定部133を有する。決定部133は、起点ベクトルの決定に用いるインデックス情報に基づいて、起点ベクトルを決定する。抽出部134は、決定部133により決定された起点ベクトルを起点として、類似事象を抽出する。
このように、実施形態に係る情報処理装置100は、起点ベクトルの決定に用いるインデックス情報に基づいて、起点ベクトルを決定することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、決定部133は、木構造型のインデックス情報に基づいて、起点ベクトルを決定する。
このように、実施形態に係る情報処理装置100は、木構造型のインデックス情報に基づいて、起点ベクトルを決定することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々に対応する複数の情報がベクトル化された複数のベクトルが連結されたグラフ情報を取得する。
このように、実施形態に係る情報処理装置100は、複数の事象の各々に対応する複数の情報がベクトル化された複数のベクトルが連結されたグラフ情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々に対応する文字情報がベクトル化された複数のベクトルが連結されたグラフ情報を取得する。
このように、実施形態に係る情報処理装置100は、複数の事象の各々に対応する文字情報がベクトル化された複数のベクトルが連結されたグラフ情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、抽出部134は、一の事象が所定の条件を満たす場合、グラフ情報を検索し、類似事象に対応付けられた事象関連情報を抽出する。
このように、実施形態に係る情報処理装置100は、一の事象が所定の条件を満たす場合、グラフ情報を検索し、類似事象に対応付けられた事象関連情報を抽出することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、抽出部134は、一の事象が通常の事象と異なる事象である場合、グラフ情報を検索し、類似事象に対応付けられた事象関連情報を抽出する。
このように、実施形態に係る情報処理装置100は、一の事象が通常の事象と異なる事象である場合、グラフ情報を検索し、類似事象に対応付けられた事象関連情報を抽出することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、抽出部134は、所定のタイミングで、グラフ情報を検索し、類似事象に対応付けられた事象関連情報を抽出する。
このように、実施形態に係る情報処理装置100は、所定のタイミングで、グラフ情報を検索し、類似事象に対応付けられた事象関連情報を抽出することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々の分析結果を含む事象関連情報を取得する。
このように、実施形態に係る情報処理装置100は、複数の事象の各々の分析結果を含む事象関連情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々の発生理由を含む事象関連情報を取得する。
このように、実施形態に係る情報処理装置100は、複数の事象の各々の発生理由を含む事象関連情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々の発生後における行動を示す情報を含む事象関連情報を取得する。
このように、実施形態に係る情報処理装置100は、複数の事象の各々の発生後における行動を示す情報を含む事象関連情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々への対処内容を示す情報を含む事象関連情報を取得する。
このように、実施形態に係る情報処理装置100は、複数の事象の各々への対処内容を示す情報を含む事象関連情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々への対処として所定の情報処理装置が実行した処理に基づく情報であって、情報処理装置が処理を自動実行可能な形式の情報である指令情報を含む事象関連情報を取得する。
このように、実施形態に係る情報処理装置100は、複数の事象の各々への対処として所定の情報処理装置が実行した処理に基づく情報であって、情報処理装置が処理を自動実行可能な形式の情報である指令情報を含む事象関連情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々の評価を示す情報を含む事象関連情報を取得する。
このように、実施形態に係る情報処理装置100は、複数の事象の各々の評価を示す情報を含む事象関連情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々の評価を示すスコアを含む事象関連情報を取得する。
このように、実施形態に係る情報処理装置100は、複数の事象の各々の評価を示すスコアを含む事象関連情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、抽出部134は、抽出した類似事象のスコアに基づいて、類似事象の事象関連情報を順位付けする。
このように、実施形態に係る情報処理装置100は、抽出した類似事象のスコアに基づいて、類似事象の事象関連情報を順位付けすることにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100は、提供部135を有する。提供部135は、抽出部134により抽出された類似事象に基づいて、所定のサービスを提供する。
このように、実施形態に係る情報処理装置100は、抽出した類似事象に基づいて、所定のサービスを提供することにより、類似の事象に関する情報を用いたサービスを適切に提供することができる。
また、実施形態に係る情報処理装置100において、提供部135は、類似事象に対応付けられた事象関連情報に関する情報提供サービスを提供する。
このように、実施形態に係る情報処理装置100は、抽出した類似事象に対応付けられた事象関連情報に関する情報提供サービスを提供することにより、類似の事象に関する情報を用いたサービスを適切に提供することができる。
また、実施形態に係る情報処理装置100において、取得部131は、所定のシステムにおいてログが出力される複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報を取得する。
このように、実施形態に係る情報処理装置100は、所定のシステムにおいてログが出力される複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、所定のシステムにおいてログが出力される複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報を取得する。
このように、実施形態に係る情報処理装置100は、所定のシステムにおいてログが出力される複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、所定のシステムにおけるアラートに関する複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報を取得する。
このように、実施形態に係る情報処理装置100は、所定のシステムにおけるアラートに関する複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
また、実施形態に係る情報処理装置100において、取得部131は、複数の事象の各々に対応するログに関する情報がベクトル化された複数のベクトルが連結されたグラフ情報を取得する。
このように、実施形態に係る情報処理装置100は、所複数の事象の各々に対応するログに関する情報がベクトル化された複数のベクトルが連結されたグラフ情報を取得することにより、類似事象に関連する情報を適切に抽出することができる。
〔8.ハードウェア構成〕
上述してきた実施形態に係る情報処理装置100は、例えば図13に示すような構成のコンピュータ1000によって実現される。図13は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、ネットワークNを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータをネットワークNを介して他の機器へ送信する。
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムまたはデータ(例えば、モデルM1(モデルデータMDT1))を実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムまたはデータ(例えば、モデルM1(モデルデータMDT1))を記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
〔9.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた各実施形態に記載された各処理は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
1 情報処理システム
100 情報処理装置
121 事象情報記憶部
122 インデックス情報記憶部
123 グラフ情報記憶部
124 モデル情報記憶部
130 制御部
131 取得部
132 生成部
133 決定部
134 抽出部
135 提供部
10 端末装置
50 情報提供装置
N ネットワーク

Claims (20)

  1. 複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報と、前記複数の事象の各々に対応付けられた情報であって、対応付けられた事象に関連する情報であり、前記複数の事象の各々の評価を示すスコアを含む事象関連情報と、一の事象に関する情報を取得する取得部と、
    前記グラフ情報の前記複数のベクトルのうち、所定の基準に基づいて決定された前記グラフ情報の検索の起点となる起点ベクトルを起点として前記グラフ情報を検索し、前記複数の事象のうち、前記一の事象に類似する事象である類似事象を抽出することにより、前記類似事象に対応付けられた前記事象関連情報を抽出し、抽出した前記類似事象の前記スコアと、前記類似事象の前記一の事象との類似度に基づいて算出したランキングスコアを用いて、前記類似事象の前記事象関連情報を順位付けする抽出部と、
    を備えたことを特徴とする情報処理装置。
  2. 前記起点ベクトルの決定に用いるインデックス情報に基づいて、前記起点ベクトルを決定する決定部、
    をさらに備え、
    前記抽出部は、
    前記決定部により決定された前記起点ベクトルを起点として、前記類似事象を抽出することを特徴とする請求項1に記載の情報処理装置。
  3. 前記決定部は、
    木構造型の前記インデックス情報に基づいて、前記起点ベクトルを決定する
    ことを特徴とする請求項2に記載の情報処理装置。
  4. 前記取得部は、
    前記複数の事象の各々に対応する複数の情報がベクトル化された前記複数のベクトルが連結された前記グラフ情報を取得する
    ことを特徴とする請求項1〜3のいずれか1項に記載の情報処理装置。
  5. 前記取得部は、
    前記複数の事象の各々に対応する文字情報がベクトル化された前記複数のベクトルが連結された前記グラフ情報を取得する
    ことを特徴とする請求項1〜4のいずれか1項に記載の情報処理装置。
  6. 前記抽出部は、
    前記一の事象が所定の条件を満たす場合、前記グラフ情報を検索し、前記類似事象に対応付けられた前記事象関連情報を抽出する
    ことを特徴とする請求項1〜5のいずれか1項に記載の情報処理装置。
  7. 前記抽出部は、
    前記一の事象が通常の事象と異なる事象である場合、前記グラフ情報を検索し、前記類似事象に対応付けられた前記事象関連情報を抽出する
    ことを特徴とする請求項1〜6のいずれか1項に記載の情報処理装置。
  8. 前記抽出部は、
    所定のタイミングで、前記グラフ情報を検索し、前記類似事象に対応付けられた前記事象関連情報を抽出する
    ことを特徴とする請求項1〜7のいずれか1項に記載の情報処理装置。
  9. 前記取得部は、
    前記複数の事象の各々の分析結果を含む前記事象関連情報を取得する
    ことを特徴とする請求項1〜8のいずれか1項に記載の情報処理装置。
  10. 前記取得部は、
    前記複数の事象の各々の発生理由を含む前記事象関連情報を取得する
    ことを特徴とする請求項1〜9のいずれか1項に記載の情報処理装置。
  11. 前記取得部は、
    前記複数の事象の各々の発生後における行動を示す情報を含む前記事象関連情報を取得する
    ことを特徴とする請求項1〜10のいずれか1項に記載の情報処理装置。
  12. 前記取得部は、
    前記複数の事象の各々への対処内容を示す情報を含む前記事象関連情報を取得する
    ことを特徴とする請求項1〜11のいずれか1項に記載の情報処理装置。
  13. 前記取得部は、
    前記複数の事象の各々への対処として所定の情報処理装置が実行した処理に基づく情報であって、情報処理装置が前記処理を自動実行可能な形式の情報である指令情報を含む前記事象関連情報を取得する
    ことを特徴とする請求項1〜12のいずれか1項に記載の情報処理装置。
  14. 前記抽出部により抽出された前記類似事象に基づいて、所定のサービスを提供する提供部、
    をさらに備えたことを特徴とする請求項1〜13のいずれか1項に記載の情報処理装置。
  15. 前記提供部は、
    前記類似事象に対応付けられた前記事象関連情報に関する情報提供サービスを提供する
    ことを特徴とする請求項14に記載の情報処理装置。
  16. 前記取得部は、
    所定のシステムにおいてログが出力される前記複数の事象の各々に対応する複数のベクトルが類似性に応じて連結された前記グラフ情報を取得する
    ことを特徴とする請求項1〜15のいずれか1項に記載の情報処理装置。
  17. 前記取得部は、
    前記所定のシステムにおけるアラートに関する前記複数の事象の各々に対応する複数のベクトルが類似性に応じて連結された前記グラフ情報を取得する
    ことを特徴とする請求項16に記載の情報処理装置。
  18. 前記取得部は、
    前記複数の事象の各々に対応する前記ログに関する情報がベクトル化された前記複数のベクトルが連結された前記グラフ情報を取得する
    ことを特徴とする請求項16または請求項17に記載の情報処理装置。
  19. コンピュータが実行する情報処理方法であって、
    複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報と、前記複数の事象の各々に対応付けられた情報であって、対応付けられた事象に関連する情報であり、前記複数の事象の各々の評価を示すスコアを含む事象関連情報と、一の事象に関する情報を取得する取得工程と、
    前記グラフ情報の前記複数のベクトルのうち、所定の基準に基づいて決定された前記グラフ情報の検索の起点となる起点ベクトルを起点として前記グラフ情報を検索し、前記複数の事象のうち、前記一の事象に類似する事象である類似事象を抽出することにより、前記類似事象に対応付けられた前記事象関連情報を抽出し、抽出した前記類似事象の前記スコアと、前記類似事象の前記一の事象との類似度に基づいて算出したランキングスコアを用いて、前記類似事象の前記事象関連情報を順位付けする抽出工程と、
    を含んだことを特徴とする情報処理方法。
  20. 複数の事象の各々に対応する複数のベクトルが類似性に応じて連結されたグラフ情報と、前記複数の事象の各々に対応付けられた情報であって、対応付けられた事象に関連する情報であり、前記複数の事象の各々の評価を示すスコアを含む事象関連情報と、一の事象に関する情報を取得する取得手順と、
    前記グラフ情報の前記複数のベクトルのうち、所定の基準に基づいて決定された前記グラフ情報の検索の起点となる起点ベクトルを起点として前記グラフ情報を検索し、前記複数の事象のうち、前記一の事象に類似する事象である類似事象を抽出することにより、前記類似事象に対応付けられた前記事象関連情報を抽出し、抽出した前記類似事象の前記スコアと、前記類似事象の前記一の事象との類似度に基づいて算出したランキングスコアを用いて、前記類似事象の前記事象関連情報を順位付けする抽出手順と、
    をコンピュータに実行させることを特徴とする情報処理プログラム。
JP2018131855A 2018-07-11 2018-07-11 情報処理装置、情報処理方法、及び情報処理プログラム Active JP6510125B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018131855A JP6510125B1 (ja) 2018-07-11 2018-07-11 情報処理装置、情報処理方法、及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018131855A JP6510125B1 (ja) 2018-07-11 2018-07-11 情報処理装置、情報処理方法、及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP6510125B1 true JP6510125B1 (ja) 2019-05-08
JP2020009333A JP2020009333A (ja) 2020-01-16

Family

ID=66429876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018131855A Active JP6510125B1 (ja) 2018-07-11 2018-07-11 情報処理装置、情報処理方法、及び情報処理プログラム

Country Status (1)

Country Link
JP (1) JP6510125B1 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002333493A (ja) * 2001-05-10 2002-11-22 Mitsubishi Heavy Ind Ltd 原子力発電所における不適合(トラブル)情報検索システム及びその記録媒体
JP4273763B2 (ja) * 2002-12-24 2009-06-03 パナソニック電工株式会社 設計支援システム
JP4572265B2 (ja) * 2003-08-19 2010-11-04 株式会社三重ティーエルオー 実績管理支援システム及び実績管理支援プログラム
US7284155B2 (en) * 2004-03-29 2007-10-16 Hewlett-Packard Development Company, L.P. Remote software support agent system with electronic documents for troubleshooting
JP6280862B2 (ja) * 2014-11-26 2018-02-14 株式会社日立製作所 イベント分析システムおよび方法
US10740678B2 (en) * 2016-03-31 2020-08-11 International Business Machines Corporation Concept hierarchies

Also Published As

Publication number Publication date
JP2020009333A (ja) 2020-01-16

Similar Documents

Publication Publication Date Title
US9846841B1 (en) Predicting object identity using an ensemble of predictors
CN105045799A (zh) 可搜索索引
US8731930B2 (en) Contextual voice query dilation to improve spoken web searching
JP2010020490A (ja) 未訪問地の情報提供装置及び未訪問地の情報提供方法
WO2020047861A1 (zh) 用于生成排序模型的方法和装置
US20110208715A1 (en) Automatically mining intents of a group of queries
US20220114603A1 (en) Systems and methods for tracking data shared with third parties using artificial intelligence-machine learning
WO2020010996A1 (zh) 超链接的处理方法和装置及存储介质
US11343146B1 (en) Automatically determining configuration-based issue resolutions across multiple devices using machine learning models
JP6976178B2 (ja) 抽出装置、抽出方法、及び抽出プログラム
JP6510125B1 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
CN110889029B (zh) 城市目标推荐方法和装置
CN114443783B (zh) 一种供应链数据分析和增强处理方法及装置
Hu et al. Betterlife 2.0: Large-scale social intelligence reasoning on cloud
JP5555238B2 (ja) ベイジアンネットワーク構造学習のための情報処理装置及びプログラム
JP7041530B2 (ja) 表示プログラム、表示方法、及び表示装置
JP7221590B2 (ja) 抽出装置、抽出方法、及び抽出プログラム
JP6856567B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP7414906B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP6960361B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP2021149682A (ja) 学習装置、学習方法及び学習プログラム
Rungta et al. Two-phase multimodal neural network for app categorization using APK resources
JP2021149681A (ja) 判定装置、判定方法及び判定プログラム
JP2019160064A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US20130185401A1 (en) Configuration management device, configuration management method, and configuration management program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180718

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180718

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190121

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190305

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190403

R150 Certificate of patent or registration of utility model

Ref document number: 6510125

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350