(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-02
(45)【発行日】2024-08-13
(54)【発明の名称】学習装置、方法およびプログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20240805BHJP
G06N 3/0455 20230101ALI20240805BHJP
【FI】
G06N20/00 130
G06N3/0455
(21)【出願番号】P 2021110283
(22)【出願日】2021-07-01
【審査請求日】2023-03-15
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】鹿仁島 康裕
(72)【発明者】
【氏名】須藤 隆
(72)【発明者】
【氏名】柳橋 宏行
【審査官】福西 章人
(56)【参考文献】
【文献】特開2021-015405(JP,A)
【文献】特開2020-091661(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-20/00
(57)【特許請求の範囲】
【請求項1】
正常データまたは異常データのどちらであるかを示すラベルが付与されたデータを取得する取得部と、
前記データに対するモデルの出力を用いて、前記データが異常データである度合いを示す異常度を算出する第1算出部と、
以前に算出されたロス値に基づく調整パラメータと前記ラベルとに基づくロス関数を用いて、前記異常度に関するロス値を算出する第2算出部と、
前記ロス値を最小化するように前記モデルのパラメータを更新する更新部と、
を具備する学習装置。
【請求項2】
前記正常データは、前記異常データよりも出現する確率が高く、
前記第1算出部は、前記正常データに関しては低く、前記異常データに関しては高くなるように前記異常度を算出する、請求項1に記載の学習装置。
【請求項3】
前記第1算出部は、前記異常度として、前記モデルがオートエンコーダの場合は再構成誤差を算出し、前記モデルが変分オートエンコーダの場合は確率分布の負の対数尤度を算出する、請求項1または請求項2に記載の学習装置。
【請求項4】
前記第2算出部は、前記ロス関数として、出現する確率が高い前記正常データに対しては前記異常度に応じて増加し、出現する確率が前記正常データよりも低い前記異常データに対しては前記異常度に応じて減少する関数を用いて、前記正常データに対しては低い値、前記異常データに対しては前記正常データよりも高い値を算出する、請求項1から請求項3のいずれか1項に記載の学習装置。
【請求項5】
前記更新部は、前記ロス関数のうちの前記正常データに関するロス関数と前記ロス関数のうちの前記異常データに関するロス関数とが、前記以前に算出されたロス値
を交点として交差するように前記調整パラメータを更新する、請求項2または請求項4に記載の学習装置。
【請求項6】
前記更新部は、前記以前に算出されたロス値に基づく値を、以前に算出されたロス値の統計量に基づき算出する、請求項1から請求項5のいずれか1項に記載の学習装置。
【請求項7】
前記以前に算出されたロス値は、前記モデルの学習における1エポック前のロス値または1イテレーション前のロス値である、請求項1から請求項6のいずれか1項に記載の学習装置。
【請求項8】
正常データまたは異常データのどちらであるかを示すラベルが付与されたデータを取得し、
前記データに対するモデルの出力を用いて、前記データが異常データである度合いを示す異常度を算出し、
以前に算出されたロス値に基づく調整パラメータと前記ラベルとに基づくロス関数を用いて、前記異常度に関するロス値を算出し、
前記ロス値を最小化するように前記モデルのパラメータを更新する、学習方法。
【請求項9】
コンピュータを、
正常データまたは異常データのどちらであるかを示すラベルが付与されたデータを取得する取得手段と、
前記データに対するモデルの出力を用いて、前記データが異常データである度合いを示す異常度を算出する第1算出手段と、
以前に算出されたロス値に基づく調整パラメータと前記ラベルとに基づくロス関数を用いて、前記異常度に関するロス値を算出する第2算出手段と、
前記ロス値を最小化するように前記モデルのパラメータを更新する更新手段として機能させるための学習プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、学習装置、方法、プログラムおよび推論装置に関する。
【背景技術】
【0002】
機械学習を異常検知に利用する研究が多くなされている。このような機械学習を用いた異常検知において、運用中に異常データが発生した段階で、発生した異常データを活用して異常検知の性能を向上させたいというニーズがある。
しかし、異常データ運用中に段階的に入手可能な状況において、その都度モデルを更新する場合、モデルの更新前後でモデルの整合性が考慮されず、更新前後のモデルがそれぞれ出力する異常度の連続性がなくなるという問題がある。
【先行技術文献】
【特許文献】
【0003】
【非特許文献】
【0004】
【文献】Munawar, A., Vinayavekhin, P., De Magistris, G. “Limiting the reconstruction capability of generative neural network using negative learning”, 2017 IEEE 27th International Workshop on Machine Learning for Signal Processing.
【発明の概要】
【発明が解決しようとする課題】
【0005】
本開示は、上述の課題を解決するためになされたものであり、モデルの更新前後において整合性を担保しつつ、モデルの性能を向上させることができる学習装置、方法、プログラムおよび推論装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
本実施形態に係る学習装置は、取得部と、第1算出部と、第2算出部と、更新部とを含む。取得部は、正常データまたは異常データのどちらであるかを示すラベルが付与されたデータを取得する。第1算出部は、前記データに対するモデルの出力を用いて、前記データが異常データである度合いを示す異常度を算出する。第2算出部は、以前に算出されたロス値に基づく調整パラメータと前記ラベルとに基づくロス関数を用いて、前記異常度に関するロス値を算出する。更新部は、前記ロス値を最小化するように前記モデルのパラメータを更新する。
【図面の簡単な説明】
【0007】
【
図1】第1の実施形態に係る学習装置を示すブロック図。
【
図2】第1の実施形態に係る学習装置の学習処理を示すフローチャート。
【
図3】第1の実施形態に係る調整パラメータによるロス関数のバランス調整を示す概念図。
【
図4】第2の実施形態に係る推論装置を示すブロック図。
【
図5】第2の実施形態に係る推論装置による異常度判定結果の一例を示す図。
【
図6】第2の実施形態に係る推論装置の処理結果となる、再構成誤差の画像出力の一例を示す図。
【
図7】本実施形態に係る学習装置および推論装置のハードウェア構成の一例を示すブロック図。
【発明を実施するための形態】
【0008】
以下、図面を参照しながら本実施形態に係る学習装置、方法、プログラムおよび推論装置について詳細に説明する。なお、以下の実施形態では、同一の参照符号を付した部分は同様の動作をおこなうものとして、重複する説明を適宜省略する。
【0009】
(第1の実施形態)
第1の実施形態に係る学習装置について
図1のブロック図を参照して説明する。
第1の実施形態に係る学習装置10は、データ取得部101と、異常度算出部102と、ロス算出部103と、ロス保持部104と、更新部105と、表示制御部106とを含む。
【0010】
データ取得部101は、外部からデータセットを取得する。データセットは、ここでは、学習に用いられるデータxと、2つの分類(正常データおよび異常データ)のうちのどちらであるかを示すラベルとの組を複数含む。
【0011】
異常度算出部102は、データ取得部101からデータセットを受け取り、データに対するモデルの出力を用いて、データが異常データである度合いを示す異常度を算出する。モデルは、ここでは異常検知をタスクとしたオートエンコーダなどのネットワークモデルである。
【0012】
ロス算出部103は、データ取得部101から異常度を算出したデータに対応付けられたラベルを、異常度算出部102から異常度を、後述のロス保持部104から以前に算出されたロス値をそれぞれ受け取る。ロス算出部103は、ロス関数を用いて、異常度に関するロス値を算出する。ロス関数は、以前の処理で算出したロス値に基づく調整パラメータと、ラベルとに基づく関数である。
ロス保持部104は、過去の処理においてロス算出部103で算出されたロス値を1あるいは複数保持する。
【0013】
更新部105は、ロス算出部103からロス値を受け取り、ロス値を最小化するようモデルのパラメータを更新する。更新部105が所定の条件に基づきモデルのパラメータの更新を打ち切ることで、モデルの学習が完了し、学習済みモデルが生成される。
【0014】
表示制御部106は、例えば、異常度算出部102において算出された異常度、モデルを学習中のロス関数およびロス値に関する情報を外部のディスプレイに表示するように制御する。なお、学習装置10が表示部(図示せず)を含み、当該表示部に情報を表示してもよい。
【0015】
次に、第1の実施形態に係る学習装置10の学習処理について、
図2のフローチャートを参照して説明する。
なお、本実施形態では異常検知のタスクを行うための学習済みモデルを生成することを目的とするが、これに限らない。例えば、2種類の製品を分別する、または陽性/陰性を判定するなど2値判定を行うタスクのための機械学習モデルであれば、2種類の分類のうちのどちらかの分類となる度合い(ある分類からの乖離度)を設定すれば、本実施形態に係る学習装置10を適用でき、所望の学習済みモデルを生成できる。
【0016】
また、
図2に示す学習装置10の学習処理は、予め運用前に異常データが無ければ、正解データのみの教師なし学習によりモデルを生成しておく。その後運用中に異常データが入手できれば、正常データを正常、異常データを異常とラベル付けした教師あり学習により
図2に示す学習処理が実行される。なお、運用前においても異常データが入手できれば、同様に
図2に示す学習処理を実行すればよい。学習処理は、運用中に異常データが入手されるごとに実行されてもよいし、所定数の異常データが入手できたタイミングで実行されてもよい。または、半年ごとなど、所定期間ごとに学習処理が実行されてもよい。
【0017】
ステップS201では、データ取得部101が、データセットを取得する具体的には、m個(mは2以上の自然数)のデータを含むデータセットXとしてX={xm,ym}が与えられる。ここで、データxnはn番目(nは1以上の自然数、1≦n≦m)のデータであり、各データは、D次元の特徴ベクトルを有する。すなわち、xn=[xn1,xn2,...,xnD]と表せる。例えば、データxnは64×64画素のモノクロ画像である場合、画素ごとの特徴ベクトル、すなわちD=64×64=4096個の特徴ベクトルを有する。ラベルynはn番目(nは1以上の自然数、1≦n≦m)のラベルであり、yn=0であれば正常データを示し、yn=1であれば異常データを示す。
【0018】
ステップS202では、異常度算出部102が、データの異常度を算出する。異常度は、例えばモデルがオートエンコーダの場合は再構成誤差を用いればよい。また、モデルが変分オートエンコーダの場合は確率分布の負の対数尤度を用いればよい。
【0019】
具体的にモデルがオートエンコーダの場合を想定する。再構成誤差となる異常度S(xn)は、データとオートエンコーダの出力との平均二乗誤差などを用いればよく、例えば式(1)で表せる。
【0020】
【0021】
θはモデルのパラメータである。f(xn,θ)は、パラメータθを有するオートエンコーダにデータxnを入力した場合の出力である。つまり、xnが画像であれば、画像を構成する画素ごとの差分値の二乗平均が再構成誤差となる。なお、異常度は、尤度関数として表してもよい。異常度算出部102は、異常度として、データが出現する確率が高い場合、すなわち正常データである場合に低くなり、出現する確率が低い場合、すなわち異常データである場合に高くなるような値を算出できればよい。
【0022】
ステップS203では、ロス算出部103が、ロス関数を用いてステップS202で算出された異常度からロス値を算出する。ロス関数は、例えば式(2)で表せる。
【0023】
【0024】
l(xn)はロス値であり、αは後述する調整パラメータである。
式(2)のロス関数は、ロス値l(xn)が小さいほど正常データに対しては異常度が低く、ロス値l(xn)が小さいほど異常データに対しては異常度が正常データの異常度よりも高くなるように設計されている。
【0025】
なお、ロス関数は式(2)に限らず、ロス関数は正常データに対しては異常度に伴って増加し、異常データに対しては異常度に伴って減少する関数を用いて、正常データに対しては低い値、異常データに対しては高い値を算出する関数であればよい。
【0026】
ここで、式(2)において、右辺の第1項「(1-yn)S(xn)」は、正常であることを示す正常ラベルのロスに関する正常ラベル項ともいう。同様に、第2項「-ynloge(1-e-αS(xn))/α」は、異常であることを示す異常ラベルのロスに関する異常ラベル項ともいう。調整パラメータαは、例えば式(3)で表せる。
【0027】
【0028】
ここで、lprev(xn)は1ステップ前のロス値である。「1ステップ前」とは、例えば、モデルの学習における1エポック前または1イテレーション前を想定する。具体的に、1ステップ前が1エポック前である場合、lprev(xn)は、1エポック内で算出されたロス値の平均値である。なお、ロス値に基づく値は、平均値に限らず、最大値や平均値と標準偏差とを組み合わせといった、統計量であってもよい。
【0029】
ステップS204では、更新部105が、学習が終了したか否かを判定する。学習の終了判定は、例えば、所定のエポック数の学習を終了した場合に学習が終了したと判定してもよいし、ロス値l(xn)が閾値以下である場合に学習が終了したと判定してもよいし、あるいは、ロス値の減少が収束した場合に学習が終了したと判定してもよい。学習が終了した場合は、パラメータの更新が打ち切られ、処理が終了する。これにより、学習済みモデルが生成される。一方、学習が終了していない場合は、ステップS205に進む。
【0030】
ステップS205では、更新部105が、ステップS203で算出したロス値を用いて調整パラメータαを更新する。上述の式(2)のロス関数から算出されるロス値l(xn)を最小化する際、式(2)右辺の第1項と第2項、すなわち正常ラベル項と異常ラベル項とのバランスを考慮せずに最小化される場合、正常データに対するロス値を最小化すること、異常データに対するロス値を最小化することのどちらかの最小化が支配的に作用する場合がある。よって、更新部105は、ロス値l(xn)を最小化するにあたり、式(2)右辺の第1項と第2項とのバランスがとれるように、調整パラメータαを調整する。
具体的には、例えば、ロス関数のうちの正常データに関するロス関数とロス関数のうちの異常データに関するロス関数とが、以前に算出されたロス値に基づく値と交差するように調整パラメータαが更新されればよい。
【0031】
ステップS206では、更新部105が、ロス関数により算出されるロス値l(xn)を最小化するように、例えば勾配降下法および誤差逆伝播法によって、モデルのパラメータθ、具体的には、ニューラルネットワークの重みおよびバイアスなどを更新する。その後、ステップS201に戻り、次のデータセットに対して、ステップS201からステップS206までの処理を繰り返し実行する。
【0032】
次に、調整パラメータαによるロス関数のバランス調整について
図3の概念図を参照して説明する。
図3は、上述の式(2)に示すロス関数をグラフ化したものであり、縦軸がロス値を示し、横軸が再構成誤差(本実施形態では異常度)を示す。
【0033】
正常ラベル項のグラフ301は、正常データについては再構成誤差が小さいほど、正常データを再現できているといえるため、再構成誤差が小さい場合にロス値も小さくなるように設計される。つまり、再構成誤差に比例してロス値が大きくなる直線状のグラフで表現される。一方、異常ラベル項のグラフ302およびグラフ303は、異常データに関するロス値であり、再構成誤差が大きいほど正常データからかけ離れた異常データであるといえるため、再構成誤差が大きい場合にロス値が小さくなるように設計される。また、グラフ302およびグラフ303の違いは、調整パラメータαの値の違いにより、異常ラベル項のカーブが調整されることにより生じる。以下、異常ラベル項についてはグラフ302を例に説明する。
【0034】
ここで、グラフ301とグラフ302との交点は、正常ラベル項と異常ラベル項とのロス値が一致することを示す。つまり、調整パラメータαにより、1ステップ前のロス値でグラフ301とグラフ302とが交差し、かつロス値が小さくなるようにモデルのパラメータが更新されることで、正常ラベル項によるロス値と異常ラベル項によるロス値とのバランスを保ちつつ、ロス値が最小化するパラメータを算出できる。
なお、調整パラメータαは、以前に算出されたロス値に基づいており、かつロス関数に組み込まれることから、モデルの学習過程において自動的に計算されるが、例えば表示制御部が、
図3のようなロス関数に関するグラフを表示し、以前に算出された正常ラベル項のグラフ301上に存在するロス値をユーザが指定することで、異常ラベル項が指定された点を交差するようなカーブが計算されてもよい。
【0035】
以上に示した第1の実施形態によれば、1ステップ前のロス値に基づいた調整パラメータを含むロス関数を用いてモデルのパラメータを学習する。具体的には、調整パラメータを用いたロス関数により算出されるロス値を最小化するような、モデルの重みなどのパラメータを決定することで、ロス関数における正常ラベル項と異常ラベル項とのバランスが良く判断されたパラメータが決定される。
これにより、異常ラベルが支配的な学習のような偏った学習がされることなく、異常データが無いときの正常データのみの教師なし学習で学習された学習済みモデルとの整合性を確保しつつ、異常データによる学習効果も得られる。すなわち、モデルの整合性を担保しつつ、モデルの性能を向上させることができる。
【0036】
(第2の実施形態)
第2の実施形態では、第1の実施形態の学習装置で学習された学習済みモデルを用いて、推論を実行する例を示す。
【0037】
第2の実施形態に係る推論装置のブロック図を
図4に示す。
図4に示す推論装置40は、データ取得部101と、モデル実行部401と、表示制御部106とを含む。
【0038】
データ取得部101は、処理対象となる対象データを取得する。例えば、異常データであるか否かを判定したい製品の画像データである。
モデル実行部401は、第1の実施形態に係る学習装置10により生成された学習済みモデル400を含む。モデル実行部401は、データ取得部101から対象データを取得し、当該対象データを学習済みモデル400に入力して推論を実行し、異常度を出力する。ここでは、学習済みモデル400は、学習済みのオートエンコーダであるとする。
具体的には、更新部105により決定された学習済みモデルのパラメータをθ^とする。上付き「^」は、文字の直上に「^」が付与されることを表現する。モデル実行部401には、パラメータθ^と、異常度を算出する対象となる対象データx*nが入力される。当該パラメータθ^の学習済みモデルにより、対象データx*nに対する異常度が、例えば式(4)により算出される。
【0039】
【0040】
また、モデル実行部401は、異常度に基づいて異常データであるか否かを判定し、判定結果を出力してもよい。例えば、異常度が閾値以上であれば、対象データx*nは異常データであると判定できる。反対に異常度が閾値未満であれば、対象データx*nは正常データであると判定できる。
表示制御部106は、モデル実行部401から判定結果を受け取り、外部に判定結果を出力する。
【0041】
次に、第2の実施形態に係る推論装置40による異常度判定結果について
図5のグラフを参照して説明する。
【0042】
グラフ501は、第1の実施形態に係る学習済みモデルを含む第2の実施形態に係る推論装置40による異常度の算出結果のグラフである。グラフ502は、第1の実施形態に係る学習済みモデルの運用前を想定した、異常データが得られる前の正常データのみで学習したオートエンコーダである学習済みモデルによる異常度の算出結果のグラフである。グラフ503は、比較例のグラフであり、正常ラベル項と異常ラベル項とを含むロス関数において、調整パラメータ無しの学習で生成された学習済みモデルによる、異常度の算出結果のグラフである。
【0043】
図5は、グラフ501~グラフ503の結果が得られた各学習済みモデルに対して、正常データ、既知異常データ、未知異常データの3種類を入力し、各学習済みモデルにより推論した結果である。グラフ501の結果が得られた第1の実施形態に係る学習済みモデルおよびグラフ503の結果が得られた比較例となる学習済みモデルの場合、正常データおよび既知異常データはそれぞれ、モデルの学習に用いた正常データおよび異常データである。未知異常データは、モデルの学習に関与していない異常データである。
一方、グラフ502の結果が得られたオートエンコーダの学習済みモデルの場合、正常データのみで学習しているため、正常データはモデルの学習に用いたデータであり、既知異常データおよび未知異常データはモデルの学習に関与していない異常データである。
【0044】
まず
図5左側の正常データに対する異常度の算出結果を見ると、グラフ501は、グラフ502とほぼ同様の異常度である。よって、グラフ501に関する学習済みモデルとグラフ502に関する学習済みモデルとは、正常データの推論において整合性が高いといえる。一方、グラフ503は正常データに対する処理結果にもかかわらず、グラフ501およびグラフ502よりも異常度が高くなっている。これは異常データの再構成誤差が最大化されることに伴い、正常データの再構成誤差も大きくなるからである。よって、グラフ502に関するオートエンコーダと、グラフ503に関する学習済みモデルとは整合性が低いといえる。
【0045】
さらに、
図5中央の既知異常データおよび
図5右側の未知異常データに対する異常度の算出結果を見ると、それぞれ、グラフ501はグラフ502よりも異常度が高い。よって、グラフ502に関するオートエンコーダよりも、グラフ501による本実施形態に係る学習済みモデルのほうが精度良く異常データを判定できている。
【0046】
次に、再構成誤差の画像出力の一例について
図6を参照して説明する。
図6は、上から順に、(入力)学習済みモデルに入力されたターゲットデータの画像データ、(出力)学習済みモデルから出力された画像データ、および、(再構成誤差)ターゲットデータの画像と学習済みモデル出力との差分となる画像データを示す。なお、ターゲットデータは、異常領域603を含む異常データであることを想定する。
【0047】
画像群601は、第2の実施形態に係る学習済みモデルに関する画像データであり、画像群602は、グラフ503と同様にロス関数の調整パラメータ無しの学習がなされた学習済みモデルに関する画像データである。第2の実施形態に係る学習済みモデルでは、ターゲットデータに含まれる異常領域603が学習済みモデルからの出力には存在しない。入力の画像データと出力の画像データとの差分である再構成誤差の画像データには、異常領域603が含まれ、正確な異常検知が実施される。
【0048】
一方、ロス関数の調整パラメータ無しで学習された学習済みモデルでは、出力が正常データを再現できておらず、再構成誤差についても正しく異常領域603を抽出できていないことが分かる。
【0049】
以上に示した第2の実施形態によれば、第1の実施形態で生成されたパラメータを含む学習済みモデルにより、推論を実行することで、既知異常データに対する異常度を大きくする一方、正常データのみで学習した学習済みモデルとの整合性を取ることができる。また、再構成誤差から異常箇所を判定することも容易になる。
【0050】
ここで、上述の実施形態に係る学習装置10および推論装置40のハードウェア構成の一例を
図7のブロック図に示す。
学習装置10および推論装置40は、CPU(Central Processing Unit)71と、RAM(Random Access Memory)72と、ROM(Read Only Memory)73と、ストレージ74と、表示装置75と、入力装置76と、通信装置77とを含み、それぞれバスにより接続される。
【0051】
CPU71は、プログラムに従って演算処理および制御処理などを実行するプロセッサである。CPU71は、RAM72の所定領域を作業領域として、ROM73およびストレージ74などに記憶されたプログラムとの協働により、上述した学習装置10および推論装置40の各部の処理を実行する。
【0052】
RAM72は、SDRAM(Synchronous Dynamic Random Access Memory)などのメモリである。RAM72は、CPU71の作業領域として機能する。ROM73は、プログラムおよび各種情報を書き換え不可能に記憶するメモリである。
【0053】
ストレージ74は、HDD(Hard Disc Drive)等の磁気記録媒体、フラッシュメモリなどの半導体による記憶媒体、または、HDDなどの磁気的に記録可能な記憶媒体、光学的に記録可能な記憶媒体などにデータを書き込みおよび読み出しをする装置である。ストレージ74は、CPU71からの制御に応じて、記憶媒体にデータの書き込みおよび読み出しをする。
【0054】
表示装置75は、LCD(Liquid Crystal Display)などの表示デバイスである。表示装置75は、CPU71からの表示信号に基づいて、各種情報を表示する。
入力装置76は、マウスおよびキーボード等の入力デバイスである。入力装置76は、ユーザから操作入力された情報を指示信号として受け付け、指示信号をCPU71に出力する。
通信装置77は、CPU71からの制御に応じて外部機器とネットワークを介して通信する。
【0055】
上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した学習装置および推論装置の制御動作による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD-ROM、CD-R、CD-RW、DVD-ROM、DVD±R、DVD±RW、Blu-ray(登録商標)Discなど)、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の学習装置および推論装置の制御と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本実施形態における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本実施形態における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
【0056】
なお、本実施形態におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本実施形態における機能を実現することが可能な機器、装置を総称している。
【0057】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行なうことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0058】
10…学習装置、40…推論装置、71…CPU、72…RAM、73…ROM、74…ストレージ、75…表示装置、76…入力装置、77…通信装置、101…データ取得部、102…異常度算出部、103…ロス算出部、104…ロス保持部、105…更新部、106…表示制御部、301~303,501~503…グラフ、400…学習済みモデル、401…モデル実行部、601,602…画像群、603…異常領域