(57)【特許請求の範囲】
【請求項１】
入力データと各カテゴリに対応するクラスタとを特徴量空間で照合することにより、当該入力データがどのクラスタに内包されるかを判定するステップと、
前記入力データを内包すると判定されるクラスタに関し、当該クラスタ内の座標位置と関連付けてあらかじめ記憶された適合度情報を参照することにより、当該クラスタに関する前記入力データの所属度を求めるステップと、
前記求められたクラスタに関する所属度に基づいて、当該入力データの属するカテゴリを認識するステップと、
を具備し、
前記カテゴリを認識するステップは、入力データを内包すると判定されるクラスタが複数存在する場合には、それらのクラスタの中で最大所属度を有する唯一のクラスタを当該入力データの属するクラスタとして認識することを特徴とする認識方法。
【請求項２】
カテゴリ認識結果が既知の入力データを学習することにより、前記適合度情報を変化させるステップを有することを特徴とする請求項１に記載の認識方法。
【請求項３】
入力データと各カテゴリに対応するクラスタとを特徴量空間で照合することにより、当該入力データがどのクラスタに内包されるかを判定する手段と、
前記入力データを内包すると判定されるクラスタに関し、当該クラスタ内の座標位置と関連付けてあらかじめ記憶された適合度情報を参照することにより、当該クラスタに関する前記入力データの所属度を求める手段と、
前記求められたクラスタに関する所属度に基づいて、当該入力データの属するカテゴリを認識する手段と、
を具備し、
前記カテゴリを認識する手段は、入力データを内包すると判定されるクラスタが複数存在する場合には、それらのクラスタの中で最大所属度を有する唯一のクラスタを当該入力データの属するクラスタとして認識することを特徴とする認識装置。
【請求項４】
カテゴリ認識結果が既知の入力データを学習することにより、前記適合度情報を変化させる手段を有することを特徴とする請求項３に記載の認識装置。
【請求項５】
前記適合度情報は、クラスタ内部の特定座標位置における適合度と、該適合度を基準としてクラスタ内部のそれ以外の座標位置における適合度を表現するメンバシップ関数とからなることを特徴とする請求項３に記載の認識装置。
【請求項６】
前記請求項３〜請求項５のいずれかに記載された装置を実現するためのコンピュータプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、手書き文字のパターン認識等に好適な認識精度の高い認識方法及び装置、並びに、同装置を実現するためのコンピュータプログラムを記録させた記録媒体に関する。
【０００２】
【従来の技術】
従来、未知の入力されたパターンと特定カテゴリに属する幾つかの標準パターンとを比較することで認識を行うようにしたパターン認識システムが知られている。ところで、このようなシステムにあっては、同一カテゴリに属するとは言え、それら複数の標準パターンにはある程度のばらつきがあるのが通例である。その理由は、各パターンがｎ個の特徴により構成される場合、ｎ次元空間にその点は存在するのであるが、あるカテゴリの標準パターンを数種用意したとき、そのｎ次元の座標は必ずしも完全に一致するわけではなく、座標値のほとんどが異なるのが一般的だからである。
【０００３】
そのため、このようなパターン認識システムにあっては、そのような標準パターンのばらつきをカバーするようなクラスタ（集合体）を生成することにより、認識精度の向上が図られている。例えば、ｍ個のカテゴリがあり、各々に１つのクラスタが生成されると想定すると、全体ではｍ個のクラスタが生成されることになる。
【０００４】
そして、未知の入力パターンに対しては、ｍ個のクラスタのどれに所属するかが調べられ、いずれかのクラスタに属することが判定されれば、その未知の入力パターンはその所属したクラスタのカテゴリに属するものと無条件に決定されるようになっていた。
【０００５】
【発明が解決しようとする課題】
しかしながら、このような従来のパターン認識システムにあっては、未知の入力パターンがいずれかのクラスタに属するものと判定されると、その入力パターンは、判定されたクラスタに対応するカテゴリに属するものと無条件に決定されてしまうため、あるカテゴリ（Ａ）に属する入力パターンが、たまたま他のカテゴリ（Ｂ）にも類似する結果、そのカテゴリ（Ｂ）のクラスタに属すると誤判定されると、そのカテゴリ（Ａ）に属する入力パターンは、カテゴリ（Ｂ）に属するものと誤って決定されてしまうおそれがあった。
【０００６】
また、上述のパターン認識システムにあっては、ｍ個のクラスタには重複した領域が全く存在しないとは言い難く、ある未知の入力パターンが複数のクラスタが跨った領域に存在する場合、どのクラスタ（カテゴリ）に属するかの判定が非常に困難であった。
【０００７】
この発明は、このような従来の問題点を解決するためになされたものであり、その目的とするところは、この種のパターン認識システムにおける認識精度を向上させることにある。
【０００８】
【課題を解決するための手段】
未知の入力データがあるクラスタ内部に含まれた場合、その所属度を演算するため、クラスタ内部の適当な場所に適合度を保持する。この適合度は、誤認識データにより学習がおこなわれる。この学習により、クラスタに含まれる誤認識データの存在する領域の適合度が下げられることになる。ある領域の適合度が下げられると次のような効果が得られる。
【０００９】
・Ａというカテゴリのクラスタが生成されていたとする。このとき、Ｂというカテゴリの入力データがＡのカテゴリのデータに類似していることが多く、誤ってＡのクラスタに入ってしまう状況を考える。しかし、あらかじめＢをＡに誤認識したデータを準備し、Ａのクラスタの適合度を学習させておくと、ＢをＡに誤認識したデータが入る領域の適合度が低く変更される。よって、未知の入力データが、ＢをＡに誤認識したデータが存在するＡのクラスタの領域に入った場合、所属度（適合度の合成）は低く算出され、Ａのクラスタに入ったがＡの可能性は低いと判定することができる。つまり誤判定を減少することができる。
【００１０】
・Ｃ、Ｄというカテゴリのクラスタが生成され、この２つのクラスタの一部の領域が重複している状況を考える。ＣをＤに誤認識したデータが多く存在することが分かっていたため、学習時に利用した誤認識データは、ＣをＤに誤認識したデータだけであり、このデータを学習に使用することで、ＤのクラスタのＣと重なる段階の適合度が下げられることになったと仮定する。このとき未知の入力データが重複領域に入った場合にＣのカテゴリで算出される適合度が高く、Ｄのカテゴリで算出される適合度が低くなる。これにより、「Ｃ、Ｄのカテゴリに同時に含まれるから不明」とすることが無くなり、誤判定をせずに認識率向上が図れる。
【００１１】
すなわち、この発明の認識方法は、入力データと各カテゴリに対応するクラスタとを特徴量空間で照合することにより、当該入力データがどのクラスタに内包されるかを判定するステップと、
前記入力データを内包すると判定されるクラスタに関し、当該クラスタ内の座標位置と関連付けてあらかじめ記憶された適合度情報を参照することにより、当該クラスタに関する前記入力データの所属度を求めるステップと、
前記求められたクラスタに関する所属度に基づいて、当該入力データの属するカテゴリを認識するステップと、
を具備することを特徴とする。
【００１２】
また、この発明において、好ましくは、カテゴリ認識結果が既知の入力データを学習することにより、前記適合度情報を変化させるステップを更に有する。
【００１３】
ここで、このような実施形態において、前記入力データの学習により適合度情報を変化させるステップは、学習対象のクラスタに正しく入ることがわかっているデータを学習データとして採用し、かつ前記特定座標位置の適合度初期値を０（あるいは適合度としての最小値）とし、学習データを与えることで、そのデータが含まれる領域を囲む適合度を上昇させていくようにすることができる。
【００１４】
また、このような実施形態において、前記入力データの学習により適合度情報を変化させるステップは、学習対象のクラスタに誤って（異なるカテゴリのデータなのに入ってしまう）入ることがわかっているデータを学習データとして採用し、かつ前記特定座標位置の適合度初期値を１（あるいは適合度としての最高値）とし、学習データを与えることで、そのデータが含まれる領域を囲む適合度を下降させていくようにすることができる。
【００１５】
また、この発明において、更に好ましくは、前記カテゴリを認識するステップは、入力データを内包すると判定されるクラスタが複数存在する場合には、それらのクラスタの中で最大所属度を有する唯一のクラスタを当該入力データの属するクラスタとして認識する。
【００１６】
また、この発明において、更に好ましくは、前記カテゴリを認識するステップは、当該入力データの属するクラスタを認識するに際して、所属度の大きさを基準値と比較することにより、「不明」、「××カテゴリに含まれるが確信は持てない」、「確信を持って××クラスタに含まれるといえる」の３通りの認識を行う。
【００１７】
尚、このような実施形態における『適合度情報』は、クラスタ内部の特定座標位置における適合度と、該適合度を基準としてクラスタ内部のそれ以外の座標位置における適合度を表現するメンバシップ関数とからなるようにすることもできる。
【００１８】
ここで、『適合度情報を構成するクラスタ内部の特定座標位置』とあるが、これは、「クラスタをある図形で囲んだ場合における、その図形を構成する軸上の位置及びその図形の中心位置」とすると好ましい。
【００１９】
ここで、更に、クラスタが作成される空間が２次元の場合には、クラスタを囲む図形として、円、楕円、四角形のいずれかを用い、それらの図形の中心および軸の端点の計５点を、前記クラスタ内部の特定座標位置とすると好ましい。
【００２０】
また、ここで、クラスタが作成される空間が３次元の場合には、クラスタを囲む図形として、球、楕円体、直方体のいずれかを用い、それらの図形の中心および軸の端点の計７点を、前記クラスタ内部の特定座標位置とすると好ましい。
【００２１】
また、ここで、クラスタが作成される空間がｎ次元の場合には、クラスタを囲む図形として、超円、超楕円体、超平面体のいずれかを用い、それらの図形の中心および軸の端点の計（２ｎ＋１）点を、前記クラスタ内部の特定座標位置とすると好ましい。
【００２２】
次に、この発明の認識装置は、入力データと各カテゴリに対応するクラスタとを特徴量空間で照合することにより、当該入力データがどのクラスタに内包されるかを判定する手段と、
前記入力データを内包すると判定されるクラスタに関し、当該クラスタ内の座標位置と関連付けてあらかじめ記憶された適合度情報を参照することにより、当該クラスタに関する前記入力データの所属度を求める手段と、
前記求められたクラスタに関する所属度に基づいて、当該入力データの属するカテゴリを認識する手段と、
を具備することを特徴とする。
【００２３】
また、この発明において、好ましくは、カテゴリ認識結果が既知の入力データを学習することにより、前記適合度情報を変化させる手段を有する。
【００２４】
尚、このような実施形態において、入力データの学習により適合度情報を変化させる手段は、学習対象のクラスタに正しく入ることがわかっているデータを学習データとして採用し、かつ前記特定座標位置の適合度初期値を０（あるいは適合度としての最小値）とし、学習データを与えることで、そのデータが含まれる領域を囲む適合度を上昇させていくものとすることができる。
【００２５】
また、このような実施形態において、入力データの学習により適合度情報を変化させる手段は、学習対象のクラスタに誤って（異なるカテゴリのデータなのに入ってしまう）入ることがわかっているデータを学習データとして採用し、かつ前記特定座標位置の適合度初期値を１（あるいは適合度としての最高値）とし、学習データを与えることで、そのデータが含まれる領域を囲む適合度を下降させていくものとすることができる。
【００２６】
また、この発明において、更に好ましくは、前記カテゴリを認識する手段は、入力データを内包すると判定されるクラスタが複数存在する場合には、それらのクラスタの中で最大所属度を有する唯一のクラスタを当該入力データの属するクラスタとして認識する。
【００２７】
また、この発明において、更に好ましくは、前記カテゴリを認識する手段は、当該入力データの属するクラスタを認識するに際して、所属度の大きさを基準値と比較することにより、「不明」、「××カテゴリに含まれるが確信は持てない」、「確信を持って××クラスタに含まれるといえる」の３通りの認識を行う。
【００２８】
また、この発明において、更に好ましくは、前記適合度情報は、クラスタ内部の特定座標位置における適合度と、該適合度を基準としてクラスタ内部のそれ以外の座標位置における適合度を表現するメンバシップ関数とからなる。
【００２９】
尚、このような実施形態において、『適合度情報を構成するクラスタ内部の特定座標位置』とあるが、これは、「クラスタをある図形で囲んだ場合における、その図形を構成する軸上の位置及びその図形の中心位置」とすることができる。
【００３０】
ここで、クラスタが作成される空間が２次元の場合には、クラスタを囲む図形として、円、楕円、四角形のいずれかを用い、それらの図形の中心および軸の端点の計５点を、前記クラスタ内部の特定座標位置とすると好ましい。
【００３１】
また、ここで、クラスタが作成される空間が３次元の場合には、クラスタを囲む図形として、球、楕円体、直方体のいずれかを用い、それらの図形の中心および軸の端点の計７点を、前記クラスタ内部の特定座標位置とすると好ましい。
【００３２】
また、ここで、クラスタが作成される空間がｎ次元の場合には、クラスタを囲む図形として、超円、超楕円体、超平面体のいずれかを用い、それらの図形の中心および軸の端点の計（２ｎ＋１）点を、前記クラスタ内部の特定座標位置とすると好ましい。
【００３３】
また、この発明は、請求項３〜請求項５のいずれかに記載された装置を実現するためのコンピュータプログラムを記録した記録媒体にある。
【００３４】
【発明の実施の形態】
以下、この発明の好ましい実施の形態につき、添付図面を参照して詳細に説明する。
【００３５】
本発明に係るパターン認識システム（方法及び装置を含む）並びに適合度付きクラスタ生成部の実施の一形態が図１に示されている。なお、言うまでもないが、同システムはコンピュータプログラムにて実現することができる。
【００３６】
同図において、従来手法によるクラスタ生成部ａは、２次元の特徴量を用いてクラスタリングを実施するものである。ここで、従来手法としては、例えば、距離の近いデータ同士を１つのクラスタにまとめていく方法や、ある規範量を最小にするようデータをまとめていく方法等を挙げることができる。クラスタリングにより得られたクラスタ情報ｂは、本発明の要部の一つである適合度付きクラスタ生成部ｃへと転送される。なお、ここで、クラスタ情報ｂとは、１個／カテゴリ、あるいは、複数個／カテゴリにクラスタリングされた情報、つまりクラスタを構成するデータのまとまりの情報のことを意味している。
【００３７】
適合度付きクラスタ生成部ｃは、クラスタを構成するデータの情報であるクラスタ情報ｂを元に、それら全てを内包する図形（例えば、楕円）を記述し、その楕円の軸端点、中心に適合度を付加させると共に、さらに、その適合度を変化（学習）させる機能を有する部分である。そして、この適合度付きクラスタ生成部ｃには、後に詳細に説明するように、クラスタ形状の決定部ｄ、適合度の付加部ｅ、及び、適合度の学習部ｆが含まれている。ここで、クラスタ形状の決定部ｄでは、クラスタを構成するデータを内包する楕円の記述が行われる。また、適合度の付加部ｅでは、クラスタ形状の決定部ｄにてで決定された楕円の軸端点、中心に初期値１の適合度が保持される。さらに、適合度の学習部ｆでは、生成されているクラスタ（楕円）に誤認識データを与え、誤認識データの含まれる領域の適合度を低下させる処理が行われる。
【００３８】
こうして生成された適合度付加済みのクラスタｇは、本発明の他の要部である認識システムｈへと転送される。ここで、適合度付加済みのクラスタｇとは、クラスタを記述した楕円式、及び、適合度を軸端点並びに中心に保持したクラスタ情報のことを意味している。
【００３９】
認識システムｈは、適合度付きクラスタ生成部ｃから転送されてくる適合度付加済みクラスタｇを用いて、未知の入力がどのカテゴリに所属するかを判定する部分である。この認識システムｈには、後に詳細に説明するように、内包判定部ｉと、所属度算出部ｊと、認識結果決定部ｍとが含まれている。
【００４０】
内包判定部ｉは、適合度付加済みクラスタｇを保持し、未知の入力データが、その保持するクラスタｇに内包されるか否かを判定する機能を有するものである。ここで、内包されると判定されたならば、ｋの矢印、そうでなければｊの矢印に処理は流れる。ここで、矢印ｊは、未知のデータがどのクラスタにも内包されない場合の処理の流れを示しており、この処理に分岐した場合は適合度演算がされない。また、矢印ｋは、未知のクラスタが１つ以上のクラスタに内包される場合の処理の流れを示しており、この処理に分岐した場合は、各クラスタでの所属度（適合度の合成）が演算される。
【００４１】
所属度演算部ｌは、未知の入力データがあるクラスタに含まれる場合、その所属度を算出する部分である。ここで算出される所属度が大きいほど、そのクラスタが所属するカテゴリへ属する度合いが高いことを示している。
【００４２】
認識結果決定部ｍは、入力された未知のデータを、例えば、最も大きい所属度が算出されたクラスタの属するカテゴリに属すると判定する部分である。ただし、所属度の大きさにより、『どこにも所属しない』、『所属するがあやしい』、『自信を持って所属すると言える』と判定を下すこともできる。『どこにも所属しない』は、矢印ｊの処理の流れを通った場合（所属度が算出されない）に出される結果と考えて良い。
【００４３】
なお、この実施形態にて認識されるべき各パターンは二次元の特徴量を有するものであり、２つの特徴量にて特徴付けられている。そのため、クラスタが出来上がった後、それを囲む図形を楕円とした。もしも、３次元の特徴量を有するようならば、クラスタは楕円体で囲まれることになり、ｎ次元の特徴を持つならばｎ次元の超楕円体で囲まれることになる。つまり、以上説明した本発明の技術思想は、ｎ次元まで拡張可能であることに注意されたい。
【００４４】
次に、適合度の付加部ｅにてクラスタに適合度を付加するに際して、適合度が付される位置について図２を参照しながら説明する。認知のデータの集合でクラスタを作成し、そのクラスタに適合度を保持させる。各クラスタは楕円で表せるものとする。使用するデータを２次元として作成したクラスタを例に取ると、適合度が付加されるのは、図２の黒丸の位置である。つまり、４個の軸端点と１個のクラスタ中心に適合度が付加される。
【００４５】
次に、適合度の学習部ｆにおける学習方法について、図３を参照しながら説明する。あるクラスタに誤認識データを入れたときの適合度学習の仕方を以下に示す。あるクラスタに誤認識データが含まれている状況が図３に示されている。図中の中心付近に位置する網掛け部は、クラスタを構成するデータで共分散行列を作成し、その行列の固有値、固有ベクトルから生成される楕円である。しかし、この固有値、固有ベクトルから生成される楕円ではクラスタを構成するデータ全てを内包する楕円を表すことができないため、定数ｃをかけて、固有ベクトル方向に楕円の大きさを広げている（網掛け部の外側の楕円）。
【００４６】
なお、図３で使用されている記号の意味は次の通りである。
・クラスタ構成データの共分散行列の固有ベクトルは、軸Ａ方向、軸Ｂ方向を向いている。
・軸Ａ方向の固有値はλ１、軸Ｂ方向の固有値はλ２である。
・クラスタ構成データを全て含むための各軸方向の長さは、固有値の平方根にｃをかけたものである。
・軸Ａ上の端点における適合度はＡ１、Ａ２である。
・軸Ｂ上の端点における適合度はＢ１、Ｂ２である。
・クラスタ中心における適合度はＯである。
・クラスタに含まれた誤認識データの軸Ａ、Ｂ上の座標は（ａ、ｂ）であり、中心からの正規化距離はｒである。ここで、軸長さで正規化したあとの座標を（ａａ、ｂｂ）とする。
・クラスタ中心と誤認識データ座標までのベクトルと軸Ａがなす角をΘとする。
・共分散行列の固有値の平方根を径に持つ楕円（網掛け部の楕円）の楕円体式右辺＝Ｒ１とする。
・クラスタ構成全データのカバリング距離を考慮した楕円（大きい楕円）の楕円体式右辺＝Ｒ２とする。
【００４７】
２次元のクラスタを対象に行った１回の学習処理の流れが図４のフローチャートに示されている。同図に示されるように、この学習処理では、誤認識データ数をカウンタｎにプリセットした後（ステップも４０１）、ポインタｉを＋１づつインクリメントしては（ステップ４０６）、該当する誤認識データを読み出し、その読み出されたデータに基づいて適合度を調整する処理（ステップ４０３〜４０５）が、ポインタｉが誤認識データ数ｎに達するまで（ステップ４０２ＮＯ、ステップ４０７）、繰り返される。ここで、適合度調整処理では、先ず、その誤認識データがクラスタの内部に含まれるものであるか否かの判定が行われ（ステップ４０３）、含まれないと判定される場合には（ステップ４０３ＮＯ）、適合度の調整は行われないのに対して、含まれると判定される場合には（ステップ４０３ＹＥＳ）、条件式［１］≦１．０の成立可否に応じて、異なる態様により適合度の調整（ステップ４０４又は４０５）が行われる。ここで、図４のステップ４０４で使用される条件式［１］≦１．０（［１］式は楕円式である）は、クラスタを構成するデータの共分散行列の固有値、固有ベクトルで形成される楕円内部に入っているか否かを判定している。この例では、条件を満たす（内部に入る）場合は（ステップ４０４ＹＥＳ）、中心の適合度のみを下げる処理とし（ステップ４０４）、そうでなければ（ステップ４０４ＮＯ）、端点と中心を下げる処理とした（ステップ４０５）。これは、中心に近い領域に存在する誤認識データの影響を軸端点の適合度に反映させないためである。すなわち、
１）フローチャートの条件式［１］≦１．０がＹｅｓの場合中心の適合度は、次式（数１）に従って低下される。
【００４８】
【数１】
0003570604.tif 000002
２）フローチャートの条件式［１］≦１．０がＮｏの場合軸端点と中心の適合度は、次式（数２）に従って低下される。
【００４９】
【数２】
0003570604.tif 000003
注）・ｋ１、ｋ２、ｋ３は１回の学習で適合度をどれだけ下げるかということに依存して決定されるパラメータ
・中心、端点の適合度の初期値はすべて１である。つまり、誤認識データの含まれない領域は適合度１のままである。
【００５０】
学習処理の結果として、楕円で保持される適合度およびメンバシップ関数のイメージが図５に示されている。
【００５１】
なお、図５において使用されている記号の意味は次の通りである。
【００５２】
・Ｉ、II、III、IV：軸Ａ、Ｂで区切られる楕円の領域
・Ｏ：楕円中心で保持される適合度
・Ａ１、Ａ２：軸Ａの端点で保持される適合度
・Ｂ１、Ｂ２：軸Ｂの端点で保持される適合度
・Ａ１−Ｂ１：領域Ｉで利用するメンバシップ関数
・Ｂ１−Ａ２：領域IIで利用するメンバシップ関数
・Ａ２−Ｂ２：領域IIIで利用するメンバシップ関数
・Ｂ２−Ａ１：領域IVで利用する軸Ｂ方向のメンバシップ関数
・ｄａｔａ：未知の入力データと仮定
・Θ：未知の入力データと楕円中心を結んだベクトルの軸Ａとなす角
・ｒ：未知の入力データの楕円中心からの正規化距離
・ＭＦ値：領域Ｉに未知の入力データが入ったとき角度Θにより決まるメンバシップ値（適合度）
図５に示すように、未知のデータが存在する場合は、角度Θにより決定される端点の適合度と楕円中心からの距離で重み付けされた中心の適合度が加算され、これが所属度となる。なお、所属度の算出処理については、後に、より詳細に説明する。
【００５３】
次に、こうして得られた適合度付加済みのクラスタに基づいて、個々の認識対象データについてその属するカテゴリを決定する処理の詳細を図６のフローチャートを参照しながら説明する。同図に示されるように、処理が開始されると、先ず、未知入力データの特徴抽出処理（ステップ６０１）並びにクラスタ数のプリセット処理（ステップ６０２）を実行した後、クラスタポインタｉを＋１づつインクリメントしつつ（ステップ６０７）、該ポインタｉで指定されるクラスタについて、それに入力データが含まれるか否かの判定が、ポインタｉの値がｎに達するまで（ステップ６０３）、繰り返し行われる（ステップ６０４）。ここで、含まれないと判定される場合には（ステップ６０４ＮＯ）、当該ポインタｉにて指定されるクラスタの所属度（所属度ｉ）は０と記憶されるのに対して（ステップ６０６）、含まれると判定される場合には（ステップ６０４ＹＥＳ）、後述する演算式に従って当該クラスタに対する所属度（所属度ｉ）の算出が行われる（ステップ６０５）。
【００５４】
このようにして、全てのクラスタについての所属度が求められたならば、続いて、それらの所属度に基づいて、当該入力データの属するカテゴリの決定処理が行われる（ステップ６０８〜６１１）。すなわち、まず最初に、当該入力データがいずれかのクラスタに含まれるものであるかの判定が行われ（ステップ６０８）、入力データを含むクラスタが存在しない場合には（ステップ６０８ＮＯ）、直ちに、処理は終了するのに対して、入力データを含むクラスタが存在する場合には（ステップ６０８ＹＥＳ）、さらに、入力データを含むクラスタが複数存在するか否かの判定が行われる（ステップ６０９）。ここで、入力データを含むクラスタが単数である場合には（ステップ６０９ＮＯ）、直ちに、処理は終了するのに対して、入力データを含むクラスタが複数存在する場合には（ステップ６０９ＹＥＳ）、最大所属度算出クラスタを抽出して確定する処理が行われる（ステップ６１０）。すなわち、この最大所属度算出クラスタの確定処理（ステップ６１０）では、先に説明した所属度算出処理（ステップ６０５）にて求められた所属度（所属度ｉ：ｉ＝１〜ｎ）の中で最大のものに対応するクラスタが求められ、これが最大所属度算出クラスタとして確定される。その後、上述の処理で求められた最大所属度算出クラスタの所属するカテゴリが抽出されて、当該入力データの属するカテゴリとして確定される（ステップ６１１）。なお、この確定に際しては、後に詳細に説明するように、所属度を基準値と比較することにより、「不明」、「××カテゴリに含まれるが確信は持てない」、「確信を持って××クラスタに含まれるといえる」の３通りの認識を行うことができる。
【００５５】
所属度算出処理（ステップ６０５）の一例を図７を参照しながら説明する。この例では、未知の入力データｄａｔａは図７に示される楕円の第１象限に存在するものと想定する。なお、図７において使用されている記号の意味は次の通りである。
【００５６】
・Ｉ、II、III、IV：軸Ａ、Ｂで区切られる楕円の領域
・Ｏ：楕円中心で保持される適合度
・Ａ１、Ａ２：軸Ａの端点で保持される適合度
・Ｂ１、Ｂ２：軸Ｂの端点で保持される適合度
・Ａ１−Ｂ１：領域Ｉで利用するメンバシップ関数
・Ｂ１−Ａ２：領域IIで利用するメンバシップ関数
・Ａ２−Ｂ２：領域IIIで利用するメンバシップ関数
・Ｂ２−Ａ１：領域IVで利用する軸Ｂ方向のメンバシップ関数
・ｄａｔａ：未知の入力データと仮定
・Θ：未知の入力データと楕円中心を結んだベクトルの軸Ａとなす角
・ｒ：未知の入力データの楕円中心からの正規化距離
・ＭＦ値：領域Iに未知の入力データが入ったとき角度Θにより決まるメンバシップ値（適合度）
また、この場合におけるクラスタの内包チェック式は、次式（数３）により表される。
【００５７】
【数３】
0003570604.tif 000004
ここで、
λａ：軸Ａ方向の固有値
λｂ：軸Ｂ方向の固有値
ｒ：正規化距離
ｃ：クラスタを構成するデータをすべて含むため、各軸方向に広がりを持たせる係数  Ｒがｄ以下なので、ｄａｔａはこのクラスタに含まれていることになる。
【００５８】
また、この場合における所属度の演算式は次式（数４）により表される。
【００５９】
【数４】
0003570604.tif 000005
内包チェック式をｎ次元に拡張した場合には、次式（数５）により表される。このｎ次元に拡張された式の場合における所属度計算式については、別途、後に詳細に説明する。
【００６０】
【数５】
0003570604.tif 000006
なお、各記号の意味は次の通りである。
【００６１】
γ：クラスタ中心座標を固有ベクトル方向の座標に変換したもの
λ：固有値
ｃ：クラスタ構成全データを含むための係数
次に、ステップ６１０で求められた最大所属度に基づく所属カテゴリの抽出決定処理（ステップ６１１）の詳細について説明する。
【００６２】
この処理では、算出した最大所属度を元に、未知の入力データを次の３通りの結果に分類する。
【００６３】
［１］最大所属度＝０
未知のデータはどこのクラスタにも所属しなかったため、『認識結果は不明』
［２］最大所属度＜ユーザ設定値
未知のデータはあるクラスタに所属したが、所属度低いため『××カテゴリのデータとして決定できない』
［３］所属度≧ユーザ設定値
未知のデータはあるクラスタに所属し、所属度高いため『××カテゴリに所属すると決定』
ユーザ設定値（基準値）とは、所属クラスタを決定付けられる所属度の大きさであり、ユーザが任意に設定できる。ただし、０≦ユーザ設定値≦１の範囲である。
【００６４】
次に、メンバシップ関数の作成方法について説明する。まず、最初に、クラスタを構成する全てのデータを円、楕円、四角形（２次元の場合）などの図形で囲み、その図形の軸端点および中心に適合度を保持させ、端点と中心間を直線式で補完し、それをメンバシップ関数として定義する場合の例を、図８を参照しながら説明する。
【００６５】
図８に示されるように、中心の適合度をＡ、軸（ｘ）の正方向の端点の適合度をＢ（座標値ｘ＝ｒ≦１）とした場合、その間の適合度は図８中に記された直線ＡＢ相当のメンバシップ関数ＭＦで補完されることになる。尚、図８においては、Ｘ軸の正方向のメンバシップ関数のみが図示されているが、４個の軸端点のそれぞれに適合度を持つから、中心と軸端点の適合度間を補完すると計４つのメンバシップ関数（ＭＦ）が作成されることになる。
【００６６】
また、図８には、クラスタが楕円で囲まれた例が示されているが、円、四角形あるいはｎ次元空間に拡張された図形（例：超円、超楕円、超平面体）で囲まれた場合も同様にメンバシップ関数を作成することができる。ちなみに、ｎ次元のとき作成されるメンバシップ関数は（２×ｎ）個となる。
【００６７】
さらに、図形の軸端点および中心および軸端点と中心の間の１つ以上の点に適合度を保持させ、それぞれの間を補完し、それをメンバシップ関数として持つことを特徴とするクラスタとして拡張することもできる。すなわち、図８のＡ、Ｂという適合度の間にさらに１つ以上の適合度を保持するポイント（Ｃと仮定）を設け、ＡＣ、ＣＢ間を直線式で補完するのである。
【００６８】
次に、クラスタを構成する全てのデータを円、楕円、四角形（２次元の場合）などで囲み、その図形の軸端点および中心に適合度を保持させ、中心と端点間を次に述べるような曲線式（指数関数）で補完し、それをメンバシップ関数として定義する場合の例を、図９を参照しながら説明する。
【００６９】
図９に示されるように、中心の適合度Ａ、軸（ｘ）の正方向端点の適合度Ｂ（座標値ｘ＝ｒ＝１）（Ａ１＞Ａ２）とすると、その間の適合度は図９中に記された指数関数曲線相当のメンバシップ関数ＭＦで補完されることとなる。なお、図９においては、Ｘ軸の正方向のメンバシップ関数（ＭＦ）のみが示されているが、４個の軸端点のそれぞれに適合度を持つから、中心と端点の適合度間を補完すると直線式で補完した場合と同様に計４つのメンバシップ関数が作成されることになる。
【００７０】
また、図９には、クラスタが楕円で囲まれた例を示しているが、円、四角形あるいはｎ次元空間に拡張された図形（例：超円、超楕円）で囲まれた場合も同様にメンバシップ関数を作成することができる。ちなみに、ｎ次元のとき作成されるメンバシップ関数は直線式で補完した場合と同様に（２×ｎ）個となる。
【００７１】
さらに、クラスタを構成する全てのデータを円、楕円、四角形（２次元の場合）などの図形で囲み、その図形の軸端点および中心（あるいは重心）および軸端点と中心の間の１つ以上の点に適合度を保持させ、それぞれの間を補完し、それをメンバシップ関数として持つことを特徴とするクラスタに拡張することもできる。すなわち、図９のＡ、Ｂという適合度の間に１つ以上の適合度を保持するポイント（Ｃと仮定）を設け、ＡＣ、ＣＢ間を曲線式（指数関数など）で補完するのである。
【００７２】
次に、クラスタを構成する全てのデータを円、楕円（２次元の場合）で囲み、その図形の軸端点および中心に適合度を保持させ、端点間を角度Θで補完し、それをメンバシップ関数として定義する場合の例を、図１０を参照しながら説明する。
【００７３】
図１０に示されるように、中心の適合度をｏ、横軸の正方向端点の適合度をＡ、縦軸の正方向端点の適合度をＢとすると共に、中心と端点の適合度を足し合わせる比率をｒを用いて表すと、図１０中の点線部におけるメンバシップ関数（ＭＦ）は次式（数６）にて表される。
【００７４】
【数６】
0003570604.tif 000007
なお、図１０では、第１象限のメンバシップ関数のみ図示しているが、軸により領域は４つに分かれているため、楕円領域の全体としては、計４つのメンバシップ関数が作成されることになる。
【００７５】
これをｎ次元に拡張すると、次式（数７）のようになる。なお、ｎ次元空間において作成されるメンバシップ関数（ＭＦ）は、軸により領域が２ｎに分割されることを考えると計２ｎ個となる。
【００７６】
【数７】
0003570604.tif 000008
なお、上式にて使用される記号の意味は次の通りである。
【００７７】
ｒ：クラスタ中心からの正規化距離
γ：固有ベクトル方向に座標変換された新座標
ｃ：固有値で決まる楕円体径を大きくするための係数
λ：固有ベクトルに対する固有値（λ＝１のとき円）
ｏ：クラスタ中心で保持する適合度
ＤＤｉ：軸端点で保持する適合度
注）端点の適合度に掛けているものが、固有ベクトル方向に座標軸を取ったときの座標値の２乗である。
【００７８】
次に、適合度の学習方法について、図１１並びに図１２を参照しながら説明する。まず最初に、クラスタが円あるいは楕円で囲まれた場合において、学習データ１個につき、そのデータが含まれる領域を囲む適合度を下げる割合をあらかじめ決めておき、その適合度低下分をｒ、Θを用いて中心並びに端点に割り振る方法について、図１１を参照しながら説明する。
【００７９】
今、適合度学習データ１個につき、そのデータが含まれる領域を囲む適合度をｋだけ下げると仮定する。また、学習データが図１１に示すような楕円の第１象限領域に存在するものと仮定する。なお、図１１において使用されている記号の意味は次の通りである。
【００８０】
Ａ：Ｘ軸方向の端点適合度
Ｂ：Ｙ軸方向の端点適合度
ｏ：中心の適合度
ｒ：学習データ存在位置までの中心からの正規化距離（≦１）
Θ：Ｘ軸となす角
まず、次式（数８）に従って、ｋをｒの大きさにより、中心、端点で下げる大きさに分解する。
【００８１】
【数８】
0003570604.tif 000009
次に、次式（数９）に従って、残りのｋｒをΘの大きさによりＡ、Ｂに振り分ける。
【００８２】
【数９】
0003570604.tif 000010
なお、この方法は、学習対象のクラスタに誤って（異なるカテゴリのデータなのに入ってしまう）ことがわかっているデータを学習データとして採用し、適合度を保持する点の適合度初期値を１（あるいは適合度としての最高値）とし、学習データを与えることで、そのデータが含まれる領域を囲む適合度を下降させていく方法（前者）、あるいは、学習対象のクラスタに正しく入ることがわかっているデータと誤ってはいることがわかっているデータとの双方を学習データとして採用し、適合度を保持する点の適合度初期値を中間的な値として、学習データを与えることで、正解データが含まれる領域を囲む適合度については上昇させ、逆に、誤ったデータが含まれる領域を囲む適合度については下降させていく方法（後者）にも、同様に応用できる。つまり、前者の方法であるならば、学習データ１つにつきｋだけ適合度をあげるとおきかえれば良いし、後者の方法であるならば、上げ下げを両方考慮すれば実現できる。
【００８３】
ｎ次元に拡張する場合は、端点の下げ度合いｋｒを、学習データが存在する領域を囲む平面の数で割り、各平面に学習データを射影したときにある軸となす角Θで平面を構成する軸の端点に割り振れば良い。
【００８４】
次に、クラスタが四角形で囲まれた場合において、学習データ１個につき、そのデータが含まれる領域を囲む適合度を下げる割合をあらかじめ決めておき、適合度低下分をｒ、ｘ、ｙを用いて中心、端点に割り振る方法について、図１２を参照しながら説明する。
【００８５】
今、適合度データ学習データ１個につき、そのデータが含まれる領域を囲む適合度をｋだけ下げると仮定する。また、学習データが図１２に示すような四角形の第１象限領域に存在するものと仮定する。なお、図１２で使用されている記号の意味は次の通りである。
【００８６】
Ａ：Ｘ軸方向の端点適合度
Ｂ：Ｙ軸方向の端点適合度
ｏ：中心の適合度
ｒ：学習データ存在位置までの中心からの正規化距離（≦１）
Θ：Ｘ軸となす角
まず、次式（数１０）に従って、ｋをｒの大きさにより、中心、端点で下げる大きさに分解する。
【００８７】
【数１０】
0003570604.tif 000011
次に、次式（数１１）に従って、残りのｋｒをΘの大きさでＡ、Ｂに振り分ける。
【００８８】
【数１１】
0003570604.tif 000012
なお、この方法は、円、楕円のときと同様の方法で、先ほど図１１を参照しつつ説明した前者並びに後者の学習、更には、ｎ次元空間での学習にも応用することができる。
【００８９】
次に、所属度の算出方法について説明する。適合度間を直線あるいは曲線で補完したメンバシップ関数をクラスタで保持する場合、次式（数１２）に従って所属度を算出することができる。
【００９０】
【数１２】
0003570604.tif 000013
なお、上式で使用される記号の意味は次の通りである。
【００９１】
ｎ：次元数
Ｄｉ：各軸の座標値が各軸のメンバシップ関数に与えられて算出された適合度
また、適合度間をクラスタ中心の適合度と中心からの角度で軸端点間を補完した適合度を中心からの距離ｒに基づき加算するメンバシップ関数をｎ次元のクラスタで保持する場合、次式（数１３）に従って所属度を算出することができる。
【００９２】
【数１３】
0003570604.tif 000014
なお、上式で使用される記号の意味は次の通りである。
【００９３】
ｒ：クラスタ中心からの正規化距離
γ：固有ベクトル方向に座標変換された新座標
λ：固有ベクトルに対する固有値
ｉ：特徴量の次元数
ｃ：固有値で決まる楕円体径を大きくするための係数
ｏ：クラスタ中心で保持する適合度
ＤＤｉ：軸端点で保持する適合度
次に、ｎ次元に拡張した場合の所属度計算方法を３次元を例に取り、図１３を参照しながら説明する。なお、図１３で使用されている記号の意味は次の通りである。
【００９４】
ｘ、ｙ、ｚ：楕円体を構成している軸の名称
Ｘｐ、Ｙｐ、Ｚｐ：各軸の正方向端点で保持する適合度
ｏ：楕円体中心で保持する適合度
（ｘ１、ｙ１、ｚ１）：未知の入力データの直交座標表現
（ｒ、Θ、Φ）：未知の入力データの極座標表現
いま、図１３に示されるように、未知の入力データが、各軸の正方向で囲まれる領域に存在するときを考える。このとき所属度は、極座標を用いて次式（数１４）に従って求めることができる。ただし、最終式は直交座標を用いた式に近似されている。
【００９５】
【数１４】
0003570604.tif 000015
この考え方をｎ次元空間に拡張すると、先にも述べたように、次式（数１５）のようになる。
【００９６】
【数１５】
0003570604.tif 000016
【発明の効果】
以上の説明から明らかなように、本発明によれば、この種のクラスタを使用した認識システムにクラスタ内の座標位置により定まる適合度の概念を導入したことにより、この種の認識システムにおける認識精度を格段に向上させることができる。
【図面の簡単な説明】
【図１】本発明にかかる認識システム並びに適合度付きクラスタ生成部の構成を示すブロック図である。
【図２】２軸使用時の適合度付加位置を示す図である。
【図３】誤認識データとクラスタとの関係を示す図である。
【図４】学習処理の流れを示すフローチャートである。
【図５】クラスタに保持される適合度とメンバシップ関数との関係を示す図である。
【図６】クラスタを使用した判定部の処理の流れを示すフローチャートである。
【図７】未知の入力データに対する所属度演算処理の内容を示す図である。
【図８】適合度を直線式で補完する概念をイメージ化して示す図である。
【図９】適合度を指数関数で補完する概念をイメージ化して示す図である。
【図１０】角度Θによる補完の概念をイメージ化して示す図である。
【図１１】楕円で囲まれた領域に学習データの存在例を示す図である。
【図１２】四角形で囲まれた領域に学習データの存在例を示す図である。
【図１３】３次元空間における所属度演算の概念を示す図である。
【符号の説明】
ａ    従来手法によるクラスタの生成部
ｂ    クラスタ情報
ｃ    適合度付きクラスタ生成部
ｄ    クラスタ形状の決定部
ｅ    適合度の付加部
ｆ    適合度の学習部
ｇ    適合度付加済みクラスタ
ｈ    認識システム
ｉ    内包判定部
ｊ    内包されない場合の処理の流れを示す矢印
ｋ    内包される場合の処理の流れを示す矢印
ｌ    所属度算出部
ｍ    認識結果決定部
【図１】
0003570604.tif 000017
【図２】
0003570604.tif 000018
【図３】
0003570604.tif 000019
【図４】
0003570604.tif 000020
【図５】
0003570604.tif 000021
【図６】
0003570604.tif 000022
【図７】
0003570604.tif 000023
【図８】
0003570604.tif 000024
【図９】
0003570604.tif 000025
【図１０】
0003570604.tif 000026
【図１１】
0003570604.tif 000027
【図１２】
0003570604.tif 000028
【図１３】
0003570604.tif 000029