(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024167998
(43)【公開日】2024-12-05
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20241128BHJP
G06F 11/07 20060101ALI20241128BHJP
【FI】
G06N20/00 130
G06F11/07 151
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2023084370
(22)【出願日】2023-05-23
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】山口 晃広
(72)【発明者】
【氏名】植野 研
(72)【発明者】
【氏名】新垣 隆生
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042JJ18
(57)【要約】
【課題】一部の状態の学習データのみでモデルを学習する場合であっても、当該モデルを用いた分類をより高精度に実行する。
【解決手段】情報処理装置は、処理部を備える。処理部は、検知モデルを用いて、入力波形データが第1状態であるか否かを検知する。処理部は、第1状態であることが検知されたときに、検知モデルを用いて予め検知された第2状態である複数の第2状態波形データを取得する。処理部は、第1状態であることが検知された第1状態波形データと、複数の第2状態波形データと、を学習データとして用いて、波形データが第1状態および第2状態のいずれであるかを分類する分類モデルを学習することにより、第1状態波形データが第1状態であることを示す根拠となる1つ以上の部分波形パターンを生成する。処理部は、生成された部分波形パターンを出力する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
検知モデルを用いて、入力波形データが第1状態であるか否かを検知し、
前記第1状態であることが検知されたときに、前記検知モデルを用いて予め検知された、前記第1状態と異なる第2状態である複数の第2状態波形データを取得し、
前記第1状態であることが検知された前記入力波形データである第1状態波形データと、複数の前記第2状態波形データと、を学習データとして用いて、波形データが前記第1状態および前記第2状態のいずれであるかを分類する分類モデルを学習することにより、前記第1状態波形データに含まれる複数の部分波形パターンのうち、前記第1状態波形データが前記第1状態であることを示す根拠となる1つ以上の部分波形パターンを生成し、
処理部
を備える情報処理装置。
【請求項2】
前記処理部は、前記部分波形パターンを用いて前記学習データの特徴量を算出し、算出した前記特徴量を前記分類モデルに入力したときの分類性能を示す評価指標を算出し、前記評価指標が他の前記部分波形パターンより大きい1つ以上の前記部分波形パターンを生成する、
請求項1に記載の情報処理装置。
【請求項3】
前記処理部は、
選択する前記部分波形パターンの長さ、および、前記部分波形パターンを選択する範囲のうち、少なくとも一方である選択パラメータを、前記検知モデルによる検知時に得られる選択情報に基づいて決定し、
決定された前記選択パラメータに従い前記第1状態波形データから前記部分波形パターンを選択し、選択した前記部分波形パターンを用いて前記特徴量を算出する、
請求項2に記載の情報処理装置。
【請求項4】
前記選択情報は、前記入力波形データが前記第1状態であることを検知するときに用いた波形データの長さ、および、前記入力波形データに含まれる部分波形パターンのうち前記第1状態であることが検知された部分波形パターンを含む範囲、のうち少なくとも一方である、
請求項3に記載の情報処理装置。
【請求項5】
前記評価指標は、
前記学習データを前記分類モデルで分類するときのクラス分類損失、
前記クラス分類損失と前記分類モデルの複雑さとに基づく、赤池情報量規準、ベイズ情報量規準、および、最小記述長のうちいずれか、または、
検証用データを前記分類モデルで分類するときのクラス分類損失、である、
請求項2に記載の情報処理装置。
【請求項6】
前記特徴量は、前記部分波形パターンと前記学習データとの距離、前記部分波形パターンと前記学習データとの類似度、または、前記部分波形パターンと前記学習データとの非類似度である、
請求項2に記載の情報処理装置。
【請求項7】
前記処理部は、
複数の前記入力波形データに対して、前記入力波形データが前記第1状態であるか否かを検知し、
複数の前記入力波形データに含まれる第1入力波形データについて第1部分波形パターンを生成した後、複数の前記入力波形データに含まれる第2入力波形データに対する前記部分波形パターンとして、前記第1部分波形パターンと類似せず、かつ、前記第1部分波形パターンで学習した前記分類モデルに対する前記分類性能の差異が閾値以上でない前記部分波形パターンを除外した第2部分波形パターンを生成する、
請求項2に記載の情報処理装置。
【請求項8】
前記処理部は、
前記閾値の指定を受け付け、
指定された前記閾値を用いて前記第2部分波形パターンを生成する、
請求項7に記載の情報処理装置。
【請求項9】
前記処理部は、
複数の前記第2状態波形データのうち、
前記第1状態であることが検知された前記入力波形データと類似する前記第2状態波形データ、および、
前記検知モデルによる検知で用いられる特徴量が、前記第1状態であることが検知された前記入力波形データに対する前記検知モデルによる検知で用いられる特徴量と類似する前記第2状態波形データ、のうち少なくとも一方を取得する、
請求項1に記載の情報処理装置。
【請求項10】
前記検知モデルは、複数の部分検知モデルを含み、
前記処理部は、複数の前記部分検知モデルのうち、前記第1状態であることを検知した前記部分検知モデルによる検知に用いられた前記第2状態波形データを取得する、
請求項1に記載の情報処理装置。
【請求項11】
前記処理部は、
取得する複数の前記第2状態波形データの個数の指定を受け付け、
前記個数の第2状態波形データを取得する、
請求項1に記載の情報処理装置。
【請求項12】
前記処理部は、
生成された前記部分波形パターンを出力する、
請求項1に記載の情報処理装置。
【請求項13】
前記処理部は、
前記入力波形データが前記第1状態であるか否かを検知する検知部と、
複数の前記第2状態波形データを取得する取得部と、
1つ以上の前記部分波形パターンを生成する生成部と、
を備える、
請求項1に記載の情報処理装置。
【請求項14】
情報処理装置で実行される情報処理方法であって、
検知モデルを用いて、入力波形データが第1状態であるか否かを検知する検知ステップと、
前記第1状態であることが検知されたときに、前記検知モデルを用いて予め検知された、前記第1状態と異なる第2状態である複数の第2状態波形データを取得する取得ステップと、
前記第1状態であることが検知された前記入力波形データである第1状態波形データと、複数の前記第2状態波形データと、を学習データとして用いて、波形データが前記第1状態および前記第2状態のいずれであるかを分類する分類モデルを学習することにより、前記第1状態波形データに含まれる複数の部分波形パターンのうち、前記第1状態波形データが前記第1状態であることを示す根拠となる1つ以上の部分波形パターンを生成する生成ステップと、
生成された前記部分波形パターンを出力する出力制御ステップと、
を含む情報処理方法。
【請求項15】
コンピュータに、
検知モデルを用いて、入力波形データが第1状態であるか否かを検知する検知ステップと、
前記第1状態であることが検知されたときに、前記検知モデルを用いて予め検知された、前記第1状態と異なる第2状態である複数の第2状態波形データを取得する取得ステップと、
前記第1状態であることが検知された前記入力波形データである第1状態波形データと、複数の前記第2状態波形データと、を学習データとして用いて、波形データが前記第1状態および前記第2状態のいずれであるかを分類する分類モデルを学習することにより、前記第1状態波形データに含まれる複数の部分波形パターンのうち、前記第1状態波形データが前記第1状態であることを示す根拠となる1つ以上の部分波形パターンを生成する生成ステップと、
生成された前記部分波形パターンを出力する出力制御ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【0002】
センサデータなどの時系列データ(時系列波形データ)のクラス分類技術では、分類性能に加えて分類の根拠を明確にすることが望ましい。分類の根拠を明確にする技術として、分類モデル(分類器)に加えて分類に有効な部分波形パターンであるシェイプレット(shapelet)を一緒に学習する教師有シェイプレット学習法が提案されている。
【0003】
一方、インフラ設備および製造装置などの異常検知では、学習時に異常事例(異常データ)を収集することが困難な場合がある。このため、判定根拠の提示性能および異常検知性能の向上に加えて、正常事例(正常データ)のみで学習することが求められる。この例は異常および正常の2つの状態(クラス)に分類する例であるが、複数の状態に分類するその他の例についても同様に、一部の状態の学習データのみで学習することが求められる場合がある。
【先行技術文献】
【特許文献】
【0004】
【非特許文献】
【0005】
【非特許文献1】Isak Karlsson et al.,“Generalized random shapelet forests.”, Data Mining and Knowledge Discovery 30, 5 (2016), 1053-1085
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、一部の状態の学習データのみでモデルを学習する場合であっても、当該モデルを用いた分類をより高精度に実行できる情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
情報処理装置は、処理部を備える。処理部は、検知モデルを用いて、入力波形データが第1状態であるか否かを検知する。処理部は、第1状態であることが検知されたときに、検知モデルを用いて予め検知された第2状態である複数の第2状態波形データを取得する。処理部は、第1状態であることが検知された第1状態波形データと、複数の第2状態波形データと、を学習データとして用いて、波形データが第1状態および第2状態のいずれであるかを分類する分類モデルを学習することにより、第1状態波形データが第1状態であることを示す根拠となる1つ以上の部分波形パターンを生成する。処理部は、生成された部分波形パターンを出力する。
【図面の簡単な説明】
【0008】
【
図1】第1の実施形態の情報処理装置のブロック図。
【
図2】第1の実施形態における学習処理のフローチャート。
【
図3】第1の実施形態における推定処理のフローチャート。
【
図4】第1の実施形態における根拠出力処理のフローチャート。
【
図5】第2の実施形態の情報処理装置のブロック図。
【
図6】第2の実施形態における根拠出力処理のフローチャート。
【
図7】第2の実施形態の必要性を説明するための図。
【
図8】実施形態の情報処理装置のハードウェア構成図。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、この発明にかかる情報処理装置の好適な実施形態を詳細に説明する。
【0010】
以下では、分類する複数の状態(クラス)が異常および正常である場合を主に説明するが、分類する状態はこれらに限られず、どのような状態であってもよい。また、以下では、センサデータなどの時系列波形データを入力し、入力したデータの状態を検知する例を説明するが、処理対象のデータは時系列波形データに限られない。なお、以下では、時系列波形データを単に波形データという場合がある。
【0011】
上記のように、分類モデルおよびシェイプレットを一緒に学習する教師有シェイプレット学習法が提案され、データマイニングおよび機械学習の分野で注目を集めている。このような技術は、シェイプレットを特定しユーザに提示できるため説明性があり、また、学習時に正常および異常などのクラスラベルを活用できるため判定根拠の提示性能は高い。また、現在も盛んに技術が更新され、ハイパーパラメータの調整を不要にする技術、および、高い分類性能を達成する技術が提案されている。
【0012】
なお、同じ学習データを用いても学習するたびに判定根拠とされるシェイプレットが異なる場合がある。この結果、同一の異常にも関わらず提示されるシェイプレットが毎回異なり、ユーザを混乱させるような状況が生じうる。従って、同一の状態(異常など)については可能な限り同じシェイプレットが提示されることが望ましい。
【0013】
(第1の実施形態)
第1の実施形態の情報処理装置は、以下の要件を満たすように構成される。
・異常データなし(正常データのみ)で学習する。
・判定根拠を提示する。
・ハイパーパラメータの調整が不要である。
・異常検知の性能、および、判定根拠の提示性能が高い。
【0014】
例えば実施形態の情報処理装置は、正常データのみで学習した検知モデルで判定根拠を提示する際に、教師有シェイプレット学習法を用いる。これを実現するため、情報処理装置は、運用前ではなく異常検知を行う運用時にシェイプレットを学習する。異常検知時には異常データが少なくとも1つあるため、情報処理装置は、教師有シェイプレット学習法で判定根拠を提示することができる。
【0015】
運用時とは、検知モデルを用いた推定(検知、検査、推論などともいう)を行うフェーズである。運用前とは、推定に用いるための検知モデルを準備するフェーズであり、例えば、検知モデルの学習が実行される。運用前および運用時は、それぞれ学習フェーズおよび推定(推論)フェーズなどと呼ばれる場合がある。
【0016】
図1は、第1の実施形態の情報処理装置100の構成の一例を示すブロック図である。
図1に示すように、情報処理装置100は、受付部101と、学習部110と、推定部120と、出力制御部102と、記憶部131と、表示部132と、を備えている。
【0017】
受付部101は、情報処理装置100で用いられる各種情報の入力を受け付ける。例えば受付部101は、学習部110による学習に用いられる学習データ、推定の対象となる時系列波形データ(入力波形データ)、および、学習または推定で用いられる各種パラメータの指定を受け付ける。
【0018】
パラメータは、例えば以下のような情報である。
・提示(出力)するシェイプレットの最大数および最小数
・提示するシェイプレットの生成処理の繰り返し回数の上限
・異常が検知された入力波形データ(異常波形データ、第1状態波形データの一例)と比較するために取得される正常波形データ(第2状態波形データの一例)の個数
【0019】
学習部110は、検知モデルの学習を行う。本実施形態では、学習部110は、教師有シェイプレット学習法を適用しない。すなわち学習部110は、学習時にシェイプレットを特定しない。検知モデルは、波形データの異常および正常を検知できるモデルであれば、どのような方法で学習されてもよい。
【0020】
学習部110は、例えば、事前に収集された複数の正常の時系列波形データ(正常時系列データセット)を学習データとして用いて、検知モデルを学習する。例えば、学習部110は、Minirocketを用いて教師無しの波形特徴量を生成し、生成した波形特徴量を用いて、以下のような技術で実現される検知モデルを学習する。
・DeepSVDD(Support Vector Data Discription)
・ECOD(Empirical-Cumulative-distribution-based Outlier Detection)
【0021】
MinirocketとECODとの組み合わせを用いると、検知モデルに関するハイパーパラメータの調整は不要となる。学習部110は、学習により得られた検知モデル、および、学習時に用いた特徴量を、例えば記憶部131に記憶する。記憶された検知モデルおよび特徴量は、推定部120による推定に用いられる。
【0022】
推定部120は、学習された検知モデルを用いて、推定の対象となる時系列波形データの状態を推定する。推定部120は、検知部121と、取得部122と、生成部123と、を備えている。
【0023】
検知部121は、検知モデルを用いて、入力波形データが異常(第1状態の一例)であるか否かを検知する。
【0024】
取得部122は、異常であることが検知されたときに、正常(第2状態の一例)である複数の正常波形データを取得する。正常波形データは、検知モデルを用いて、正常である波形データとして予め検知された波形データである。取得部122は、例えば、事前に収集された正常波形データセットから、複数の正常波形データを取得する。
【0025】
正常波形データセットは、例えば、検知モデルにより正常であると推定された複数の波形データを含むデータセットとして記憶部131に予め記憶される。取得部122は、記憶部131に記憶された正常波形データセットから、以下の手法(M1)~(M4)のうち少なくとも1つにより、複数の正常波形データを取得する。
【0026】
(M1)正常波形データセットの事例数(データ数)が少ない場合、取得部122は、正常波形データセットに含まれるすべての正常波形データを取得する。
【0027】
(M2)取得部122は、異常波形データと類似する正常波形データを取得する。類似するか否かは、例えば、データ間の距離が閾値(距離の閾値)以下であるか否かにより判定される。距離は、例えば、入力波形データと正常波形データとの間のユークリッド距離、および、DTW(Dynamic Time Warping)距離などである。
【0028】
(M3)異常検知の際に特徴量を生成するような検知モデルが使用される場合は、取得部122は、検知モデルによる検知で用いられる特徴量が、異常波形データの特徴量と類似する正常波形データを取得する。
【0029】
(M4)装置の状態および季節などの違いに応じた複数の部分検知モデルを含む検知モデルが使用される場合、取得部122は、複数の部分検知モデルのうち、異常であることを検知した部分検知モデルによる検知に用いられた正常波形データ(異常の検知に寄与した部分検知モデルに関連する正常波形データ)を取得する。
【0030】
上記の(M4)の例を説明する。例えば、検知モデルが、季節に応じて複数の部分検知モデルを含むとする。このような検知モデルが使用される場合、推定部120は、例えば、異常の検知を行う時点の季節に応じた部分検知モデルを用いて、入力波形データに対する推定を行う。入力波形データが正常であることが検知されると、当該入力波形データは、正常波形データとして記憶部131の正常波形データセットに追加される。このとき、正常波形データは、例えば、検知を行った時点の季節、または、検知に用いた部分検知モデルを示す情報が対応づけられて記憶される。取得部122は、この情報を参照することにより、異常の検知に用いられた部分検知モデルと同じ部分検知モデルにより正常であると検知された正常波形データを特定することができる。
【0031】
受付部101により、取得される正常波形データの個数の指定が受け付けられる場合、取得部122は、指定された個数の第2状態波形データを取得してもよい。
【0032】
生成部123は、検知部121により入力波形データの異常が検知されたときに、入力波形データと、取得部122により取得された複数の正常波形データと、を用いて、1つ以上のシェイプレットを生成する。例えば生成部123は、異常波形データ(第1状態波形データ)と、取得された複数の正常波形データと、を学習データとして用いて分類モデルを学習することにより、シェイプレットを生成する。
【0033】
分類モデルは、検知モデルとは異なるモデルであり、入力された波形データが、異常および正常のいずれであるかを分類するモデルである。生成される1つ以上のシェイプレットは、入力波形データに含まれる複数の部分波形パターンのうち、入力波形データが異常であることを示す根拠となる部分波形パターンに相当する。
【0034】
生成部123によるシェイプレットの生成処理は、従来の教師有シェイプレット学習法と同様の手順により実現できる。生成部123による処理の詳細は後述する。
【0035】
出力制御部102は、情報処理装置100で用いられる各種情報の出力を制御する。例えば出力制御部102は、生成部123により生成された1つ以上のシェイプレットを示す情報を、表示部132に出力(表示)する。
【0036】
上記各部(受付部101、学習部110、推定部120、および、出力制御部102)の少なくとも一部は、1つの処理部により実現されてもよい。上記各部は、例えば、1または複数のプロセッサにより実現される。例えば上記各部は、CPU(Central Processing Unit)およびGPU(Graphics Processing Unit)などのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上記各部は、専用のIC(Integrated Circuit)などのプロセッサ、すなわちハードウェアにより実現してもよい。上記各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち1つを実現してもよいし、各部のうち2つ以上を実現してもよい。
【0037】
記憶部131は、情報処理装置で用いられる各種情報を記憶する。例えば記憶部131は、正常波形データセット、および、学習された検知モデルを示す情報などを記憶する。
【0038】
なお、記憶部131は、フラッシュメモリ、メモリカード、RAM(Random Access Memory)、HDD(Hard Disk Drive)、および、光ディスクなどの一般的に利用されているあらゆる記憶媒体により構成することができる。
【0039】
表示部132は、情報処理装置100で用いられる各種情報を表示する装置の一例である。表示部132は、例えば液晶ディスプレイなどの表示装置により実現される。
【0040】
なお、情報処理装置100は、物理的に1つの装置によって構成されてもよいし、物理的に複数の装置によって構成されてもよい。例えば情報処理装置100は、クラウド環境上で構築されてもよい。また、情報処理装置100内の各部は、複数の装置に分散して備えられてもよい。例えば、学習に必要な機能(学習部110など)を備える装置(例えば、学習装置)と、推定に必要な機能(推定部120など)を備える装置(例えば、推定装置)と、を備えるように情報処理装置100(情報処理システム)を構成してもよい。
【0041】
次に、第1の実施形態の情報処理装置100による学習処理について説明する。学習処理は、運用前に検知モデルを学習する処理である。
図2は、第1の実施形態における学習処理の一例を示すフローチャートである。
【0042】
学習部110は、検知モデルの学習のための学習データとして事前に収集された正常波形データセットを用いて、検知モデルを学習する(ステップS101)。学習部110は、学習した検知モデルを示す情報と、正常波形データセットに対して学習時に算出された特徴量と、を記憶部131に記憶し(ステップS102)、学習処理を終了する。
【0043】
次に、第1の実施形態の情報処理装置100による推定処理について説明する。推定処理は、学習された検知モデルを用いて、推定の対象として入力される波形データ(入力波形データ)の状態を推定する処理である。
図3は、第1の実施形態における推定処理の一例を示すフローチャートである。
【0044】
検知部121は、学習された検知モデルを用いて、入力波形データの異常を検知する(ステップS201)。推定部120は、異常が検知されたか否かを判定する(ステップS202)。異常が検知されなかった場合(ステップS202:No)、推定処理は終了する。なお、出力制御部102は、異常が検知されなかったことを示す情報を出力してもよい。
【0045】
異常が検知された場合(ステップS202:Yes)、推定部120は、異常の根拠を出力するか否かを判定する(ステップS203)。例えば推定部120は、単純な判定方法として、異常が検知されるごとに根拠を出力すると判定する。別な判定方法としては、一定期間、異常波形データを蓄積し、一定期間が経過したときに、蓄積された1つ以上の入力波形データの異常の根拠を出力すると判定する方法を適用できる。これにより、例えば、短期間に連続して異常が検知されるような場合に、根拠の出力をまとめて実行可能となる。
【0046】
根拠を出力しない場合(ステップS203:No)、推定処理は終了する。根拠を出力する場合(ステップS203:Yes)、推定部120は、根拠出力処理を実行する(ステップS204)。根拠出力処理の後、推定処理は終了する。
【0047】
上記のように、根拠出力処理では、教師有シェイプレット学習法を用いて根拠となるシェイプレットが生成され、出力される。このように、従来は運用前(学習フェーズ)に教師有シェイプレット学習法が実行されるのに対し、本実施形態では、運用時(推定フェーズ)に、教師有シェイプレット学習法を用いてシェイプレットが学習され根拠として出力される。
【0048】
図4は、ステップS204の根拠出力処理の一例を示すフローチャートである。
【0049】
取得部122は、事前に収集された正常波形データセットから複数の正常波形データを取得する(ステップS301)。例えば取得部122は、正常波形データセットから、今回の異常波形データに類似する複数の正常波形データを取得する。
【0050】
生成部123は、取得された複数の正常波形データと、異常が検知された入力波形データである異常波形データと、を学習データに設定する(ステップS302)。異常が検知されるごとに根拠を出力する場合は、異常波形データの個数は1個である。一定期間ごとに異常の根拠を出力する場合は、異常波形データの個数は1個以上になりうる。ステップS303~ステップS308は繰り返し処理となる。
【0051】
生成部123は、シェイプレットの長さLを選択し、異常波形データから長さLの部分波形を選択してシェイプレットs1としてシェイプレット集合に追加する(ステップS303)。
【0052】
シェイプレット集合は、根拠として出力するシェイプレットの候補を格納するための集合である。根拠出力処理の終了時にシェイプレット集合に格納されているシェイプレットが、異常の根拠を示すシェイプレットとして出力される。
【0053】
ステップS303では、異常波形データからシェイプレットs1が選択される。これにより、異常な波形データに特有なシェイプレットを獲得できる。単純な方法としては、生成部123は、まずシェイプレットの長さLをランダムに選択し、さらに異常波形データからランダムに長さLの部分波形(セグメント)を選択してシェイプレットs1とする。
【0054】
2個以上の異常波形データが学習データに含まれる場合は、生成部123は、例えば2個以上の異常波形データからランダムに1個の異常波形データを選択し、選択した異常波形データからシェイプレットs1を選択する。
【0055】
生成部123は、シェイプレットs1を用いて分類モデルの評価指標o1を算出する(ステップS304)。例えば生成部123は、シェイプレットs1を追加したシェイプレット集合に含まれるシェイプレットそれぞれを用いて学習データの特徴量を算出し、算出した特徴量を分類モデルに入力したときの分類性能を示す評価指標o1を算出する。
【0056】
特徴量は、例えば、シェイプレットと、学習データに含まれる複数の波形データそれぞれとの距離、類似度、または、非類似度で算出することができる。距離としては、例えば、シェイプレットと波形データとが最も類似する箇所でのユークリッド距離を利用できる。
【0057】
分類モデルは、シェイプレット集合に含まれるシェイプレットそれぞれに対して算出された複数の特徴量を入力し、各波形データが異常であるか正常であるかを出力するモデルである。学習データは、異常波形データおよび正常波形データを含むため、異常であるか正常であるかの正解が得られている教師データに相当する。分類モデルは、このような教師データに対するクラス分類損失が小さくなるように学習される。クラス分類損失は、誤差関数または損失関数の値と解釈することができる。
【0058】
分類モデルとしては、例えばロジスティック回帰モデルを用いることができる。この場合、クラス分類損失としては、クロスエントロピーロスを用いることができる。
【0059】
生成部123は、評価指標o1として、以下のような指標を用いることができる。
・クラス分類損失と分類モデルの複雑さとに基づく、赤池情報量規準(AIC:Akaike information criterion)、ベイズ情報量規準(BIC:Bayesian information criterion)、および、最小記述長(MDL:Minimum Description Length)のうちいずれか。
・学習データにおけるクラス分類損失。
・検証用データにおけるクラス分類損失。検証用データは、例えば、異常波形データが複数個ある場合、ステップS302で設定した学習データの一部から選択される。残りの学習データが、ステップS303以降の学習で使用される。
【0060】
生成部123は、シェイプレットs1の選択に用いる選択パラメータを検知モデルによる検知時に得られる選択情報に基づいて決定し、決定した選択パラメータに従いシェイプレットs1を選択してもよい。
【0061】
選択パラメータは、例えば、選択するシェイプレットの長さL、および、シェイプレットを選択する範囲のうち、少なくとも一方である。選択情報は、例えば、入力波形データが異常であることを検知するときに用いた波形データ(異常検知に寄与した波形データ)の長さ、および、入力波形データに含まれる部分波形パターンのうち、異常であることが検知された部分波形パターンを含む範囲のうち、少なくとも一方である。
【0062】
このような選択情報を出力する検知モデルの例を説明する。例えば検知モデルは、異常の検知に用いる波形データの長さが相互に異なる複数の部分検知モデルを統合したアンサンブルモデルであってもよい。アンサンブルモデルは、例えば、複数の部分検知モデルそれぞれにより異常を検知し、複数の検知結果を統合して異常の有無を示す最終的な結果を出力する。このとき、アンサンブルモデルは、異常の検知に寄与した部分検知モデル、または、異常の検知に寄与した部分検知モデルが用いる波形データの長さ、を示す情報を、選択情報として出力する。
【0063】
検知モデルが、選択情報を出力するようなモデルである場合、生成部123は、検知モデルから出力される選択情報に応じて選択パラメータを選択し、シェイプレットs1の選択に用いることができる。すなわち、従来は検知モデルおよび分類モデルが独立に使用されていたが、本実施形態では、検知モデルによる出力を考慮して、分類モデルの学習方法を変更するように構成することができる。これにより、例えば、判定根拠の提示性能をより向上させることができる。
【0064】
次に、生成部123は、クラス分類に寄与しないシェイプレットs2を、現在のシェイプレット集合から除外したと仮定した場合のシェイプレット集合に含まれるシェイプレットを用いて、分類モデルの評価指標o2を算出する(ステップS305)。評価指標o2は、上記の評価指標o1と同様の手法で算出することができる。
【0065】
例えばロジスティック回帰のような線形な分類モデルを用いる場合、生成部123は、分類重みの絶対値が最小となる特徴量に対応するシェイプレットを、クラス分類に寄与しないシェイプレットs2として選択する。生成部123は、シェイプレット集合に含まれる、選択したシェイプレットs2以外のシェイプレットを用いて評価指標o2を算出する。
【0066】
生成部123は、シェイプレットs2を除外するか否かを判定する(ステップS306)。単純な方法としては、生成部123は、評価指標o1と評価指標o2とを比較し、評価指標o2(シェイプレット集合からシェイプレットs2を除外したと仮定した場合の評価指標に相当)の方がよい評価を示す値であれば、シェイプレットs2を除外すると判定する。シェイプレットの最大数がパラメータとして指定されている場合は、生成部123は、シェイプレット集合に含まれるシェイプレットの個数が最大数を超えている場合に、シェイプレットs2を除外すると判定してもよい。
【0067】
なお、繰り返し処理(ステップS303~ステップS308)の1回目では、1つのシェイプレットs1のみがシェイプレット集合に含まれる。従って、シェイプレット集合からシェイプレットs2を除外する処理はスキップされてもよい。スキップしない場合であっても、シェイプレットs1を除外したと仮定した場合には、シェイプレット集合にシェイプレットが含まれないため、評価指標o2の値は、評価指標o1よりよい評価を示す値にならず、シェイプレットは除外しないと判定される。
【0068】
シェイプレットs2を除外すると判定された場合(ステップS306:Yes)、生成部123は、シェイプレット集合からシェイプレットs2を除外する(ステップS307)。シェイプレットs2を除外した場合、生成部123は、評価指標o1の値を、評価指標o2の値に更新する。
【0069】
シェイプレットs2を除外した後、または、シェイプレットs2を除外すると判定されなかった場合(ステップS306:No)、生成部123は、シェイプレットの生成を終了するか否かを判定する(ステップS308)。例えば生成部123は、繰り返し処理(ステップS303~ステップS308)の回数が、上限に達した場合に、シェイプレットの生成を終了すると判定する。
【0070】
シェイプレットの生成を終了しないと判定された場合(ステップS308:No)、ステップS303に戻り、次のシェイプレットを追加して処理が繰り返される。
【0071】
シェイプレットの生成を終了する判定された場合(ステップS308:Yes)、出力制御部102は、シェイプレット集合に含まれるシェイプレットを、異常検知の根拠となるシェイプレットとして出力する(ステップS309)。
【0072】
このような処理により、生成部123は、選択されたシェイプレットを用いて学習データの特徴量を算出し、算出した特徴量を分類モデルに入力したときの評価指標を算出し、評価指標が他のシェイプレットより大きい1つ以上のシェイプレットを、異常検知の根拠となるシェイプレットとして生成することができる。
【0073】
以上のように、第1の実施形態の情報処理装置は、正常データのみで学習した検知モデルにより異常を検知し、異常が検知されたときに(運用時に)、異常検知の根拠となるシェイプレットを学習して出力することができる。これにより、一部の状態の学習データのみでモデルを学習する場合であっても、当該モデルを用いた分類をより高精度に実行可能となる。また、本実施形態では、ハイパーパラメータの調整が不要となるモデルを用いるように構成することができる。
【0074】
(第2の実施形態)
第2の実施形態の情報処理装置は、複数の入力波形データに対して異常検知および根拠提示を繰り返す場合に、判定性能の差が小さく、かつ、既に提示したシェイプレットに類似するシェイプレットを出力(提示)する。
【0075】
図5は、第2の実施形態の情報処理装置100-2の構成の一例を示すブロック図である。
図5に示すように、情報処理装置100-2は、受付部101と、学習部110と、推定部120-2と、出力制御部102と、記憶部131と、表示部132と、を備えている。
【0076】
第2の実施形態では、推定部120-2内の生成部123-2の機能が第1の実施形態と異なっている。その他の構成および機能は、第1の実施形態の情報処理装置100のブロック図である
図1と同様であるので、同一符号を付し、ここでの説明は省略する。
【0077】
生成部123-2は、推定の対象として入力される複数の入力波形データに対してシェイプレットを生成するときの、以下のような機能が追加される。生成部123-2は、入力波形データDA(第1入力波形データ)についてシェイプレットsA(第1部分波形パターン)を生成したとする。生成部123-2は、その後に入力された入力波形データDB(第2入力波形データ)に対するシェイプレットsB(第2部分波形パターン)として、シェイプレットsAと類似せず、かつ、シェイプレットsAで学習した分類モデルに対する分類性能(評価指標)の差異が閾値以上でないシェイプレットを除外したシェイプレットを生成する。
【0078】
なお、本実施形態では、検知部121は、複数の入力波形データそれぞれに対して、検知モデルを用いて入力波形データが異常であるか否かを検知する。また、受付部101は、生成部123-2が分類性能の差異と比較する閾値(パラメータの一例)の指定を受け付けるように構成されてもよい。
【0079】
なお本実施形態の学習処理は、第1の実施形態の
図2と同様であるため説明を省略する。また、本実施形態の推定処理の全体の流れは、第1の実施形態の推定処理を示す
図3と同様である。本実施形態では、推定処理に含まれる根拠出力処理(ステップS204)の詳細が、第1の実施形態と異なっている。
【0080】
以下、本実施形態の根拠出力処理について、
図6を用いて説明する。
図6は、第2の実施形態における根拠出力処理の一例を示すフローチャートである。なお、
図6は、1つの入力波形データが入力されるごとに実行される。
【0081】
ステップS401からステップS403までは、第1の実施形態の根拠出力処理のステップS301からステップS303までと同様の処理なので、その説明を省略する。
【0082】
本実施形態では、生成部123-2は、シェイプレットを出力済か否かを判定する(ステップS404)。例えば複数の入力波形データのうち2回目以降に入力される入力波形データに対する処理であり、かつ、当該入力波形データより前に入力された入力波形データに対してシェイプレットの出力処理(ステップS415、後述)が実行されている場合、生成部123-2は、シェイプレットを出力済であると判定する。
【0083】
シェイプレットを出力済でない場合(ステップS404:No)、第1の実施形態と同様の処理が実行される。すなわち、生成部123-2は、第1の実施形態のステップS304~ステップS309に相当するステップS410~ステップS415を実行する。ステップS410~ステップS415は、第1の実施形態のステップS304~ステップS309と同様の処理なので、その説明を省略する。
【0084】
シェイプレットを出力済の場合(ステップS404:Yes)、生成部123-2は、出力済のシェイプレット集合、および、当該シェイプレット集合について算出された評価指標o1を取得する(ステップS405)。生成部123-2は、取得したシェイプレット集合に含まれるシェイプレットと、今回選択したシェイプレットs1とが類似するか否かを判定する(ステップS406)。
【0085】
例えば、生成部123-2は、シェイプレット集合に含まれる1つ以上のシェイプレットそれぞれと、シェイプレットs1と、のユークリッド距離を算出する。生成部123-2は、算出された1つ以上のユークリッド距離の中に、閾値以下のユークリッド距離がある場合に、シェイプレット集合に含まれるシェイプレットとシェイプレットs1とが類似すると判定する。
【0086】
類似すると判定した場合(ステップS406:Yes)、生成部123-は、第1の実施形態のステップS304~ステップS309と同様の処理であるステップS410~ステップS415を実行する。
【0087】
類似しないと判定した場合(ステップS406:No)、生成部123-2は、追加したシェイプレットs1を用いて分類モデルの評価指標o2を算出する(ステップS407)。例えば生成部123は、シェイプレットs1を用いて学習データの特徴量を算出し、算出した特徴量を分類モデルに入力したときの分類性能を示す評価指標o2を算出する。
【0088】
生成部123-2は、出力済のシェイプレット集合に対して算出された評価指標o1と比較して、今回のシェイプレットs1を用いて算出された評価指標o2が改善されたか否かを判定する(ステップS408)。例えば生成部123-2は、出力済のシェイプレット集合(シェイプレットsAに相当)に対して算出された評価指標o1と、シェイプレットs1を用いて算出された評価指標o2と、の差分(差異)を算出し、差分が閾値以上の場合、評価指標o2が改善されたと判定する。
【0089】
評価指標o2が改善された場合(ステップS408:Yes)、生成部123-2は、第1の実施形態のステップS304~ステップS309と同様の処理であるステップS410~ステップS415を実行する。
【0090】
評価指標o2が改善されない場合(ステップS408:No)、生成部123-2は、シェイプレットs1をシェイプレット集合から削除し(ステップS409)、シェイプレットの生成を終了するか否かを判定する(ステップS414)。
【0091】
図7は、本実施形態の必要性を説明するための図である。
図7の左側の2つのグラフに示す波形データは、正常波形データの例である。
図7の右側の2つのグラフに示す波形データは、異常波形データの例である。
図7に示す例は、正常波形データと異常波形データとが、2つのシェイプレット701(上に尖ったシェイプレット)、シェイプレット702(下に尖ったシェイプレット)により、異常であるか否かを判定可能である例である。すなわち、シェイプレット701および702のいずれを用いたとしても、正常と異常とが正しく分類される。
【0092】
本実施形態のような処理を行わない場合、同様の形状の入力波形データが入力されているにも関わらず、判定するごとに、異なるシェイプレットが異常検知の根拠として出力される可能性がある。
【0093】
本実施形態では、このような状況の発生を回避するために、過去に判定根拠として提示したシェイプレットと類似したシェイプレットによって今回の異常も検知できるのであれば、過去に提示したシェイプレットと類似した形状を持つシェイプレットを今回の判定根拠として提示する。
図7の例では、例えば過去にシェイプレット701を出力した場合は、今回の入力波形データに対してもシェイプレット701を判定根拠として出力する。
【0094】
このように、第2の実施形態では、判定性能の差が小さく、かつ、既に提示したシェイプレットに類似するシェイプレットを出力することができる。これにより、例えば、同一の異常にも関わらず提示されるシェイプレットが毎回異なるような状況の発生を回避し、同一の異常については可能な限り同じシェイプレットを出力することができる。
【0095】
以上説明したとおり、第1から第2の実施形態によれば、一部の状態の学習データのみでモデルを学習する場合であっても、当該モデルを用いた分類をより高精度に実行できる。
【0096】
次に、第1または第2の実施形態の情報処理装置のハードウェア構成について
図8を用いて説明する。
図8は、第1または第2の実施形態の情報処理装置のハードウェア構成例を示す説明図である。
【0097】
第1または第2の実施形態の情報処理装置は、CPU51などの制御装置と、ROM(Read Only Memory)52やRAM53などの記憶装置と、ネットワークに接続して通信を行う通信I/F54と、各部を接続するバス61を備えている。
【0098】
第1または第2の実施形態の情報処理装置で実行されるプログラムは、ROM52等に予め組み込まれて提供される。
【0099】
第1または第2の実施形態の情報処理装置で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD-R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【0100】
さらに、第1または第2の実施形態の情報処理装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第1または第2の実施形態の情報処理装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【0101】
第1または第2の実施形態の情報処理装置で実行されるプログラムは、コンピュータを上述した情報処理装置の各部として機能させうる。このコンピュータは、CPU51がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
【0102】
実施形態の構成例について以下に記載する。
(構成例1)
検知モデルを用いて、入力波形データが第1状態であるか否かを検知し、
前記第1状態であることが検知されたときに、前記検知モデルを用いて予め検知された、前記第1状態と異なる第2状態である複数の第2状態波形データを取得し、
前記第1状態であることが検知された前記入力波形データである第1状態波形データと、複数の前記第2状態波形データと、を学習データとして用いて、波形データが前記第1状態および前記第2状態のいずれであるかを分類する分類モデルを学習することにより、前記第1状態波形データに含まれる複数の部分波形パターンのうち、前記第1状態波形データが前記第1状態であることを示す根拠となる1つ以上の部分波形パターンを生成し、
生成された前記部分波形パターンを出力する、
処理部
を備える情報処理装置。
(構成例2)
前記処理部は、前記部分波形パターンを用いて前記学習データの特徴量を算出し、算出した前記特徴量を前記分類モデルに入力したときの分類性能を示す評価指標を算出し、前記評価指標が他の前記部分波形パターンより大きい1つ以上の前記部分波形パターンを生成する、
構成例1に記載の情報処理装置。
(構成例3)
前記処理部は、
選択する前記部分波形パターンの長さ、および、前記部分波形パターンを選択する範囲のうち、少なくとも一方である選択パラメータを、前記検知モデルによる検知時に得られる選択情報に基づいて決定し、
決定された前記選択パラメータに従い前記第1状態波形データから前記部分波形パターンを選択し、選択した前記部分波形パターンを用いて前記特徴量を算出する、
構成例2に記載の情報処理装置。
(構成例4)
前記選択情報は、前記入力波形データが前記第1状態であることを検知するときに用いた波形データの長さ、および、前記入力波形データに含まれる部分波形パターンのうち前記第1状態であることが検知された部分波形パターンを含む範囲、のうち少なくとも一方である、
構成例3に記載の情報処理装置。
(構成例5)
前記評価指標は、
前記学習データを前記分類モデルで分類するときのクラス分類損失、
前記クラス分類損失と前記分類モデルの複雑さとに基づく、赤池情報量規準、ベイズ情報量規準、および、最小記述長のうちいずれか、または、
検証用データを前記分類モデルで分類するときのクラス分類損失、である、
構成例2から4のいずれか1つに記載の情報処理装置。
(構成例6)
前記特徴量は、前記部分波形パターンと前記学習データとの距離、前記部分波形パターンと前記学習データとの類似度、または、前記部分波形パターンと前記学習データとの非類似度である、
構成例2から5のいずれか1つに記載の情報処理装置。
(構成例7)
前記処理部は、
複数の前記入力波形データに対して、前記入力波形データが前記第1状態であるか否かを検知し、
複数の前記入力波形データに含まれる第1入力波形データについて第1部分波形パターンを生成した後、複数の前記入力波形データに含まれる第2入力波形データに対する前記部分波形パターンとして、前記第1部分波形パターンと類似せず、かつ、前記第1部分波形パターンで学習した前記分類モデルに対する前記分類性能の差異が閾値以上でない前記部分波形パターンを除外した第2部分波形パターンを生成する、
構成例2から6のいずれか1つに記載の情報処理装置。
(構成例8)
前記処理部は、
前記閾値の指定を受け付け、
指定された前記閾値を用いて前記第2部分波形パターンを生成する、
構成例7に記載の情報処理装置。
(構成例9)
前記処理部は、
複数の前記第2状態波形データのうち、
前記第1状態であることが検知された前記入力波形データと類似する前記第2状態波形データ、および、
前記検知モデルによる検知で用いられる特徴量が、前記第1状態であることが検知された前記入力波形データに対する前記検知モデルによる検知で用いられる特徴量と類似する前記第2状態波形データ、のうち少なくとも一方を取得する、
構成例1から8のいずれか1つに記載の情報処理装置。
(構成例10)
前記検知モデルは、複数の部分検知モデルを含み、
前記処理部は、複数の前記部分検知モデルのうち、前記第1状態であることを検知した前記部分検知モデルによる検知に用いられた前記第2状態波形データを取得する、
構成例1から9のいずれか1つに記載の情報処理装置。
(構成例11)
前記処理部は、
取得する複数の前記第2状態波形データの個数の指定を受け付け、
前記個数の第2状態波形データを取得する、
構成例1から10のいずれか1つに記載の情報処理装置。
(構成例12)
前記処理部は、
生成された前記部分波形パターンを出力する、
構成例1から11のいずれか1つに記載の情報処理装置。
(構成例13)
前記処理部は、
前記入力波形データが前記第1状態であるか否かを検知する検知部と、
複数の前記第2状態波形データを取得する取得部と、
1つ以上の前記部分波形パターンを生成する生成部と、
を備える、
構成例1から12のいずれか1つに記載の情報処理装置。
(構成例14)
情報処理装置で実行される情報処理方法であって、
検知モデルを用いて、入力波形データが第1状態であるか否かを検知する検知ステップと、
前記第1状態であることが検知されたときに、前記検知モデルを用いて予め検知された、前記第1状態と異なる第2状態である複数の第2状態波形データを取得する取得ステップと、
前記第1状態であることが検知された前記入力波形データである第1状態波形データと、複数の前記第2状態波形データと、を学習データとして用いて、波形データが前記第1状態および前記第2状態のいずれであるかを分類する分類モデルを学習することにより、前記第1状態波形データに含まれる複数の部分波形パターンのうち、前記第1状態波形データが前記第1状態であることを示す根拠となる1つ以上の部分波形パターンを生成する生成ステップと、
生成された前記部分波形パターンを出力する出力制御ステップと、
を含む情報処理方法。
(構成例15)
コンピュータに、
検知モデルを用いて、入力波形データが第1状態であるか否かを検知する検知ステップと、
前記第1状態であることが検知されたときに、前記検知モデルを用いて予め検知された、前記第1状態と異なる第2状態である複数の第2状態波形データを取得する取得ステップと、
前記第1状態であることが検知された前記入力波形データである第1状態波形データと、複数の前記第2状態波形データと、を学習データとして用いて、波形データが前記第1状態および前記第2状態のいずれであるかを分類する分類モデルを学習することにより、前記第1状態波形データに含まれる複数の部分波形パターンのうち、前記第1状態波形データが前記第1状態であることを示す根拠となる1つ以上の部分波形パターンを生成する生成ステップと、
生成された前記部分波形パターンを出力する出力制御ステップと、
を実行させるためのプログラム。
【0103】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0104】
100、100-2 情報処理装置
101 受付部
102 出力制御部
110 学習部
120、120-2 推定部
121 検知部
122 取得部
123、123-2 生成部
131 記憶部
132 表示部