JP2021193503A - 分割プログラム、分割方法および情報処理装置 - Google Patents

分割プログラム、分割方法および情報処理装置 Download PDF

Info

Publication number
JP2021193503A
JP2021193503A JP2020099477A JP2020099477A JP2021193503A JP 2021193503 A JP2021193503 A JP 2021193503A JP 2020099477 A JP2020099477 A JP 2020099477A JP 2020099477 A JP2020099477 A JP 2020099477A JP 2021193503 A JP2021193503 A JP 2021193503A
Authority
JP
Japan
Prior art keywords
data
evaluation
model
divided
divided data
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.)
Withdrawn
Application number
JP2020099477A
Other languages
English (en)
Inventor
学 中尾
Manabu Nakao
英司 長谷川
Eiji Hasegawa
尚美 岩山
Naomi Iwayama
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020099477A priority Critical patent/JP2021193503A/ja
Publication of JP2021193503A publication Critical patent/JP2021193503A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Testing And Monitoring For Control Systems (AREA)

Abstract

【課題】学習モデルの検出精度が向上するように、学習で用いるデータを適切な粒度で分割すること。【解決手段】情報処理装置100は、データを基にして学習した第1学習モデルに、データおよび複数の分割データを入力した場合のそれぞれのスコアと、異常判定閾値とを基にして、データおよび複数の分割データについて、異常判定閾値と評価指数との関係を示す関数をそれぞれ生成する。情報処理装置100は、データの関数と、複数の分割データの各関数との差を基にして、複数の分割データを、複数のグループに分類する。情報処理装置100は、同一のグループに属する分割データを基にして学習した第2学習モデルに、同一のグループに属する分割データを入力した場合のスコアと、異常判定閾値とを基にして、同一のグループに属する分割データの評価指数を算出することで、精度評価を行う。情報処理装置100は、精度評価の結果を基にして、データをグループ毎に分割するか否かを特定する。【選択図】図2

Description

本発明は、分割プログラム等に関する。
機械や設備にセンサを取り付け、AI(Artificial Intelligence)でセンサデータを分析することで、異常検知を行っている。たとえば、異常または正常状態のセンサデータから診断予測のための学習モデルを構築し、学習モデルに対して未知のセンサデータを入力して異常か正常かの判定を行う。これによって、生産設備、機械、インフラの故障や不具合を事前に察知し、先回りして計画的に対処して、想定外の停止を防ぐことができる。
ここで、異常や故障の予兆となる現象は、対象の機種、世代、稼働時期等の条件により異なる場合があり、条件の異なるデータを混ぜて一つの学習モデルを構築すると、精度の高い結果を得られないことが多い。
そこで、異なる条件がある場合は条件によりデータを分割し、分割したデータごとに故障を検出する学習モデルを作成して精度を高めることが考えられる。
データを分割して学習モデルを作成する従来技術の一例について説明する。ここでは、従来技術1、2、3について説明する。
従来技術1は、製造設備などの機器のセンサデータから、「機器の動作の移り変わり」を表す状態遷移モデルを自動生成し、動作ごとに適切な異常検知条件を自動設定することで、異常を検知する精度を高めるものである。この従来技術1は、動作の移り変わりといった時系列の状態変化を捉えるものである。
従来技術1,2は、時系列の状態変化に限られず、機種名等のカテゴリ項目のカテゴリ値から分割の仕方を試行錯誤し、それぞれに対して学習してから、性能のよい学習モデルを探すものである。
図27は、従来技術2の分割方法を説明するための図である。従来技術2では、単純にあるカテゴリ項目(たとえば機種名)を対象に、その項目にデータを分割するものである。図27に示す例では、データ10には、機種名の項目として、A、B、C、Dの4つのカテゴリ値があるものとする。
カテゴリ値に基づいてデータ10を分割すると、データ10a,10b,10c,10dに分割される。データ10aは、カテゴリ値「A」のデータである。データ10bは、カテゴリ値「B」のデータである。データ10cは、カテゴリ値「C」のデータである。データ10dは、カテゴリ値「D」のデータである。
データ10aは、Aの学習モデル11aを作成する場合に用いられる。データ10bは、Bの学習モデル11bを作成する場合に用いられる。データ10cは、Cの学習モデル11cを作成する場合に用いられる。データ10dは、Dの学習モデル11dを作成する場合に用いられる。
図28は、従来技術3の分割方法を説明するための図である。従来技術3では、複数のカテゴリ値をまとめて一つのグループに分割するものである。図28に示すように、たとえば、「1対3の分け方」、「2対2の分け方」、「1対1対2の分け方」がある。
「1対3の分け方」には、パターンp1〜p4がある。パターンp1では、データ10を、データ10aと、データ10−1とに分ける。データ10aは、カテゴリ値「A」のデータである。データ10−1は、カテゴリ値「B」、「C」、「D」のデータである。パターンp2では、データ10を、データ10bと、データ10−2とに分ける。データ10bは、カテゴリ値「B」のデータである。データ10−2は、カテゴリ値「A」、「C」、「D」のデータである。
パターンp3では、データ10を、データ10cと、データ10−3とに分ける。データ10cは、カテゴリ値「C」のデータである。データ10−3は、カテゴリ値「A」、「B」、「D」のデータである。パターンp4では、データ10を、データ10dと、データ10−4とに分ける。データ10dは、カテゴリ値「D」のデータである。データ10−4は、カテゴリ値「A」、「B」、「C」のデータである。
「2対2の分け方」には、パターンp5〜p7がある。パターンp5では、データ10を、データ10−5と、データ10−6とに分ける。データ10−5は、カテゴリ値「A」、「B」のデータである。データ10−6は、カテゴリ値「C」、「D」のデータである。
パターンp6では、データ10を、データ10−7と、データ10−8とに分ける。データ10−7は、カテゴリ値「A」、「C」のデータである。データ10−8は、カテゴリ値「B」、「D」のデータである。
パターンp7では、データ10を、データ10−9と、データ10−10とに分ける。データ10−9は、カテゴリ値「A」、「D」のデータである。データ10−10は、カテゴリ値「B」、「C」のデータである。
「1対1対2の分け方」には様々なパターンが存在するが、ここでは、パターンp8について説明する。パターンp8では、データ10を、データ10−5と、データ10cと、データ10dとに分ける。
たとえば、パターンp1〜p8を用いて、各パターンに対応する学習モデルを作成する。図示を省略するが、従来技術3では、他のパターンに対応する学習モデルも作成する。
国際公開第2019/163141号
上述した従来技術では、学習モデルの検出精度が向上するように、学習で用いるデータを適切な粒度で分割することができないという問題がある。
従来技術1では、動作の切り替わりといった時系列の状態変化を捉える手法であり、時系列の状態変化以外の条件(たとえば、機種名の違い等)を扱うことができない。また、従来技術1では、分割により精度が向上したのかを確認して分割を評価するものではないため、適切な粒度でデータを分割しているとは限らず、不必要な分割を行う場合もあり得た。
従来技術2では、データのカテゴリ値が細かく細分化されると、分割数が大きくなる。分割数が大きくなると、データが細かく分割され、各学習モデルを作成する場合に利用可能な、十分なデータ数を確保できなくなり、学習モデルの検出精度が低下する。
従来技術3では、まとめて分割する仕方に関して、総当り的に組み合わせを求めると、組み合わせ量が膨大になり、処理時間が膨大なものとなる。
1つの側面では、本発明は、学習モデルの検出精度が向上するように、学習で用いるデータを適切な粒度で分割することができる分割プログラム、分割方法および情報処理装置を提供することを目的とする。
第1の案では、コンピュータに次の処理を実行させる。コンピュータは、複数のカテゴリ情報に対応付けられたデータを、カテゴリ値毎の複数の分割データに分割する。コンピュータは、データを基にして学習した第1学習モデルに、データおよび複数の分割データを入力した場合のそれぞれのスコアと、異常判定閾値とを基にして、データおよび複数の分割データについて、異常判定閾値と評価指数との関係を示す関数をそれぞれ生成する。コンピュータは、データの関数と、複数の分割データの各関数との差を基にして、複数の分割データを、複数のグループに分類する。コンピュータは、同一のグループに属する分割データを基にして学習した第2学習モデルに、同一のグループに属する分割データを入力した場合のスコアと、異常判定閾値とを基にして、同一のグループに属する分割データの評価指数を算出することで、精度評価を行う。コンピュータは、精度評価の結果を基にして、データをグループ毎に分割するか否かを特定する。
学習モデルの検出精度が向上するように、学習で用いるデータを適切な粒度で分割することができる。
図1は、評価指数関数の一例を示す図(1)である。 図2は、本実施例に係る情報処理装置の構成を示す機能ブロック図である。 図3は、全体データのデータ構造の一例を示す図である。 図4は、分割データテーブルのデータ構造の一例を示す図である。 図5は、学習モデルテーブルのデータ構造の一例を示す図である。 図6は、評価指数関数テーブルのデータ構造の一例を示す図である。 図7は、評価指数関数のデータ構造の一例を示す図(1)である。 図8は、評価指数関数のデータ構造の一例を示す図(2)である。 図9は、評価指数関数のデータ構造の一例を示す図(3)である。 図10は、分割部の処理を説明するための図である。 図11は、異常スコア計算処理を説明するための図である。 図12は、異常判定処理を説明するための図である。 図13は、評価指数関数生成処理を説明するための図である。 図14は、生成部による各異常判定閾値の評価指数の計算結果を示す図である。 図15は、図14の計算結果に基づく評価指数関数の一例を示す図である。 図16は、生成部の処理を説明するための図である。 図17は、評価指数関数の一例を示す図(2)である。 図18は、第1の選択処理を説明するための図である。 図19は、第2の選択処理を説明するための図である。 図20は、評価部の処理を説明するための図(1)である。 図21は、評価部の処理を説明するための図(2)である。 図22は、評価部の処理を説明するための図(3)である。 図23は、評価部によって特定される機種と学習モデルとの関係の一例を示す図である。 図24は、本実施例に係る情報処理装置の処理手順を示すフローチャートである。 図25は、評価指数関数生成処理の処理手順を示すフローチャートである。 図26は、実施例の情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。 図27は、従来技術2の分割方法を説明するための図である。 図28は、従来技術3の分割方法を説明するための図である。
以下に、本願の開示する分割プログラム、分割方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
本実施例に係る情報処理装置の処理の一例について説明する。情報処理装置は、複数のカテゴリ情報に対応付けられた全体データを、カテゴリ値毎の複数の分割データに分割する。たとえば、全体データは、カテゴリ値「機種A」、「機種B」、「機種C」、「機種D」を含むものとする。情報処理装置は、全体データを、機種Aの分割データと、機種Bの分割データと、機種Cの分割データと、機種Dの分割データとに分割する。
以下の説明では、機種Aの分割データを、「分割データ20A」と表記する。機種Bの分割データを、「分割データ20B」と表記する。機種Cの分割データを、「分割データ20C」と表記する。機種Dの分割データを、「分割データ20D」と表記する。
情報処理装置は、全体データを基にして学習した学習モデルに、全体データおよび複数の分割データを入力した場合のそれぞれの異常スコアと、異常判定閾値とを基にして、全体データおよび複数の分割データ20A〜20Dについて、評価指数関数を生成する。異常スコアは「スコア」の一例である。評価指数関数は「関数」の一例である。
図1は、評価指数関数の一例を示す図である。図1に示すグラフG1の縦軸は評価指数に対応する軸であり、横軸は異常判定閾値に対応する軸である。評価指数は、異常スコアおよび異常判定閾値を基にして得られる異常判定結果と、正解ラベルとを基にして算出される指数であり、誤検出率、検出率、正解率、F値等に対応する。たとえば、図1に示す縦軸の評価指数を誤検出率とする。
図1において、線分21は、全体データの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。線分21Aは、分割データ20Aの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。線分21Bは、分割データ20Bの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。線分21Cは、分割データ20Cの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。線分21Dは、分割データ20Dの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。
情報処理装置は、線分21と、線分21A〜21Dとを比較して、全体データの評価指数関数との差が最大となる他の評価指数関数のカテゴリ値を選択する。情報処理装置は、評価指数関数の差を、各異常判定閾値に対する評価指標値の総和で求める。図1に示す例では、線分21との差が最大となる線分が線分21Aとなるため、情報処理装置は、カテゴリ値「機種A」を選択する。
また、情報処理装置は、上記処理で選択したカテゴリ値(たとえば、機種A)に対する分割データの評価指数関数に近い、他の評価指数関数のカテゴリ値を選択する。たとえば、情報処理装置は、評価指数関数との差が一定値以内となる、他の評価指数関数に対応するカテゴリ値を選択する。図1に示す例では、線分21Aとの差が一定以内となる線分が、線分21Bとなるため、情報処理装置は、線分21Bの評価指数関数のカテゴリ値「機種B」を選択する。
情報処理装置は、全体データのうち、上記処理で選択したカテゴリ値を持つデータを、グループ化して分割する。たとえば、情報処理装置が上記の処理により、カテゴリ値「機種A」と、「機種B」とを選択している場合には、カテゴリ値「機種A」または「機種B」を持つデータをグループ化して分割する。情報処理装置は、同一のグループに属する分割データを基にして学習した学習モデルに、同一のグループに属する分割データをそれぞれ入力して、精度評価を行い、精度が向上した場合に、グループ化して分割する分割の仕方を採用する。
たとえば、情報処理装置は、「機種A」または「機種B」を持つデータを用いた学習モデルによる精度評価の結果が、全体データを用いた学習モデルの精度評価の結果よりも精度が向上している場合に、全体データを、カテゴリ値「機種A」または「機種B」を持つデータのグループと、カテゴリ値「機種C」または「機種D」を持つデータのグループとに分割する方法を採用する。
上記のように、本実施例に係る情報処理装置によれば、複数のカテゴリ情報に対応付けられた全体データを、カテゴリ値毎に、複数の分割データに分割し、全体データおよび各分割データに関する評価指数関数をそれぞれ生成する。情報処理装置は、全体データの評価指数関数と、分割データの評価指数関数との差を基にして、各分割データを複数のグループに分類し、同一のグループに属する分割データの精度評価を行うことで、グループ化して分割する分割の仕方を採用するか否かを特定する。これによって、学習モデルの検出精度が向上するように、学習で用いるデータを適切な粒度で分割することができる。
次に、本実施例に係る情報処理装置の構成について説明する。図2は、本実施例に係る情報処理装置の構成を示す機能ブロック図である。図2に示すように、この情報処理装置100は、通信部110と、入力部120と、表示部130と、記憶部140と、制御部150とを有する。
通信部110は、有線又は無線で外部装置等に接続され、外部装置等との間で情報の送受信を行う。たとえば、通信部110は、NIC(Network Interface Card)等によって実現される。通信部110は、図示しないネットワークに接続されていてもよい。たとえば、通信部110は、外部装置から、後述する全体データ141を受信してもよい。
入力部120は、各種の情報を、情報処理装置100に入力する入力装置である。入力部120は、キーボードやマウス、タッチパネル等に対応する。
表示部130は、制御部150から出力される情報を表示する表示装置である。表示部130は、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ、タッチパネル等に対応する。
記憶部140は、全体データ141と、分割データテーブル142と、学習モデルテーブル143と、評価指数関数テーブル144とを有する。記憶部140は、たとえば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
全体データ141は、学習データと、テストデータとの2つで構成される。図3は、全体データのデータ構造の一例を示す図である。図3に示すように、この全体データ141は、学習データ141−1と、テストデータ141−2とを有する。
学習データ141−1の項目には、装置名と、機種名と、電圧センサX電圧値[V]と、電圧センサY電圧値[V]と、ラベルとが含まれる。装置名は、装置の名前である。機種名は、装置の機種名である。電圧センサX電圧値[V]は、装置に搭載された電圧センサXの計測値である。電圧センサY電圧値[V]は、装置に搭載された電圧センサYの計測値である。ラベルは、異常か正常かを示す値である。ラベルの値が「1」の場合には、異常であり、ラベルの値が「0」の場合には、正常であることを示す。
テストデータ141−2の項目には、装置名と、機種名と、電圧センサX電圧値[V]と、電圧センサY電圧値[V]と、ラベルとが含まれる。装置名、機種名、電圧センサX電圧値[V]、電圧センサY電圧値[V]、ラベルに関する説明は、学習データ141−1で説明したものと同様である。学習データ141−1と、テストデータ141−2との形式は同じである。
分割データテーブル142は、全体データ141に含まれるテストデータをカテゴリ値毎に分割した分割データを保持するテーブルである。図4は、分割データテーブルのデータ構造の一例を示す図である。図4に示すように、この分割データテーブル142は、分割データ20A,20B,20C,20Dを有する。
分割データ20Aは、テストデータ141−2から、機種名「機種A」のサンプルを抽出したデータである。分割データ20Bは、テストデータ141−2から、機種名「機種B」のサンプルを抽出したデータである。分割データ20Cは、テストデータ141−2から、機種名「機種C」のサンプルを抽出したデータである。分割データ20Dは、テストデータ141−2から、機種名「機種D」のサンプルを抽出したデータである。
学習モデルテーブル143は、複数の学習モデルを保持するテーブルである。図5は、学習モデルテーブルのデータ構造の一例を示す図である。図5に示すように、この学習モデルテーブルは、モデル識別情報と、学習モデルとを対応付ける。モデル識別情報は、学習モデルを一意に識別する情報である。学習モデルは、学習モデルのデータであり、学習モデルに設定されるパラメータ等に対応する。
本実施例では一例として、学習モデル、異常スコアを出力する学習モデルとする。異常スコアは、電圧センサX電圧値と、電圧センサY電圧値との差の絶対値を示す。学習モデルは、NN(Neural Network)等によって、実現してもよい。
評価指数関数テーブル144は、全体データの評価指数関数、各分割ブロックの評価指数関数のデータを保持するテーブルである。図6は、評価指数関数テーブルのデータ構造の一例を示す図である。図6に示すように、この評価指数関数テーブル144は、項番と、評価指数関数とを有する。項番は、異なる段階で生成される各評価指数関数を区別する番号である。評価指数関数は、ある段階で生成される各評価指数関数のデータを示す。
図7は、評価指数関数のデータ構造の一例を示す図(1)である。評価指数関数は、異常判定閾値と、各データの評価指数との関係を示すものである。図7に示す例では、各データの評価指数には、全体の評価指数、機種Aの評価指数、機種Bの評価指数、機種Cの評価指数、機種Dの評価指数が含まれる。総和には、同一の列の評価指数を合計した値が設定される。図7に示す評価指数関数をまとめて、適宜、評価指数関数30と表記する。
全体の評価指数は、全体データ141のテストデータ141−2を学習モデル(モデル識別情報Mの学習モデル)に入力した際の異常スコアと、異常判定閾値とを基に算出される指数である。モデル識別情報Mの学習モデルは、全体データの学習データ141−1を基に生成した学習モデルである。以下の説明では、モデル識別情報Mの学習モデルを「学習モデルM」と表記する。
機種Aの評価指数は、全体データ141のうち、カテゴリ値「機種A」のテストデータを、学習モデルMに入力した際の異常スコアと、異常判定閾値とを基に算出される指数である。機種Bの評価指数は、全体データ141のうち、カテゴリ値「機種B」のテストデータを、学習モデルMに入力した際の異常スコアと、異常判定閾値とを基に算出される指数である。
機種Cの評価指数は、全体データ141のうち、カテゴリ値「機種C」のテストデータを、学習モデルMに入力した際の異常スコアと、異常判定閾値とを基に算出される指数である。機種Dの評価指数は、全体データ141のうち、カテゴリ値「機種D」のテストデータを、学習モデルMに入力した際の異常スコアと、異常判定閾値とを基に算出される指数である。
図8は、評価指数関数のデータ構造の一例を示す図(2)である。図8に示す例では、各データの評価指数には、機種A+Bの評価指数、機種Aの評価指数、機種Bの評価指数が含まれる。図8に示す評価指数関数をまとめて、適宜、評価指数関数30ABと表記する。
機種A+Bの評価指数は、全体データのうち、カテゴリ値「機種A」または「機種B」のテストデータを、モデル識別情報MABの学習モデルに入力した際の異常スコアと、異常判定閾値とを基に算出される指数である。モデル識別情報MABの学習モデルは、カテゴリ値「機種A」または「機種B」の学習データを基に生成した学習モデルである。以下の説明では、モデル識別情報MABの学習モデルを「学習モデルMAB」と表記する。
機種Aの評価指数は、全体データのうち、カテゴリ値「機種A」のテストデータを、学習モデルMABに入力した際の異常スコアと、異常判定閾値とを基に算出される指数である。機種Bの評価指数は、全体データのうち、カテゴリ値「機種B」のテストデータを、学習モデルMABに入力した際の異常スコアと、異常判定閾値とを基に算出される指数である。
図9は、評価指数関数のデータ構造の一例を示す図(3)である。図9に示す例では、各データの評価指数には、機種C+Dの評価指数、機種Cの評価指数、機種Dの評価指数が含まれる。図7に示す評価指数関数をまとめて、適宜、評価指数関数30CDと表記する。
機種C+Dの評価指数は、全体データのうち、カテゴリ値「機種C」または「機種D」のテストデータを、モデル識別情報MCDの学習モデルに入力した際の異常スコアと、異常判定閾値とを基に算出される指数である。モデル識別情報MCDの学習モデルは、カテゴリ値「機種C」または「機種D」の学習データを基に生成した学習モデルである。以下の説明では、モデル識別情報MCDの学習モデルを「学習モデルMCD」と表記する。
図2の説明に戻る。制御部150は、取得部151、分割部152、学習モデル生成部153、生成部154、評価部155を有する。制御部150は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)により実現される。また、制御部150は、例えばASIC(Application specific Integrated Circuit)やFPGA(Field Programmable gate Array)等の集積回路により実行されてもよい。
取得部151は、外部装置等から、全体データ141を取得する処理部である。取得部151は、取得した全体データ141を、記憶部140に格納する。
分割部152は、全体データ141のテストデータ141−2をカテゴリ値毎の複数の分割データに分割する処理部である。分割部152は、分割した複数の分割データを、分割データテーブル142に登録する。
図10は、分割部の処理を説明するための図である。図10に示すように、分割部152は、テストデータ141−2を、分割データ20A,20B,20C,20Dに分割する。分割データ20A〜20Dに関する説明は、図4で説明した、分割データ20A〜20Dに関する説明と同様である。
学習モデル生成部153は、全体データ141の学習データ141−1を基にして、学習モデルMを生成する。たとえば、学習モデルをNNとする。学習モデル生成部153は、学習データ141−1の装置名、機器名、電圧センサX電圧値[V]、電圧センサY電圧値[V]を学習モデルに入力した際の異常スコアが、該当ラベルに近づくように、学習モデルMのパラメータを調整する学習を実行する。学習モデル生成部153は、誤差逆伝播法等によって、学習モデルMを学習してもよい。学習モデル生成部153は、学習モデルMを、学習モデルテーブル143に登録する。
ところで、学習モデル生成部153は、後述する評価部155から、学習データ141−1から抽出された一部のカテゴリ値を有する分割データを受け付けた場合には、受け付けた学習データを用いて、学習モデルを生成し、学習モデルテーブル143に登録する。たとえば、学習モデル生成部153が、カテゴリ値「機種A」または「機種B」を有する分割データ20AB−1を受け付けた場合の処理について説明する。
学習モデル生成部153は、分割データ20AB−1の装置名、機器名、電圧センサX電圧値[V]、電圧センサY電圧値[V]を学習モデルに入力した際の異常スコアが、該当ラベルに近づくように、学習モデルMABのパラメータを調整する学習を実行する。学習モデル生成部153は、学習モデルMABを、学習モデルテーブル143に登録する。
学習モデル生成部153は、評価部155から、他の分割データを受け付けた場合にも、上記処理と同様にして、学習モデルを生成し、学習モデルテーブル143に登録する。
生成部154は、テストデータ141−2、分割データ20A〜20D、学習モデルを基にして、評価指数関数のデータを生成する処理部である。生成部154は、「異常スコア計算処理」、「異常判定処理」、「評価指数関数生成処理」を実行する。
生成部154が実行する異常スコア計算処理について説明する。図11は、異常スコア計算処理を説明するための図である。ここでは、学習モデルMと、全体データ141のテストデータ141−2とを基にして、異常スコアを計算する場合について説明する。生成部154は、テストデータ141−2の1つのサンプルを選択し、選択したサンプルを学習モデルMに入力し、学習モデルMから出力される異常スコアを取得する。選択されるサンプルには、装置名の値、機種名の値、電圧センサX電圧値[V]の値、電圧センサX電圧値[V]の値が含まれる。
図11に示す例では、サンプルとして「装置0011、機種A、0.9、1.0」を学習データMに入力することで、異常スコア「0.1」が出力されることが示される。生成部154は、テストデータ141−2の他のサンプルについても、上記処理を繰り返し実行することで、各サンプルに対応する異常スコアを算出する。
生成部154は、分割データテーブル142に格納された分割データ20A〜20Dについても、上記処理と同様にして、各サンプルを学習データMに入力し、異常スコアを計算する。
続いて、生成部154が実行する異常判定処理について説明する。図12は、異常判定処理を説明するための図である。ここでは、テストデータ141−2の各サンプルを学習モデルMに入力した結果得られる異常スコアを用いて説明を行う。生成部154は、異常判定閾値tの値を変えて、テストデータの各サンプルが異常、正常のどちらであるのかを推定する。たとえば、生成部154は、異常スコアが異常判定閾値t以上となる場合に、異常と判定し、「1」を設定する。一方、生成部154は、異常スコアが異常判定閾値t未満となる場合に、異常と判定し、「0」を設定する。生成部154は、異常判定閾値tを、t=0.1、0.2、0.3と変化させて上記処理を実行する。
図12の1行目のレコードを例にして、生成部154の異常判定処理を説明する。生成部154は、異常スコア「0.1」が、異常判定閾値t=0.1以上となるため、異常と判定し、異常判定閾値t=0.1の異常判定結果に「1」を設定する。生成部154は、異常スコア「0.1」が、異常判定閾値t=0.2未満となるため、正常と判定し、異常判定閾値t=0.2の異常判定結果に「0」を設定する。生成部154は、異常スコア「0.1」が、異常判定閾値t=0.3未満となるため、正常と判定し、異常判定閾値t=0.3の異常判定結果に「0」を設定する。
生成部154は、分割データ20A〜20Dの各サンプルの異常スコアについても、各異常判定閾値t=0.1、0.2、0.3との比較結果により、異常、正常であるかを推定する処理を実行する。
続いて、生成部154が実行する評価指数関数生成処理について説明する。図13は、評価指数関数生成処理を説明するための図である。生成部154は、評価指数関数を生成する前準備として、異常判定閾値毎に、各サンプルの異常判定の結果が正しいか否かを計算する。
図13では、図12の異常判定処理の結果を用いて、説明を行う。生成部154は、ラベルの値と、異常判定結果の値とが一致する場合に、判定結果が正しいと判定し、マル印を設定する。生成部154は、ラベルの値と、異常判定結果の値とが一致しない場合に、判定結果が正しくないと判定し、バツ印を設定する。
たとえば、1行目のレコードについて説明する。ラベルの値は「1」であり、異常判定閾値t=1の異常判定の値は「1」であり一致する。このため、生成部154は、異常判定閾値t=0.1の判定の正しさを「丸印」に設定する。ラベルの値は「1」であり、異常判定閾値t=0.2の異常判定の値は「0」であり一致しない。このため、生成部154は、異常判定閾値t=0.2の判定の正しさを「バツ印」に設定する。ラベルの値は「1」であり、異常判定閾値t=0.3の異常判定の値は「0」であり一致しない。このため、生成部154は、異常判定閾値t=0.3の判定の正しさを「バツ印」に設定する。
生成部154は、他の行のレコードについても上記処理を繰り返し実行することで、異常判定閾値t=0.1、0.2、0.3の判定の正しさに丸印、または、バツ印を設定する。
続いて、生成部154は、異常判定閾値毎の各サンプルの異常判定の結果が正しいか否かの計算結果を基にして、評価指数関数を計算する。たとえば、評価指数を正解率とすると、評価指数は「正答数」を「全サンプル数」で除算した値となる。
生成部154は、異常判定閾値t=0.1の評価指数を算出する場合、図13の「異常判定閾値t=0.1での判定の正しさ」の列を走査し、マル印の数を計数することで、正当数を特定する。生成部154は、特定した正当数を全サンプル数で除算することで、異常判定閾値t=0.1の評価指数を計算する。
生成部154は、異常判定閾値t=0.2の評価指数を算出する場合、図13の「異常判定閾値t=0.2での判定の正しさ」の列を走査し、マル印の数を計数することで、正当数を特定する。生成部154は、特定した正当数を全サンプル数で除算することで、異常判定閾値t=0.2の評価指数を計算する。
生成部154は、異常判定閾値t=0.3の評価指数を算出する場合、図13の「異常判定閾値t=0.3での判定の正しさ」の列を走査し、マル印の数を計数することで、正当数を特定する。生成部154は、特定した正当数を全サンプル数で除算することで、異常判定閾値t=0.3の評価指数を計算する。
図14は、生成部による各異常判定閾値の評価指数の計算結果を示す図である。たとえば、異常判定閾値t=0.1に対応する評価指数は0.5となる。異常判定閾値t=0.2に対応する評価指数は0.5となる。異常判定閾値t=0.3に対応する評価指数は0.75となる。
図15は、図14の計算結果に基づく評価指数関数の一例を示す図である。図15のグラフG2の縦軸は評価指数に対応する軸であり、横軸は異常判定閾値に対応する軸である。たとえば、評価指数を正解率とする。
図16は、生成部の処理を説明するための図である。生成部154は、上記処理を実行することで、テストデータ141−2から、全体の評価指数関数を計算する。生成部154は、分割データ20Aから、機種Aの評価指数関数を計算する。生成部154は、分割データ20Bから、機種Bの評価指数関数を計算する。生成部154は、分割データ20Cから、機種Cの評価指数関数を計算する。生成部154は、分割データ20Dから、機種Dの評価指数関数を計算する。生成部154は、全体の評価指数関数、機種A,B,C,Dの評価指数関数のデータを、評価指数関数テーブル144に登録する。なお、図7で説明したように、各評価指数関数は、異常判定閾値と、評価指数との関係で示される。
図2の説明に戻る。評価部155は、全体の評価指数関数と、機種A,B,C,Dの評価指数関数と差を基にして、分割データA〜Dを、複数のグループに分類し、同一のグループに属する分割データの精度評価を実行する。
評価部155が、全体の評価指数関数と、機種A,B,C,Dの評価指数関数と差を基にして、分割データA〜Dを、複数のグループに分類する処理の一例について説明する。全体の評価指数関数および機種A,B,C,Dの評価指数関数は、図7に示した異常判定閾値と、評価指数との関係となる。図17は、評価指数関数の一例を示す図(2)である。図17に示すグラフG3の縦軸は評価指数(正解率)に対応する軸であり、横軸は異常判定閾値に対応する軸である。
図17において、線分22は、全体データの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。線分22Aは、分割データ20Aの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。線分22Bは、分割データ20Bの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。線分22Cは、分割データ20Cの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。線分22Dは、分割データ20Dの評価指数関数の異常判定閾値と評価指数との関係を示す線分である。
評価部155は、分類する処理において、「第1の選択処理」、「第2の選択処理」を実行する。評価部155は、第1の選択処理において、全体データの評価指数関数から最も乖離する評価指数関数を持つ分割データを選択する。たとえば、評価部155は、機種毎の評価指数関数において、全体の評価指数関数との差を、式(1)を基にして計算する。
全体の評価指数関数との差=全体の評価指標の総和−該当する機種名の評価指標の総和・・・(1)
たとえば、全体の評価指標関数と機種毎の評価指標関数との差は、図18に示すものとなる。図18は、第1の選択処理を説明するための図である。図18に示すように、全体の評価指数関数と機種Aの評価指標関数との差は「−0.55」となる。全体の評価指数関数と機種Bの評価指標関数との差は「−0.5」となる。全体の評価指数関数と機種Cの評価指標関数との差は「0.87」となる。全体の評価指数関数と機種Dの評価指標関数との差は「1」となる。
図18に示す例では、評価部155は、全体の評価指数関数との差が最大値(絶対値の最大値)をとる機種D(分割データ20D)を選択する。
続いて、評価部155は、第2の選択処理を実行する。評価部155は、第2の選択処理において、第1の選択処理で選択した分割データ(図18では、機種Cの分割データ20D)の評価指標関数と近い評価指数関数をもつ分割データを選択する。
説明の便宜上、第1の選択処理で選択した分割データの評価指標関数を、「第1の評価指数関数」と表記し、他の分割データの評価指数関数を、「第2の評価指数関数」と表記する。たとえば、第1の選択処理で選択した分割データの評価指数関数を、分割データ20Dの評価指数関数とすると、分割データAの評価指数関数、分割データBの評価指数関数、分割データCの評価指数関数が、第2の評価指数関数となる。
評価部155は、第1の評価指数関数との差を、式(2)を基に計算する。
第1の評価指数関数との差=第1の評価指数関数の評価指数の総和−第2の評価指数の総和・・・(2)
たとえば、第1の評価指標関数(機種Dの評価指数関数)と各第2の評価指標関数との差は、図19に示すものとなる。図19は、第2の選択処理を説明するための図である。。図19に示すように、第1の評価指数関数と機種Aの評価指数関数との差は「1.55」となる。第1の評価指数関数と機種Bの評価指数関数との差は「1.5」となる。第1の評価指数関数と機種Cの評価指数関数との差は「0.17」となる。
評価部155は、第1の評価指数関数との差が閾値未満となる機種の第2の評価指数関数を選択する。たとえば、閾値を「0.3」とすると、評価部155は、機種C(分割データ20C)を選択する。
評価部155は、第1、2の選択処理で選択した機種を、全体データ141から分離することで、全体データ141を2分割する。図20は、評価部の処理を説明するための図(1)である。上記のように、評価部155は、第1の選択処理において機種Dを選択し、第2の選択処理において機種Cを選択したため、カテゴリ値「機種C」または「機種D」をもつサンプルを、全体データ141から分離することで、2分割する。
図20に示す例では、評価部155は、全体データ141のテストデータ141−2を、分割データ20AB−2と、分割データ20CD−2に分割する。分割データ20AB−2は、テストデータ141−2から、カテゴリ値「機種A」または「機種B」をもつサンプルを抽出したデータである。分割データ20CD−2は、テストデータ141−2から、カテゴリ値「機種C」または「機種D」をもつサンプルを抽出したデータである。
図示を省略するが、評価部155は、全体データ141の学習データ141−1を、分割データ20AB−1と、分割データ20CD−1に分割する。分割データ20AB−1は、学習データ141−1から、カテゴリ値「機種A」または「機種B」をもつサンプルを抽出したデータである。分割データ20CD−1は、テストデータ141−2から、カテゴリ値「機種C」または「機種D」をもつサンプルを抽出したデータである。
続いて、評価部155が実行する、分割による精度評価の処理について説明する。まず、機種Aおよび機種Bのカテゴリ値の分割による精度評価について説明する。評価部155は、分割データ20AB−1を、学習モデル生成部153に出力し、学習モデルMABの生成を依頼する。
評価部155は、学習モデルMABと、分割データ20AB−2と、分割データ20Aと、分割データ20Bとを基にして、異常スコア算出処理、異常判定処理、評価指数関数生成処理を実行する。評価部155が実行する、異常スコア算出処理、異常判定処理、評価指数関数生成処理は、生成部154が実行する異常スコア算出処理、異常判定処理、評価指数関数生成処理と同様である。評価部155は、上記処理により算出される評価指数関数のデータを、評価指数関数テーブル144に登録する。
たとえば、評価部155が、学習モデルMABと、分割データ20AB−2,20A,20Bとを基にして、異常スコア算出処理、異常判定処理、評価指数関数生成処理を実行すると、図8に示した評価指数関数30ABのデータが生成される。評価部155は、図8に示した評価指数関数30ABと、図7に示した評価指数関数30とを比較して、分割による精度評価を行う。
図21は、評価部の処理を説明するための図(2)である。図21において、評価指数関数30は、全体データ141の学習データ141−1から生成される学習モデルMを基にして計算される評価指数である。評価指数関数30ABは、分割データ20AB−1から生成される学習モデルMABを基にして計算される評価指数である。
評価部155は、評価指数関数30の機種Aの評価指数の総和「3.55」と、評価指数関数30ABの機種Aの評価指数の総和「3.67」とを比較する。評価部155は、評価指数関数30ABの機種Aの評価指数の総和が、評価指数関数30の機種Aの評価指数の総和を上回っているため、機種Aについて、精度が向上したと評価する。
評価部155は、評価指数関数30の機種Bの評価指数の総和「3.5」と、評価指数関数30ABの機種Bの評価指数の総和「3.63」とを比較する。評価部155は、評価指数関数30ABの機種Bの評価指数の総和が、評価指数関数30の機種Bの評価指数の総和を上回っているため、機種Bについて、精度が向上したと評価する。
次に、機種Cおよび機種Dのカテゴリ値の分割による精度評価について説明する。評価部155は、分割データ20CD−1を、学習モデル生成部153に出力し、学習モデルMCDの生成を依頼する。
評価部155は、学習モデルMCDと、分割データ20CD−2と、分割データ20Cと、分割データ20Dとを基にして、異常スコア算出処理、異常判定処理、評価指数関数生成処理を実行する。評価部155が実行する、異常スコア算出処理、異常判定処理、評価指数関数生成処理は、生成部154が実行する異常スコア算出処理、異常判定処理、評価指数関数生成処理と同様である。評価部155は、上記処理により算出される評価指数関数のデータを、評価指数関数テーブル144に登録する。
たとえば、評価部155が、学習モデルMCDと、分割データ20CD−2,20C,20Dとを基にして、異常スコア算出処理、異常判定処理、評価指数関数生成処理を実行すると、図9に示した評価指数関数30CDのデータが生成される。評価部155は、図9に示した評価指数関数30CDと、図7に示した評価指数関数30とを比較して、分割による精度評価を行う。
図22は、評価部の処理を説明するための図(3)である。図22において、評価指数関数30は、全体データ141の学習データ141−1から生成される学習モデルMを基にして計算される評価指数である。評価指数関数30CDは、分割データ20CD−1から生成される学習モデルMCDを基にして計算される評価指数である。
評価部155は、評価指数関数30の機種Cの評価指数の総和「2.13」と、評価指数関数30CDの機種Cの評価指数の総和「3.35」とを比較する。評価部155は、評価指数関数30CDの機種Cの評価指数の総和が、評価指数関数30の機種Cの評価指数の総和を上回っているため、機種Cについて、精度が向上したと評価する。
評価部155は、評価指数関数30の機種Dの評価指数の総和「2」と、評価指数関数30CDの機種Dの評価指数の総和「2.99」とを比較する。評価部155は、評価指数関数30CDの機種Dの評価指数の総和が、評価指数関数30の機種Dの評価指数の総和を上回っているため、機種Dについて、精度が向上したと評価する。
上記処理によって、カテゴリ値「機種A」、「機種B」、「機種C」、「機種D」の精度が向上している。このため、評価部155は全体データ141を、カテゴリ値「機種A」または「機種B」をサンプリングした分割データと、カテゴリ値「機種C」または「機種D」をサンプリングした分割データとに分割する分割方法を採用する。
評価部155は、評価対象となったカテゴリ値「機種A」、「機種B」、「機種C」、「機種D」の精度が全て向上した場合、分割方法を採用してもよいし、所定数のカテゴリ値の精度が向上した場合に、分割方法を採用してもよい。
ここで、評価部155が、分割方法を採用すると判定した場合、採用した分割方法により分割した各分割データを、新たな全体データとみなし、上記処理を繰り返し実行する。
たとえば、評価部155は、分割データ20AB−1(学習データ)と、分割データ20AB−2(テストデータ)とを、全体データと見なす。評価部155は、分割データ20AB−2を、分割データ20Aおよび分割データ20Bに分割し、分割による精度評価の処理を実行する。
評価部155は、学習モデルMと、分割データ20AB−2と、分割データ20Aとを基にして、異常スコア算出処理、異常判定処理、評価指数関数生成処理を実行する。評価部155は、評価指数関数30の機種Aの評価指数の総和と、学習モデルMの評価指数関数の機種Aの評価指数の総和とを比較して、機種Aについて、精度が向上したか否かを評価する。
評価部155は、学習モデルMと、分割データ20AB−2と、分割データ20Bとを基にして、異常スコア算出処理、異常判定処理、評価指数関数生成処理を実行する。評価部155は、評価指数関数30の機種Bの評価指数の総和と、学習モデルMの評価指数関数の機種Bの評価指数の総和とを比較して、機種Bについて、精度が向上したか否かを評価する。
ここで、評価部155は、機種Aおよび機種Bについて、精度が向上しない場合には、全体データを、機種Aの分割データと、機種Bの分割データに分割する分割方法を破棄する。また、評価部155は、カテゴリ値「機種A」または「機種B」を含むデータの異常を検出する場合には、学習モデルMABを使用することを特定する。
一方、評価部155は、分割データ20CD−1(学習データ)と、分割データ20CD−2(テストデータ)とを、全体データと見なす。評価部155は、分割データ20CD−2を、分割データ20Cおよび分割データ20Dに分割し、分割による精度評価の処理を実行する。
評価部155は、学習モデルMと、分割データ20CD−2と、分割データ20Cとを基にして、異常スコア算出処理、異常判定処理、評価指数関数生成処理を実行する。学習モデルMは、全体データの学習データのうち、カテゴリ値「機種C」のサンプルを用いて学習した学習モデルである。評価部155は、評価指数関数30の機種Cの評価指数の総和と、学習モデルMの評価指数関数の機種Cの評価指数の総和とを比較して、機種Cについて、精度が向上したか否かを評価する。
評価部155は、学習モデルMと、分割データ20CD−2と、分割データ20Dとを基にして、異常スコア算出処理、異常判定処理、評価指数関数生成処理を実行する。学習モデルMは、全体データの学習データのうち、カテゴリ値「機種D」のサンプルを用いて学習した学習モデルである。評価部155は、評価指数関数30の機種Dの評価指数の総和と、学習モデルMの評価指数関数の機種Dの評価指数の総和とを比較して、機種Dについて、精度が向上したか否かを評価する。
ここで、評価部155は、機種Cおよび機種Dについて、精度が向上する場合には、全体データを、機種Cの分割データと、機種Dの分割データに分割する分割方法を採用する。また、評価部155は、カテゴリ値「機種C」を含むデータの異常を検出する場合には、学習モデルMを使用することを特定する。評価部155は、カテゴリ値「機種D」を含むデータの異常を検出する場合には、学習モデルMを使用することを特定する。評価部155は、カテゴリ値について、これ以上分割できないので、分割する処理を終了する。
評価部155は、上記処理を実行することで、機種毎に使用する各学習モデルを特定する。図23は、評価部によって特定される機種と学習モデルとの関係の一例を示す図である。図23に示すように、カテゴリ値「機種A」のデータには、学習モデルMABを用いて異常を検出する。カテゴリ値「機種B」のデータには、学習モデルMABを用いて異常を検出する。カテゴリ値「機種C」のデータには、学習モデルMを用いて異常を検出する。カテゴリ値「機種D」のデータには、学習モデルMを用いて異常を検出する。評価部155は、精度評価の結果を基にして、図23の情報を生成し、表示部130に出力し、図23の情報を表示させてもよい。
次に、本実施例に係る情報処理装置100の処理手順の一例について説明する。図24は、本実施例に係る情報処理装置の処理手順を示すフローチャートである。図24に示すように、情報処理装置100の学習モデル生成部153は、学習データを基にして学習モデルを生成する(ステップS101)。
分割部152は、テストデータ(全体データ)を分割して、分割データを生成する(ステップS102)。情報処理装置100の生成部154は、評価指数関数生成処理を実行する(ステップS103)。
評価部155は、全体データの評価指数関数から最も乖離する評価指数関数をもつ分割データの機種名を選択する(ステップS104)。評価部155は、選択した機種名の評価指数関数と近い評価指数関数をもつ分割データの機種名を選択する(ステップS105)。
評価部155は、第1、2の選択処理で選択した機種名の分割データを全体データから分離することで、全体データを2分割する(ステップS106)。ここでは、全体データの各機種名のサンプルを、第1グループ、第2グループに分類して、2分割するものとする。
学習モデル生成部153は、第1グループの分割データを基にして、第1学習モデルを生成する(ステップS107)。評価部155は、第1学習モデルを基にして、第1グループに含まれる分割データの評価指数関数を計算する(ステップS108)。
学習モデル生成部153は、第2グループの分割データを基にして、第2学習モデルを生成する(ステップS109)。評価部155は、第2学習モデルを基にして、第2グループに含まれる各分割データの評価指数関数を計算する(ステップS110)。
評価部155は、精度が向上した場合には(ステップS111,Yes)、全体データを、第1グループの分割データ、第2グループの分割データに分割する分割方法を採用する(ステップS112)。評価部155は、第1グループの分割データ、第2グループの分割データを全体データと見なして、再帰的に処理を実行する(ステップS113)。
たとえば、ステップS113において、情報処理装置100は、第1グループの分割データを全体データと見なして、ステップS101〜S113の処理を精度が向上しなくなるまで、繰り返し実行する。また、情報処理装置100は、第2グループの分割データを全体データと見なして、ステップS101〜S113の処理を精度が向上しなくなるまで、繰り返し実行する。
次に、図24のステップS103に示した評価指数関数生成処理の処理手順について説明する。図25は、評価指数関数生成処理の処理手順を示すフローチャートである。図25に示すように、情報処理装置100の生成部154は、テストデータを学習モデルに入力し、異常スコアを計算する(ステップS201)。
生成部154は、テストデータについて、異常判定閾値毎に、各サンプルの異常判定が正しいか否かを計算する(ステップS202)。生成部154は、テストデータについて、評価指数関数を計算する(ステップS203)。
生成部154は、各分割データを学習モデルに入力し、異常スコアをそれぞれ計算する(ステップS204)。生成部154は、各分割データについて、異常判定閾値毎に、各サンプルの異常判定が正しいか否かを計算する(ステップS205)。生成部154は、各分割データについて、評価指数関数を計算する(ステップS206)。
次に、本実施例に係る情報処理装置100の効果について説明する。情報処理装置100は、複数のカテゴリ情報に対応付けられた全体データを、カテゴリ値毎に、複数の分割データに分割し、全体データおよび各分割データに関する評価指数関数をそれぞれ生成する。情報処理装置100は、全体データの評価指数関数と、分割データの評価指数関数との差を基にして、各分割データを複数のグループに分類し、同一のグループに属する分割データの精度評価を行うことで、グループ化して分割する分割の仕方を採用するか否かを特定する。これによって、学習モデルの検出精度が向上するように、学習で用いるデータを適切な粒度で分割することができる。
情報処理装置100は、全体データの評価指数関数と、複数の分割データの各評価指数関数とを基にして、全体データの評価指数関数と比較して最も差の大きくなる評価指数関数の第1分割データを選択する。また、情報処理装置100は、第1分割データの評価指数関数に近い、評価指数関数の第2分割データを選択する。情報処理装置は、選択した第1分割データと、第2分割データとを同一のグループに分類する。これによって、全体データの評価指数関数との差が大きくなり、また、評価指数関数が類似する分割データ同士を、同一のグループに分類することができる。
情報処理装置100は、同一のグループに属する分割データを、全体データの第1学習モデルに入力した場合のスコアと、同一のグループに属する分割データを、分割データの第2学習モデルに入力した場合のスコアと、異常判定閾値とを基にして、精度評価を行う。これによって、全体データから学習した第1学習モデルよりも、分割データから学習した第2学習モデルの検出精度が向上するか否かを評価することができる。
情報処理装置100は、同一のグループに属する分割データを、第1学習モデルに入力した場合のスコアおよび異常判定閾値を基にした評価指数の総和よりも、同一のグループに属する分割データを、第2学習モデルに入力した場合のスコアおよび異常判定閾値を基にした評価指数の総和が大きい場合に、全体データをグループ毎に分割する。これによって、学習で用いるデータの分割を適切に実行することができる。
次に、上記実施例に示した情報処理装置100と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図26は、実施例の情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
図26に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203とを有する。また、コンピュータ200は、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行う通信装置204と、インタフェース装置205とを有する。また、コンピュータ200は、各種情報を一時記憶するRAM206と、ハードディスク装置207とを有する。そして、各装置201〜207は、バス208に接続される。
ハードディスク装置207は、取得プログラム207a、分割プログラム207b、学習モデル生成プログラム207c、生成プログラム207d、評価プログラム207eを有する。また、CPU201は、各プログラム207a〜207eを読み出してRAM206に展開する。
取得プログラム207aは、取得プロセス206aとして機能する。分割プログラム207bは、分割プロセス206bとして機能する。学習モデル生成プログラム207cは、学習モデル生成プロセス206cとして機能する。生成プログラム207dは、生成プロセス206dとして機能する。評価プログラム207eは、評価プロセス206eとして機能する。
取得プロセス206aの処理は、取得部151の処理に対応する。分割プロセス206bの処理は、分割部152の処理に対応する。学習モデル生成プロセス206cの処理は、学習モデル生成部153の処理に対応する。生成プロセス206dの処理は、生成部154の処理に対応する。評価プロセス206eの処理は、評価部155の処理に対応する。
なお、各プログラム207a〜207eについては、必ずしも最初からハードディスク装置207に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD−ROM、DVD、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ200が各プログラム207a〜207eを読み出して実行するようにしてもよい。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータに
複数のカテゴリ情報に対応付けられたデータを、カテゴリ値毎の複数の分割データに分割し、
前記データを基にして学習した第1学習モデルに、前記データおよび前記複数の分割データを入力した場合のそれぞれのスコアと、異常判定閾値とを基にして、前記データおよび前記複数の分割データについて、異常判定閾値と評価指数との関係を示す関数をそれぞれ生成し、
前記データの関数と、前記複数の分割データの各関数との差を基にして、前記複数の分割データを、複数のグループに分類し、
同一のグループに属する分割データを基にして学習した第2学習モデルに、前記同一のグループに属する分割データを入力した場合のスコアと、前記異常判定閾値とを基にして、前記同一のグループに属する分割データの評価指数を算出することで、精度評価を行い、
精度評価の結果を基にして、前記データを前記グループ毎に分割するか否かを特定する
処理を実行させることを特徴とする分割プログラム。
(付記2)前記複数のグループに分類する処理は、前記データの関数と、前記複数の分割データの各関数とを基にして、前記データの関数と比較して最も差が大きくなる関数の第1分割データと、前記第1分割データの関数に近い関数の第2分割データとを同一のグループに分類することを特徴とする付記1に記載の分割プログラム。
(付記3)前記精度評価を行う処理は、前記同一のグループに属する分割データを、前記第1学習モデルに入力した場合のスコアと、前記同一のグループに属する分割データを、前記第2学習モデルに入力した場合のスコアと、前記異常判定閾値とを基にして、精度評価を行うことを特徴とする付記1または2に記載の分割プログラム。
(付記4)前記特定する処理は、前記同一のグループに属する分割データを、前記第1学習モデルに入力した場合のスコアおよび前記異常判定閾値を基にした評価指数の総和よりも、前記同一のグループに属する分割データを、前記第2学習モデルに入力した場合のスコアおよび前記異常判定閾値を基にした評価指数の総和が大きい場合に、前記データを前記グループ毎に分割することを特徴とする付記3に記載の分割プログラム。
(付記5)コンピュータが実行する分割方法であって、
複数のカテゴリ情報に対応付けられたデータを、カテゴリ値毎の複数の分割データに分割し、
前記データを基にして学習した第1学習モデルに、前記データおよび前記複数の分割データを入力した場合のそれぞれのスコアと、異常判定閾値とを基にして、前記データおよび前記複数の分割データについて、異常判定閾値と評価指数との関係を示す関数をそれぞれ生成し、
前記データの関数と、前記複数の分割データの各関数との差を基にして、前記複数の分割データを、複数のグループに分類し、
同一のグループに属する分割データを基にして学習した第2学習モデルに、前記同一のグループに属する分割データを入力した場合のスコアと、前記異常判定閾値とを基にして、前記同一のグループに属する分割データの評価指数を算出することで、精度評価を行い、
精度評価の結果を基にして、前記データを前記グループ毎に分割するか否かを特定する
処理を実行することを特徴とする分割方法。
(付記6)前記複数のグループに分類する処理は、前記データの関数と、前記複数の分割データの各関数とを基にして、前記データの関数と比較して最も差が大きくなる関数の第1分割データと、前記第1分割データの関数に近い関数の第2分割データとを同一のグループに分類することを特徴とする付記5に記載の分割方法。
(付記7)前記精度評価を行う処理は、前記同一のグループに属する分割データを、前記第1学習モデルに入力した場合のスコアと、前記同一のグループに属する分割データを、前記第2学習モデルに入力した場合のスコアと、前記異常判定閾値とを基にして、精度評価を行うことを特徴とする付記5または6に記載の分割方法。
(付記8)前記特定する処理は、前記同一のグループに属する分割データを、前記第1学習モデルに入力した場合のスコアおよび前記異常判定閾値を基にした評価指数の総和よりも、前記同一のグループに属する分割データを、前記第2学習モデルに入力した場合のスコアおよび前記異常判定閾値を基にした評価指数の総和が大きい場合に、前記データを前記グループ毎に分割することを特徴とする付記7に記載の分割方法。
(付記9)複数のカテゴリ情報に対応付けられたデータを、カテゴリ値毎の複数の分割データに分割する分割部と、
前記データを基にして学習した第1学習モデルに、前記データおよび前記複数の分割データを入力した場合のそれぞれのスコアと、異常判定閾値とを基にして、前記データおよび前記複数の分割データについて、異常判定閾値と評価指数との関係を示す関数をそれぞれ生成する生成部と、
前記データの関数と、前記複数の分割データの各関数との差を基にして、前記複数の分割データを、複数のグループに分類し、同一のグループに属する分割データを基にして学習した第2学習モデルに、前記同一のグループに属する分割データを入力した場合のスコアと、前記異常判定閾値とを基にして、前記同一のグループに属する分割データの評価指数を算出することで、精度評価を行い、精度評価の結果を基にして、前記データを前記グループ毎に分割するか否かを特定する評価部と
を有することを特徴とする情報処理装置。
(付記10)前記評価部は、前記データの関数と、前記複数の分割データの各関数とを基にして、前記データの関数と比較して最も差が大きくなる関数の第1分割データと、前記第1分割データの関数に近い関数の第2分割データとを同一のグループに分類することを特徴とする付記9に記載の情報処理装置。
(付記11)前記評価部は、前記同一のグループに属する分割データを、前記第1学習モデルに入力した場合のスコアと、前記同一のグループに属する分割データを、前記第2学習モデルに入力した場合のスコアと、前記異常判定閾値とを基にして、精度評価を行うことを特徴とする付記9または10に記載の情報処理装置。
(付記12)前記評価部は、前記同一のグループに属する分割データを、前記第1学習モデルに入力した場合のスコアおよび前記異常判定閾値を基にした評価指数の総和よりも、前記同一のグループに属する分割データを、前記第2学習モデルに入力した場合のスコアおよび前記異常判定閾値を基にした評価指数の総和が大きい場合に、前記データを前記グループ毎に分割することを特徴とする付記11に記載の情報処理装置。
100 情報処理装置
110 通信部
120 入力部
130 表示部
140 記憶部
141 全体データ
142 分割データテーブル
143 学習モデルテーブル
144 評価指数関数テーブル
150 制御部
151 取得部
152 分割部
153 学習モデル生成部
154 生成部
155 評価部

Claims (6)

  1. コンピュータに
    複数のカテゴリ情報に対応付けられたデータを、カテゴリ値毎の複数の分割データに分割し、
    前記データを基にして学習した第1学習モデルに、前記データおよび前記複数の分割データを入力した場合のそれぞれのスコアと、異常判定閾値とを基にして、前記データおよび前記複数の分割データについて、異常判定閾値と評価指数との関係を示す関数をそれぞれ生成し、
    前記データの関数と、前記複数の分割データの各関数との差を基にして、前記複数の分割データを、複数のグループに分類し、
    同一のグループに属する分割データを基にして学習した第2学習モデルに、前記同一のグループに属する分割データを入力した場合のスコアと、前記異常判定閾値とを基にして、前記同一のグループに属する分割データの評価指数を算出することで、精度評価を行い、
    精度評価の結果を基にして、前記データを前記グループ毎に分割するか否かを特定する
    処理を実行させることを特徴とする分割プログラム。
  2. 前記複数のグループに分類する処理は、前記データの関数と、前記複数の分割データの各関数とを基にして、前記データの関数と比較して最も差が大きくなる関数の第1分割データと、前記第1分割データの関数に近い関数の第2分割データとを同一のグループに分類することを特徴とする請求項1に記載の分割プログラム。
  3. 前記精度評価を行う処理は、前記同一のグループに属する分割データを、前記第1学習モデルに入力した場合のスコアと、前記同一のグループに属する分割データを、前記第2学習モデルに入力した場合のスコアと、前記異常判定閾値とを基にして、精度評価を行うことを特徴とする請求項1または2に記載の分割プログラム。
  4. 前記特定する処理は、前記同一のグループに属する分割データを、前記第1学習モデルに入力した場合のスコアおよび前記異常判定閾値を基にした評価指数の総和よりも、前記同一のグループに属する分割データを、前記第2学習モデルに入力した場合のスコアおよび前記異常判定閾値を基にした評価指数の総和が大きい場合に、前記データを前記グループ毎に分割することを特徴とする請求項3に記載の分割プログラム。
  5. コンピュータが実行する分割方法であって、
    複数のカテゴリ情報に対応付けられたデータを、カテゴリ値毎の複数の分割データに分割し、
    前記データを基にして学習した第1学習モデルに、前記データおよび前記複数の分割データを入力した場合のそれぞれのスコアと、異常判定閾値とを基にして、前記データおよび前記複数の分割データについて、異常判定閾値と評価指数との関係を示す関数をそれぞれ生成し、
    前記データの関数と、前記複数の分割データの各関数との差を基にして、前記複数の分割データを、複数のグループに分類し、
    同一のグループに属する分割データを基にして学習した第2学習モデルに、前記同一のグループに属する分割データを入力した場合のスコアと、前記異常判定閾値とを基にして、前記同一のグループに属する分割データの評価指数を算出することで、精度評価を行い、
    精度評価の結果を基にして、前記データを前記グループ毎に分割するか否かを特定する
    処理を実行することを特徴とする分割方法。
  6. 複数のカテゴリ情報に対応付けられたデータを、カテゴリ値毎の複数の分割データに分割する分割部と、
    前記データを基にして学習した第1学習モデルに、前記データおよび前記複数の分割データを入力した場合のそれぞれのスコアと、異常判定閾値とを基にして、前記データおよび前記複数の分割データについて、異常判定閾値と評価指数との関係を示す関数をそれぞれ生成する生成部と、
    前記データの関数と、前記複数の分割データの各関数との差を基にして、前記複数の分割データを、複数のグループに分類し、同一のグループに属する分割データを基にして学習した第2学習モデルに、前記同一のグループに属する分割データを入力した場合のスコアと、前記異常判定閾値とを基にして、前記同一のグループに属する分割データの評価指数を算出することで、精度評価を行い、精度評価の結果を基にして、前記データを前記グループ毎に分割するか否かを特定する評価部と
    を有することを特徴とする情報処理装置。
JP2020099477A 2020-06-08 2020-06-08 分割プログラム、分割方法および情報処理装置 Withdrawn JP2021193503A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020099477A JP2021193503A (ja) 2020-06-08 2020-06-08 分割プログラム、分割方法および情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020099477A JP2021193503A (ja) 2020-06-08 2020-06-08 分割プログラム、分割方法および情報処理装置

Publications (1)

Publication Number Publication Date
JP2021193503A true JP2021193503A (ja) 2021-12-23

Family

ID=79169069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020099477A Withdrawn JP2021193503A (ja) 2020-06-08 2020-06-08 分割プログラム、分割方法および情報処理装置

Country Status (1)

Country Link
JP (1) JP2021193503A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117579286A (zh) * 2024-01-16 2024-02-20 北京格尔国信科技有限公司 数字签名的生成方法、系统、存储介质及电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117579286A (zh) * 2024-01-16 2024-02-20 北京格尔国信科技有限公司 数字签名的生成方法、系统、存储介质及电子设备
CN117579286B (zh) * 2024-01-16 2024-03-19 北京格尔国信科技有限公司 数字签名的生成方法、系统、存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN104471501B (zh) 用于设备状态监测中故障诊断的归纳的模式识别
WO2018035878A1 (zh) 缺陷分类方法和缺陷检查系统
CN110399927B (zh) 识别模型训练方法、目标识别方法及装置
US20070198445A1 (en) Techniques to organize test results
CN109241997B (zh) 一种生成训练集的方法及装置
JP6313516B1 (ja) 情報処理装置、情報処理方法およびコンピュータプログラム
CN107203467A (zh) 一种分布式环境下监督学习算法的基准测试方法和装置
US20210042585A1 (en) Abnormality detection device, abnormality detection method and computer readable medium
JP2020198092A (ja) 教師なし異常検出及び高次元センサデータの多数決投票による原因説明のための方法及びシステム
CN102265227A (zh) 用于在机器状况监视中创建状态估计模型的方法和设备
CN111174370A (zh) 故障检测方法及装置、存储介质、电子装置
WO2019026134A1 (ja) 情報処理装置および情報処理方法
Liu et al. Board-level functional fault identification using streaming data
CN116453438A (zh) 一种显示屏参数检测方法、装置、设备及存储介质
Sivill et al. Limesegment: Meaningful, realistic time series explanations
Stoyanov et al. Predictive analytics methodology for smart qualification testing of electronic components
CN105137324A (zh) 一种基于仿真分类模型的多探测点故障元器件定位方法
CN112420125A (zh) 分子属性预测方法、装置、智能设备和终端
WO2021079440A1 (ja) 作成方法、作成プログラム及び情報処理装置
CN108932593B (zh) 一种认知影响因素分析方法及装置
US20210397960A1 (en) Reliability evaluation device and reliability evaluation method
CN109698026B (zh) 医学设备的故障处理时的组件识别
JP2021193503A (ja) 分割プログラム、分割方法および情報処理装置
US20220303188A1 (en) Managing telecommunication network event data
Bashar et al. Algan: Time series anomaly detection with adjusted-lstm gan

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230309

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20240129