(57)【特許請求の範囲】
【請求項１】
記憶媒体に記憶されている制御プログラムを実行することによりパターンを分類するための分類木を生成するように情報処理装置を制御するための情報処理方法であって、
学習パターンから各次元が１つの座標値で表される複数次元の特徴量を取り出し、各次元の座標値が属する座標軸を所定の方法で再帰的に断片化し、当該次元の座標値が該断片化された座標軸のいずれの断片に属するか判断することにより、各次元についての階層構造を生成する第１生成工程と、
前記第１生成工程で生成された各次元の階層構造に基づいて、分類木の上位ノードから順に下位ノードへ生成していく際、生成途中の分類木のノードにおける各次元の分類効率に基づいて、いずれの次元で分類を行なうべきかを選択し、当該選択された次元を用いて前記分類木のノードを生成していく第２生成工程とを備えることを特徴とする情報処理方法。
【請求項２】
各次元の座標軸を再帰的にｎ分割（ｎは複数）することにより前記座標軸を再帰的に断片化していくことを特徴とする請求項１に記載の情報処理方法。
【請求項３】
各座標軸に応じて、前記再帰的に断片化する際の所定の方法が異なることを特徴とする請求項１に記載の情報処理方法。
【請求項４】
前記第２生成工程では、最も分類効率が上がる次元の階層構造を用いて前記分類木のノードを生成していくことを特徴とする請求項１に記載の情報処理方法。
【請求項５】
前記第２生成工程で生成された前記分類木のデータを格納する格納工程を更に備えることを特徴とする請求項１に記載の情報処理方法。
【請求項６】
前記格納工程によって格納された前記分類木のデータに基づいて入力パターンを認識する認識工程を更に備えることを特徴とする請求項５に記載の情報処理方法。
【請求項７】
前記認識工程は、
前記入力パターンの各次元の特徴量を取得する第１取得工程と、
前記第１取得工程で取得した該入力パターンの各次元の特徴量を用いて、前記第２生成工程で生成された前記分類木をたどることにより、前記入力パターンに対応するカテゴリーを認識する認識工程とを備えることを特徴とする請求項６に記載の情報処理方法。
【請求項８】
パターンを分類するための分類木を生成するための情報処理装置であって、
学習パターンから座標値で表される複数次元の特徴量を取り出し、各次元の座標値が属する座標軸を所定の方法で再帰的に断片化し、当該次元の座標値が該断片化された座標軸のいずれの断片に属するか判断することにより、各次元についての階層構造を生成する第１生成手段と、
前記第１生成手段で生成された各次元の階層構造に基づいて、分類木の上位ノードから順に下位ノードへ生成していく際、生成途中の分類木のノードにおける各次元の分類効率に基づいて、いずれの次元で分類を行なうべきかを選択し、当該選択された次元を用いて前記分類木のノードを生成していく第２生成手段とを備えることを特徴とする情報処理装置。
【請求項９】
パターンを分類するための分類木を生成するための情報処理方法をコンピュータに実行させるための制御プログラムを格納した記憶媒体であって、該情報処理方法が、
学習パターンから各次元が１つの座標値で表される複数次元の特徴量を取り出し、各次元の座標値が属する座標軸を所定の方法で再帰的に断片化し、当該次元の座標値が該断片化された座標軸のいずれの断片に属するか判断することにより、各次元についての階層構造を生成する第１生成工程と、
前記第１生成工程で生成された各次元の階層構造に基づいて、分類木の上位ノードから順に下位ノードへ生成していく際、生成途中の分類木のノードにおける各次元の分類効率に基づいて、いずれの次元で分類を行なうべきかを選択し、当該選択された次元を用いて前記分類木のノードを生成していく第２生成工程とを備えることを特徴とするコンピュータ読取可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像、文字、音声等のパターンを認識する際に使用する分類木を作成する情報処理方法及び装置に関するものである。
【０００２】
【従来の技術】
従来、文献“Ｃｌａｓｓｉｆｉｃａｔｉｏｎ  ａｎｄ  Ｒｅｇｒｅｓｓｉｏｎ  Ｔｒｅｅｓ”ｂｙ  Ｂｒｅｉｍａｎ，  Ｆｒｉｅｄｍａｎ，  Ｏｌｓｈｅｎ，  ａｎｄ  Ｓｔｏｎｅにあるように、いわゆる分類木を用いてパターンを分類する手法が存在した。この方法は認識速度が比較的速く、適用できるパターンの種類を問わないという利点を有する。このため、画像、文字、音声等のパターン認識において広く採用されている。
【０００３】
【発明が解決しようとする課題】
しかしながら、この方法では、パターンを分類するための分類木を作成するのに時間がかかるという欠点があった。特にパターンを構成する特徴量の次元が多くなると、分類木の作成に膨大な時間がかかってしまう。
【０００４】
例えば、分類木の各ノードではある特徴量の次元に着目し、入力パターンのその次元（特徴量）がある値より大きいか小さいかについての判断を行う。その際使用される“ある値”のことを通常“閾値”と呼ぶ。つまり、分類木を作成するにあたり、“ｎ次元の中でどの次元に着目するか？”ということと、“その次元のどこに閾値を設定するか？”ということを決定しないと、各ノードでの判定ができない。具体的には、特徴量のすべての次元に対して、仮にその次元に着目したとしたときの分類効率が最高になる閾値を求め（求めた閾値の総数はｎとなる）、その中で最も分類効率の高くなる次元と閾値を導くことで分類木を作成していく。
【０００５】
本発明は上記の問題に鑑みてなされたものであり、複数の次元で表される特徴量を有するパターンを分類するための分類木を高速に作成することを可能とする情報処理方法及び装置を提供することを目的とする。
【０００６】
また、本発明の他の目的は、少量の学習パターンでも高認識率を実現できる情報処理方法及び装置を提供することにある。
【０００７】
【課題を解決するための手段】
上記の目的を達成するための本発明の情報処理方法は、
記憶媒体に記憶されている制御プログラムを実行することによりパターンを分類するための分類木を生成するように情報処理装置を制御するための情報処理方法であって、
学習パターンから各次元が１つの座標値で表される複数次元の特徴量を取り出し、各次元の座標値が属する座標軸を所定の方法で再帰的に断片化し、当該次元の座標値が該断片化された座標軸のいずれの断片に属するか判断することにより、各次元についての階層構造を生成する第１生成工程と、
前記第１生成工程で生成された各次元の階層構造に基づいて、分類木の上位ノードから順に下位ノードへ生成していく際、生成途中の分類木のノードにおける各次元の分類効率に基づいて、いずれの次元で分類を行なうべきかを選択し、当該選択された次元を用いて前記分類木のノードを生成していく第２生成工程とを備える。
【０００９】
更に、本発明の他の態様による情報処理装置は以下の構成を備える。すなわち、
パターンを分類するための分類木を生成するための情報処理装置であって、
学習パターンから座標値で表される複数次元の特徴量を取り出し、各次元の座標値が属する座標軸を所定の方法で再帰的に断片化し、当該次元の座標値が該断片化された座標軸のいずれの断片に属するか判断することにより、各次元についての階層構造を生成する第１生成手段と、
前記第１生成手段で生成された各次元の階層構造に基づいて、分類木の上位ノードから順に下位ノードへ生成していく際、生成途中の分類木のノードにおける各次元の分類効率に基づいて、いずれの次元で分類を行なうべきかを選択し、当該選択された次元を用いて前記分類木のノードを生成していく第２生成手段とを備える。
【００１１】
【発明の実施の形態】
以下、添付の図面を参照して本発明の好適な実施形態を説明する。
【００１２】
＜第１の実施形態＞
図１は以下に説明する各実施形態すべてに係わるパターン認識方法が適用される情報処理装置の概略の構成を示すブロック図である。図２に示されるように、本実施形態による情報処理装置（パターン認識装置）は、パターン入力装置２０１、表示装置２０２、中央処理装置（ＣＰＵ）２０３、メモリ２０４から構成される。
【００１３】
パターン入力装置２０１は、例えばオンライン文字認識を行う装置ならば、デジタイザとペンを有し、デジタイザの上にペンによって入力された文字や図形の座標データをＣＰＵ２０３に渡す。また、音声認識を行う装置ならば、パターン入力装置２０１はマイクロフォンを備えることになる。すなわち、このパターン入力装置２０１は、これから認識しようとするパターンが入力できるものであればよく、スキャナ等でもよい。表示装置２０２はパターン入力装置２０１に入力されたパターンデータやＣＰＵ２０３がパターン認識した結果を表示する。ＣＰＵ２０３は入力されたパターンの認識処理を行なうなど、すべての装置の制御を行なう。メモリ２０４はＣＰＵ２０３が使用する認識プログラムやパターン認識のための辞書を記録するＲＯＭや、入力されたパターンデータ、認識プログラムの使用する変数等を一時的に記憶するＲＡＭ等を備える。
【００１４】
図２は、第１の実施形態による分類木生成の為の制御構成を説明する図である。同図において、１０１は元の学習用パターンである学習用パターン、１０２は学習用パターン１０１を分類するための特徴量の各次元を予め階層的に断片化する階層断片化前処理部、１０３は階層断片化前処理部１０２によって階層的に処理された後の階層化された学習用パターン、１０４は階層化された学習用パターン１０３を元に分類木を作成する分類木作成部、１０５は分類木作成部１０４が分類木を作成する過程で使用する展開変数判別部、１０６は分類木作成部１０４によって生成された分類木である。本実施形態におけるインプットは学習用パターンであり、アウトプットは分類木１０６となる。
【００１５】
図３は階層断片化前処理部１０２による特徴量の断片化を説明する図である。一般にパターンはｎ次元のベクトルを使って表すことができる。上述の“Ｃｌａｓｓｉｆｉｃａｔｉｏｎ  ａｎｄ  Ｒｅｇｒｅｓｓｉｏｎ  Ｔｒｅｅｓ”にも記載されているが、通常このｎが大きい場合、分類木の各ノードではある特徴量の次元に着目し、入力パターンのその次元（特徴量）がある値より大きいか小さいかについての決定を行う。その際使用される“ある値”のことを通常“閾値”と呼ぶ。つまり、分類木を作成するにあたり、“ｎ次元の中でどの次元に着目するか？”ということと、“その次元のどこに閾値を設定するか？”ということを決定しないと、各ノードでのＤｅｃｉｓｉｏｎを作成できないわけである。具体的には、通常はｎ次元のすべての次元に対して、仮にその次元に着目したとした時の分類効率が最高になる閾値を求め（求めた閾値の総数はｎとなる）、その中で最も分類効率の高くなる次元と閾値を導く。このため、特徴量の次元が増加すればするほど計算量が増大し、分類木の作成に膨大な時間を費やすようになってしまう。
【００１６】
本実施形態では、図３の（ａ）にあるように、例えばあらかじめｎ次元の各次元を再帰的に２等分しておく。こうすることによって、上記の「各次元に対して閾値を求める」という処理を省くことができるようになる。
【００１７】
なお、以上の論議はいわゆる２分木（Ｂｉｎａｒｙ  Ｔｒｅｅ）の構造の分類木を作成する場合の話で、一般的な構造の分類木に対しては、本発明の分割は２分割である必要はなく、例えば図３（ｂ）の様に３分割であっても構わない。また、この分割は等分である必要もなく、例えば図３（ｃ）の様に不均一分割であっても構わない。
【００１８】
以上のように、階層断片化前処理部１０２は、パターンを分類するための特徴量の各次元を、所定の方法で分割し、分類木の各ノードにおいて使用される閾値を前もって決定しておく。
【００１９】
以下、上記の構成による分類木の生成手順を説明する。本実施形態では、オンライン手書き文字認識技術に本発明を適用した例を用いて説明することにする。なお、本発明が一般のパターン認識技術に対しても、なんら変更なく、適用可能であることは明らかである。
【００２０】
まず、図４を用いてパターンを表現するための特徴量を説明する。図４では「あ」の文字が入力文字となっている。４０１の枠は、特徴量を求めるときの基準となる枠であり、例えば実際の認識文字板の入力枠でもよいし、入力された文字の外接矩形でもよい。「あ」を構成する３つのストロークは点列から構成されており、まずその点列からストロークを記述するのに妥当な点（いわゆる特徴点）を求める。例えば、図４では「あ」の第１画（４０２）の始点４０２ａと終点４０２ｂを特徴点としている。例えばこのように特徴点を取ると、「あ」という文字のように３つのストロークで構成される文字は、３×２＝６次元の特徴ベクトルで記述されることになる。また、各特徴点をＸ座標のみを用いれば３ストロークで構成される文字の次元は６次元であり、Ｘ座標とＹ座標を用いれば１２次元となる。
【００２１】
なお、始点、終点の他に、例えば各ストロークの１／４点、中点、３／４点、または重心等の特徴点の座標を使って文字を記述してもよいし、文字全体の最上点、最下点、最右点、最左点等の特徴点の座標を使ってもよい。
【００２２】
以上述べた特徴量の求め方は、極めて常識的、標準的なものである。これに対して、例えば図４に示されるような、あるストローク（４０３の場合、第１画）の特徴点（４０３の場合、始点）からあるストローク（４０３の場合、第２画）の特徴点（４０３の場合、終点）への差分ベクトル４０３から得られる特徴量を用いてもよい。
【００２３】
以上説明したように、一旦パターンを記述する特徴量の次元（＝変数の数）が決定されれば、その後は、それら変数のそれぞれを図３の（ａ），（ｂ），（ｃ）にある様に再帰的に断片化する。そして、学習用パターンを、断片化された次元によって階層化し、階層化された学習用パターン１０３を生成する。これが階層断片化前処理部１０２による処理である。
【００２４】
図５は本実施形態による分類木作成の手順を説明する図である。図５ではＸ軸を再帰的に３回、２分割し、Ｘ軸を８個に断片化している。そして、「あ」の第１画のストロークの始点は左から２番目の断片に属していることになる。もちろんＹ軸に関しても、同様に断片化をする。但し、Ｘ軸とＹ軸が全く同じ形式で断片化されなくてはいけないわけではない。また、図５には第１ストロークの始点のＸ座標という特徴量の次元を分割する様子を示しているが、第１ストロークの終点、第２、第３ストロークの始点、終点のＸ座標の各次元についても同様に次元の分割を行う。ただし、各次元の分割数は同一である必要は無く、また、すべてが等分割である必要も無い。
【００２５】
図５の通りＸ軸を断片化した後、分類木を作成するわけであるが、例えば特徴量が第１画のストロークの始点のＸ座標しかない場合（特徴量の次元画１次元＝１変数）、図５の「あ」パターンからは図５下の分類木が作成される。
【００２６】
特徴量の次元がｎ（  ｎ＞１）である場合、分類木の各ノードで、どの次元に注目すれば最も分類効率が上がるかを評価しながら分類木を作成していく。この分類効率の評価を行うのが展開変数判別部１０５である。なわち、展開変数判別部１０５は、階層化された学習用パターン１０３を用いて、予め定めた閾値に基づいて分類効率を計算する。
【００２７】
なお、分類効率の評価としては、例えば文献“Ｃｌａｓｓｉｆｉｃａｔｉｏｎ  ａｎｄ  Ｒｅｇｒｅｓｓｉｏｎ  Ｔｒｅｅｓ”の“Ｇｉｎｉ  Ｇｒｉｔｅｒｉｏｎ”を用いる方法、情報理論で一般的に使用されている“Ｍｕｔｕａｌ  Ｉｎｆｏｍａｔｉｏｎ”を用いる方法等、周知の手法を適用できる。
【００２８】
また、その他の分類木を作成するための一般的な手法は全て公知のものが使用できる。例えば、文献“Ｃｌａｓｓｉｆｉｃａｔｉｏｎ  ａｎｄ  Ｒｅｇｒｅｓｓｉｏｎ  Ｔｒｅｅｓ”にはリーフノードを作成する際に、何の尺度を用いれば良いかが記述されている。例えば、エントロピーをその尺度として採用するならば、本実施形態の分類木作成処理のフローチャートは図６のようになる。なお、エントロピーはΣＰｉ・ｌｏｇＰｉで定義される。
【００２９】
図６において、ステップＳ１１で処理対象のノードに着目する。まず最初に分類木のルートノードから出発することになる。ルートノードはもちろん複数のカテゴリーの学習パターンが存在するので、ステップＳ１２からステップＳ１３進む。次に、ステップＳ１３において、そのノードにおけるエントロピーを算出し、得られたエントロピーがある閾値より小さい場合は、ステップＳ１６へ進み、そのノードをリーフノードとして、最も存在確率の高いカテゴリー番号をそのノードに対応させる。例えば、そのノードに「な」と「は」が存在し、「な」が圧倒的に多い場合、当該ノードは「な」のリーフノードとする。もちろんルートノードはリーフノードにはなり得ないので、ステップＳ１３からステップＳ１４へ進むことになる。
【００３０】
ステップＳ１４では、展開変数判別部１０５による分類効率の判定を行い、その結果に基づいて、当該ノードに用いるべき特徴変数（特徴量の次元）に関するＤｅｃｉｓｉｏｎを行う。その結果、２分岐の場合は２つのノードが新たに生成される。なお、一般化して述べれば、ｎ分岐の場合はｎ個のノードが生成されることになる。そして、そのそれぞれのノードに対してもとの「あるノードに着目」に戻る。
【００３１】
図７は第１ストロークのＸ座標とＹ座標を変数（特徴量の次元）とする、２変数の場合の分類木の生成を説明する図である。図７の（ａ）に示されるように、本例では、Ｘ座標は７つの閾値（Ｘ１〜Ｘ７）で８つの階層に断片化され（図５と同様）、Ｙ座標は３つの閾値で４つの階層に断片化されている。図７の（ｂ）は、各次元の閾値の階層構造を示す図である。例えば、Ｘ４より左にあると分類された場合、次に比較される閾値はＸ２となる。
【００３２】
図７の（ｃ）は図６のフローチャートに従って生成される分類木の一例を示す図である。ノード７０１はルートノードであり、ステップＳ１４によってＸ座標の次元が選択されたことにより、ステップＳ１５において閾値であるＸ４が設定される。そして、この結果、２つのノード７０２、７０３が生成される。次に、ノード７０２が着目ノードとなり、ノード７０２が複数のカテゴリに属する学習パターンを有する場合、ステップＳ１４においてノード７０２で展開変数判別部１０５が採用すべき次元を決定する。ここでは、Ｙ座標が選択されたので、ステップＳ１５において閾値としてＹ２が設定される。以下、同様に、ノード７０４ではＹ座標が選択されて閾値Ｙ３が、ノード７０５ではＸ座標が選択されて閾値Ｘ２が設定されている。なお、各閾値の設定は、図７の（ｂ）に示した階層構造に則ってなされる。すなわち、Ｘ４より右側へ分岐した部分（ノード７０１において右側に分岐した部分）において、次にＸ座標が選択された場合の閾値はＸ２ということになる（従って、ノード７０５の閾値はＸ２となる）。
【００３３】
さて、着目しているノードが単一のカテゴリの学習パターンしか含まない場合は、当該ノードをリーフノードに決定する（ステップＳ１７、Ｓ１６）。また、ステップＳ１７でＮＯに分岐する場合は、学習パターンが存在しないことを意味しており、その場合はステップＳ１８において当該ノードを分類木から削除する。
【００３４】
以上の手順に従って分類木を作成していって、すべてのノードに対して処理を終了した時点で、分類木の作成終了とする（ステップＳ１９、Ｓ２０）。
【００３５】
図７は本実施形態の情報処理装置の構成例を示すブロック図である。８１はＣＰＵであり、メモリ８３に格納された制御プログラムに従って各種制御を実現する。８２はハードディスクであり、入力データとして全学習パターンが保持されるとともに、出力データとして分類木の作成結果が保持される。８３はメモリであり、プログラム部８４とデータ部８５を有する。プログラム部８４には、図６で説明したフローチャートの手順を実現する制御プログラム等がサブルーチンとして存在し、ＣＰＵ８１は個々のサブルーチンを読み出して実行する。データ部８５には、個々の学習パターンを暫定的に保持する学習パターンバッファ８５ａと、階層断片化された学習パターン領域８５ｂと、作成途中の分類木を保持する分類木バッファ８５ｃが存在する。
【００３６】
学習パターンバッファ８５ａには、ハードディスク８２から全学習パターンを逐次格納する。そして、階層断片化前処理部１０２によって階層化された学習用パターン１０３を得て、これを階層化された学習パターン領域８５ｂに格納する。その後、分類木作成部１０４は図６による分類木作成の手順を実行して、分類木を作成する。
【００３７】
以上説明したように、上記第１の実施形態によれば、各ノードにおいて採用すべき次元が決定されると、階層断片化前処理部１０２において予め決定された閾値が自動的に設定されることになるので、計算量が減少し、分類木の作成時間が短縮できる。
【００３８】
なお、上記実施形態では３ストロークの文字を分類するための分類木の生成を示したが、他のストローク数、例えば４ストロークの文字や２ストロークの文字を分類するための分類木の生成も同様に行なわれる。
【００３９】
＜第２の実施形態＞
図９は、第２の実施形態によるパターン認識処理の機能構成を説明するブロック図である。８０１は入力パターンであり、認識対象（分類対象）となる入力パターンである。８０２は入力パターン８０１を階層的に断片化する階層断片化前処理部である。また、８０３は断片化前処理された後の階層化された入力パターン、８０４は分類木である。８０５はカテゴリー判別部であり、階層化された入力パターン８０３と分類木８０４を元にカテゴリーの判別確率を求める。第２の実施形態におけるインプットは“入力パターン８０１”で、アウトプットは“認識候補８０６”となる。また、分類木８０４としては、第１の実施形態の方法で作成し得る分類木を採用するものとする。
【００４０】
入力パターン８０１は、第１の実施形態の学習用パターン１０１に対応するもので、実質的には何ら変りはない。階層断片化前処理部８０２は第１の実形態の階層断片化前処理部８０２と同様のものである。階層化された入力パターン８０３は、第１の実施形態の場合は学習パターンの数だけ存在していたが、本第２の実施形態においては、入力パターン８０１から導きだされた１つのみとなる。
【００４１】
カテゴリー判別部８０５は、階層化された入力パターン８０３に基づき、分類木８０４をたどって葉（リーフノード）に到達した時点で、その葉に存在する最も確からしいカテゴリーを認識結果として出力する。また、葉に到達しなかった場合は、最後に通過したノードに含まれるカテゴリー確率（カテゴリー存在確率）を結果として出力する。
【００４２】
次に、第２の実施形態の情報処理装置の構成例を図１０に示す。１０１０はＣＰＵであり、メモリ１０４０に格納された制御プログラムに基づいて各種の制御を実現する。１０２０は入力装置であり、入力パターン８０１を入力するのに用いられる。入力装置１０２０は認識処理の対象となるパターンを入力するのに適したものであり、例えば手書き文字認識であれば座標入力装置が、音声認識であればマイクロフォンが用いられる。１０３０はハードディスクであり、分類木を格納する。メモリ１０４０はプログラム部１０５０とデータ部１０６０とに別れる。プログラム部１０５０には、図９のブロック図の個々の部品がサブルーチンとして存在し、ＣＰＵ１０１０は個々のサブルーチンを読み出して実行する。データ部１０６０には、入力装置１０２０からユーザが入力した入力パターン１０６ａ（入力パターン８０１を格納する）と、入力パターンを階層断片化された入力パターン１０６ｂ（階層化された入力パターン８０３を格納する）と、認識候補１０６ｃが存在する。カテゴリー判別部８０５は階層化された入力パターン８０３と分類木８０４に従って認識候補８０６を決定し、データ部１０６０の認識候補１０６ｃに格納する。
【００４３】
＜第３の実施形態＞
図１１は、第３の実施形態による分類木作成機能を説明するブロック図である。１００１は学習用パターン、１００２は学習用パターン１００１をサブパーン毎に切り出すサブパターン取り出し部、１００３は学習用サブパターンを階層的に断片化する階層断片化前処理部、１００４は階層断片化前処理部１００３によって断片化前処理された後の階層化された学習用サブパターン、１００５は階層化された学習用サブパターン１００４を元に分類木を作成する分類木作成部、１００６は分類木作成部１００５が分類木を作成する過程で使用する展開変数判別部、１００７は分類木作成部１００５による処理の結果として得られた分類木である。第３の実施形態におけるインプットは、“学習用パターン１００１”で、アウトプットは、“分類木１００７”となる。なお、本例において、サブパターンの概念は漢字の偏と旁からきている。例えば、「漢」は１３画で、ｘ、ｙで２６次元となるが、「最初の３画（偏）」と「最後の１０画（旁）」に分けて、それぞれの次元で分類木を作ることができる。
【００４４】
第１の実施形態で述べたオンライン手書き文字認識を例にとって説明する。第１の実施形態で述べたとおり「あ」という３画のストロークで書かれる文字において、始点終点の座標値を特徴点として用いると、パターンは結局３×２＝６次元の特徴ベクトルで記述されることになる。例えば、この特徴ベクトルを構成する６次元から２次元ずつ抽出すると、６Ｃ２＝１５個の２次元ベクトルがサブパターンとして抽出できることになる。第３の実施形態ではこの１５個のベクトル毎に第１の実施形態と同様な手順で分類木を作成するのである。この方法は、学習パターンの情報を冗長に保持し、それに関するパターン認識を行うことに相当する。よって、この方法を用いると、結果として少量の学習パターンでも高認識率が実現できることになる。但し、結果的に生成される全分類木の合計サイズは、冗長性が高まれば高まる程大きくなる。
【００４５】
例えば極端な例として、６次元の特徴ベクトルから１次元ずつ抽出すると、最も単純な分類木作成が行え、かつ分類木のサイズは小さくなるが、冗長性が全くなくなり、分類能力は低下する。
【００４６】
６次元ベクトルの場合、最大（６Ｃ６＋６Ｃ５＋６ＣＣ４＋６Ｃ３＋６Ｃ２＋６Ｃ１）＝６３個の次元の異なるベクトルがえられ、これらそれぞれについて分類木を作成すると、最も冗長性は高くなり認識率も高くなる。
【００４７】
なお、第３の実施形態の具体的な装置構成例は、第１の実施形態の図７に示したものと基本的に同じである。
【００４８】
以上のように、分類木の作成を第１の実施形態で説明したのと同様の手法を行うことにより、分類木をより短時間で作成できるので、上述のような分類木を冗長に作成するようにしても十分実用に耐えるスループットが得られる。そして、このように冗長な分類木を作成して、後述の第４の実施形態の如く認識処理を行うことにより、認識率を高めることができる。
【００４９】
＜第４の実施形態＞
図１２は、第３の実施形態による分類木作成機能を説明するブロック図である。１１０１は入力パターン、１１０２は入力パターン１１０１をサブパターン毎に切り出すサブパターン取り出し部、１１０３はサブパターンを階層的に断片化する階層断片化前処理部、１１０４は断片化前処理された後の階層化されたサブパターン、１１０５は分類木、１１０６は階層化されたサブパターン１１０４と分類木１１０５を元にカテゴリーの判別確率を求めるカテゴリー判別部、１１０７はカテゴリー判別部１１０６による処理の結果得られた各カテゴリーの判別確率を統合する判別確率統合部である。第４の実施形態におけるインプットは“入力パターン１１０１”で、アウトプットは“認識候補１１０８”となる。なお、上記の分類木は、第３の実施形態の方法で作成しうる分類木であることが望ましい。
【００５０】
入力パターン１１０１は、第３の実施形態の学習用パターン１００１に対応するもので、実質的には何ら変りはない。サブパターン取り出し部１１０２、階層断片化前処理部１１０３の２つの機能は第３の実施形態のそれぞれ対応する構成（サブパターン取り出し部１００２、階層断片化前処理部１００３）と同様である。ただし、階層化された入力サブパターン１１０４は、第３の実施形態の場合は学習パターンの数だけ存在したが、本第４の実施形態においては、入力されたパターンから導き出された１つのみとなる。
【００５１】
判別確率統合部１１０７は、カテゴリー判別部１１０６のサブパターン毎の結果について相加平均、または相乗平均等の平均処理を行う。
【００５２】
なお、第４の実施形態の具体的な装置構成例は第２の実施形態の図９に示したものと基本的に同様となる。
【００５３】
なお、本発明は、複数の機器（例えばホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【００５４】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００５５】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００５６】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００５７】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００５８】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００５９】
【発明の効果】
以上説明したように、本発明によれば、複数の次元で表される特徴量を有するパターンを分類するための分類木を高速に作成できるという効果がある。
【００６０】
また、本発明によれば、少量の学習パターンでも高認識率が実現できるという効果がある。
【００６１】
【図面の簡単な説明】
【図１】本実施形態による情報処理装置の概略の構成を示すブロック図である。
【図２】第１の実施形態による分類木生成の為の制御構成を説明する図である。
【図３】階層断片化前処理部１０２による特徴量の断片化を説明する図である。
【図４】実施形態の情報処理装置におけるパターンの記述を説明する図である。
【図５】本実施形態による分類木作成の手順を説明する図である。
【図６】第１の実施形態における分類木作成過程を示すフローチャートである。
【図７】第１ストロークのＸ座標とＹ座標を変数（特徴量の次元）とする、２変数の場合の分類木の生成を説明する図である。
【図８】第１の実施形態の情報処理装置の構成例を示すブロック図である。
【図９】第２の実施形態によるパターン認識処理の機能構成を説明するブロック図である。
【図１０】第２の実施形態による情報処理装置の構成例を示すブロック図である。
【図１１】第３の実施形態による分類木作成機能を説明するブロック図である。
【図１２】第４の実施形態による分類木作成機能を説明するブロック図である。
【図１】
0003634574.tif 000002
【図２】
0003634574.tif 000003
【図３】
0003634574.tif 000004
【図４】
0003634574.tif 000005
【図５】
0003634574.tif 000006
【図６】
0003634574.tif 000007
【図７】
0003634574.tif 000008
【図８】
0003634574.tif 000009
【図９】
0003634574.tif 000010
【図１０】
0003634574.tif 000011
【図１１】
0003634574.tif 000012
【図１２】
0003634574.tif 000013