(57)【要約】  診断装置（１０）は、取得部（１０１）と診断部（１４０）とを備える。取得部（１０１）は、異常の有無の診断対象となる入力信号として入力値の系列を取得する。診断部（１４０）は、取得部（１０１）によって取得された系列の入力値を要素とする入力ベクトルと予め定められた第１基準ベクトルとの距離を示す第１指標値と、入力ベクトルと予め定められた第２基準ベクトルとの角度を示す第２指標値と、から異常の有無を診断する。
2019239607.tif 000002
【特許請求の範囲】
【請求項１】
異常の有無の診断対象となる入力信号として入力値の系列を取得する取得手段と、
前記取得手段によって取得された系列の前記入力値を要素とする入力ベクトルと予め定められた第１基準ベクトルとの距離を示す第１指標値と、前記入力ベクトルと予め定められた第２基準ベクトルとの角度を示す第２指標値と、から異常の有無を診断する診断手段と、
を備える診断装置。
【請求項２】
前記診断手段は、前記第１指標値と前記第２指標値との重み付け和から異常の有無を診断する、
請求項１に記載の診断装置。
【請求項３】
学習信号から前記第１基準ベクトル及び前記第２基準ベクトルを学習する学習手段、をさらに備え、
前記取得手段は、前記学習信号と前記入力信号とを取得し、
前記学習手段は、前記第１基準ベクトル及び前記第２基準ベクトルを前記学習信号から学習し、該学習の結果に応じて前記第１基準ベクトル及び前記第２基準ベクトルそれぞれの重みを算出し、
前記重み付け和は、前記学習手段によって算出された重みを、前記入力ベクトルと前記第１基準ベクトルとの距離と、前記入力ベクトルと前記第２基準ベクトルとの角度と、のそれぞれに乗じた値の総和に等しい、
請求項２に記載の診断装置。
【請求項４】
前記学習手段は、前記学習信号から学習値の系列を切り出すことにより該系列の前記学習値を要素とする学習ベクトルを複数生成して、前記学習ベクトル間の距離に応じてクラスタリングすることにより前記第１基準ベクトルを学習し、前記学習ベクトル間の角度に応じてクラスタリングすることにより前記第２基準ベクトルを学習する、
請求項３に記載の診断装置。
【請求項５】
前記学習手段は、
前記学習信号を学習部分信号と試行信号とに分割して、
前記学習部分信号から生成した前記学習ベクトルのクラスタリングにより前記第１基準ベクトル及び前記第２基準ベクトルを学習し、
前記試行信号から試行値の系列を切り出すことにより該系列の前記試行値を要素とする試行ベクトルを生成して、前記試行ベクトルと前記第１基準ベクトルとの距離に応じて前記第１基準ベクトルの重みを算出し、前記試行ベクトルと前記第２基準ベクトルとの角度に応じて前記第２基準ベクトルの重みを算出する、
請求項４に記載の診断装置。
【請求項６】
前記学習手段は、前記第１基準ベクトルに対応するクラスタに属する前記学習ベクトルの数に応じて前記第１基準ベクトルの重みを算出し、前記第２基準ベクトルに対応するクラスタに属する前記学習ベクトルの数に応じて前記第２基準ベクトルの重みを算出する、
請求項４に記載の診断装置。
【請求項７】
前記重み付け和は、前記第１指標値と前記第２指標値との差又は比に対応する重みを、前記第１指標値と前記第２指標値とのそれぞれに乗じた値の総和に等しい、
請求項２に記載の診断装置。
【請求項８】
入力値の系列を取得する取得ステップと、
取得した系列の前記入力値を要素とする入力ベクトルと予め定められた第１基準ベクトルとの距離と、前記入力ベクトルと予め定められた第２基準ベクトルとの角度と、から異常の有無を診断する診断ステップと、
を含む診断方法。
【請求項９】
コンピュータに、
入力値の系列を取得し、
取得した系列の前記入力値を要素とする入力ベクトルと予め定められた第１基準ベクトルとの距離と、前記入力ベクトルと予め定められた第２基準ベクトルとの角度と、から異常の有無を診断する、
ことを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、診断装置、診断方法及びプログラムに関する。
【背景技術】
【０００２】
工場における生産システム及び制御システムのように、センサによるセンシング結果を示す時系列データを利用する種々の処理システムが知られている。この種の処理システムでは、時系列データから異常の有無を診断することが広く行われている。【０００３】
具体的には、監視対象の信号波形が正常時に入力されるべき波形と類似するか否かを判別することで異常の診断をする技術がある（例えば、特許文献１を参照）。特許文献１には、現在の時系列データである入力ベクトルと、データベースに蓄積されている過去の時系列データである入力ベクトルとの間の距離に基づいて異常測度を算出する技術について記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１４９８４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、信号波形が類似するか否かを判別するための尺度としては、特許文献１のようなベクトル間の距離が不適当となるケースもある。例えば、入力ベクトルの要素の比率を維持したまま値の大きさが変動し得るケースにおいて、特許文献１の技術では、入力ベクトルの大きさが変化したときに誤って異常と判断されるおそれがある。このため、異常の有無の診断精度を向上させる余地があった。【０００６】
本発明は、上記の事情に鑑みてなされたものであり、異常の有無の診断精度を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の診断装置は、異常の有無の診断対象となる入力信号として入力値の系列を取得する取得手段と、取得手段によって取得された系列の入力値を要素とする入力ベクトルと予め定められた第１基準ベクトルとの距離を示す第１指標値と、入力ベクトルと予め定められた第２基準ベクトルとの角度を示す第２指標値と、から異常の有無を診断する診断手段と、を備える。
【発明の効果】
【０００８】
本発明によれば、入力ベクトルと第１基準ベクトルとの距離を示す第１指標値と、入力ベクトルと第２基準ベクトルとの角度を示す第２指標値と、から異常の有無が診断される。このため、ベクトル間の距離だけでは誤って診断をされるような場合においても、ベクトル間の角度に基づいて正確な診断をすることが期待される。したがって、異常の有無の診断精度を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態１に係る診断システムの構成を示すブロック図
【図２】実施の形態１に係る診断装置のハードウェア構成を示す図
【図３】実施の形態１に係る異常の診断の概要について説明するための図
【図４】実施の形態１に係る入力信号の切り出しについて説明するための図
【図５】実施の形態１に係る診断装置の機能的な構成を示す図
【図６】実施の形態１に係る基準ベクトルの学習の概要を示す図
【図７】実施の形態１に係る重みの算出の概要を示す図
【図８】実施の形態１に係る診断処理を示すフローチャート
【図９】実施の形態１に係る学習処理を示すフローチャート
【図１０】実施の形態１に係る診断実行処理を示すフローチャート
【図１１】実施の形態１に係る第１算出処理を示すフローチャート
【図１２】実施の形態１に係る第２算出処理を示すフローチャート
【図１３】実施の形態１に係る診断装置の効果について説明するための図
【図１４】実施の形態２に係る診断装置の機能的な構成を示す図
【図１５】実施の形態２に係る指標値の差と重みとの関係を示す図
【図１６】実施の形態２の変形例に係る指標値の差と重みとの関係を示す図
【図１７】実施の形態２の変形例に係る指標値の比と重みとの関係を示す図
【図１８】実施の形態３に係る第１基準ベクトルの学習について説明するための図
【図１９】実施の形態３に係る第２基準ベクトルの学習について説明するための図
【図２０】実施の形態３に係る重みの算出について説明するための図
【図２１】実施の形態３の変形例に係る学習信号を示す第１の図
【図２２】実施の形態３の変形例に係る重みの算出について説明するための第１の図
【図２３】実施の形態３の変形例に係る学習信号を示す第２の図
【図２４】実施の形態３の変形例に係る重みの算出について説明するための第２の図
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態に係る診断システム１００について、図面を参照しつつ詳細に説明する。
【００１１】
実施の形態１．
本実施の形態に係る診断システム１００は、工場に形成される生産システムの一部に相当する。診断システム１００は、生産システムからデータを収集して、収集したデータから、当該生産システムにおける異常の有無を診断する。異常は、例えば、生産ラインに流れるワークの仕様が規格外であること、生産ラインを構成する装置の不具合、及びこの装置の稼働中に生じたエラーを含む。異常は、生産システムの運営者が想定するものとして予め定められる正常な状態とは異なる状態であって、通常は、生産システムによる製品の生産を停止させ、又は歩留まりを低下させる。そして、診断システム１００は、診断の結果を示す情報をユーザに提供する。診断システム１００は、図１に示されるように、異常の有無を診断する診断装置１０と、診断装置１０に信号を送信する複数の機器２１と、を有している。なお、図１では、１つの機器２１が代表して示されている。
【００１２】
診断装置１０と機器２１とは、ネットワーク２０を介して互いに通信可能となるように接続される。ネットワーク２０は、産業用のＦＡネットワークである。ただし、ネットワーク２０は、これに限定されず、広域通信のための通信ネットワークであってもよいし、専用線であってもよい。
【００１３】
機器２１は、例えば、センサ装置、アクチュエータ又はロボットである。機器２１は、信号源２１１としてのセンサを有する。機器２１は、このセンサによるセンシング結果を、ネットワーク２０を介して繰り返し診断装置１０に通知することにより、センシング結果の推移を示すデジタル信号を診断装置１０に送信する。センサは、例えば、圧力センサ、照度センサ、超音波センサ又はその他のセンサである。機器２１から送信される信号は、スカラー値の時系列信号であって、そのサンプリング周期は、例えば１０ｍｓ、１００ｍｓ、又は１ｓｅｃである。
【００１４】
ただし、機器２１から送信される信号は、スカラー値に限らず、ベクトル値の信号であってもよい。また、機器２１は、センサのサンプリング周期とは異なる周期で診断装置１０にデータを送信してもよい。例えば、機器２１は、センサによるサンプリング値がバッファにある程度蓄積されたときに、蓄積されたサンプリング値を含むデータを診断装置１０に送信してもよい。信号源２１１は、センサの他、例えば、生産システムにおける機器２１の動作を同期させるための同期信号を生成する発振器、又は、遠隔の対向機器と通信する受信機若しくはアンテナであってもよい。
【００１５】
診断装置１０は、工場に配置されるＩＰＣ（Industrial Personal Computer）である。診断装置１０は、そのハードウェア構成として、図２に示されるように、プロセッサ１１と、主記憶部１２と、補助記憶部１３と、入力部１４と、出力部１５と、通信部１６と、を有する。主記憶部１２、補助記憶部１３、入力部１４、出力部１５及び通信部１６はいずれも、内部バス１７を介してプロセッサ１１に接続される。
【００１６】
プロセッサ１１は、ＣＰＵ（Central Processing Unit）を含む。プロセッサ１１は、補助記憶部１３に記憶されるプログラムＰ１を実行することにより、診断装置１０の種々の機能を実現して、後述の処理を実行する。
【００１７】
主記憶部１２は、ＲＡＭ（Random Access Memory）を含む。主記憶部１２には、補助記憶部１３からプログラムＰ１がロードされる。そして、主記憶部１２は、プロセッサ１１の作業領域として用いられる。
【００１８】
補助記憶部１３は、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）及びＨＤＤ（Hard Disk Drive）に代表される不揮発性メモリを含む。補助記憶部１３は、プログラムＰ１の他に、プロセッサ１１の処理に用いられる種々のデータを記憶する。補助記憶部１３は、プロセッサ１１の指示に従って、プロセッサ１１によって利用されるデータをプロセッサ１１に供給し、プロセッサ１１から供給されたデータを記憶する。なお、図２では、１つのプログラムＰ１が代表的に示されているが、補助記憶部１３は、複数のプログラムを記憶してもよいし、主記憶部１２には、複数のプログラムがロードされてもよい。
【００１９】
入力部１４は、入力キー及びポインティングデバイスに代表される入力デバイスを含む。入力部１４は、診断装置１０のユーザによって入力された情報を取得して、取得した情報をプロセッサ１１に通知する。
【００２０】
出力部１５は、ＬＣＤ（Liquid Crystal Display）及びスピーカに代表される出力デバイスを含む。出力部１５は、プロセッサ１１の指示に従って、種々の情報をユーザに提示する。
【００２１】
通信部１６は、外部の装置と通信するためのネットワークインタフェース回路を含む。通信部１６は、外部から信号を受信して、この信号により示されるデータをプロセッサ１１へ出力する。また、通信部１６は、プロセッサ１１から出力されたデータを示す信号を外部の装置へ送信する。
【００２２】
図２に示されるハードウェア構成が協働することにより、診断装置１０は、異常の有無を診断して、診断結果を示す情報を出力する。詳細には、診断装置１０は、後述の手法で信号を分析した結果として異常の有無を診断する。
【００２３】
ここで、診断装置１０による信号分析の基本的な手法について、図３，４を用いて説明する。図３には、異常の診断の概要が示されている。図３上部には、診断装置１０に入力される入力信号が示されている。この入力信号は、正常時には、複数の波形パターンのいずれか１つと類似する波形を有する。このため、入力信号の波形がいずれの波形パターンからも乖離する形状である場合には、異常であると判定される。
【００２４】
図３における入力信号の最初の波形２３は、複数の波形パターンＡ，Ｂ，Ｃそれぞれと比較された結果、波形パターンＡと比較したときに最高の類似度である０．９９を示す。この最高類似度が閾値を超えているため、波形２３に関しては正常と判断される。類似度は、波形同士が類似する度合いを示すゼロから１までの範囲の値であって、波形が一致する場合には類似度が１になる。類似度の算出手法については、後述する。また、閾値は、例えば０．８であって、予め規定されてもよいし、ユーザによって設定されてもよい。
【００２５】
引き続き、入力信号の波形が波形パターンＡ，Ｃ，Ｃ，Ｃ，Ｂ，Ａに最も類似すると順に判定され、その類似度は０．９１，０．９２，０．８９，０．８５，０．９８，０．５５と順に算出される。最後の波形２４に関して、複数の波形パターンＡ，Ｂ，Ｃのうち最も類似するパターンは波形パターンＡであるが、その類似度は閾値より低い０．５５である。このため、最後の波形２４については異常であると判定される。
【００２６】
図４には、波形を比較するための入力信号の切り出しについて示されている。図４に示されるように、診断装置１０は、予め規定された幅のウィンドウ２６を一定のシフト幅でスライドさせる。ウィンドウ２６は、入力信号の一部を切り出すための窓であって、例えば、一部の区間の値を１として他の値をゼロとして規定される矩形の窓関数のうちの値が１である区間に相当し、この窓関数を入力信号に乗じることで入力信号の一部が切り出される。診断装置１０は、ウィンドウ２６をスライドさせる度に、ウィンドウ２６に相当する区間の部分信号を入力信号から切り出す。そして、メモリ２７に予め記憶される波形パターンから、部分信号の最近傍のパターンを抽出して、部分信号と最近傍パターンとを比較した結果としての類似度を得る。ここで、最近傍のパターンは、類似度が最高になる波形パターンを意味する。
【００２７】
波形パターンは、正常時に入力信号が有するべき波形であって、予めメモリ２７に格納される。詳細には、図４に示されるように、入力信号から一定のシフト幅で切り出された部分信号について異常の有無を判定するために、診断装置１０は、正常時に入力されるべき波形が時間方向にシフトしたパターンを予め波形パターンとして記憶している。
【００２８】
なお、入力信号から切り出される部分信号は、デジタル信号であり、サンプリング値の時間に沿った系列であるため、ベクトルとしても表現される。系列は、値が一続きになったまとまりを意味する。また、波形パターンについても入力信号と同様にベクトルとして表現されれば、ベクトルの演算により波形を比較することができるため都合がよい。
【００２９】
診断装置１０は、上述のような波形の比較を２通りの手法で行い、それぞれの手法の結果を統合することで異常の有無を診断する。これら２通りの手法のうち、第１の手法は、入力信号と波形パターンとの距離に着目する手法であって、第２の手法は、入力信号と波形パターンとの角度に着目する手法である。詳細には、第１の手法は、入力信号から切り出された部分信号に相当するベクトルである入力ベクトルと、第１の手法で用いる波形パターンに相当するベクトルである第１基準ベクトルと、の距離により、これらのベクトルが類似する度合いを示す第１指標値を得る手法である。また、第２の手法は、入力信号から切り出された部分信号に相当する入力ベクトルと、第２の手法で用いる波形パターンに相当するベクトルである第２基準ベクトルと、の角度により、これらのベクトルが類似する度合いを示す第２指標値を得る手法である。
【００３０】
第１基準ベクトル及び第２基準ベクトルは、正常時に入力ベクトルが有するべき波形を示すベクトルであって、２通りの手法それぞれに適した第１基準ベクトル及び第２基準ベクトルを異常の診断に先立って予め準備する必要がある。診断装置１０は、これらの第１基準ベクトル及び第２基準ベクトルを学習する機能を有する。詳細には、診断装置１０は、正常時に入力されるべき波形を示すものとしてユーザから提供される学習信号から、第１基準ベクトル及び第２基準ベクトルを学習する機能を有する。そして、学習の終了後に、診断装置１０は、学習した第１基準ベクトル及び第２基準ベクトルを利用して、診断対象となる入力信号について異常の有無を診断する。以下では、第１基準ベクトル及び第２基準ベクトルを総称して単に基準ベクトルという。
【００３１】
また、第１指標値は、入力ベクトルにより示される波形と、第１基準ベクトルにより示される波形と、が類似する度合いを示す指標となる値であって、これらの波形の類似度に相当する。また、第２指標値は、入力ベクトルにより示される波形と、第２基準ベクトルにより示される波形と、が類似する度合いを示す指標となる値であって、これらの波形の類似度に相当する。第１指標値及び第２指標値の算出手法の詳細については、後述する。
【００３２】
診断装置１０は、その機能として、図５に示されるように、学習信号及び入力信号を取得する取得部１０１と、正常時に入力信号が有するべき波形を示す第１基準ベクトル及び第２基準ベクトルを学習信号から学習する学習部１０２と、学習部１０２によって学習された第１基準ベクトルを記憶する記憶部１１１と、学習部１０２によって学習された第２基準ベクトルを記憶する記憶部１２１と、入力信号としての入力ベクトルと第１基準ベクトルとの距離を示す第１指標値を算出する第１算出部１１０と、入力ベクトルと第２基準ベクトルとの角度を示す第２指標値を算出する第２算出部１２０と、第１指標値と第２指標値とを統合した出力値を算出する第３算出部１３０と、出力値から異常の有無を診断する診断部１４０と、を有する。なお、図５中、太い矢印は、学習信号から基準ベクトルを学習する際のデータの流れを示し、細い矢印は、学習の終了後に、入力信号から出力値を算出する際のデータの流れを示している。
【００３３】
取得部１０１は、主としてプロセッサ１１及び通信部１６によって実現される。取得部１０１は、基準ベクトルを学習するための学習信号と、異常の有無の監視対象となる入力信号と、を取得する。詳細には、取得部１０１は、ユーザによってネットワーク２０を介して提供される学習信号を取得する。学習信号は、基準ベクトルを十分に学習するためにある程度長い信号であって、正常時に入力されるべき信号の波形をすべて含むことが望ましい。また、取得部１０１は、機器２１からネットワーク２０を介してデータを繰り返し受信することにより、信号源２１１によって生成された入力信号を受信する。取得部１０１は、請求項の取得手段として機能する。
【００３４】
学習部１０２は、主としてプロセッサ１１によって実現される。学習部１０２は、取得部１０１によって取得された学習信号から、第１指標値を算出するための第１基準ベクトル、及び第２指標値を算出するための第２基準ベクトルを学習する。また、学習部１０２は、学習の結果に応じて第１基準ベクトル及び第２基準ベクトルそれぞれの重みを算出する重み算出部１０２１を有する。重み算出部１０２１によって算出された重みは、第３算出部１３０に提供される。学習部１０２は、請求項の学習手段として機能する。
【００３５】
ここで、学習部１０２による基準ベクトルの学習の概要について、図６を用いて説明する。図６の最上段には、学習信号が示されている。この学習信号は、正常時に入力信号が有するべき波形として、急峻に立ち上がってから緩やかに下がる波形３０１と、台形状の波形３０２と、緩やかに立ち上がってから急峻に下がる波形３０３と、を有している。学習部１０２は、この学習信号を、基準ベクトルを学習するための学習部分信号と、重みを算出するための試行信号と、に分割する。
【００３６】
学習部１０２が基準ベクトルを学習するために、入力信号からの入力ベクトルの抽出と同様に、学習信号から抽出されたベクトルが用いられる。学習信号は、サンプリング値である学習値の時系列信号であり、学習信号から切り出される部分信号は、この学習値の時間に沿った系列であって、ベクトルとして表現される。以下では、学習信号から切り出された部分信号に相当するベクトルを学習ベクトルという。
【００３７】
詳細には、図６に示されるように、学習部１０２は、ウィンドウ３１０をスライドさせる度に、学習部分信号から学習値の系列を切り出すことにより、この系列の学習値を要素とする学習ベクトル３１１を生成する。そして、学習部１０２は、学習ベクトル３１１間の距離に応じて複数の学習ベクトル３１１をクラスタリングすることにより、学習ベクトル３１１を代表する一又は複数の第１基準ベクトルを学習する。また、学習部１０２は、学習ベクトル３１１間の角度に応じてクラスタリングすることにより学習ベクトル３１１を代表する一又は複数の第２基準ベクトルを学習する。
【００３８】
ここで、ベクトル間の距離は、一のベクトルと他のベクトルとの距離であって、例えば、ベクトルの各要素の自乗誤差の総和の平方根に相当するユークリッド距離である。ただし、これには限定されず、ベクトル間の距離は、マンハッタン距離であってもよいし、ＤＴＷ（Dynamic Time Warping）により規定される距離であってもよいし、他の距離であってもよい。
【００３９】
また、ベクトル間の角度は、一のベクトルと他のベクトルとの角度であって、単位をｄｅｇ又はｒａｄとする量である。この角度は、例えば、一のベクトルと他のベクトルとの内積を、当該一のベクトルの大きさと当該他のベクトルの大きさとで除して得た値をｘとしたときのａｒｃｃｏｓ（ｘ）として得ることができる。
【００４０】
学習ベクトル３１１間の距離に応じたクラスタリングは、複数の学習ベクトル３１１をクラスタリングするための尺度を距離とすることを意味し、学習ベクトル３１１間の角度に応じたクラスタリングは、学習ベクトル３１１をクラスタリングするための尺度を角度とすることを意味する。ベクトルのクラスタリングは、複数のベクトルを、ある尺度に従って類似するベクトルをクラスタにまとめることであって、通常は、複数のベクトルがそれぞれいずれかのクラスタに振り分けられる。クラスタリングの手法は任意であって、例えばｋ平均法又は混合ガウシアンモデル（GMM; Gaussian Mixture Model）を採用してもよい。また、距離に応じたクラスタリングと角度に応じたクラスタリングとで異なる手法を採用してもよい。さらに、クラスタ数は、予め規定されてもよいし、ＡＩＣ（Akaike Information Criteria）に代表される尺度を用いて適当なクラスタ数を決定してもよい。
【００４１】
第１基準ベクトル及び第２基準ベクトルは、クラスタ中心のベクトルであってもよいし、各クラスタを代表するいずれかの学習ベクトル３１１であってもよい。通常は、距離に応じたクラスタリングにより形成された複数のクラスタそれぞれに対応するベクトルが第１基準ベクトルとして学習される。すなわち、複数のベクトルが第１基準ベクトルとして学習される。また、角度に応じた複数のクラスタそれぞれに対応するベクトルが第２基準ベクトルとして学習される。すなわち、複数のベクトルが第２基準ベクトルとして学習される。
【００４２】
例えば、距離に応じたクラスタリングの結果、一のベクトルが一のクラスタに属することとなった場合、当該一のベクトルについては、当該一のクラスタに対応する第１基準ベクトルとの距離が、他のいずれのクラスタに対応する第１基準ベクトルとの距離よりも小さくなる。同様に、角度に応じたクラスタリングの結果、一のベクトルが一のクラスタに属することとなった場合、当該一のベクトルについては、当該一のクラスタに対応する第２基準ベクトルとの角度が、他のいずれのクラスタに対応する第２基準ベクトルとの距離よりも小さくなる。
【００４３】
ただし、クラスタリングの結果、単一のクラスタのみが形成される場合も想定される。例えば、正常時に入力されるべき波形が１つのパターンに固定されており、このパターンが、図６に示されるウィンドウ３１０のシフト幅に等しい周期で現れるようなケースでは、実質的に同等の学習ベクトル３１１が、１つのクラスタにクラスタリングされ得る。
【００４４】
図５に戻り、学習部１０２の重み算出部１０２１は、図６中の試行信号について、図４に示される手法により第１基準ベクトルを用いて類似度を算出した結果に応じて、第１基準ベクトルの重みを算出する。また、重み算出部１０２１は、試行信号について、図４に示される手法により第２基準ベクトルを用いて類似度を算出した結果に応じて、第２基準ベクトルの重みを算出する。
【００４５】
第１基準ベクトルを用いて算出される類似度は、ベクトル間の距離をゼロから１の範囲内におさまるように正規化することで算出される。ベクトルが同一であれば、ベクトル間の距離はゼロとなり、類似度は１になる。例えば、ベクトル間の距離をＤとして、類似度Ｅは、Ｅ＝１／（１＋Ｄ）として算出される。ただし、類似度Ｅを得るための算出式は、これに限定されず任意である。
【００４６】
また、第２基準ベクトルを用いて算出される類似度は、ベクトル間の角度に応じたゼロから１の範囲内の値である。ベクトル間の角度がゼロであれば、類似度は１となる。例えば、ベクトル間の角度をθとして、類似度Ｆは、Ｆ＝（ｃｏｓθ／２）＋（１／２）として算出される。ここで、ベクトルＡの成分を（ａ１，ａ２）とし、ベクトルＢの成分を（ｂ１，ｂ２）とすると、余弦ｃｏｓθは、次式（１）により算出される。
【００４７】
ｃｏｓθ＝（Ａ・Ｂ）／｜Ａ｜｜Ｂ｜
＝（ａ１・ｂ１＋ａ２・ｂ２）／（（ａ１２＋ａ２２）１／２（ｂ１２＋ｂ２２）１／２）  ・・・（１）
【００４８】
ベクトルＡ，Ｂが３次元である場合には、ベクトルＡの成分を（ａ１，ａ２，ａ３）とし、ベクトルＢの成分を（ｂ１，ｂ２，ｂ３）とすると、余弦ｃｏｓθは、次式（２）により算出される。
【００４９】
ｃｏｓθ＝（Ａ・Ｂ）／｜Ａ｜｜Ｂ｜
＝（ａ１・ｂ１＋ａ２・ｂ２＋ａ３・ｂ３）／（（ａ１２＋ａ２２＋ａ３２）１／２（ｂ１２＋ｂ２２＋ｂ３２）１／２）  ・・・（２）
【００５０】
ただし、上記式（１），（２）中の「Ａ・Ｂ」は、ベクトルの内積を意味し、「ａ１・ｂ１」は、成分の乗算を意味する。なお、第２基準ベクトルとの類似度は、ベクトル間の角度に応じて他の手法により算出されてもよい。例えば、類似度Ｆは、ベクトル間の角度をθとして、Ｆ＝１／（１＋｜θ｜）という式に従って算出されてもよい。
【００５１】
図７には、重み算出部１０２１による重みの算出の概要について示されている。重み算出部１０２１は、ウィンドウ３１４をスライドさせて試行信号から試行値の系列を切り出すことにより、この系列の試行値を要素とする試行ベクトル３１５を複数生成する。重み算出部１０２１は、各試行ベクトル３１５について、最近傍のベクトルを第１基準ベクトルから選択し、最近傍のベクトルを第２基準ベクトルから選択する。詳細には、重み算出部１０２１は、各試行ベクトル３１５について、複数の第１基準ベクトルから当該試行ベクトル３１５との類似度が最も高い第１基準ベクトルを選択し、複数の第２基準ベクトルから当該試行ベクトル３１５との類似度が最も高い第２基準ベクトルを選択する。
【００５２】
第１基準ベクトル各々については、最近傍のベクトルとして選択される度に類似度が算出され、第２基準ベクトル各々については、最近傍のベクトルとして選択される度に類似度が算出される。図７には、各基準ベクトルについて算出される類似度の例が示されている。例えば、図７の上部に示される試行ベクトル３１５のうちの１つの試行ベクトル３１５ａについて、複数の第１基準ベクトルそれぞれとの類似度を算出すると、第１基準ベクトル３１６との類似度である０．９が最も高い値になる。また、この試行ベクトル３１５ａについて、複数の第２基準ベクトルそれぞれとの類似度を算出すると、第２基準ベクトル３１７との類似度である０．９が最も高い値になる。図７では、他の試行ベクトル３１５について、第１基準ベクトルのうち最近傍のベクトルとの類似度を示す数値が四角で囲まれて示されており、第２基準ベクトルのうち最近傍のベクトルとの類似度を示す数値が四角で囲まれて示されている。
【００５３】
そして、重み算出部１０２１は、第１基準ベクトル各々について、算出された類似度の平均値が大きいほど重みが大きくなるように、重みを算出する。また、重み算出部１０２１は、第２基準ベクトル各々について、算出された類似度の平均値が大きいほど重みが大きくなるように、重みを算出する。換言すると、基準ベクトルが試行信号の波形と一致するほど、その基準ベクトルには大きい重みが付される。例えば、重み算出部１０２１は、類似度の平均値をそのまま重みとして採用する。図７下部では、基準ベクトル各々について、横方向に現れた数値の平均値が、その基準ベクトルに対応する重みとして算出される。
【００５４】
図５に戻り、学習部１０２は、学習した第１基準ベクトルを記憶部１１１に格納し、学習した第２基準ベクトルを記憶部１２１に格納する。記憶部１１１，１２１は、主として補助記憶部１３によって実現される。
【００５５】
第１算出部１１０は、主としてプロセッサ１１によって実現される。第１算出部１１０は、取得部１０１によって入力信号として取得された入力値の系列を、この系列の入力値それぞれを要素とする入力ベクトルとして扱う。この入力ベクトルの次元は、取得部１０１によって取得された系列を構成する入力値の数に等しい。そして、第１算出部１１０は、図３，４に示される手法で類似度を算出する。詳細には、第１算出部１１０は、入力ベクトルと、複数の第１基準ベクトルそれぞれとを比較して類似度を算出して、最も高い類似度を第１指標値として出力する。より詳細には、第１算出部１１０は、入力ベクトルと最近傍の第１基準ベクトルとの距離を示す第１指標値を出力する。
【００５６】
第２算出部１２０は、主としてプロセッサ１１によって実現される。第２算出部１２０は、第１算出部１１０と同様に図３，４に示される手法で、入力ベクトルと第２基準ベクトルとを比較して類似度を算出し、最も高い類似度を第２指標値として出力する。詳細には、第２算出部１２０は、入力ベクトルと最近傍の第２基準ベクトルとの角度を示す第２指標値を出力する。
【００５７】
第３算出部１３０は、主としてプロセッサ１１によって実現される。第３算出部１３０は、第１算出部１１０によって算出された第１指標値と、第２算出部１２０によって算出された第２指標値と、の重み付け和として出力値を算出する。詳細には、第３算出部１３０は、次式（３）に示される演算により出力値Ａ３を算出する。
【００５８】
Ａ３＝ｗ１・Ａ１＋ｗ２・Ａ２  ・・・（３）
【００５９】
ここで、Ａ１は第１指標値であって、Ａ２は第２指標値である。ｗ１は、第１指標値の重み係数であって、第１指標値を算出する際に第１算出部１１０によって選択された最近傍の第１基準ベクトルの重みである。ｗ２は、第２指標値の重み係数であって、第２指標値を算出する際に第２算出部１２０によって選択された最近傍の第２基準ベクトルの重みである。第３算出部１３０は、これらの重みを学習部１０２から予め取得して保持しておく。通常、ｗ１とｗ２は、その総和が１．０となるように大きさが調整され、出力値は、ゼロから１までの範囲内の値になる。
【００６０】
診断部１４０は、主としてプロセッサ１１、出力部１５又は通信部１６によって実現される。診断部１４０は、第３算出部１３０によって算出された出力値に基づいて異常の有無を診断する。例えば、診断部１４０は、出力値が閾値を超えるか否かを判定することにより異常の有無を判定する。この閾値は、例えば０．８であって、予め規定されていてもよいし、ユーザによって変更されてもよい。診断部１４０による診断結果の情報の出力は、画面表示によるユーザへの提示であってもよいし、診断装置１０が有する信号処理回路への出力であってもよいし、ネットワーク２０を介したデータの送信であってもよい。診断部１４０は、請求項の診断手段として機能する。
【００６１】
続いて、診断装置１０によって実行される診断処理について、図８〜１２を用いて説明する。図８に示される診断処理は、診断装置１０の電源が投入されることで開始する。
【００６２】
診断処理では、診断装置１０は、学習処理を実行し（ステップＳ１）、診断実行処理を実行する（ステップＳ２）。以下、学習処理と診断実行処理について順に説明する。
【００６３】
図９には、学習処理の手順が示されている。学習処理は、学習信号から基準ベクトルを学習する処理であって、主として学習部１０２によって実行される。
【００６４】
学習処理では、取得部１０１は、学習信号を取得する（ステップＳ１１）。具体的には、取得部１０１が、学習信号を示すデータを取得して、当該データから学習信号を抽出する。
【００６５】
次に、学習部１０２は、ステップＳ１１で取得された学習信号を学習部分信号と試行信号とに分割する（ステップＳ１２）。具体的には、学習部１０２は、学習信号を前段と後段で等分する。ただし、分割の手法は任意であって、他の手法により分割してもよい。
【００６６】
次に、学習部１０２は、学習部分信号から学習値の系列を切り出すことにより学習ベクトルを複数生成する（ステップＳ１３）。そして、学習部１０２は、学習ベクトルをベクトル間の距離に応じてクラスタリングすることにより第１基準ベクトルを学習し（ステップＳ１４）、学習ベクトルをベクトル間の角度に応じてクラスタリングすることにより第２基準ベクトルを学習する（ステップＳ１５）。
【００６７】
次に、学習部１０２は、試行信号について、類似度を算出した結果に応じて重みを算出する（ステップＳ１６）。具体的には、重み算出部１０２１が、試行信号と第１基準ベクトル及び第２基準ベクトルとを比較した結果に応じて、第１基準ベクトル及び第２基準ベクトルそれぞれの重みを算出する。その後、学習処理が終了して、診断装置１０による処理は、図８に示される診断処理に戻る。
【００６８】
続いて、診断実行処理について図１０を用いて説明する。診断実行処理は、入力信号から出力値を算出して異常の有無を診断する処理である。
【００６９】
診断実行処理では、取得部１０１は、入力信号として入力値の系列を取得する（ステップＳ２１）。このステップＳ２１は、請求項の取得ステップに対応する。ここで取得される系列は、図４に示されたウィンドウ２６で区切られた部分信号に相当する。入力値の系列は、入力値を要素とする入力ベクトルとして以降で扱われる。
【００７０】
次に、第１算出部１１０による第１算出処理が実行される（ステップＳ２２）。第１算出処理は、第１算出部１１０が、ステップＳ２１で取得された入力ベクトルから第１指標値を算出する処理である。
【００７１】
第１算出処理では、図１１に示されるように、第１算出部１１０が、第１基準ベクトルから、入力ベクトルに類似する第１最近傍ベクトルを抽出する（ステップＳ２２１）。そして、第１算出部１１０が、入力ベクトルと第１最近傍ベクトルとの類似度を第１指標値として出力する（ステップＳ２２２）。その後、第１算出処理が終了して、診断装置１０による処理は、図１０の診断実行処理に戻る。
【００７２】
第１算出処理（ステップＳ２２）に続いて、第２算出部１２０による第２算出処理が実行される（ステップＳ２３）。第２算出処理は、第２算出部１２０が、ステップＳ２１で取得された入力ベクトルから第２指標値を算出する処理である。
【００７３】
第２算出処理では、図１２に示されるように、第２算出部１２０が、第２基準ベクトルから、入力ベクトルに類似する第２最近傍ベクトルを抽出する（ステップＳ２３１）。そして、第２算出部１２０が、入力ベクトルと第２最近傍ベクトルとの類似度を第２指標値として出力する（ステップＳ２３２）。その後、第２算出処理が終了して、診断装置１０による処理は、図１０の診断実行処理に戻る。
【００７４】
第２算出処理（ステップＳ２３）に続いて、第３算出部１３０が、第３算出処理を実行する（ステップＳ２４）。具体的には、第３算出部１３０が、ステップＳ２２で算出された第１指標値と、ステップＳ２３で算出された第２指標値と、の重み付け和として出力値を算出する。
【００７５】
次に、診断部１４０が、ステップＳ２４で算出された出力値から異常の有無を診断する（ステップＳ２５）。このステップＳ２５は、請求項の診断ステップに対応する。その後、診断装置１０は、ステップＳ２１以降の処理を繰り返す。これにより、図４に示されるウィンドウ２６のスライディングによる類似度の順次算出と同様に、入力信号から順次切り出される入力ベクトルについて異常の有無が診断される。
【００７６】
以上、説明したように、診断装置１０によれば、入力ベクトルと第１基準ベクトルとの距離を示す第１指標値と、入力ベクトルと第２基準ベクトルとの角度を示す第２指標値と、から異常の有無が診断される。このため、ベクトル間の距離だけでは誤って診断をされるような場合においても、ベクトル間の角度に基づいて正確な診断をすることが期待される。したがって、異常の有無の診断精度を向上させることができる。
【００７７】
ここで、具体例について図１３を用いて説明する。図１３には、入力信号が急峻に立ち上がり緩やかに下がる波形を有し、それぞれの入力値が学習信号の値の２倍となっている例が示されている。この入力信号としての入力ベクトルＡ１に対して、図１３下部に黒塗りの丸いマークで示される第１基準ベクトルＲ１，Ｒ２，Ｒ３のうち最もユークリッド距離が短い第１基準ベクトルＲ１が第１最近傍ベクトルＲ１として選択される。具体的には、ベクトル間の距離を尺度とすれば、第１基準ベクトルＲ１，Ｒ２，Ｒ３のうちベクトルＡ１の最近傍にあるベクトルはＲ１であって、その波形は図１３上部に示されるように台形である。しかしながら、入力ベクトルの波形は、学習時から単にスケールが変わっているだけであって、台形の波形と比較されると、正しく異常の有無を診断することができない。
【００７８】
これに対して、入力ベクトルＡ１に対して、図１３下部に白抜きの四角いマークで示される第２基準ベクトルＱ１，Ｑ２，Ｑ３のうち最も入力ベクトルＡ１とのなす角度が小さい第２基準ベクトルＱ１が第２最近傍ベクトルとして選択される。すなわち、ベクトル間の角度を尺度とすれば、第２基準ベクトルＱ１，Ｑ２，Ｑ３のうちベクトルＡ１の最近傍にあるベクトルはＱ１であって、その波形は図１３上部に示されるように、急峻に立ち上がってから緩やかに下がる波形である。このため、入力信号の値の大きさが変化した波形が正常と診断されるべき場合には、第２指標値が、波形の類似する度合いを正しく表しているといえる。
【００７９】
そして、診断装置１０は、第１指標値と第２指標値とを統合して出力値を算出する。このため、診断装置１０による異常の診断は、ベクトル間の距離のみに基づいて行われる場合に比して、より正確に実施されることが期待される。具体的には、正常時において入力信号の値のスケールが変化し得るような場合にも、ベクトル間の角度に基づく第２指標値も加味して異常の有無を診断するため、誤診断の発生率を低減することが期待される。
【００８０】
また、診断部１４０は、第１指標値と第２指標値との重み付け和として第３算出部によって算出される出力値から異常の有無を診断した。このため、診断に必要な演算負荷を比較的小さいものとして、診断の順次実行を容易に実現することができる。
【００８１】
また、学習部１０２が学習信号から基準ベクトルを学習し、この学習の結果に応じて基準ベクトルの重みが算出された。このため、第１指標値及び第２指標値に対して、学習に即した重みを付して異常の有無を診断することができる。学習信号は、正常時に入力されるべき波形を示す信号であって、学習信号により示される正常時の波形は、ある程度のバラつきがある。このようなバラつきを加味した重みを基準ベクトルに付与することで、より正確な診断をすることができると考えられる。
【００８２】
また、学習部１０２は、学習ベクトルのクラスタリングにより基準ベクトルを学習した。学習信号に含まれる多数の波形をすべて基準ベクトルとして扱うと、演算量が過剰に大きくなる。これに対して、学習部１０２は、クラスタリングをすることで、診断に用いる基準ベクトルを効率的に学習することができる。
【００８３】
また、学習部１０２は、学習信号を、学習部分信号と試行信号に分割して、学習部分信号から基準ベクトルを学習し、試行信号から基準ベクトルの重みを算出した。試行信号は、学習された基準ベクトルを用いた類似度の算出を試行するための信号といえる。基準ベクトルを学習するための信号とは異なる信号で重みを得ることにより、その後の診断実行処理において有効な重みが算出されると期待される。
【００８４】
なお、重み算出部１０２１は、基準ベクトルが試行ベクトルの最近傍のベクトルとして選択された際に算出される類似度の平均値を重みとして算出したが、これには限定されない。例えば、重み算出部１０２１は、試行ベクトルについて算出される類似度の変動に応じて重みを算出してもよい。詳細には、重み算出部１０２１は、類似度の変動が小さいほど大きい重みを算出してもよい。このような重みとしては、例えば、類似度の標準偏差に代表される統計値に応じた重みが考えられる。
【００８５】
実施の形態２．
続いて、実施の形態２について、上述の実施の形態１との相違点を中心に説明する。なお、上記実施の形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。実施の形態１では、第１基準ベクトル及び第２基準ベクトルそれぞれに付される重みが学習信号から算出されたが、他の形態も考えられる。以下では、重みが指標値の大きさに基づいて決定される例について説明する。
【００８６】
本実施の形態に係る診断装置１０は、図１４に示されるように、学習部１０２を省略して構成される。記憶部１１１，１２１には、ユーザによって予め第１基準ベクトル及び第２基準ベクトルが格納される。そして、第３算出部１３０は、第１指標値及び第２指標値が算出される度に、これらの指標値に乗じるべき重みを決定した上で、出力値を算出する。
【００８７】
図１５には、第１指標値と第２指標値との差と重みとの関係が示されている。詳細には、第１指標値から第２指標値を減じて得る差に対して、第１指標値の重みが線Ｌ１で示されていて、第２指標値の重みが線Ｌ２で示されている。これら線Ｌ１，Ｌ２は、第１指標値と第２指標値との大きい方の重み係数を大きくして、第１指標値と第２指標値とが等しい場合には重み係数を等しくすることを示している。
【００８８】
以上、説明したように、第３算出部１３０は、第１指標値と第２指標値との大きい方を重視した出力値を算出する。これにより、入力ベクトルと基準ベクトルとの間の距離又は角度が近い場合には、波形が類似する度合いを示す出力値が大きくなる。この出力値は、より正確な異常の診断に利用することができる。
【００８９】
なお、第３算出部１３０による重みの決定は、図１５に示された例に限定されない。例えば、図１６に示されるように、第１指標値と第２指標値とのいずれか一方の重みを１として、他方の重みをゼロとしてもよい。図１６の例では、実質的に、第１指標値及び第２指標値のうち大きい方を出力値として採用することとなる。
【００９０】
また、図１７に示されるように、第１指標値と第２指標値との比に対して、重みを決定してもよい。図１７の例では、第１指標値を第２指標値で除して得る商の逆数が第１指標値の重みとされる。
【００９１】
実施の形態３．
続いて、実施の形態３について、上述の実施の形態１との相違点を中心に説明する。なお、上記実施の形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。上記実施の形態１では、学習信号から分割された試行信号を用いて重みが決定されたが、学習信号を分割することなく重みを決定する形態も考えられる。以下では、学習信号を分割することなく基準ベクトルを学習した結果に応じて重みを決定する例について説明する。
【００９２】
図１８には、学習信号から第１基準ベクトルを決定する例が模式的に示されている。このような学習信号から抽出された学習ベクトルｏ１〜ｏ７が距離を尺度にしてクラスタリングされた結果、クラスタＤ１〜Ｄ３が構成される。そして、クラスタＤ１〜Ｄ３各々を代表する第１基準ベクトルｓ１〜ｓ３が生成される。
【００９３】
図１９には、図１８と同様の学習信号から第２基準ベクトルを決定する例が模式的に示されている。この学習信号から抽出された学習ベクトルｏ１〜ｏ７が角度を尺度にしてクラスタリングされた結果、クラスタＥ１，Ｅ２が構成される。そして、クラスタＥ１，Ｅ２それぞれを代表する第２基準ベクトルｖ１，ｖ２が生成される。
【００９４】
図２０には、第１基準ベクトル各々に対応するクラスタに属する学習ベクトルの数と、第２基準ベクトル各々に対応するクラスタに属する学習ベクトルの数と、が比較されている。例えば、第１基準ベクトルｓ１の元となった学習ベクトルの数は、２つであって、第２基準ベクトルｖ２の元となった学習ベクトルの数は、５つである。
【００９５】
学習部１０２は、基準ベクトル各々に対応するクラスタに属する学習ベクトルの数に応じて、基準ベクトルに付与する重み係数を決定する。詳細には、学習ベクトルの数が多いほど、重み係数を大きくする。より詳細には、学習ベクトルの数が最大となる基準ベクトルには重み係数として１．０を付与し、他の基準ベクトルについては、学習ベクトルの数に比例する重み係数を付与する。ただし、重み係数を決定する手法は、これに限定されず任意である。
【００９６】
そして、第３算出部１３０は、第１指標値と第２指標値とを重み付け加算する際に、第１指標値を算出するために選択された第１基準ベクトルに付与された重み係数と、第２指標値を算出するために選択された第２基準ベクトルに付与された重み係数と、を用いる。ここで、２つの重み係数の総和が１．０とならない場合には、第３算出部１３０は、総和が１．０となるように重み係数の大きさを調整してもよい。
【００９７】
以上、説明したように、診断装置１０は、基準ベクトル各々に対応するクラスタにクラスタリングされた学習ベクトルの数に応じて重みを決定する。多くの学習ベクトルに対応する基準ベクトルは、正常時に入力されるべき波形を正確に表していると考えられる。このような正確な基準ベクトルに大きい重みを付与することで、第３算出部１３０によって算出される出力値は、正確な異常の診断に利用することができると考えられる。
【００９８】
なお、基準ベクトルそれぞれに異なる重みを付与したが、これには限定されない。例えば、第１基準ベクトルの全クラスタに共通のベース値に、各クラスタのクラスタ値を乗じることで、重み係数を得てもよい。同様に第２基準ベクトルの全クラスタに共通のベース値に、各クラスタのクラスタ値を乗じることで重み係数を得てもよい。
【００９９】
図２１に示される学習信号は、円弧状の波形と、三角形の波形と、矩形状の波形と、を含み、それぞれの波形についてスケールを変えた複数の波形を有している。このような学習信号から第１基準ベクトル及び第２基準ベクトルを学習した例が図２２に模式的に示されている。図２２に示されるように、８つの学習ベクトルから、６つの第１基準ベクトルと、３つの第２基準ベクトルと、が学習される。この例では、第１基準ベクトルすべてについて、ベース値が１．３３と算出される。詳細には、学習ベクトルの数である８を第１基準ベクトルの数である６で除することにより、ベース値として１．３３の値が算出される。また、第２基準ベクトルすべてについて、ベース値が２．６６と算出される。詳細には、学習ベクトルの数である８を第２基準ベクトルの数である３で除することにより、ベース値として２．６６の値が算出される。
【０１００】
このベース値に、例えば図２０に示された重み係数に等しい値を乗じることで、新たな重み係数を得てもよい。このように、第１基準ベクトルと第２基準ベクトルのうち、クラスタ数が少ない方に大きなベース値が付与される。クラスタ数が少ないほど、個々のクラスタには多くの学習ベクトルが属しているといえる。多くの学習ベクトルが属するクラスタは、正常時に入力されるべき波形を適当に表しているといえるため、結果的に、第１基準ベクトルと第２基準ベクトルのうち波形を適当に表す方に大きな重みが付与されることとなる。
【０１０１】
図２３に示される学習信号は、図２１と同様の波形を有するが、それぞれの波形についてスケールが固定されている。このような学習信号から第１基準ベクトル及び第２基準ベクトルを学習した例が図２４に模式的に示されている。図２４に示されるように、８つの学習ベクトルから、３つの第１基準ベクトルと、３つの第２基準ベクトルと、が学習される。この例では、第１基準ベクトル及び第２基準ベクトルの双方についてベース値が２．６６と算出される。このため、第３算出部１３０は、第１指標値と第２指標値とに等しい重みを付与して重み付け加算をすることにより出力値を算出することとなる。
【０１０２】
図２１〜２４に示されたように、診断装置１０は、基準ベクトル各々に対応するクラスタにクラスタリングされた学習ベクトルの数の傾向に応じて重みを決定してもよい。このように決定された重みについても、第３算出部１３０によって算出される出力値は、正確な異常の診断に利用することができると考えられる。
【０１０３】
以上、本発明の実施の形態について説明したが、本発明は上記実施の形態によって限定されるものではない。
【０１０４】
例えば、診断システム１００が、生産システムの一部である例について説明したが、これには限定されない。診断システム１００は、加工システム、検査システムに代表される処理システムの一部であってもよいし、他のシステムを構成することなく、独立したシステムであってもよい。
【０１０５】
また、診断装置１０の取得部１０１がネットワーク２０を介して入力信号を取得する例について説明したが、これには限定されない。例えば、取得部１０１は、ユーザによって補助記憶部１３に格納されたデータから入力信号を読み出してもよい。
【０１０６】
また、上記実施の形態では、単一の入力信号から出力値を算出する例について説明したが、これには限定されない。診断装置１０は、複数の入力信号を取得して、入力信号それぞれについて出力値を算出してもよいし、入力信号それぞれについて算出された出力値を統合して単一の出力値を出力してもよい。
【０１０７】
また、上記実施の形態では、第１指標値と第２指標値とを統合した出力値を算出する例について説明したが、出力値を算出するために統合される指標値の数は、２つに限定されず、３つ以上であってもよい。例えば、第１指標値及び第２指標値のいずれとも異なる第３指標値を、第１指標値及び第２指標値と統合して出力値を算出してもよい。
【０１０８】
また、上記実施の形態では、第１指標値、第２指標値及び出力値は、異常である度合いが強くなるほど小さくなる値であったが、これには限定されず、異常である度合いが強くなるほど大きくなる値であってもよい。
【０１０９】
また、診断装置１０の機能は、専用のハードウェアによっても、また、通常のコンピュータシステムによっても実現することができる。
【０１１０】
例えば、プロセッサ１１によって実行されるプログラムＰ１を、コンピュータ読み取り可能な非一時的な記録媒体に格納して配布し、そのプログラムＰ１をコンピュータにインストールすることにより、上述の処理を実行する装置を構成することができる。このような記録媒体としては、例えばフレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read−Only Memory）、ＤＶＤ（Digital Versatile Disc）、ＭＯ（Magneto−Optical Disc）が考えられる。
【０１１１】
また、プログラムＰ１をインターネットに代表される通信ネットワーク上のサーバ装置が有するディスク装置に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロードするようにしてもよい。
【０１１２】
また、通信ネットワークを介してプログラムＰ１を転送しながら起動実行することによっても、上述の処理を達成することができる。
【０１１３】
さらに、プログラムＰ１の全部又は一部をサーバ装置上で実行させ、その処理に関する情報をコンピュータが通信ネットワークを介して送受信しながらプログラムを実行することによっても、上述の処理を達成することができる。
【０１１４】
なお、上述の機能を、ＯＳ（Operating System）が分担して実現する場合又はＯＳとアプリケーションとの協働により実現する場合等には、ＯＳ以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロードしてもよい。
【０１１５】
また、診断装置１０の機能を実現する手段は、ソフトウェアに限られず、その一部又は全部を、回路を含む専用のハードウェアによって実現してもよい。
【０１１６】
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施の形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
【産業上の利用可能性】
【０１１７】
本発明は、信号により示される異常を診断することに適している。
【符号の説明】
【０１１８】
１００  診断システム、  １０  診断装置、  １１  プロセッサ、  １２  主記憶部、  １３  補助記憶部、  １４  入力部、  １５  出力部、  １６  通信部、  １７  内部バス、  １０１  取得部、  １０２  学習部、  １１０  第１算出部、  １１１  記憶部、  １２０  第２算出部、  １２１  記憶部、  １３０  第３算出部、  １４０  診断部、  １０２１  重み算出部、  ２０  ネットワーク、  ２１  機器、  ２１１  信号源、  ２３，２４  波形、  ２６  ウィンドウ、  ２７  メモリ、  ３０１〜３０３  波形、  ３１０，３１４  ウィンドウ、  ３１１  学習ベクトル、  ３１５，３１５ａ  試行ベクトル、  ３１６  第１基準ベクトル、  ３１７  第２基準ベクトル、  Ｌ１，Ｌ２  線、  Ｐ１  プログラム。
【図１】
2019239607.tif 000003
【図２】
2019239607.tif 000004
【図３】
2019239607.tif 000005
【図４】
2019239607.tif 000006
【図５】
2019239607.tif 000007
【図６】
2019239607.tif 000008
【図７】
2019239607.tif 000009
【図８】
2019239607.tif 000010
【図９】
2019239607.tif 000011
【図１０】
2019239607.tif 000012
【図１１】
2019239607.tif 000013
【図１２】
2019239607.tif 000014
【図１３】
2019239607.tif 000015
【図１４】
2019239607.tif 000016
【図１５】
2019239607.tif 000017
【図１６】
2019239607.tif 000018
【図１７】
2019239607.tif 000019
【図１８】
2019239607.tif 000020
【図１９】
2019239607.tif 000021
【図２０】
2019239607.tif 000022
【図２１】
2019239607.tif 000023
【図２２】
2019239607.tif 000024
【図２３】
2019239607.tif 000025
【図２４】
2019239607.tif 000026
【手続補正書】
【提出日】平成31年4月17日(2019.4.17)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
上記目的を達成するため、本発明の診断装置は、異常の有無の診断対象となる入力信号として入力値の系列を取得する取得手段と、取得手段によって取得された系列の入力値を要素とする入力ベクトルと予め定められた第１基準ベクトルとの距離を示す第１指標値と、入力ベクトルと予め定められた第２基準ベクトルとの角度を示す第２指標値と、から異常の有無を診断する診断手段と、学習信号から第１基準ベクトル及び第２基準ベクトルを学習する学習手段と、を備え、取得手段は、学習信号と入力信号とを取得し、学習手段は、学習信号から学習値の系列を切り出すことにより系列の学習値を要素とする学習ベクトルを複数生成して、学習ベクトル間の距離に応じてクラスタリングすることにより第１基準ベクトルを学習し、学習ベクトル間の角度に応じてクラスタリングすることにより第２基準ベクトルを学習する。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
異常の有無の診断対象となる入力信号として入力値の系列を取得する取得手段と、
前記取得手段によって取得された系列の前記入力値を要素とする入力ベクトルと予め定められた第１基準ベクトルとの距離を示す第１指標値と、前記入力ベクトルと予め定められた第２基準ベクトルとの角度を示す第２指標値と、から異常の有無を診断する診断手段と、
学習信号から前記第１基準ベクトル及び前記第２基準ベクトルを学習する学習手段と、
を備え、
前記取得手段は、前記学習信号と前記入力信号とを取得し、
前記学習手段は、前記学習信号から学習値の系列を切り出すことにより該系列の前記学習値を要素とする学習ベクトルを複数生成して、前記学習ベクトル間の距離に応じてクラスタリングすることにより前記第１基準ベクトルを学習し、前記学習ベクトル間の角度に応じてクラスタリングすることにより前記第２基準ベクトルを学習する、診断装置。
【請求項２】
前記診断手段は、前記第１指標値と前記第２指標値との重み付け和から異常の有無を診断する、
請求項１に記載の診断装置。
【請求項３】
前記学習手段は、前記第１基準ベクトル及び前記第２基準ベクトルを前記学習信号から学習し、該学習の結果に応じて前記第１基準ベクトル及び前記第２基準ベクトルそれぞれの重みを算出し、
前記重み付け和は、前記学習手段によって算出された重みを、前記入力ベクトルと前記第１基準ベクトルとの距離と、前記入力ベクトルと前記第２基準ベクトルとの角度と、のそれぞれに乗じた値の総和に等しい、
請求項２に記載の診断装置。
【請求項４】
前記学習手段は、
前記学習信号を学習部分信号と試行信号とに分割して、
前記学習部分信号から生成した前記学習ベクトルのクラスタリングにより前記第１基準ベクトル及び前記第２基準ベクトルを学習し、
前記試行信号から試行値の系列を切り出すことにより該系列の前記試行値を要素とする試行ベクトルを生成して、前記試行ベクトルと前記第１基準ベクトルとの距離に応じて前記第１基準ベクトルの重みを算出し、前記試行ベクトルと前記第２基準ベクトルとの角度に応じて前記第２基準ベクトルの重みを算出する、
請求項３に記載の診断装置。
【請求項５】
前記学習手段は、前記第１基準ベクトルに対応するクラスタに属する前記学習ベクトルの数に応じて前記第１基準ベクトルの重みを算出し、前記第２基準ベクトルに対応するクラスタに属する前記学習ベクトルの数に応じて前記第２基準ベクトルの重みを算出する、
請求項３に記載の診断装置。
【請求項６】
前記重み付け和は、前記第１指標値と前記第２指標値との差又は比に対応する重みを、前記第１指標値と前記第２指標値とのそれぞれに乗じた値の総和に等しい、
請求項２に記載の診断装置。
【請求項７】
学習信号を取得する第１取得ステップと、
学習信号から第１基準ベクトル及び第２基準ベクトルを学習する学習ステップと、
入力値の系列を取得する第２取得ステップと、
取得した系列の前記入力値を要素とする入力ベクトルと前記第１基準ベクトルとの距離と、前記入力ベクトルと前記第２基準ベクトルとの角度と、から異常の有無を診断する診断ステップと、
を含み、
前記学習ステップでは、前記学習信号から学習値の系列を切り出すことにより該系列の前記学習値を要素とする学習ベクトルを複数生成して、前記学習ベクトル間の距離に応じてクラスタリングすることにより前記第１基準ベクトルを学習し、前記学習ベクトル間の角度に応じてクラスタリングすることにより前記第２基準ベクトルを学習する、診断方法。
【請求項８】
コンピュータに、
学習信号を取得し、
学習信号から第１基準ベクトル及び第２基準ベクトルを学習し、
入力値の系列を取得し、
取得した系列の前記入力値を要素とする入力ベクトルと前記第１基準ベクトルとの距離と、前記入力ベクトルと前記第２基準ベクトルとの角度と、から異常の有無を診断する、
ことを実行させ、
前記第１基準ベクトル及び前記第２基準ベクトルの学習においては、前記学習信号から学習値の系列を切り出すことにより該系列の前記学習値を要素とする学習ベクトルを複数生成して、前記学習ベクトル間の距離に応じてクラスタリングすることにより前記第１基準ベクトルを学習し、前記学習ベクトル間の角度に応じてクラスタリングすることにより前記第２基準ベクトルを学習する、プログラム。
【国際調査報告】
2019239607.tif 000027
2019239607.tif 000028
2019239607.tif 000029