(57)【特許請求の範囲】
【請求項１】
監視対象物の状態を反映する電気信号から特徴量を抽出する特徴抽出部と、特徴抽出部が抽出した特徴量を入力データとし、当該入力データがあらかじめ学習したカテゴリに属するか否かを判別する競合学習型ニューラルネットワークと、競合学習型ニューラルネットワークの出力層のニューロンをカテゴリに対応付けているクラスタリングマップに登録されたカテゴリと入力データとの類似あるいは相違の程度を評価する出力部とを備える信号識別装置であって、出力部は、競合学習型ニューラルネットワークの学習後に、学習時に用いた学習データを競合学習型ニューラルネットワークに再度入力したときに発火する各ニューロンの重みベクトルとすべての学習データとのユークリッド距離の最大値を分散に用いるとともに、当該ニューロンの重みベクトルである平均値により定義したガウス関数をクラスタリングマップの各ニューロンに設定し、さらに、ガウス関数の設定後に、学習時に用いた学習データを競合学習型ニューラルネットワークに再度入力して学習データごとのクラスタリングマップの出力値の総和を求め、すべての学習データに関する当該総和の大きさの分布を用いて閾値を設定し、監視対象物から得られた入力データのカテゴリを判別する際に、クラスタリングマップの各ニューロンに設定されたガウス関数の出力値の総和を求め、求めた総和が前記閾値を下回るときには、入力データが学習データのカテゴリに含まれないと判定することを特徴とする信号識別装置。
【請求項２】
監視対象物の状態を反映する電気信号から特徴量を抽出する特徴抽出部と、特徴抽出部が抽出した特徴量を入力データとし、当該入力データがあらかじめ学習したカテゴリに属するか否かを判別する競合学習型ニューラルネットワークと、競合学習型ニューラルネットワークの出力層のニューロンをカテゴリに対応付けているクラスタリングマップに登録されたカテゴリと入力データとの類似あるいは相違の程度を評価する出力部とを備える信号識別装置であって、出力部は、競合学習型ニューラルネットワークの学習後に、学習時に用いた学習データをカテゴリ毎に競合学習型ニューラルネットワークに再度入力してカテゴリごとのクラスタリングマップを生成し、学習時に用いた学習データを競合学習型ニューラルネットワークに再度入力したときに発火する各ニューロンの重みベクトルとすべての学習データとのユークリッド距離の最大値を分散に用いるとともに、当該ニューロンの重みベクトルである平均値により定義したガウス関数を各カテゴリごとのクラスタリングマップの各ニューロンに設定し、監視対象物から得られた入力データのカテゴリを判別する際に、各クラスタリングマップの各ニューロンに設定されたガウス関数の出力値の総和を求め、求めた総和が最大になるクラスタリングマップのカテゴリを入力データのカテゴリと判定することを特徴とする信号識別装置。
【請求項３】
前記出力部は、前記入力データのカテゴリと判定されたクラスタリングマップにおける出力値の総和と、出力値の総和が２番目に大きいクラスタリングマップの出力値の総和との和によって、入力データのカテゴリと判定されたクラスタリングマップにおける出力値の総和を除算し、除算結果が規定の範囲内であるときには、入力データが学習データにより規定されたカテゴリの境界であると判定し、判定結果を出力することを特徴とする請求項２記載の信号識別装置。
【請求項４】
前記出力部は、前記競合学習型ニューラルネットワークの学習後に学習データを再度入力したときに発火したニューロンの重みベクトルと当該学習データとのユークリッド距離を評価することにより、外れ値を除外したユークリッド距離を用いて前記ガウス関数の分散を求めることを特徴とする請求項１ないし請求項３のいずれか１項に記載の信号識別装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、監視対象物が発生している音波や振動に対応した対象信号に含まれる特徴量を、基準となる特徴量と比較することにより、監視対象物の動作状態を識別する信号識別装置に関するものである。
【背景技術】
【０００２】
従来から、監視対象物が発生している音波や振動を検出することにより得られる入力データの特徴量を、学習済みの競合学習型ニューラルネットワークに与え、学習時に与えた学習データとの類似あるいは相違の程度を評価する技術が知られている（たとえば、特許文献１参照）。
【０００３】
競合学習型ニューラルネットワークを用いる場合には、出力層のニューロンによりクラスタリングマップを形成し、クラスタリングマップには学習データに応じたカテゴリを設定する。たとえば、監視対象物の正常動作に対応した学習データによりクラスタリングマップに形成された領域のカテゴリを正常とする。監視対象物から得られた入力データを競合学習型ニューラルネットワークに与えると、クラスタリングマップ上で発火するニューロンの位置に応じて、当該特徴量が正常の範囲内か否かに分類される。
【０００４】
ところで、特許文献１に記載された発明では、各カテゴリの領域の境界やクラスタリングマップの周辺部のニューロンを学習データにより登録されたカテゴリに属さない未知カテゴリのニューロンとしている。一方、競合学習型ニューラルネットワークでは、各カテゴリの典型的な入力データがクラスタリングマップの周辺部のニューロンを発火させる場合も多い。したがって、特許文献１に記載された技術では、未知と判定された入力データであっても、すでにカテゴリを設定した学習データと類似している場合も多い。つまり、周辺部のすべてのニューロンを未知カテゴリとすると、判定の結果に誤りが生じる。
【０００５】
また、特許文献１に記載された発明では、各カテゴリの領域の境界のニューロンについては未知カテゴリのニューロンとしているから、入力データが境界を挟んでいる複数領域のうちのどのカテゴリに属しているのかを判別することができない。この種の競合学習型ニューラルネットワークでは、異なるカテゴリの学習データが競合することにより、判別の精度を高めることができるのであって、同じカテゴリの学習データだけ個数を増加させて追加学習を行っても判別の精度が却って低下することになる。
【０００６】
競合学習型ニューラルネットワークで用いるクラスタリングマップには、通常は複数種類のカテゴリが設定されることが多いが、学習時において１種類のカテゴリに分類される学習データのみを与えるようにし、監視対象物から得られた入力データを競合学習型ニューラルネットワークに与えることによりクラスタリングマップ上で発火するニューロンが、学習したカテゴリに属さない場合には、未知と判断することも考えられている。たとえば、監視対象物が正常であるときに得られる特徴量のみを競合学習型ニューラルネットワークに学習データとして与えることにより、クラスタリングマップに正常のカテゴリを有する領域を登録する。学習後に、競合学習型ニューラルネットワークに監視対象物から得られた入力データを与えたときに、クラスタリングマップ上で発火したニューロンが正常のカテゴリに属していない場合には、監視対象物の状態が未知状態であると判断するのである。
【０００７】
ここで、クラスタリングマップ上の各ニューロンごとに学習後の重みベクトルと当該ニューロンを発火させた学習データとのユークリッド距離を求め、ユークリッド距離の分散に応じた閾値を各ニューロンに設定することが考えられている。この場合、監視対象物の状態を判断する際に、監視対象物から得られた入力データにより発火したニューロンの重みベクトルと入力データとのユークリッド距離を求め、求めたユークリッド距離と当該ニューロンに設定された閾値との大小を比較することにより、クラスタリングマップに登録されているカテゴリに属するか否かを判断する。ユークリッド距離が閾値を超えるときにはカテゴリに属さない未知状態と判定する。
【０００８】
ただし、この技術では、未知の判定に使用しているのがクラスタリングマップ上での１個のニューロンに関するデータであるから、学習データの分布が疎である場合や、入力データが高次元である場合には、カテゴリを登録した領域の中心付近のニューロンが発火している場合でも未知のカテゴリと判定してしまう場合がある。
【０００９】
この問題を回避するには、各学習データにガウス関数を割り当てておき、学習データにより得られた出力値の総和を比較し、各ニューロンのカテゴリを識別する方法もある。この方法では、学習データの個数が多いほど判定の精度を高めることができる。ただし、学習データの個数が多くなるほど処理時間が増加するものであるから、精度と処理時間とがトレードオフになり両者をともに実用的な範囲とするのは難しい。
【特許文献１】特開２００４−３５４１１１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上述したように、複数種類のカテゴリの学習データを与えて学習させたとしても、学習データと一致する入力データでないかぎりは、類似度が比較的高いと考えられる場合でも未知カテゴリと判断されることも多く、必ずしも判定精度がよいとは言えない。また、１種類のカテゴリの学習データのみを用いて学習させ、当該カテゴリ以外のものと区別する場合であっても判定の精度は高いとは言えない。
【００１１】
判定の精度を向上させるには、カテゴリの境界付近の学習データやカテゴリに属さない未知の学習データを増やす必要があるが、追加学習を行う前に学習データのカテゴリを事前に確認しなければならないから作業の負担が大きく、しかも学習データの取捨選択のために専門知識が必要になる。
【００１２】
学習データごとにガウス関数を割り当てるようにすれば、上述のような問題は緩和されるものの、学習データの個数の増加に伴って処理時間が大幅に増加するから、判定の精度と処理時間とをともに実用的な範囲にすることは難しい。
【００１３】
本発明は上記事由に鑑みて為されたものであり、その目的は、入力データにより発火するニューロンのクラスタリングマップ上での位置によらずに、従来構成よりも高い精度でカテゴリを判別することができ、しかも学習データの個数が増加しても処理時間が増加しない信号識別装置を提供することにある。
【課題を解決するための手段】
【００１４】
請求項１の発明は、監視対象物の状態を反映する電気信号から特徴量を抽出する特徴抽出部と、特徴抽出部が抽出した特徴量を入力データとし、当該入力データがあらかじめ学習したカテゴリに属するか否かを判別する競合学習型ニューラルネットワークと、競合学習型ニューラルネットワークの出力層のニューロンをカテゴリに対応付けているクラスタリングマップに登録されたカテゴリと入力データとの類似あるいは相違の程度を評価する出力部とを備える信号識別装置であって、出力部は、競合学習型ニューラルネットワークの学習後に、学習時に用いた学習データを競合学習型ニューラルネットワークに再度入力したときに発火する各ニューロンの重みベクトルとすべての学習データとのユークリッド距離の最大値を分散に用いるとともに、当該ニューロンの重みベクトルである平均値により定義したガウス関数をクラスタリングマップの各ニューロンに設定し、さらに、ガウス関数の設定後に、学習時に用いた学習データを競合学習型ニューラルネットワークに再度入力して学習データごとのクラスタリングマップの出力値の総和を求め、すべての学習データに関する当該総和の大きさの分布を用いて閾値を設定し、監視対象物から得られた入力データのカテゴリを判別する際に、クラスタリングマップの各ニューロンに設定されたガウス関数の出力値の総和を求め、求めた総和が前記閾値を下回るときには、入力データが学習データのカテゴリに含まれないと判定することを特徴とする。
【００１５】
この方法によれば、クラスタリングマップの各ニューロンに対して１個のガウス関数を割り当てるとともに、競合学習型ニューラルネットワークに学習データを再度入力したときの各学習データごとの出力値の総和から閾値を決定しておき、入力データのカテゴリを判別する際にガウス関数の出力値の総和が閾値に達しなかった場合には、学習データには入力データ対応したカテゴリが存在しなかったと判定するから、競合学習型ニューラルネットワークにおいて学習していないカテゴリに属する入力データが与えられたときには、当該入力データが属するカテゴリを設定したり、あるいは不要なカテゴリとして扱うことが可能になる。すなわち、クラスタリングマップによる判別の精度を向上させることができる。しかも、当初は既知のカテゴリの学習データのみで学習すればよく、既知のカテゴリに属さない入力データが発生したときに、当該入力データのカテゴリを登録するか否かを利用者が決めることができるから、学習データを収集する際の利用者の作業の負担が軽減される。さらに、ガウス関数はクラスタリングマップの各ニューロンに設定されるから、学習データにガウス関数を設定する必要がなく、学習時の処理負荷が少なく処理時間の増加が生じない。
【００１６】
請求項２の発明は、監視対象物の状態を反映する電気信号から特徴量を抽出する特徴抽出部と、特徴抽出部が抽出した特徴量を入力データとし、当該入力データがあらかじめ学習したカテゴリに属するか否かを判別する競合学習型ニューラルネットワークと、競合学習型ニューラルネットワークの出力層のニューロンをカテゴリに対応付けているクラスタリングマップに登録されたカテゴリと入力データとの類似あるいは相違の程度を評価する出力部とを備える信号識別装置であって、出力部は、競合学習型ニューラルネットワークの学習後に、学習時に用いた学習データをカテゴリ毎に競合学習型ニューラルネットワークに再度入力してカテゴリごとのクラスタリングマップを生成し、学習時に用いた学習データを競合学習型ニューラルネットワークに再度入力したときに発火する各ニューロンの重みベクトルとすべての学習データとのユークリッド距離の最大値を分散に用いるとともに、当該ニューロンの重みベクトルである平均値により定義したガウス関数を各カテゴリごとのクラスタリングマップの各ニューロンに設定し、監視対象物から得られた入力データのカテゴリを判別する際に、各クラスタリングマップの各ニューロンに設定されたガウス関数の出力値の総和を求め、求めた総和が最大になるクラスタリングマップのカテゴリを入力データのカテゴリと判定することを特徴とする。
【００１７】
この方法によれば、学習データのカテゴリごとにクラスタリングマップを生成し、各カテゴリのクラスタリングマップにおける各ニューロンに対してそれぞれ１個のガウス関数を割り当て、入力データのカテゴリを判別する際には、出力値の総和が最大になったクラスタリングマップのカテゴリを入力データのカテゴリと判別するから、競合学習型ニューラルネットワークを単独で用いる場合よりもカテゴリの判定精度を向上させることができる。また、学習データにガウス関数を設定する必要がないから、学習時の処理負荷が少なく処理時間の増加が生じない。
【００１８】
請求項３の発明は、請求項２の発明において、前記出力部は、前記入力データのカテゴリと判定されたクラスタリングマップにおける出力値の総和と、出力値の総和が２番目に大きいクラスタリングマップの出力値の総和との和によって、入力データのカテゴリと判定されたクラスタリングマップにおける出力値の総和を除算し、除算結果が規定の範囲内であるときには、入力データが学習データにより規定されたカテゴリの境界であると判定し、判定結果を出力することを特徴とする。
【００１９】
この方法によれば、カテゴリを判別しようとする入力データが１つのカテゴリの境界付近のニューロンに対応しているときに、当該カテゴリに属していないことが明らかな入力データを別カテゴリの入力データと判別することができ、結果的にカテゴリの境界付近の入力データか否かを利用者に明確に示すことができ、カテゴリの追加を行うか否かの意志決定を支援することになる。その結果、カテゴリの境界付近の入力データの個数を低減させることができ、追加学習のための学習データとしての使用可否を判定する利用者の負担を低減することが可能になる。
【００２０】
請求項４の発明は、請求項１ないし請求項３のいずれか１項の発明において、前記出力部は、前記競合学習型ニューラルネットワークの学習後に学習データを再度入力したときに発火したニューロンの重みベクトルと当該学習データとのユークリッド距離を評価することにより、外れ値を除外したユークリッド距離を用いて前記ガウス関数の分散を求めることを特徴とする。
【００２１】
この方法によれば、学習データの外れ値を除去することにより、ガウス関数の分散が過大になるのを抑制し、判定精度の低下を抑制することができる。
【発明の効果】
【００２２】
請求項１の発明によれば、競合学習型ニューラルネットワークにおいて学習していないカテゴリに属する入力データについて、当該入力データが属するカテゴリを設定したり、不要なカテゴリとして扱うことが容易になり、クラスタリングマップによる判別の精度を向上させることができるという利点がある。しかも、既知のカテゴリに属さない入力データが発生したときに、新たなカテゴリを登録するか否かを利用者が決めることができ、学習データを収集する際の利用者の作業の負担が軽減されるという利点がある。加えて、ガウス関数はクラスタリングマップに設定するから、学習時の処理負荷が少なく処理時間の増加が生じないという利点もある。
【００２３】
請求項２の発明によれば、カテゴリごとのクラスタリングマップを生成するとともに、各クラスタリングマップの各ニューロンごとにガウス関数を設定して、入力データのカテゴリを評価するから、競合学習型ニューラルネットワークを単独で用いる場合よりもカテゴリの判定精度を向上させることができるという利点があり、また、学習データにガウス関数を設定する必要がないから、学習時の処理負荷が少なく処理時間の増加が生じないという利点がある。
【発明を実施するための最良の形態】
【００２４】
以下に説明する実施形態では、入力データのカテゴリを判別するために、図２に示すように入力層１１と出力層１２との２層構造を有した競合学習型ニューラルネットワーク（以下、単に「ニューラルネット」という）１を用いる。このニューラルネット１は、入力層１１の各ニューロンＮと、出力層１２の各ニューロンＮとが相互に結合されており、出力層１２の各ニューロンＮには、入力層１１のニューロンＮと出力層１２のニューロンＮとの間の接続重みからなる重みベクトルが対応付けられる。
【００２５】
このニューラルネット１の出力層１２は、クラスタリングマップを形成する。クラスタリングマップは、学習データによりニューラルネット１の学習を行うことにより生成される。つまり、学習データをニューラルネット１に与えることにより、出力層１２の各ニューロンＮの重みベクトルが設定される。また、学習後のクラスタリングマップの各領域には学習データに応じたカテゴリが登録される。
【００２６】
入力層１１に与えられるデータは、監視対象物の状態に応じて得られる適宜の電気信号について特徴抽出を行うことによって得られた特徴量に関するデータである。つまり、図１に示すように、監視対象物の状態を電気信号に変換するセンサを備えた入力部２を有し、入力部２から出力された電気信号から特徴量を抽出する特徴抽出部３を有する。
【００２７】
入力部２のセンサは、人の五感に相当するものであり、振動センサ、マイクロホン、ＴＶカメラ、匂いセンサなどの各種のセンサを単独または組み合わせて用いる。センサとして、振動センサ、マイクロホン、ＴＶカメラのように連続したアナログ信号を出力するものを用いる場合には、特徴量として、たとえば周波数成分の分布を用いる。この場合、特徴抽出部３ではフーリエ変換を行ったり、フィルタバンクによって周波数成分を分離する。入力部２に設けたセンサからは通常はアナログ信号が出力され、特徴抽出部３からはデジタル信号が出力される。したがって、通常は入力部２と特徴抽出部３とのいずれかにおいてＡ／Ｄ変換を行う。
【００２８】
特徴抽出部３で抽出した特徴量は、上述したニューラルネット１の入力層１１に与えられる。ここで、ニューラルネット１の学習時には、学習データとなる特徴量がニューラルネット１に与えられ、ニューラルネット１で監視対象物の状態を判別する際には、入力部２から出力される未分類の電気信号に対応した特徴量が入力データとしてニューラルネット１に与えられる。学習データは、監視対象物の検査時に発生するすべてのカテゴリについて入力部２で収集した多数個のデータについて、特徴抽出部３で抽出した特徴量を用いる。
【００２９】
学習データは、メモリのような記憶手段に格納したものを用いるようにしてもよい。なお、ニューラルネット１は、逐次処理型のコンピュータにおいて適宜のアプリケーションプログラムを実行することにより実現することができ、また専用のニューロコンピュータを用いてもよい。
【００３０】
クラスタリングマップの作成後には、入力部２で取得したデータの特徴量を特徴抽出部３で抽出することにより得られた入力データを、学習済みのニューラルネット１に与えることで、クラスタリングマップに登録されたカテゴリと入力データとの類似あるいは相違の程度を評価することができる。この評価は、出力部４において行う。すなわち、出力部４は、ニューラルネット１の出力層１２において発火したニューロンがどのカテゴリに属するかを評価する機能と、評価結果を利用者に通知する機能とを有している。出力部４において利用者に通知する機能には、たとえば、クラスタリングマップを表示するディスプレイを用いる。あるいはまた、外部装置と接続するためのインターフェイスであってもよい。
【００３１】
上述した構成を前提として、以下では各実施形態の特徴について説明する。
【００３２】
（実施形態１）
本実施形態では、学習データを用いてクラスタリングマップを生成した後に、ニューラルネット１に入力データを与える前に、出力部４においてニューラルネット１の出力層１２の各ニューロンＮに対してガウス関数の割り当てを行う。ガウス関数は次式を用いる。なお、下式において角付き括弧を付した文字はベクトルを意味する。
ｙ＝ｅｘｐ（−‖［ｘ］−［ｍ］‖２／２σ２）
ただし、［ｍ］：平均ベクトル、σ：分散である。
【００３３】
上式の平均ベクトル［ｍ］には、学習済みのニューラルネット１の重みベクトルを用いる。上式の［ｘ］は特徴抽出部３で得られた入力データを成分とする特徴ベクトルであり、‖［ｘ］−［ｍ］‖は特徴ベクトル［ｘ］の平均ベクトル［ｍ］に対するユークリッド距離である。また、ｙは上式のガウス関数に特徴ベクトル［ｘ］を入力したときの出力値である。
【００３４】
上式によれば、特徴ベクトル［ｘ］が平均ベクトル［ｍ］に近いほど出力値ｙが大きくなり、特徴ベクトル［ｘ］が平均ベクトル［ｍ］に一致するときに出力値ｙは最大となって１になる。クラスタリングマップの各ニューロンごとの平均ベクトル［ｍ］に対して、特徴ベクトル［ｘ］を入力し、出力値ｙの総和を求めると、出力値ｙの総和はすべての平均ベクトル［ｍ］で構成されるカテゴリに属する確率に比例した値になる。
【００３５】
また、分散（σ）は、以下のようにして決定する。すなわち、まず学習データを学習済みのニューラルネット１に再度入力し、各ニューロンＮの重みベクトルと入力データ（学習データ）とのユークリッド距離を求める。すべての学習データをニューラルネット１に与えて、ユークリッド距離のリストを作成する。各ニューロンＮについて求めたユークリッド距離の最大値を分散に用いる。
【００３６】
出力層１２の各ニューロンＮにガウス関数を割り当てた後には、ニューラルネット１に学習データを再度入力する。学習データのカテゴリごとに出力層１２のニューロンＮの出力値の総和を求め、そのリストを作成する。このリストに基づいて以下の（１）〜（４）のいずれかの値を出力層１２の各ニューロンＮの閾値に用いる。
（１）出力値の総和の下位１０％について求めた平均値の５０％
（２）出力値の総和の下位２０％について求めた平均値の５０％
（３）出力値の総和の最小値の５０％
（４）出力値の総和の中央の値（＝最大値と最小値との平均値）を中心としてデータ総数の半数（複数個のニューロンＮについて出力値の総和が同じ値になるときには、データ総数の半数を超えてもよい）について求めた平均値の５０％
なお、これらの閾値は一例であって、平均値を求める個数、求めた平均値に対する閾値の大きさは学習データに応じて適宜に設定することができる。適正値は使用目的によっても異なるので、閾値の求め方については入力データが適正なカテゴリに分類されるようにあらかじめ定式化しておけばよい。
【００３７】
ニューラルネット１の学習後に（１）の方法で閾値を決定する際の手順を図３に示す。すなわち、ニューラルネット１を学習データにより学習させた後に（Ｓ１）、ニューラルネット１にすべての学習データを再度入力する（Ｓ２）。クラスタリングマップの各位置（つまり、出力層１２の各ニューロンＮ）における重みベクトルと与えた学習ベクトルとのユークリッド距離を求める（Ｓ３）。このようにして、各ニューロンＮについてユークリッド距離のリストを作成する（Ｓ４）。着目するニューロンＮについて得られたユークリッド距離のうちの最大値を選択する（Ｓ５）。当該ニューロンＮの重みベクトルを平均ベクトルとし、ユークリッド距離の最大値を分散とするガウス関数を当該ニューロンＮに割り当てる（Ｓ６）。
【００３８】
さらに、すべての学習データをニューラルネット１に再度入力し（Ｓ７）。学習データのカテゴリごとにニューロンＮの出力値の総和を求める（Ｓ８）。この総和についてリストを作成し（Ｓ９）、リストの下位１０％について平均値を求め、その平均値の５０％を閾値として採用する（Ｓ１０）。
【００３９】
監視対象物から得られた入力データをニューラルネット１に与える際には、クラスタリングマップの作成時と同様に、入力部２から取り込んだデータについて特徴抽出部３において特徴量を抽出する。ニューラルネット１は学習済みであるから、特徴量をニューラルネット１に与えると、入力データがクラスタリングマップのどのカテゴリに属するかが求められる。
【００４０】
ここで、各ニューロンＮに設定されたガウス関数に対して入力データが与えられるから、出力部４では各ニューロンＮの出力値の総和を求め、この総和を学習時に設定した閾値と比較する。出力値の総和が閾値を下回っているときには、出力部４では入力データが学習データのカテゴリに属さないデータであると判断して判定結果を出力する。
【００４１】
上述の手順によって、学習データのカテゴリに属していない入力データを確実に振り分けることができるようになり、クラスタリングマップによるカテゴリの分離精度を向上させることが可能になる。
【００４２】
本実施形態の概念と従来技術の概念とを図４に示す。図４（ｂ）は従来技術の概念であって、入力データに応じて発火したニューロンＮ１がどのカテゴリに属するかは、クラスタリングマップ上における各カテゴリのニューロンＮに設定された重みベクトルと入力データとのユークリッド距離によってしか判断していないから、クラスタリングマップ上で発火したニューロンＮ１の位置が、既知のカテゴリの領域Ｄに挟まれている場合であっても、当該ニューロンＮ１が未知のカテゴリであると判断されることがある。
【００４３】
これに対して、本実施形態の技術を採用すれば、図４（ａ）のように、すべてのカテゴリのニューロンの重みベクトルと入力データとのユークリッド距離を用いて、入力データがどのカテゴリに属するかを判断するから、既知のカテゴリの境界付近に存在するニューロンＮ１が発火した場合にはカテゴリを未知とせず、既知のカテゴリの外側に位置するニューロンＮ２が発火した場合にのみ入力データを未知のカテゴリと判定とするのである。つまり、図４（ａ）の領域Ｄ１内であれば入力データを未知のカテゴリと判定しないのである。
【００４４】
上述した技術を採用することにより、従来の技術に比較すると、単一のカテゴリで学習させる場合やある場合（たとえば、正常と異常との判別をするために、正常のカテゴリに属する学習データのみで学習させる場合）や、実際のカテゴリ数よりも少ない種類のカテゴリの学習データで学習させた場合において、カテゴリが未知であるのに既知と判定するような誤判定と、カテゴリが既知であるのに未知と判定する誤判定とをともに減少させることができる。
【００４５】
ちなみに、単一のカテゴリで学習させた場合について、既知のカテゴリであるのに未知と判定する誤判定の個数は１／５程度にまで改善された。また、ニューラルネット１の出力層１２のニューロンＮの個数を３６個とし、学習データを２０００個とした場合に、学習データのすべてにガウス関数を割り当てる場合に比較して処理時間を１．８％にまで短縮することができた。
【００４６】
（実施形態２）
実施形態１では、クラスタリングマップを１個だけ作成し、クラスタリングマップの各ニューロンＮに対して設定した閾値を用いてカテゴリの判別を行っているが、本実施形態では、学習データのカテゴリの個数分のクラスタリングマップを作成し、閾値を用いずにカテゴリに判別を行う。すなわち、学習データをカテゴリごとに分類し、カテゴリごとに同規模のクラスタリングマップを作成する。学習時には、各クラスタリングマップについて、実施形態１と同様にしてガウス関数を設定する。
【００４７】
一方、監視対象物から得た入力データのカテゴリを決定する際には、各クラスタリングマップにおいてガウス関数を適用したときの出力値の総和を求める。出力部４では、出力値の総和が最大になるカテゴリを当該入力データのカテゴリと判断する。つまり、閾値を用いることなく入力データのカテゴリを判別する。
【００４８】
本実施形態では、上述の処理により、ニューラルネット１を単独で用いた場合の判定結果よりもカテゴリの判定精度を向上させることができる。
【００４９】
ちなみに、本実施形態の技術を採用することにより、カテゴリの境界付近のニューロンＮが発火するの入力データに対して、カテゴリの誤判定が生じる回数を２０％程度低減することができた。処理時間については実施形態１と同様の結果になった。他の構成および動作は実施形態１と同様である。
【００５０】
ところで、出力部４では、カテゴリの判定結果が得られた後に、さらに次の処理を行うのが望ましい。判定結果として選択されたカテゴリについて、ガウス関数を適用した出力値の総和（つまり、総和の最大値）を求めた後、この総和と２番目に大きい総和との和を求め、この和で総和の最大値を除算し（つまり、（総和の最大値）／｛（総和の最大値）＋（総和の２番目に大きい値）｝、除算結果が規定の範囲内であれば、カテゴリの境界付近の結果であることを示す警告出力を発生するのである。この動作により、入力データのカテゴリが、複数のカテゴリの境界付近に分類されることを利用者に通知することができる。
【００５１】
警告出力が発生したときには、利用者は該当する入力データを確認することができるから、必要に応じて該当カテゴリを登録して、追加学習を行うことができる。このように、未登録のカテゴリと考えられる入力データが発生したときに警告出力によって利用者に通知することで、利用者は必要に応じてカテゴリを増加させるように追加学習を行うことができるから、追加学習によってクラスタリングマップの精度を高めることが可能になる。
【００５２】
この処理によって、監視対象物について目的とするカテゴリに対応したクラスタリングマップの上で発火したニューロンＮに対する重みベクトルに対して、他のカテゴリに属する可能性のある入力データのみを境界領域に属する入力データと判定することができるようになる。したがって、判定の精度を向上させるために追加学習に用いるべき学習データを選択して提示することができ、結果的にカテゴリの境界と判定される入力データの数を低減させることができ、追加学習の学習データとしての利用の可否を判定するユーザの負担を低減することができる。
【００５３】
（実施形態３）
上述の各実施形態において、ガウス関数の分散として、学習データと重みベクトルとのユークリッド距離のリストから求めた最大値を用いているが、仮に学習データに外れ値（たとえば、分散σに対して３σを超える領域の値）が含まれているときに、分散が適正値よりも大きい値になることがある。ここで、学習データに複数のカテゴリが存在している場合に、分散が大きくなるほど、カテゴリ間で重複する領域が大きくなるから、カテゴリを判定する精度が低下することになる。
【００５４】
このような外れ値を除去するために、本実施形態では、以下のいずれかの処理を追加する。
（１）ユークリッド距離のリストの平均値から昇順に数えて３σである位置のデータを分散に用いる。
（２）ユークリッド距離のリストの昇順で各ユークリッド距離間の差が、各ユークリッド距離の間の差の平均値に対して定数倍となったデータを分散に用いる。ここに、定数は任意に設定することができる。たとえば、１．５〜２．０倍を目安に設定する。
（３）ユークリッド距離のリストのうちの一定割合が含まれる領域で、領域の始点と終点との間の距離（クラスタリングマップ上での距離）が最小である領域内に存在するデータの最大値を分散に用いる。ここに、割合は任意に設定することができる。たとえば、８０〜９５％を目安に設定することができる。
【００５５】
上述のように外れ値を除去して分散を設定することにより、ガウス関数に適用する分散が大きくなりすぎないように抑制し、カテゴリの判定の精度の低下を抑制することが可能になる。他の構成および動作は実施形態１，２と同様である。
【図面の簡単な説明】
【００５６】
【図１】実施形態を示すブロック図である。
【図２】同上に用いる競合学習型ニューラルネットワークの概略構成図である。
【図３】同上におけるガウス関数の設定手順を示す動作説明図である。
【図４】（ａ）は同上の動作例を示す図、（ｂ）は従来方法の動作例を示す図である。
【符号の説明】
【００５７】
１  ニューラルネット（競合学習型ニューラルネットワーク）
２  入力部
３  特徴抽出部
４  出力部
【図１】
0004775100.tif 000002
【図２】
0004775100.tif 000003
【図３】
0004775100.tif 000004
【図４】
0004775100.tif 000005