JPH09282419A - 情報処理方法及び装置 - Google Patents
情報処理方法及び装置Info
- Publication number
- JPH09282419A JPH09282419A JP8091097A JP9109796A JPH09282419A JP H09282419 A JPH09282419 A JP H09282419A JP 8091097 A JP8091097 A JP 8091097A JP 9109796 A JP9109796 A JP 9109796A JP H09282419 A JPH09282419 A JP H09282419A
- Authority
- JP
- Japan
- Prior art keywords
- pattern
- sub
- data
- classification tree
- information processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Character Discrimination (AREA)
Abstract
(57)【要約】
【課題】 学習パターンの量が少なくても高い認識率を
実現できる辞書の作成と、高速な認識を実現させる。 【解決手段】 学習用パターンからサブパターンを取り
出し(102)、取り出したサブパターンを階層化前処
理し(103)、階層化された学習用サブパターンにつ
いて分類木を作成する(105)。
実現できる辞書の作成と、高速な認識を実現させる。 【解決手段】 学習用パターンからサブパターンを取り
出し(102)、取り出したサブパターンを階層化前処
理し(103)、階層化された学習用サブパターンにつ
いて分類木を作成する(105)。
Description
【0001】
【発明の属する技術分野】本発明は画像、文字、音声等
のパターンを認識する際に使用する分類木を作成、或い
は認識する情報処理方法及び装置に関するものである。
のパターンを認識する際に使用する分類木を作成、或い
は認識する情報処理方法及び装置に関するものである。
【0002】
【従来の技術】従来、特願平6−265054号公報に
あるように、パターンを段階的に縮退化した前処理を経
て、分類木を作成する方法が存在した。この方法によれ
ば、パターンの巨視的な形から微視的な形にわたったバ
ランスのよい分類木が作成でき、人間の認識能力に限り
なく近い認識性能が期待できるようになる。
あるように、パターンを段階的に縮退化した前処理を経
て、分類木を作成する方法が存在した。この方法によれ
ば、パターンの巨視的な形から微視的な形にわたったバ
ランスのよい分類木が作成でき、人間の認識能力に限り
なく近い認識性能が期待できるようになる。
【0003】
【発明が解決しようとしている課題】しかしながら、こ
の方法では学習用パターンの多さでパターンの変形を吸
収するため、学習用パターンが膨大に必要になるという
欠点があった。
の方法では学習用パターンの多さでパターンの変形を吸
収するため、学習用パターンが膨大に必要になるという
欠点があった。
【0004】この様子を図6を使って説明する。
【0005】「0」から「9」までの数字ビットマップ
を認識するための分類木を上述の従来の方法で作成した
とする。
を認識するための分類木を上述の従来の方法で作成した
とする。
【0006】例えば、この方法で作成した分類木は、図
6のような形になり、図6の右から5番目の枝には、
「4」「5」「6」の3種類のカテゴリーの学習用パタ
ーンが存在することになる。
6のような形になり、図6の右から5番目の枝には、
「4」「5」「6」の3種類のカテゴリーの学習用パタ
ーンが存在することになる。
【0007】このことは、逆にいうと、巨視的に視て図
6の右から5番目の枝の形をした学習用パターンは
「4」「5」「6」の3種類のカテゴリー以外は存在し
ないことを意味する。
6の右から5番目の枝の形をした学習用パターンは
「4」「5」「6」の3種類のカテゴリー以外は存在し
ないことを意味する。
【0008】このようにして作成された分類木を使っ
て、全く新しいビットマップパターンを認識することを
考える。図22にある(a)から(e)のビットマップ
は全て巨視的に見ると、図6の右から5番目の枝の形に
なる。つまりこの上記説明した分類木でこれらのビット
マップを認識しようとすると、必ず「4」「5」「6」
のカテゴリーに分類されてしまう。結果的に(a)
(b)(c)は正解で、(d)はリジェクトすべきとこ
ろを認識してしまい、(e)にいたっては明らかな誤認
識をしてしまう。
て、全く新しいビットマップパターンを認識することを
考える。図22にある(a)から(e)のビットマップ
は全て巨視的に見ると、図6の右から5番目の枝の形に
なる。つまりこの上記説明した分類木でこれらのビット
マップを認識しようとすると、必ず「4」「5」「6」
のカテゴリーに分類されてしまう。結果的に(a)
(b)(c)は正解で、(d)はリジェクトすべきとこ
ろを認識してしまい、(e)にいたっては明らかな誤認
識をしてしまう。
【0009】この不具合の原因は、学習用パターンに図
22の(e)のような形をしたカテゴリー「2」のパタ
ーンが存在しなかったことが原因であるが、これはとり
も直さず、従来の方法が“全ての変動を包含した膨大な
学習用パターンを必要とする”ということを意味してい
るのである。
22の(e)のような形をしたカテゴリー「2」のパタ
ーンが存在しなかったことが原因であるが、これはとり
も直さず、従来の方法が“全ての変動を包含した膨大な
学習用パターンを必要とする”ということを意味してい
るのである。
【0010】
【課題を解決する為の手段】上記課題を解決する為に、
本発明は、学習用パターンからサブパターンを取り出
し、前記サブパターンを予め階層的に処理し、前記階層
的に処理されたサブパターンに基づいて該サブパターン
の分類木を作成する情報処理方法及び装置を提供する。
本発明は、学習用パターンからサブパターンを取り出
し、前記サブパターンを予め階層的に処理し、前記階層
的に処理されたサブパターンに基づいて該サブパターン
の分類木を作成する情報処理方法及び装置を提供する。
【0011】上記課題を解決する為に、本発明は、好ま
しくは前記階層的処理は、前記サブパターンの詳細なデ
ータから順に縮退したデータを生成する。
しくは前記階層的処理は、前記サブパターンの詳細なデ
ータから順に縮退したデータを生成する。
【0012】上記課題を解決する為に、本発明は、好ま
しくは前記分類木の作成は、前記階層的に処理されたサ
ブパターンのデータの上位から下位へと展開する。
しくは前記分類木の作成は、前記階層的に処理されたサ
ブパターンのデータの上位から下位へと展開する。
【0013】上記課題を解決する為に、本発明は、好ま
しくは前記サブパターンは、前記学習用パターンを分割
した部分パターンとする。
しくは前記サブパターンは、前記学習用パターンを分割
した部分パターンとする。
【0014】上記課題を解決する為に、本発明は、好ま
しくは前記分類木の作成は、分類効率が最大となる変数
を選択し、該選択された変数について分類木を作成す
る。
しくは前記分類木の作成は、分類効率が最大となる変数
を選択し、該選択された変数について分類木を作成す
る。
【0015】上記課題を解決する為に、本発明は、好ま
しくはパターンを入力し、前記入力したパターンを階層
的に処理し、前記階層的に処理された入力パターンのデ
ータのより上位のデータから下位に向かって、順に前記
分類木をたどって前記入力パターンを認識する。
しくはパターンを入力し、前記入力したパターンを階層
的に処理し、前記階層的に処理された入力パターンのデ
ータのより上位のデータから下位に向かって、順に前記
分類木をたどって前記入力パターンを認識する。
【0016】上記課題を解決する為に、本発明は、好ま
しくは前記パターンはビットマップデータとする。
しくは前記パターンはビットマップデータとする。
【0017】上記課題を解決する為に、本発明は、好ま
しくは前記パターンはストロークデータとする。
しくは前記パターンはストロークデータとする。
【0018】上記課題を解決する為に、本発明は、好ま
しくは前記パターンは音声データとする。
しくは前記パターンは音声データとする。
【0019】
【発明の実施の形態】以下、図面に基づいて本発明の好
適な実施例を説明する。
適な実施例を説明する。
【0020】〈実施の形態1〉図2は本発明に関わる以
下の全ての実施の形態に係わる情報処理装置の構成を示
すブロック図である。
下の全ての実施の形態に係わる情報処理装置の構成を示
すブロック図である。
【0021】装置は、パターン入力装置201、表示装
置202、中央処理装置(CPU)203、メモリ20
4から構成される。
置202、中央処理装置(CPU)203、メモリ20
4から構成される。
【0022】パターン入力装置201は、例えばオンラ
イン文字認識ならば、デジタイザとペンを有し、デジタ
イザの上にペンによって入力された文字や図形の座標デ
ータをCPU203に渡す。このパターン入力装置は、
これから認識しようとするパターンが入力できるものな
らば、画像を光学的に読み取るスキャナーでも音声を入
力するマイクでもまた、それらの入力手段から入力した
パターンを通信手段を介して入力しても何でもよい。表
示装置202はパターン入力手段201に入力された生
のパターンデータやCPU203が認識した結果を表示
するものであり、CRTや液晶表示器等で良い。CPU
203は入力されたパターン認識を行ったり、すべての
装置の制御を行ったりする。メモリ204はCPU20
3が使用する認識プログラムや辞書を記憶したり、入力
されたパターンデータ、認識プログラムの使用する変数
等を一時的に記憶する。
イン文字認識ならば、デジタイザとペンを有し、デジタ
イザの上にペンによって入力された文字や図形の座標デ
ータをCPU203に渡す。このパターン入力装置は、
これから認識しようとするパターンが入力できるものな
らば、画像を光学的に読み取るスキャナーでも音声を入
力するマイクでもまた、それらの入力手段から入力した
パターンを通信手段を介して入力しても何でもよい。表
示装置202はパターン入力手段201に入力された生
のパターンデータやCPU203が認識した結果を表示
するものであり、CRTや液晶表示器等で良い。CPU
203は入力されたパターン認識を行ったり、すべての
装置の制御を行ったりする。メモリ204はCPU20
3が使用する認識プログラムや辞書を記憶したり、入力
されたパターンデータ、認識プログラムの使用する変数
等を一時的に記憶する。
【0023】図1は、本実施の形態の機能的構成を最も
よく表す図画であり、101は「生の学習用パター
ン」、102は「生の学習用パターン」をサブパターン
毎に切り出す「サブパターン取り出し手段」、103は
「学習用サブパターン」をピラミッドに通す「階層化前
処理手段」、104はピラミッドで処理された後の「階
層化された学習用サブパターン」、105は「階層化さ
れた学習用サブパターン」を元に分類木を作成する「分
類木作成手段」、106は「分類木作成手段」が分類木
を作成する過程で使用する「展開変数判別手段」、10
7は「分類木作成手段」の結果得られた「分類木」であ
る。本発明におけるインプットは“生の学習用パター
ン”で、アウトプットは“分類木”となる。
よく表す図画であり、101は「生の学習用パター
ン」、102は「生の学習用パターン」をサブパターン
毎に切り出す「サブパターン取り出し手段」、103は
「学習用サブパターン」をピラミッドに通す「階層化前
処理手段」、104はピラミッドで処理された後の「階
層化された学習用サブパターン」、105は「階層化さ
れた学習用サブパターン」を元に分類木を作成する「分
類木作成手段」、106は「分類木作成手段」が分類木
を作成する過程で使用する「展開変数判別手段」、10
7は「分類木作成手段」の結果得られた「分類木」であ
る。本発明におけるインプットは“生の学習用パター
ン”で、アウトプットは“分類木”となる。
【0024】図8は、本実施の形態のオンライン手書き
文字認識方法が適用される情報処理装置における主にメ
モリ内の構造を示すものである。801は図2にも20
3として示したCPUであり、後述するメモリ802に
格納されている制御プログラムに従って、本実施の形態
において説明する各処理を実行するものである。後述す
るフローチャートの処理も、実行の為の制御プログラム
がメモリ802に格納され、CPU801により実行さ
れるのは同様である。
文字認識方法が適用される情報処理装置における主にメ
モリ内の構造を示すものである。801は図2にも20
3として示したCPUであり、後述するメモリ802に
格納されている制御プログラムに従って、本実施の形態
において説明する各処理を実行するものである。後述す
るフローチャートの処理も、実行の為の制御プログラム
がメモリ802に格納され、CPU801により実行さ
れるのは同様である。
【0025】メモリ802は、CPU801が各処理を
実行する為の制御プログラムを格納するプログラム部8
02−1と、各種パラメータやデータを格納するデータ
部802−2とを有する。プログラム部は、例えば図7
のフローチャートの個々の部品がサブルーチンプログラ
ムとして格納される。このサブルーチンプログラムは、
注目ノードの状態を判別するS701の処理プログラム
であり、ノードを削除するS702の処理プログラムで
あり、リーフノードとしてのS705の処理プログラム
であり、適切な黒ビットを選択するS706の処理プロ
グラムであり、黒ビットの組みの枝を生成するS707
の処理プログラムであり、作成された分類木を利用して
入力パターンを認識するプログラムであり、各処理につ
いてのサブルーチンがプログラム部802−1に格納さ
れる。後述する各処理の実行時には、必要に応じてメモ
リ802の制御プログラムを読み出し、CPU801が
実行する。データ部802−2には、個々の学習パター
ンを暫定的に保持する学習パターンバッファと、各学習
パターンのピラミッド展開したパターンを保持するエリ
アと、作成途中の分類木を保持する分類木バッファを有
する。
実行する為の制御プログラムを格納するプログラム部8
02−1と、各種パラメータやデータを格納するデータ
部802−2とを有する。プログラム部は、例えば図7
のフローチャートの個々の部品がサブルーチンプログラ
ムとして格納される。このサブルーチンプログラムは、
注目ノードの状態を判別するS701の処理プログラム
であり、ノードを削除するS702の処理プログラムで
あり、リーフノードとしてのS705の処理プログラム
であり、適切な黒ビットを選択するS706の処理プロ
グラムであり、黒ビットの組みの枝を生成するS707
の処理プログラムであり、作成された分類木を利用して
入力パターンを認識するプログラムであり、各処理につ
いてのサブルーチンがプログラム部802−1に格納さ
れる。後述する各処理の実行時には、必要に応じてメモ
リ802の制御プログラムを読み出し、CPU801が
実行する。データ部802−2には、個々の学習パター
ンを暫定的に保持する学習パターンバッファと、各学習
パターンのピラミッド展開したパターンを保持するエリ
アと、作成途中の分類木を保持する分類木バッファを有
する。
【0026】HDD(ハードディスクドライブ)803
は、全学習パターンを保持し、本実施の形態で説明する
方法により、作成された分類木のデータを保持し、この
分類木のデータにより図9のような分類木が示すルート
をたどることができる。
は、全学習パターンを保持し、本実施の形態で説明する
方法により、作成された分類木のデータを保持し、この
分類木のデータにより図9のような分類木が示すルート
をたどることができる。
【0027】ここで、メモリ2は、格納のROM,RA
M,HD等とし、予めプログラム及びデータを格納して
おいても良いし、或いは装置本体に着脱可能なFDやC
D−ROM等の記憶媒体から処理に先立ってプログラム
やデータを読み込むようにしても良い。また、公衆回線
やLAN等の通信手段を介して他の装置からプログラム
やデータを読み込むようにしても良い。
M,HD等とし、予めプログラム及びデータを格納して
おいても良いし、或いは装置本体に着脱可能なFDやC
D−ROM等の記憶媒体から処理に先立ってプログラム
やデータを読み込むようにしても良い。また、公衆回線
やLAN等の通信手段を介して他の装置からプログラム
やデータを読み込むようにしても良い。
【0028】入力装置804はHDD803に格納され
た分類木を用いて認識を行うパターンを入力する為の入
力装置であり、光学的に入力した学習用画像パターンか
ら生成された分類木を用いて画像パターンを認識する場
合はスキャナを用いる。また、同様にペンにより入力さ
れるストロークデータを認識する場合はペンとデジタイ
ザやタッチパネル、或いは音声データを認識する場合は
マイクロフォンを用いる。
た分類木を用いて認識を行うパターンを入力する為の入
力装置であり、光学的に入力した学習用画像パターンか
ら生成された分類木を用いて画像パターンを認識する場
合はスキャナを用いる。また、同様にペンにより入力さ
れるストロークデータを認識する場合はペンとデジタイ
ザやタッチパネル、或いは音声データを認識する場合は
マイクロフォンを用いる。
【0029】また、これらの認識用のデータは、これら
の各入力手段から直接入力する他に、公衆回線やLAN
等を介して他の装置の有する上記各入力手段により入力
されたデータを取り込むようにしても良いことはもちろ
んである。
の各入力手段から直接入力する他に、公衆回線やLAN
等を介して他の装置の有する上記各入力手段により入力
されたデータを取り込むようにしても良いことはもちろ
んである。
【0030】以下、図3から図8に基づいて、本発明の
動きを詳細に述べる。
動きを詳細に述べる。
【0031】まず、入力パターンとしては、8×8のメ
ッシュ上に書かれた「0」から「9」までの10個の数
字(カテゴリー)を想定する。「0」の1入力パターン
を図5の下に示す。
ッシュ上に書かれた「0」から「9」までの10個の数
字(カテゴリー)を想定する。「0」の1入力パターン
を図5の下に示す。
【0032】辞書作成用の学習パターンは「0」から
「9」までそれぞれのカテゴリーについて100個存在
すると仮定する。つまり、カテゴリー総数が10個ある
ので、学習パターンの総数は1000個になる。なお、
これらを、LTi,j(=Learning Temp
late i,j)(iは「0」から「9」のカテゴリ
ーを表すサフィックスで、0<=i<=9の範囲の値を
とる。jは学習パターンナンバーを示すサフィックス
で、1<=j<=100の範囲の値をとる。)とする。
「9」までそれぞれのカテゴリーについて100個存在
すると仮定する。つまり、カテゴリー総数が10個ある
ので、学習パターンの総数は1000個になる。なお、
これらを、LTi,j(=Learning Temp
late i,j)(iは「0」から「9」のカテゴリ
ーを表すサフィックスで、0<=i<=9の範囲の値を
とる。jは学習パターンナンバーを示すサフィックス
で、1<=j<=100の範囲の値をとる。)とする。
【0033】本件に係わるパターン認識用辞書作成方式
はサブパターン取り出しフェーズ、ピラミッド展開フェ
ーズ、分類木作成フェーズの3段階の手段を経て実施さ
れる。以下、順に説明する(図3のフローチャート参
照)。
はサブパターン取り出しフェーズ、ピラミッド展開フェ
ーズ、分類木作成フェーズの3段階の手段を経て実施さ
れる。以下、順に説明する(図3のフローチャート参
照)。
【0034】(1)サブパターン取り出しフェーズ(3
01) サブパターン取り出しフェーズ301では、図4に示す
ように、生の学習用パターン400を部分的パターンに
分割したサブパターンとして取り出す。図4において
は、「A」と書かれている学習用パターン400が3×
3のマトリクスの合計9個のサブパターンに分けて取り
出した例を示す。サブパターンの取り出し方は、図4の
ように互いのサブパターンが重なるように行ってもよい
し、全く重ならないように行ってもよい。このサブパタ
ーンの取り出しは、メモリ802に格納されているサブ
パターン取り出しルールに従って行う。
01) サブパターン取り出しフェーズ301では、図4に示す
ように、生の学習用パターン400を部分的パターンに
分割したサブパターンとして取り出す。図4において
は、「A」と書かれている学習用パターン400が3×
3のマトリクスの合計9個のサブパターンに分けて取り
出した例を示す。サブパターンの取り出し方は、図4の
ように互いのサブパターンが重なるように行ってもよい
し、全く重ならないように行ってもよい。このサブパタ
ーンの取り出しは、メモリ802に格納されているサブ
パターン取り出しルールに従って行う。
【0035】図5にこのサブパターン取り出しフェーズ
の詳しい様子を示す。図5では、「0」と書かれている
学習用パターンの真ん中の部分を取り出している様子を
示している。この真ん中の部分は、図4の上に書かれて
いる3×3個のサブパターンの真ん中のサブパターン4
01と同じと考えてよい。
の詳しい様子を示す。図5では、「0」と書かれている
学習用パターンの真ん中の部分を取り出している様子を
示している。この真ん中の部分は、図4の上に書かれて
いる3×3個のサブパターンの真ん中のサブパターン4
01と同じと考えてよい。
【0036】結局、図5において、生の学習用パターン
501は8×8のビットマップとして表現されていて、
そこから4×4のビットマップとして表現されるサブパ
ターンが3×3の9個取り出されることになる。
501は8×8のビットマップとして表現されていて、
そこから4×4のビットマップとして表現されるサブパ
ターンが3×3の9個取り出されることになる。
【0037】(2)ピラミッド展開フェーズ(302) サブパターン取り出しフェーズ302において、取り出
された9個のサブパターンの各々は、図5に示すような
502〜504の3階層のピラミッドワークが構成され
ていることになる。図5の3階層はそれぞれ上からパタ
ーン504は1×1、パターン503は2×2、パター
ン502は4×4個のニューロン群からできている。
された9個のサブパターンの各々は、図5に示すような
502〜504の3階層のピラミッドワークが構成され
ていることになる。図5の3階層はそれぞれ上からパタ
ーン504は1×1、パターン503は2×2、パター
ン502は4×4個のニューロン群からできている。
【0038】まず、取り出された学習用サブパターンは
図5の最下層の4×4個のニューロンに入力される。こ
の時、入力パターン(LTi,j)501の各ビットの
状態が白の部分はニューロンがOFFで、黒の部分はニ
ューロンがONとなると仮定する(以下の説明におい
て、「黒」と「ニューロンのON」/「白」と「ニュー
ロンのOFF」同一視する。)。
図5の最下層の4×4個のニューロンに入力される。こ
の時、入力パターン(LTi,j)501の各ビットの
状態が白の部分はニューロンがOFFで、黒の部分はニ
ューロンがONとなると仮定する(以下の説明におい
て、「黒」と「ニューロンのON」/「白」と「ニュー
ロンのOFF」同一視する。)。
【0039】ピラミッドの構造は極めて単純である。つ
まり、下の層の2×2のニューロンの中で、ONとなっ
ているものが1つでもあれば、一つ上位の層の1つのニ
ューロンはONとなる。図5において、サブパターン5
02におけるニューロン505〜508のうち、507
と508がONなので、これらのニューロンに対応する
ニューロン509もONになる。このようなルールで入
力パターンを上に向かって処理していく。なお、このピ
ラミッドの構造=ルールはこれに限ったものではなく、
黒のニューロンを1としてカウントし、平均値がしきい
値を超えた場合に、上位ニューロンをONにする等、下
位の複数ニューロンの状態に従って上位ニューロンの状
態を決めるルールであれば良い。
まり、下の層の2×2のニューロンの中で、ONとなっ
ているものが1つでもあれば、一つ上位の層の1つのニ
ューロンはONとなる。図5において、サブパターン5
02におけるニューロン505〜508のうち、507
と508がONなので、これらのニューロンに対応する
ニューロン509もONになる。このようなルールで入
力パターンを上に向かって処理していく。なお、このピ
ラミッドの構造=ルールはこれに限ったものではなく、
黒のニューロンを1としてカウントし、平均値がしきい
値を超えた場合に、上位ニューロンをONにする等、下
位の複数ニューロンの状態に従って上位ニューロンの状
態を決めるルールであれば良い。
【0040】これらの下位ニューロンから上位ニューロ
ンを決定する処理を、サブパターンを構成する全てのニ
ューロンについて行い、更に全てのサブパターンについ
ても行う。
ンを決定する処理を、サブパターンを構成する全てのニ
ューロンについて行い、更に全てのサブパターンについ
ても行う。
【0041】(3)分類木作成フェーズ(303) ピラミッド展開フェーズ303によって、学習用パター
ン(LTi,j)の全てが、図5のピラミッドに展開さ
れる。分類木の作成はこのピラミッドの展開302とは
逆に、上位から下位へ行われる。
ン(LTi,j)の全てが、図5のピラミッドに展開さ
れる。分類木の作成はこのピラミッドの展開302とは
逆に、上位から下位へ行われる。
【0042】ルートのノードは、図5の最上位の層(1
×1)のニューロンから始まる。
×1)のニューロンから始まる。
【0043】学習用サブパターン(LTi,j)をピラ
ミッドに展開した結果、図5の2番目の層のパターン5
03(2×2)のどれかはONとなっている(本実施の
形態で用いているルールによれば、真っ白い学習用サブ
パターンが存在しない限り2番目の層(2×2)は全て
OFFにはならない)。よって、全ての学習用サブパタ
ーン(LTi,j)に対して、最上位の層(1×1)の
ニューロンの活動はONとなっている。
ミッドに展開した結果、図5の2番目の層のパターン5
03(2×2)のどれかはONとなっている(本実施の
形態で用いているルールによれば、真っ白い学習用サブ
パターンが存在しない限り2番目の層(2×2)は全て
OFFにはならない)。よって、全ての学習用サブパタ
ーン(LTi,j)に対して、最上位の層(1×1)の
ニューロンの活動はONとなっている。
【0044】2番目の層(2×2)の状態は2の4乗=
16個存在するので(正確には、上記説明のように、全
てOFFの状態はないので、15個)、ルートノードか
ら16本の枝が伸びることとなる(図6参照)。
16個存在するので(正確には、上記説明のように、全
てOFFの状態はないので、15個)、ルートノードか
ら16本の枝が伸びることとなる(図6参照)。
【0045】図6の枝の状態は、図5の第2層のニュー
ロン群の発火状況を図示することによって、示してある
(黒はONで、白はOFFを表す)。
ロン群の発火状況を図示することによって、示してある
(黒はONで、白はOFFを表す)。
【0046】存在するカテゴリーの種類の欄が「×」と
なっている枝は、上記1.学習用サブパターン(LT
i,j)が1つも存在しない場合に相当し、削除される
(なお、厳密には、一番左の枝はルートからは出ていな
い)。
なっている枝は、上記1.学習用サブパターン(LT
i,j)が1つも存在しない場合に相当し、削除される
(なお、厳密には、一番左の枝はルートからは出ていな
い)。
【0047】左から8番目の枝は「1」のカテゴリーの
学習用サブパターンしか存在しない。これは、上記2.
学習用サブパターン(LTi,j)の中で、あるカテゴ
リー(例えば「1」のサブパターンのみ存在する場合に
相当し、葉となる。
学習用サブパターンしか存在しない。これは、上記2.
学習用サブパターン(LTi,j)の中で、あるカテゴ
リー(例えば「1」のサブパターンのみ存在する場合に
相当し、葉となる。
【0048】例えば、右から5番目の枝には「4」
「5」「6」のカテゴリーの学習用サブパターンが存在
し、上記3.上記1、2以外の場合=複数カテゴリーの
サブパターンが混合して存在する場合に相当し、ノード
となる。
「5」「6」のカテゴリーの学習用サブパターンが存在
し、上記3.上記1、2以外の場合=複数カテゴリーの
サブパターンが混合して存在する場合に相当し、ノード
となる。
【0049】分類木を作成する処理をフローチャートと
して表現した図が図10である。以下、図9に示したよ
うな分類木の生成手順を説明する。
して表現した図が図10である。以下、図9に示したよ
うな分類木の生成手順を説明する。
【0050】まず、ステップS700では、注目ノード
をルートノードとする。
をルートノードとする。
【0051】ステップS1001では、設定された注目
ノードに関して、以下の3条件、即ち、 1.学習用ストロークが存在する。 2.単一カテゴリー学習パターンのみが存在する。 3.複数のカテゴリーの学習パターンが存在する。 のどれに当てはまるかチェックして、1.の条件を満た
せば、ステップS702へ進む。また、2.の条件を満
たせば、ステップS705へ進む。また、3.の条件を
満たせば、ステップS706へ進む。
ノードに関して、以下の3条件、即ち、 1.学習用ストロークが存在する。 2.単一カテゴリー学習パターンのみが存在する。 3.複数のカテゴリーの学習パターンが存在する。 のどれに当てはまるかチェックして、1.の条件を満た
せば、ステップS702へ進む。また、2.の条件を満
たせば、ステップS705へ進む。また、3.の条件を
満たせば、ステップS706へ進む。
【0052】ステップS702では、分類木からそのノ
ードを削除する。
ードを削除する。
【0053】ステップS703では、他の全ノードは、
全てリーフノードになったかどうかチェックして、イエ
スであれば、処理を終了する。また、ノーであれば、ス
テップS704に進み、注目ノードとして次のノードを
選ぶ。そして、ステップS701に戻り、同様の処理を
繰り返す。
全てリーフノードになったかどうかチェックして、イエ
スであれば、処理を終了する。また、ノーであれば、ス
テップS704に進み、注目ノードとして次のノードを
選ぶ。そして、ステップS701に戻り、同様の処理を
繰り返す。
【0054】ステップS705では、このノードをリー
フノードとして、そのカテゴリー番号をアサインする。
そして、ステップS703に進む。
フノードとして、そのカテゴリー番号をアサインする。
そして、ステップS703に進む。
【0055】ステップS706では、そのノードに含ま
れるニューロンの中から、上述のエントロピー基準に基
づいて、そのニューロン中の1つのニューロンを選択す
る。
れるニューロンの中から、上述のエントロピー基準に基
づいて、そのニューロン中の1つのニューロンを選択す
る。
【0056】ステップS707では、選択されたニュー
ロンの下位階層のベクトルの組の枝を生成する。
ロンの下位階層のベクトルの組の枝を生成する。
【0057】図9は、このステップでの処理を説明する
ための図であり、左上のニューロンが選択された場合の
下位階層のニューロンの組の例を示す。
ための図であり、左上のニューロンが選択された場合の
下位階層のニューロンの組の例を示す。
【0058】図9を参照すると、900が、ステップS
706で選択されたニューロンが左上であるとする。こ
のニューロンに対応する下位層での組は、15通りの組
み合わせ、即ち、下位として示した15種のパターンが
存在する。そして、これらの組み合わせの各々を新しい
ノードとする各枝を生成する。
706で選択されたニューロンが左上であるとする。こ
のニューロンに対応する下位層での組は、15通りの組
み合わせ、即ち、下位として示した15種のパターンが
存在する。そして、これらの組み合わせの各々を新しい
ノードとする各枝を生成する。
【0059】以上、ステップS707での処理を示し
た。
た。
【0060】次に、ステップS708へ進み、生成され
た枝のノードの1つを次の注目ノードとする。そして、
S708で注目ノードを移してステップS701へ戻
り、同様の処理を繰り返す。
た枝のノードの1つを次の注目ノードとする。そして、
S708で注目ノードを移してステップS701へ戻
り、同様の処理を繰り返す。
【0061】以上説明した手順によって、図10に示す
ような分類木を生成することにより、特徴量の多いパタ
ーンの大局的分類を維持しながら、類似のカテゴリー間
の細かい特徴の違いを反映した分類木を生成でき、この
分類木を探索することで、高速かつ高認識率の文字認識
が可能になる。
ような分類木を生成することにより、特徴量の多いパタ
ーンの大局的分類を維持しながら、類似のカテゴリー間
の細かい特徴の違いを反映した分類木を生成でき、この
分類木を探索することで、高速かつ高認識率の文字認識
が可能になる。
【0062】次に、このノードから枝を作成する方法に
ついて述べる。先の説明では、左上のニューロンが選ば
れた場合について説明したが、このノードから枝を作成
する際に、最も効率の良い枝の作成を行いたい。最も効
率が良いとは、結局、枝を展開したときに、最も多くカ
テゴリーに関する情報が得られるニューロンを選択する
ということである。
ついて述べる。先の説明では、左上のニューロンが選ば
れた場合について説明したが、このノードから枝を作成
する際に、最も効率の良い枝の作成を行いたい。最も効
率が良いとは、結局、枝を展開したときに、最も多くカ
テゴリーに関する情報が得られるニューロンを選択する
ということである。
【0063】このような要請の元に枝を展開する方法
は、一般に非常に多く存在し、そのどれを採用してよい
かは、なかなか決定できない。従来この問題が原因で、
認識用の分類木がうまく作成できないでいた。
は、一般に非常に多く存在し、そのどれを採用してよい
かは、なかなか決定できない。従来この問題が原因で、
認識用の分類木がうまく作成できないでいた。
【0064】しかし、仮にこのノードから展開する枝
を、このノードにおいて、ONとなっているニューロン
を下の層に展開した枝に限ってみる。例えば、図6の右
から5番目の枝の場合、図5の第2層における左上、左
下、右下の3つのニューロンの中から1つ選び、そのニ
ューロンの下、つまり図5の第3層の下4つのニューロ
ンの状態に関する枝の展開を行う。
を、このノードにおいて、ONとなっているニューロン
を下の層に展開した枝に限ってみる。例えば、図6の右
から5番目の枝の場合、図5の第2層における左上、左
下、右下の3つのニューロンの中から1つ選び、そのニ
ューロンの下、つまり図5の第3層の下4つのニューロ
ンの状態に関する枝の展開を行う。
【0065】こうすることによって、枝の展開に要する
計算時間を大幅に削減できるし、このような制限をして
も、本質的に分類木の分類性能に大きなダメージは与え
ない。
計算時間を大幅に削減できるし、このような制限をして
も、本質的に分類木の分類性能に大きなダメージは与え
ない。
【0066】では次に、このノードにおいて、ONとな
っているニューロンの内で、展開したときに最も効率の
良くなるニューロンを選ぶ方法を説明する。
っているニューロンの内で、展開したときに最も効率の
良くなるニューロンを選ぶ方法を説明する。
【0067】あるノードに存在する学習用サブパターン
(LTi,j)の中で、カテゴリー番号iの数をNiで
表す。このノードに存在する学習用パターンの総数をN
とすると、このノードにおけるそれぞれのカテゴリーの
存在確率piはpi=Ni/Nで表される。なお、
(LTi,j)の中で、カテゴリー番号iの数をNiで
表す。このノードに存在する学習用パターンの総数をN
とすると、このノードにおけるそれぞれのカテゴリーの
存在確率piはpi=Ni/Nで表される。なお、
【0068】
【外1】 よって、このノードの情報が得られたときのエントロピ
ーは、以下の式で表される。
ーは、以下の式で表される。
【0069】
【外2】
【0070】次に、このノードにおいて、ONとなって
いるニューロンの1つを選択して、そこから枝を展開し
たときのエントロピーの減少量を計算する。
いるニューロンの1つを選択して、そこから枝を展開し
たときのエントロピーの減少量を計算する。
【0071】上述の通り、1つのニューロンを下の層に
向かって展開したときの枝の数は16本である。この1
6本の枝に学習用サブパターン(LTi,j)がどのよ
うに分布するかを、展開したときの枝に存在する学習用
サブパターン(LTi,j)の数=Ni,bで表す。N
i,bのiはカテゴリー番号を示し、bは枝(bran
ch)の番号を示す。
向かって展開したときの枝の数は16本である。この1
6本の枝に学習用サブパターン(LTi,j)がどのよ
うに分布するかを、展開したときの枝に存在する学習用
サブパターン(LTi,j)の数=Ni,bで表す。N
i,bのiはカテゴリー番号を示し、bは枝(bran
ch)の番号を示す。
【0072】この時、それぞれの枝の情報が得られたと
きのエントロピーは、上の議論と同じく、
きのエントロピーは、上の議論と同じく、
【0073】
【外3】 この式で、
【0074】
【外4】 は枝に存在する学習用サブパターン(TPi,j)の総
数を表わす。
数を表わす。
【0075】それぞれの枝にいく確率は
【0076】
【外5】 (Nは(1)式のNと同じ)なので、結局、枝を展開し
たときの平均エントロピーは
たときの平均エントロピーは
【0077】
【外6】 となる。
【0078】結局、エントロピーの平均減少値は、
【0079】
【外7】 となる。
【0080】そして、この値を枝の数の対数で割った値
【0081】
【外8】 が、枝を展開したときの分類効率を表すことになる。
【0082】この値が最高となるニューロンを選び、枝
を展開していく。
を展開していく。
【0083】なお、1つのニューロンのみを展開するの
ではなく、複数のニューロンのグループに関して枝を展
開してもよい。
ではなく、複数のニューロンのグループに関して枝を展
開してもよい。
【0084】この場合、(5)式のBranchNum
berは、ニューロンの数×16となる(厳密には展開
する下の層のニューロンが全てOFFということは有り
得ないので、BranchNumberは、ニューロン
の数×15が正しい。)。
berは、ニューロンの数×16となる(厳密には展開
する下の層のニューロンが全てOFFということは有り
得ないので、BranchNumberは、ニューロン
の数×15が正しい。)。
【0085】また、本実施例においては、(5)式で表
される値を枝を展開したときの分類効率を表す値として
採用したが、例えば文献「Classfication
and Regression Trees」に記載
されている“Gini criterion”等の枝の
展開効率を表す関数ならば(5)式に限らず何でもよ
い。
される値を枝を展開したときの分類効率を表す値として
採用したが、例えば文献「Classfication
and Regression Trees」に記載
されている“Gini criterion”等の枝の
展開効率を表す関数ならば(5)式に限らず何でもよ
い。
【0086】以上、展開するニューロン、またはニュー
ロンの組みが決定されれば、それに従って、枝を展開
し、葉及びノードを作成していく。
ロンの組みが決定されれば、それに従って、枝を展開
し、葉及びノードを作成していく。
【0087】そして、最後、全部、葉になったところ
で、分類木作成を完了する。
で、分類木作成を完了する。
【0088】図10は、分類木作成フェーズ303によ
り作成され、HDD803に格納された分類木の例であ
る。
り作成され、HDD803に格納された分類木の例であ
る。
【0089】図10において、S702により削除され
た枝は省いてある。また図10の○で囲ってある枝はS
705でリーフノードとしてカテゴリーの番号がふられ
た葉であることを示す。
た枝は省いてある。また図10の○で囲ってある枝はS
705でリーフノードとしてカテゴリーの番号がふられ
た葉であることを示す。
【0090】葉以外の全ての枝はノードとなるので、更
に深く枝の展開が行われるわけであるが、図10におい
ては右から3番目のノードのみ、更なる枝の展開結果を
図示した。
に深く枝の展開が行われるわけであるが、図10におい
ては右から3番目のノードのみ、更なる枝の展開結果を
図示した。
【0091】右から3番目のノードは、「1」「7」
「9」の3種類のカテゴリーが共存しており、枝の展開
が必要となっている。ここで、第1層のどのニューロン
を展開すべきかについて、「展開変数判別手段」が第1
層の右上のニューロンという答えを出したとする。する
と、右上のニューロンの状態に関して、図7と同様に2
4 =16本の枝が展開され、ある枝は削除され、ある枝
は葉となり、ある枝はノードとなる。ノードとなった枝
は更に枝を展開しなければならなく、最終的に全ての枝
の端末は葉となる。
「9」の3種類のカテゴリーが共存しており、枝の展開
が必要となっている。ここで、第1層のどのニューロン
を展開すべきかについて、「展開変数判別手段」が第1
層の右上のニューロンという答えを出したとする。する
と、右上のニューロンの状態に関して、図7と同様に2
4 =16本の枝が展開され、ある枝は削除され、ある枝
は葉となり、ある枝はノードとなる。ノードとなった枝
は更に枝を展開しなければならなく、最終的に全ての枝
の端末は葉となる。
【0092】図10では、右から3番目のノードの展開
結果を、簡単のため、第1層と第2層を重ね書きするこ
とによって示してある。実際は、図3に示したピラミッ
ドの第1層の4つのニューロンと第2層の右上4つのニ
ューロンに、これらの状態が表現されている。
結果を、簡単のため、第1層と第2層を重ね書きするこ
とによって示してある。実際は、図3に示したピラミッ
ドの第1層の4つのニューロンと第2層の右上4つのニ
ューロンに、これらの状態が表現されている。
【0093】図11は、先に説明した方法により作成し
た分類木を用いて生の入力パターンを認識する流れを表
す図画であり、101は「生の入力パターン」、102
は「生の入力パターン」、102は「生の入力パター
ン」をサブパターン毎に切り出す「サブパターン取り出
し手段」、103は「入力サブパターン」をピラミッド
に通す「階層化前処理手段」、104はピラミッドで処
理された後の「階層化された入力サブパターン」、10
5は「分類木」、106は「階層化された入力サブパタ
ーン」と「分類木」を元にカテゴリーの判別確率を求め
る「カテゴリー判別手段」、107は「カテゴリー判別
手段」の結果得られた各カテゴリーの判別確率を統合す
る「判別確率統合手段」である。本発明におけるインプ
ットは“生の入力パターン”で、アウトプットは“認識
候補”となる。
た分類木を用いて生の入力パターンを認識する流れを表
す図画であり、101は「生の入力パターン」、102
は「生の入力パターン」、102は「生の入力パター
ン」をサブパターン毎に切り出す「サブパターン取り出
し手段」、103は「入力サブパターン」をピラミッド
に通す「階層化前処理手段」、104はピラミッドで処
理された後の「階層化された入力サブパターン」、10
5は「分類木」、106は「階層化された入力サブパタ
ーン」と「分類木」を元にカテゴリーの判別確率を求め
る「カテゴリー判別手段」、107は「カテゴリー判別
手段」の結果得られた各カテゴリーの判別確率を統合す
る「判別確率統合手段」である。本発明におけるインプ
ットは“生の入力パターン”で、アウトプットは“認識
候補”となる。
【0094】上記の「分類木」の内容は、実施例1の方
法で作成しうる「分類木」であることが望ましい。
法で作成しうる「分類木」であることが望ましい。
【0095】1001「生の入力パターン」は、「生の
学習用パターン」101に対応するもので、入力装置1
104から入力されるが実質的なデータの構成としては
何等変わりない。1002「サブパターン取り出し手
段」、1003「階層化前処理手段」の2つの手段は図
1のそれぞれ対応する手段と全く同じものである。10
04「階層化された入力サブパターン」は、図1の場合
は学習パターンの数だけ存在したが、本実施例において
は、入力されたパターンから導き出された1つのみであ
る。
学習用パターン」101に対応するもので、入力装置1
104から入力されるが実質的なデータの構成としては
何等変わりない。1002「サブパターン取り出し手
段」、1003「階層化前処理手段」の2つの手段は図
1のそれぞれ対応する手段と全く同じものである。10
04「階層化された入力サブパターン」は、図1の場合
は学習パターンの数だけ存在したが、本実施例において
は、入力されたパターンから導き出された1つのみであ
る。
【0096】1006「カテゴリー判別手段」は、10
04「階層化された入力サブパターン」に基づき、図1
0の分類木をたぐって葉に到達した時点で、その葉に存
在するカテゴリーを認識結果として表示器やプリンタよ
り出力する。
04「階層化された入力サブパターン」に基づき、図1
0の分類木をたぐって葉に到達した時点で、その葉に存
在するカテゴリーを認識結果として表示器やプリンタよ
り出力する。
【0097】また、葉に到達しなかった場合は、最後に
通過したノードに含まれるカテゴリー確率を結果として
出力する。
通過したノードに含まれるカテゴリー確率を結果として
出力する。
【0098】1007「判別確率統合手段」は、100
6「カテゴリー判別手段」のサブパターン毎の結果を相
加平均、または相乗平均等の平均処理を行う。
6「カテゴリー判別手段」のサブパターン毎の結果を相
加平均、または相乗平均等の平均処理を行う。
【0099】〈実施の形態2〉本実施の形態では、学習
用データ及び認識対象として入力されるデータが、ペン
等の座標入力手段により入力されるストロークデータで
あり、先の実施の形態1で扱っていたデータがビットマ
ップデータであったのに対し、入力ストロークを分割し
てベクトル量子化して処理を行う点に特徴があるが、全
体的な流れは実施の形態1の処理に準ずる。
用データ及び認識対象として入力されるデータが、ペン
等の座標入力手段により入力されるストロークデータで
あり、先の実施の形態1で扱っていたデータがビットマ
ップデータであったのに対し、入力ストロークを分割し
てベクトル量子化して処理を行う点に特徴があるが、全
体的な流れは実施の形態1の処理に準ずる。
【0100】図12は、本実施の形態における分類木作
成処理流れを表す図画であり、1201は「学習用スト
ローク」、1202は前記「学習用ストローク」を分割
する「ストローク分割手段」、1203は前記「ストロ
ーク分割手段」において分割されたストローク切片をベ
クトル量子化する「ベクトル化手段」、1204は、前
記「ベクトル化手段」の結果得られたベクトル系列を部
分的にサブベクトルとして取り出す「サブベクトル取り
出し手段」、1205は前記「サブベクトル取り出し手
段」の結果得られたベクトル系列を階層的に処理する
「階層化前処理手段」、1206は前記で「階層化前処
理手段」で処理された後の「階層化されたサブベクトル
系列」、1207は前記「階層化されたベクトル系列」
を元に分類木を作成する「分類木作成手段」、1208
は前記「分類木作成手段」が分類木を作成する過程で使
用する「展開ベクトル判別手段」、1209は「分類木
作成手段」の結果得られた「分類木」である。
成処理流れを表す図画であり、1201は「学習用スト
ローク」、1202は前記「学習用ストローク」を分割
する「ストローク分割手段」、1203は前記「ストロ
ーク分割手段」において分割されたストローク切片をベ
クトル量子化する「ベクトル化手段」、1204は、前
記「ベクトル化手段」の結果得られたベクトル系列を部
分的にサブベクトルとして取り出す「サブベクトル取り
出し手段」、1205は前記「サブベクトル取り出し手
段」の結果得られたベクトル系列を階層的に処理する
「階層化前処理手段」、1206は前記で「階層化前処
理手段」で処理された後の「階層化されたサブベクトル
系列」、1207は前記「階層化されたベクトル系列」
を元に分類木を作成する「分類木作成手段」、1208
は前記「分類木作成手段」が分類木を作成する過程で使
用する「展開ベクトル判別手段」、1209は「分類木
作成手段」の結果得られた「分類木」である。
【0101】本実施例におけるインプットは“学習用ス
トローク”で、アウトプットは“分類木”となる。
トローク”で、アウトプットは“分類木”となる。
【0102】以下、図12から図17に基づいて、本実
施の形態の動きを詳細に述べる。
施の形態の動きを詳細に述べる。
【0103】まず、認識対象とするカテゴリーとして
は、1画で書かれた「く」「し」「つ」の3種類の文字
を想定する。
は、1画で書かれた「く」「し」「つ」の3種類の文字
を想定する。
【0104】次に辞書作成用の学習パターンは「く」
「し」「つ」それぞれ100個存在すると仮定する。な
お、これらを、TPi,j(=Training Pa
ttern i,j)(iはカテゴリーを表すサフィッ
クスで、0<=i<=2の範囲の値をとる。jは学習パ
ターンナンバーを示すサフィックスで、1<=j<=1
00の範囲の値をとる。)と名前付ける。
「し」「つ」それぞれ100個存在すると仮定する。な
お、これらを、TPi,j(=Training Pa
ttern i,j)(iはカテゴリーを表すサフィッ
クスで、0<=i<=2の範囲の値をとる。jは学習パ
ターンナンバーを示すサフィックスで、1<=j<=1
00の範囲の値をとる。)と名前付ける。
【0105】本件に係わるオンライン手書き文字認識用
辞書作成方法は、図13のフローチャートに示すよう
に、ベクトル生成フェーズ、サブベクトル取り出しフェ
ーズ、階層化前処理フェーズ、分類木作成フェーズの4
段階の手段を経て実行される。
辞書作成方法は、図13のフローチャートに示すよう
に、ベクトル生成フェーズ、サブベクトル取り出しフェ
ーズ、階層化前処理フェーズ、分類木作成フェーズの4
段階の手段を経て実行される。
【0106】(1)ベクトル生成フェーズ(1301) 図14に基づいて、ベクトル生成フェーズ1301の様
子を詳しく述べる。
子を詳しく述べる。
【0107】まず、学習用ストロークはn分割(図14
ではn=8となっている)される。図14では、このn
分割は、ストローク距離に関するn等分となっている
が、本実施例はこれを制限しない。
ではn=8となっている)される。図14では、このn
分割は、ストローク距離に関するn等分となっている
が、本実施例はこれを制限しない。
【0108】例えば始点終点付近のストロークの状態が
不安定なストローク入力装置であれば、始点終点付近の
ストロークをいくら詳しくベクトル化してもあまり意味
がなくなってくる。このような場合は、n分割における
最初と最後の分割は、その他の分割に比べて長くとって
も構わない。次に、n分割されたそれぞれの切片がベク
トル量子化される。
不安定なストローク入力装置であれば、始点終点付近の
ストロークをいくら詳しくベクトル化してもあまり意味
がなくなってくる。このような場合は、n分割における
最初と最後の分割は、その他の分割に比べて長くとって
も構わない。次に、n分割されたそれぞれの切片がベク
トル量子化される。
【0109】図14においては、番号0から番号11ま
での12方向の基本ベクトル量子化している。この基本
ベクトルの方向は、360度の中で等間隔に並んでいる
が、これもストローク分割手段と同様、制限するもので
はない。
での12方向の基本ベクトル量子化している。この基本
ベクトルの方向は、360度の中で等間隔に並んでいる
が、これもストローク分割手段と同様、制限するもので
はない。
【0110】例えば、図14の12方向の基本ベクトル
の中で、実際左上方向の(例えば番号10や番号11)
基本ベクトルは筆記ストロークの中にはあまり出てこな
い。よって、これらの部分はもっと角度の間隔の開いた
基本ベクトルのセットを用いてもよい。
の中で、実際左上方向の(例えば番号10や番号11)
基本ベクトルは筆記ストロークの中にはあまり出てこな
い。よって、これらの部分はもっと角度の間隔の開いた
基本ベクトルのセットを用いてもよい。
【0111】以上、ベクトル生成フェーズにおいて、図
12の1202ストローク分割手段と1203ベクトル
化手段が学習用ストローク全てに施される。
12の1202ストローク分割手段と1203ベクトル
化手段が学習用ストローク全てに施される。
【0112】図14の例でいうと、「〜」ストロークが
基本ベクトル系列「12455421」に変換されてい
る。
基本ベクトル系列「12455421」に変換されてい
る。
【0113】(2)サブベクトル取り出しフェーズ(1
302) 図15に基づいて、サブベクトル取り出しフェーズ13
02の様子を詳しく述べる。
302) 図15に基づいて、サブベクトル取り出しフェーズ13
02の様子を詳しく述べる。
【0114】図15において、ストロークは16等分さ
れ「5421124554211245」のベクトルに
変換されている。
れ「5421124554211245」のベクトルに
変換されている。
【0115】この16個のベクトルで構成されているベ
クトル系列を部分的に取り出し(8個のベクトル系列×
3個)のサブベクトル系列群を作成する。
クトル系列を部分的に取り出し(8個のベクトル系列×
3個)のサブベクトル系列群を作成する。
【0116】この取り出し方法は、図15のように重な
るように行ってもよいし、また、全く重ならないように
行ってもよい。
るように行ってもよいし、また、全く重ならないように
行ってもよい。
【0117】また、サブベクトル系列のベクトル個数が
図15では8個となっているが、これも限定しない。
図15では8個となっているが、これも限定しない。
【0118】(3)階層化前処理フェーズ(1303) 次に、取り出された学習用サブストロークはピラミッド
状に階層化前処理を施される。
状に階層化前処理を施される。
【0119】図16にその1例を示す。図16において
は、ベクトル化手段の結果得られたベクトル系列の隣り
合う2個のベクトルの平均ベクトルを上の階層に出力す
ることによって、ベクトル情報が順次半分になっている
(縮退している)。結局、図16において8個の基本ベ
クトルで表されたストロークを、順次4個、2個、1個
のベクトルに変換していることになる。
は、ベクトル化手段の結果得られたベクトル系列の隣り
合う2個のベクトルの平均ベクトルを上の階層に出力す
ることによって、ベクトル情報が順次半分になっている
(縮退している)。結局、図16において8個の基本ベ
クトルで表されたストロークを、順次4個、2個、1個
のベクトルに変換していることになる。
【0120】この隣り合う2個のベクトルを平均する1
方法を、図17に基づいて詳しく述べる。
方法を、図17に基づいて詳しく述べる。
【0121】なお、図14においては、基本ベクトルを
12方向としたが、図17では8方向とする。このよう
に、基本ベクトルの総数や個々の基本ベクトルの方向を
変化させても本質は変わらない。
12方向としたが、図17では8方向とする。このよう
に、基本ベクトルの総数や個々の基本ベクトルの方向を
変化させても本質は変わらない。
【0122】また基本ベクトルは8方向であるという前
提で、以下、実施例を記述する。
提で、以下、実施例を記述する。
【0123】隣り合う2個のベクトルの最初の番号をp
re、後の番号をpostで示す。この時、2個のベク
トルの平均は単純には(pre+post)/2となる
が、これが基本ベクトルにならない場合が存在する。
re、後の番号をpostで示す。この時、2個のベク
トルの平均は単純には(pre+post)/2となる
が、これが基本ベクトルにならない場合が存在する。
【0124】一般的に、8方向の等分割ベクトルと8方
向の等分割ベクトルの平均ベクトルは16方向存在する
ので、これを8方向にしなくてはいけない。
向の等分割ベクトルの平均ベクトルは16方向存在する
ので、これを8方向にしなくてはいけない。
【0125】図17はこの方法を示している。図17の
大きな→は上の階層で右向き(番号2)のベクトルが存
在することを意味し、その下に書かれた8組みのベクト
ルは、下の階層で存在しうるベクトルを意味する。
大きな→は上の階層で右向き(番号2)のベクトルが存
在することを意味し、その下に書かれた8組みのベクト
ルは、下の階層で存在しうるベクトルを意味する。
【0126】つまり、上の階層で番号2のベクトルにな
る(per,post)の組みを(2,2)(1,3)
(3,1)(0,4)(2,3)(3,2)(1,4)
(4,1)の8組にしていることになる(これは、pe
rとpostの値の平均(pre+post)/2が
1.5より大、かつ2.5以下という条件である)。
る(per,post)の組みを(2,2)(1,3)
(3,1)(0,4)(2,3)(3,2)(1,4)
(4,1)の8組にしていることになる(これは、pe
rとpostの値の平均(pre+post)/2が
1.5より大、かつ2.5以下という条件である)。
【0127】上の階層のベクトルの番号が番号2以外の
場合は、図17のベクトル組み合わせを全て45度ずつ
回転して得られるベクトル組み合わせを用いる。
場合は、図17のベクトル組み合わせを全て45度ずつ
回転して得られるベクトル組み合わせを用いる。
【0128】なお、この上の階層のベクトルと下の階層
の2個のベクトルの組み合わせは図17に限ったもので
はなく、上の階層のベクトルが下の階層の2個の平均ベ
クトルと見なせうる組み合わせであれば、何でもよい。
の2個のベクトルの組み合わせは図17に限ったもので
はなく、上の階層のベクトルが下の階層の2個の平均ベ
クトルと見なせうる組み合わせであれば、何でもよい。
【0129】(4)分類木作成フェーズ(1304) 階層化前処理フェーズ1303を経て、学習用サブスト
ローク(TPi,j)の全てが、図16に示すようなベ
クトルのピラミッドに下から上へ展開される。分類木の
作成はこのベクトルのピラミッド化とは逆に、上から下
へ行われる。この処理について、図19のフローチャー
トに従って以下に説明する。
ローク(TPi,j)の全てが、図16に示すようなベ
クトルのピラミッドに下から上へ展開される。分類木の
作成はこのベクトルのピラミッド化とは逆に、上から下
へ行われる。この処理について、図19のフローチャー
トに従って以下に説明する。
【0130】なお、以下説明において、基本ベクトルは
図17にある番号0から番号7までの8方向(個)であ
ると仮定する(よって、ベクトルのピラミッド上にある
ベクトルも全てこの基本ベクトルのどれかである。)。
図17にある番号0から番号7までの8方向(個)であ
ると仮定する(よって、ベクトルのピラミッド上にある
ベクトルも全てこの基本ベクトルのどれかである。)。
【0131】最上位の層のベクトルの状態は8個存在す
るので、ルートノードから8本の枝が伸びることとな
る。
るので、ルートノードから8本の枝が伸びることとな
る。
【0132】この時、枝に存在する学習用ストローク
(TPi,j)の数を数える。この結果によって、以後
の処理が3つにわかれる。
(TPi,j)の数を数える。この結果によって、以後
の処理が3つにわかれる。
【0133】1.学習用ストローク(TPi,j)が1
つも存在しない場合 この場合は、その枝を削除する。
つも存在しない場合 この場合は、その枝を削除する。
【0134】2.学習用ストローク(TPi,j)の中
で、あるカテゴリー(例えば「つ」)のストロークのみ
存在する場合 この場合は、この枝を葉とし、カテゴリーの番号(例え
ば「つ」)を割り振る。
で、あるカテゴリー(例えば「つ」)のストロークのみ
存在する場合 この場合は、この枝を葉とし、カテゴリーの番号(例え
ば「つ」)を割り振る。
【0135】3.上記1、2以外の場合=複数カテゴリ
ーのストロークが混合して存在する場合 この場合、この枝をノードとして、更に分類木作成を続
ける。
ーのストロークが混合して存在する場合 この場合、この枝をノードとして、更に分類木作成を続
ける。
【0136】図18にこの処理の結果を示す。枝の状態
は、図16の最上位の層=第1層のベクトルの状況を図
示することによって、示してある。
は、図16の最上位の層=第1層のベクトルの状況を図
示することによって、示してある。
【0137】存在するカテゴリーの種類の欄が「×」と
なっている枝は、上記1.学習用ストローク(TPi,
j)が1つも存在しない場合に相当し、削除される。
なっている枝は、上記1.学習用ストローク(TPi,
j)が1つも存在しない場合に相当し、削除される。
【0138】左から3番目の枝は「つ」のカテゴリーの
学習用ストロークしか存在しない。これは、上記2.学
習用ストローク(TPi,j)の中で、あるカテゴリー
(例えば「つ」)のストロークのみ存在する場合に相当
し、葉となる。
学習用ストロークしか存在しない。これは、上記2.学
習用ストローク(TPi,j)の中で、あるカテゴリー
(例えば「つ」)のストロークのみ存在する場合に相当
し、葉となる。
【0139】例えば、左から4番目と5番目の枝には
「く」「し」「つ」のカテゴリーの学習用ストロークが
存在し、上記3.1、2以外の場合=複数カテゴリーの
ストロークが混合して存在する場合に相当し、ノードと
なる。
「く」「し」「つ」のカテゴリーの学習用ストロークが
存在し、上記3.1、2以外の場合=複数カテゴリーの
ストロークが混合して存在する場合に相当し、ノードと
なる。
【0140】以上説明した処理をフローチャートとして
表現した図が図19である。以下、図18に示したよう
な分類木の生成手順を説明する。
表現した図が図19である。以下、図18に示したよう
な分類木の生成手順を説明する。
【0141】まず、ステップS1000では、注目ノー
ドをルートノードとする。
ドをルートノードとする。
【0142】ステップS1001では、設定された注目
ノードに関して、以下の3条件、即ち、 1.学習用ストロークが存在する。 2.単一カテゴリー学習パターンのみが存在する。 3.複数のカテゴリーの学習パターンが存在する。 のどれに当てはまるかチェックして、1.の条件を満た
せば、ステップS1002へ進む。また、2.の条件を
満たせば、ステップS1005へ進む。また、3.の条
件を満たせば、ステップS1006へ進む。
ノードに関して、以下の3条件、即ち、 1.学習用ストロークが存在する。 2.単一カテゴリー学習パターンのみが存在する。 3.複数のカテゴリーの学習パターンが存在する。 のどれに当てはまるかチェックして、1.の条件を満た
せば、ステップS1002へ進む。また、2.の条件を
満たせば、ステップS1005へ進む。また、3.の条
件を満たせば、ステップS1006へ進む。
【0143】ステップS1002では、分類木からその
ノードを削除する。
ノードを削除する。
【0144】ステップS1003では、他の全ノード
は、全てリーフノードになったかどうかチェックして、
イエスであれば、処理を終了する。また、ノーであれ
ば、ステップS1004に進み、注目ノードとして次の
ノードを選ぶ。そして、ステップS1001に戻り、同
様の処理を繰り返す。
は、全てリーフノードになったかどうかチェックして、
イエスであれば、処理を終了する。また、ノーであれ
ば、ステップS1004に進み、注目ノードとして次の
ノードを選ぶ。そして、ステップS1001に戻り、同
様の処理を繰り返す。
【0145】ステップS1005では、そのノードをリ
ーフノードとして、そのカテゴリー番号をアサインす
る。そして、ステップS1003に進む。
ーフノードとして、そのカテゴリー番号をアサインす
る。そして、ステップS1003に進む。
【0146】ステップS1006では、そのノードに含
まれるベクトル列の中から、上述のエントロピー基準に
基づいて、そのベクトル列中の1つのベクトルを選択す
る。
まれるベクトル列の中から、上述のエントロピー基準に
基づいて、そのベクトル列中の1つのベクトルを選択す
る。
【0147】ステップS1007では、選択されたベク
トルの下位階層のベクトルの組の枝を生成する。
トルの下位階層のベクトルの組の枝を生成する。
【0148】図11は、このステップでの処理を説明す
るための図であり、下位階層のベクトルの組の例を示
す。
るための図であり、下位階層のベクトルの組の例を示
す。
【0149】図11を参照して、5000が、ステップ
S1006で選択された方向“2”を有するベクトルで
あるとする。このベクトルに対応する下位層でのベクト
ルの組は、8通りの組み合わせベクトル、即ち、500
1、5002、5003、5004、5005、500
6、5007、5008が存在する。そして、これらの
組み合わせベクトルの各々を新しいノードとする各枝を
生成する。
S1006で選択された方向“2”を有するベクトルで
あるとする。このベクトルに対応する下位層でのベクト
ルの組は、8通りの組み合わせベクトル、即ち、500
1、5002、5003、5004、5005、500
6、5007、5008が存在する。そして、これらの
組み合わせベクトルの各々を新しいノードとする各枝を
生成する。
【0150】以上、ステップS1007での処理の具体
例を示した。
例を示した。
【0151】次に、ステップS1008へ進み、生成さ
れた枝のノードの1つを次の注目ノードとする。そし
て、ステップS1001へ戻り、同様の処理を繰り返
す。
れた枝のノードの1つを次の注目ノードとする。そし
て、ステップS1001へ戻り、同様の処理を繰り返
す。
【0152】以上説明した手順によって、図9に示すよ
うな分類木を生成することにより、特徴量の多いストロ
ークパターンの大局的分類を維持しながら、類似のカテ
ゴリー間の細かい特徴の違いを反映した分類木を生成で
き、この分類木を探索することで、高速かつ高認識率の
文字認識が可能になる。
うな分類木を生成することにより、特徴量の多いストロ
ークパターンの大局的分類を維持しながら、類似のカテ
ゴリー間の細かい特徴の違いを反映した分類木を生成で
き、この分類木を探索することで、高速かつ高認識率の
文字認識が可能になる。
【0153】ここで、S1907でノードから枝を作成
する際に、最も効率の良い枝の作成を行いたい。最も効
率が良いとは、結局、枝を展開したときに、最も多くカ
テゴリーに関する情報が得られるベクトルをS1906
において選択するということである。
する際に、最も効率の良い枝の作成を行いたい。最も効
率が良いとは、結局、枝を展開したときに、最も多くカ
テゴリーに関する情報が得られるベクトルをS1906
において選択するということである。
【0154】以下、展開したときに最も効率の良くなる
ベクトルを選ぶ方法を説明する。
ベクトルを選ぶ方法を説明する。
【0155】あるノードに存在する学習用ストローク
(TPi,j)の中で、カテゴリー番号iの数をNiで
表す。このノードに存在する学習用ストロークの総数を
Nとすると、このノードにおけるそれぞれのカテゴリー
の存在確率piはpi=Ni/Nで表される。なお、
(TPi,j)の中で、カテゴリー番号iの数をNiで
表す。このノードに存在する学習用ストロークの総数を
Nとすると、このノードにおけるそれぞれのカテゴリー
の存在確率piはpi=Ni/Nで表される。なお、
【0156】
【外9】 よって、このノードの情報が得られたときのエントロピ
ーは、以下の式で表される。
ーは、以下の式で表される。
【0157】
【外10】
【0158】次に、このノードにおいて、あるベクトル
を選択して、そこから枝を展開したときのエントロピー
の減少量を計算する。
を選択して、そこから枝を展開したときのエントロピー
の減少量を計算する。
【0159】上述の通り、1つのベクトルを下の層に向
かって展開したときの枝の数は8本である。この8本の
枝に学習用ストローク(TPi,j)がどのように分布
するかを、展開したときの枝に存在する学習用ストロー
ク(TPi,j)の数=Ni,bで表す。Ni,bのi
はカテゴリー番号を示し、bは枝(branch)の番
号を示す。この時、それぞれの枝の情報が得られたとき
のエントロピーは、上の議論と同じく、
かって展開したときの枝の数は8本である。この8本の
枝に学習用ストローク(TPi,j)がどのように分布
するかを、展開したときの枝に存在する学習用ストロー
ク(TPi,j)の数=Ni,bで表す。Ni,bのi
はカテゴリー番号を示し、bは枝(branch)の番
号を示す。この時、それぞれの枝の情報が得られたとき
のエントロピーは、上の議論と同じく、
【0160】
【外11】 この式で、
【0161】
【外12】 は枝に存在する学習用ストローク(TPi,j)の総数
を表わす。
を表わす。
【0162】それぞれの枝にいく確率は
【0163】
【外13】 (Nは(1)式のNと同じ)なので、結局、枝を展開し
たときの平均エントロピーは
たときの平均エントロピーは
【0164】
【外14】 となる。
【0165】結局、エントロピーの平均減少値は、
【0166】
【外15】 となる。
【0167】そして、この値を枝の数の対数で割った値
【0168】
【外16】 が、枝を展開したときの分類効率を表すことになる。こ
の値が最高となるベクトルを選び、枝を展開していく。
の値が最高となるベクトルを選び、枝を展開していく。
【0169】なお、1つのベクトルのみを展開するので
はなく、複数のベクトルのグループに関して枝を展開し
てもよい。この場合、(5)式のBranchNumb
erは、(選択されたベクトルの数)×8となる。
はなく、複数のベクトルのグループに関して枝を展開し
てもよい。この場合、(5)式のBranchNumb
erは、(選択されたベクトルの数)×8となる。
【0170】また、本実施例においては、(5)式で表
される値を枝を展開したときの分類効率を表す値として
採用したが、例えば文献「Classfication
and Regression Trees」に記載
されている“Gini criterion”等の枝の
展開効率を表す関数ならば(5)式に限らず何でもよ
い。
される値を枝を展開したときの分類効率を表す値として
採用したが、例えば文献「Classfication
and Regression Trees」に記載
されている“Gini criterion”等の枝の
展開効率を表す関数ならば(5)式に限らず何でもよ
い。
【0171】以上、展開するベクトル、またはベクトル
の組みが決定されれば、それに従って、枝を展開し、葉
及びノードを作成していく。そして、最後、全部、葉に
なったところで、分類木作成を完了する。
の組みが決定されれば、それに従って、枝を展開し、葉
及びノードを作成していく。そして、最後、全部、葉に
なったところで、分類木作成を完了する。
【0172】以上、本実施例では、学習ストロークが1
本という前提で、本発明に係わるオンライン手書き文字
認識用の辞書作成方法を述べてきたが、実際には何本の
ストロークが入力文字として切り出されるシステムであ
っても、それぞれのストロークを本実施例と同様に処理
することによって対応できる。
本という前提で、本発明に係わるオンライン手書き文字
認識用の辞書作成方法を述べてきたが、実際には何本の
ストロークが入力文字として切り出されるシステムであ
っても、それぞれのストロークを本実施例と同様に処理
することによって対応できる。
【0173】図20は、分類木作成フェーズによって作
成され、HDD803に格納される分類木データであっ
て、手書き文字認識用辞書として利用されるデータを示
す図である。
成され、HDD803に格納される分類木データであっ
て、手書き文字認識用辞書として利用されるデータを示
す図である。
【0174】図20は図18を更に下の階層まで表示し
た図で、削除された枝は省いてある。図20の□で囲っ
てある枝は葉であることを示す。
た図で、削除された枝は省いてある。図20の□で囲っ
てある枝は葉であることを示す。
【0175】葉以外の全ての枝はノードとなるので、更
に深く枝の展開が行われるわけであるが、図20におい
ては左から2番目のノードのみ、更なる枝の展開結果を
図示した。
に深く枝の展開が行われるわけであるが、図20におい
ては左から2番目のノードのみ、更なる枝の展開結果を
図示した。
【0176】左から2番目のノードは、「く」「し」
「つ」の3種類のカテゴリーが共存しており、枝の展開
が必要となっている。
「つ」の3種類のカテゴリーが共存しており、枝の展開
が必要となっている。
【0177】このノードの状態を表現するベクトルは1
つしか存在しない(○の中に表示されているベクトル)
ので、展開するべきベクトルは一意的に決定する。この
時の展開するベクトルの組み合わせは図15に記載され
ているベクトルの組みに準ずる。つまり、上の階層のベ
クトルが右下の方向(番号3)のベクトルでありうる下
の階層の2個のベクトルの8つの組み合わせに相当する
枝の展開が行われる。この状況は図16において、ベク
トルの展開が第2層まで進んだことを意味する。
つしか存在しない(○の中に表示されているベクトル)
ので、展開するべきベクトルは一意的に決定する。この
時の展開するベクトルの組み合わせは図15に記載され
ているベクトルの組みに準ずる。つまり、上の階層のベ
クトルが右下の方向(番号3)のベクトルでありうる下
の階層の2個のベクトルの8つの組み合わせに相当する
枝の展開が行われる。この状況は図16において、ベク
トルの展開が第2層まで進んだことを意味する。
【0178】更に展開した左から2番目の枝のノードに
は「し」「く」の2つのカテゴリーが存在する。よっ
て、更なる枝の展開が必要になる。ここで、ノードを表
現する2個のベクトルのうち、どのベクトルを展開すべ
きかについて、「展開ベクトル判別手段」が最初のベク
トルという答えを出したとする。すると、最初のベクト
ルの状態に関して、上の階層と同様に8本の枝が展開さ
れ、ある枝は削除され、ある枝は葉となり、ある枝はノ
ードとなる。ノードとなって枝は更に枝を展開しなけれ
ばならなく、最終的に全ての枝の端末は葉となる。
は「し」「く」の2つのカテゴリーが存在する。よっ
て、更なる枝の展開が必要になる。ここで、ノードを表
現する2個のベクトルのうち、どのベクトルを展開すべ
きかについて、「展開ベクトル判別手段」が最初のベク
トルという答えを出したとする。すると、最初のベクト
ルの状態に関して、上の階層と同様に8本の枝が展開さ
れ、ある枝は削除され、ある枝は葉となり、ある枝はノ
ードとなる。ノードとなって枝は更に枝を展開しなけれ
ばならなく、最終的に全ての枝の端末は葉となる。
【0179】図21は、本実施の形態におけるオンライ
ン手書き文字認識処理を表す図画であり、2101はユ
ーザが入力した「筆記ストローク」、2102は前記
「筆記ストローク」を分割する「ストローク分割手
段」、2103は前記「ストローク分割手段」において
分割されたストローク切片をベクトル量子化する「ベク
トル化手段」、2104は前記「ベクトル化手段」の結
果得られたベクトル系列から部分的なベクトルを取り出
す「サブベクトル取り出し手段」、2105は前記「サ
ブベクトル取り出し手段」の結果得られたベクトル系列
を階層的に処理する「階層化前処理手段」、2106は
前記で「階層化前処理手段」で処理された後の「階層化
されたサブベクトル系列」、2107はカテゴリー分類
に必要な情報にまとめた「分類木」、2108は前記
「階層化されたベクトル系列」を元に前記「分類木」の
分類内容に従って前記「筆記ストローク」のカテゴリー
を決定する「カテゴリー判別手段」、2109は前記
「カテゴリー判別手段」の結果得られた各カテゴリーの
判別確率を統合する「判別確率統合手段」である。本発
明におけるインプットは“筆記パターン”でアウトプッ
トは“認識候補”である。上記の「分類木」の内容は、
実施の形態1の方法で作成しうる「分類木」であること
が望ましい。
ン手書き文字認識処理を表す図画であり、2101はユ
ーザが入力した「筆記ストローク」、2102は前記
「筆記ストローク」を分割する「ストローク分割手
段」、2103は前記「ストローク分割手段」において
分割されたストローク切片をベクトル量子化する「ベク
トル化手段」、2104は前記「ベクトル化手段」の結
果得られたベクトル系列から部分的なベクトルを取り出
す「サブベクトル取り出し手段」、2105は前記「サ
ブベクトル取り出し手段」の結果得られたベクトル系列
を階層的に処理する「階層化前処理手段」、2106は
前記で「階層化前処理手段」で処理された後の「階層化
されたサブベクトル系列」、2107はカテゴリー分類
に必要な情報にまとめた「分類木」、2108は前記
「階層化されたベクトル系列」を元に前記「分類木」の
分類内容に従って前記「筆記ストローク」のカテゴリー
を決定する「カテゴリー判別手段」、2109は前記
「カテゴリー判別手段」の結果得られた各カテゴリーの
判別確率を統合する「判別確率統合手段」である。本発
明におけるインプットは“筆記パターン”でアウトプッ
トは“認識候補”である。上記の「分類木」の内容は、
実施の形態1の方法で作成しうる「分類木」であること
が望ましい。
【0180】2101「筆記ストローク」は、実施例4
の1001「学習用ストローク」対応するもので、実質
的には何等変わりない。2102「ストローク分割手
段」、2103「ベクトル化手段」、2104「サブベ
クトル取り出し手段」、2105「階層化前処理手段」
の4つの手段は実施例4のそれぞれ対応する手段と全く
同じものである。2106「階層化されたサブベクトル
系列」は、図12の1206の場合は学習パターンの数
だけ存在したが、ここでは、筆記されたストロークから
導き出された1つのみである。
の1001「学習用ストローク」対応するもので、実質
的には何等変わりない。2102「ストローク分割手
段」、2103「ベクトル化手段」、2104「サブベ
クトル取り出し手段」、2105「階層化前処理手段」
の4つの手段は実施例4のそれぞれ対応する手段と全く
同じものである。2106「階層化されたサブベクトル
系列」は、図12の1206の場合は学習パターンの数
だけ存在したが、ここでは、筆記されたストロークから
導き出された1つのみである。
【0181】2107「カテゴリー判別手段」は、21
06「階層化されたベクトル系列」に基づき、図18の
分類木をたぐって葉に到達した時点で、その葉に存在す
るカテゴリーを認識結果として出力する。また、葉に到
達しなかった場合は、最後に通過したノードに含まれる
カテゴリー確率を結果として出力する。
06「階層化されたベクトル系列」に基づき、図18の
分類木をたぐって葉に到達した時点で、その葉に存在す
るカテゴリーを認識結果として出力する。また、葉に到
達しなかった場合は、最後に通過したノードに含まれる
カテゴリー確率を結果として出力する。
【0182】2108「判別確率統合手段」は、210
7「カテゴリー判別手段」のサブパターン毎の結果を相
加平均、または相乗平均等の平均処理を行う。
7「カテゴリー判別手段」のサブパターン毎の結果を相
加平均、または相乗平均等の平均処理を行う。
【0183】〈実施の形態3〉先の実施の形態で説明し
た分類木の作成方法、及び認識方法を利用して、音声を
認識することも可能である。
た分類木の作成方法、及び認識方法を利用して、音声を
認識することも可能である。
【0184】音声データは時系列データとして表現され
るが、このデータをフーリエ変換し、その包絡線をとる
と図23のようになる。図23は「あしたいく」と発声
された音声データをフーリエ変換した結果である。この
状態では、図23を見ても分かるように、2値のビット
マップデータと異なり、アナログ値の強度を持ち、山脈
のような起伏を持った3次元形状データとなっている。
るが、このデータをフーリエ変換し、その包絡線をとる
と図23のようになる。図23は「あしたいく」と発声
された音声データをフーリエ変換した結果である。この
状態では、図23を見ても分かるように、2値のビット
マップデータと異なり、アナログ値の強度を持ち、山脈
のような起伏を持った3次元形状データとなっている。
【0185】よって、この3次元データを何らかの定め
た軸で切断し、N枚の2次元ビットマップデータに変換
すれば、先の実施の形態で説明したビットマップデータ
の分類木作成方法で分類木が作成でき、また、入力音声
についても同様のフーリエ変換と軸での切断によりビッ
トマップデータで表せ、よって認識が可能となる。
た軸で切断し、N枚の2次元ビットマップデータに変換
すれば、先の実施の形態で説明したビットマップデータ
の分類木作成方法で分類木が作成でき、また、入力音声
についても同様のフーリエ変換と軸での切断によりビッ
トマップデータで表せ、よって認識が可能となる。
【0186】図24は強度と周波数を軸にして図23の
データを切断した図であり、図25は周波数と時間を軸
にして図23のデータを切断した図である。
データを切断した図であり、図25は周波数と時間を軸
にして図23のデータを切断した図である。
【0187】尚、図23のような3次元形状全体の認識
結果としては、上記のようなN枚の2次元ビットマップ
の認識結果の相加平均等の平均操作を施すことによって
得られる。
結果としては、上記のようなN枚の2次元ビットマップ
の認識結果の相加平均等の平均操作を施すことによって
得られる。
【0188】
【発明の効果】以上説明したように、本発明によれば、
学習用パターンからサブパターンを取り出し、前記サブ
パターンを予め階層的に処理し、前記階層的に処理され
たサブパターンに基づいて該サブパターンの分類木を作
成することにより、少量の学習パターンでも高認識率が
実現できる。
学習用パターンからサブパターンを取り出し、前記サブ
パターンを予め階層的に処理し、前記階層的に処理され
たサブパターンに基づいて該サブパターンの分類木を作
成することにより、少量の学習パターンでも高認識率が
実現できる。
【0189】以上説明したように、本発明によれば、前
記階層的処理は、前記サブパターの詳細なデータから順
に縮退したデータを生成することにより、高速な認識処
理を可能とする。
記階層的処理は、前記サブパターの詳細なデータから順
に縮退したデータを生成することにより、高速な認識処
理を可能とする。
【0190】以上説明したように、本発明によれば、前
記分類木の作成は、前記階層的に処理されたサブパター
ンのデータの上位から下位へと展開することにより、認
識能率の良い辞書データを作成することができる。
記分類木の作成は、前記階層的に処理されたサブパター
ンのデータの上位から下位へと展開することにより、認
識能率の良い辞書データを作成することができる。
【0191】以上説明したように、本発明によれば、前
記サブパターンは、前記学習用パターンを分割した部分
パターンとすることにより、サブパターンの作成が容易
に可能となる。
記サブパターンは、前記学習用パターンを分割した部分
パターンとすることにより、サブパターンの作成が容易
に可能となる。
【0192】以上説明したように、本発明によれば、前
記分類木の作成は、分類効率が最大となる変数を選択
し、該選択された変数について分類木を作成することに
より、従来とは違う効率の良い分類木が実現できる。
記分類木の作成は、分類効率が最大となる変数を選択
し、該選択された変数について分類木を作成することに
より、従来とは違う効率の良い分類木が実現できる。
【0193】以上説明したように、本発明によれば、パ
ターンを入力し、前記入力したパターンを階層的に処理
し、前記階層的に処理された入力パターンのデータのよ
り上位のデータから下位に向かって、順に前記分類木を
たどって前記入力パターンを認識することにより、高速
で高い認識率を実現できる。
ターンを入力し、前記入力したパターンを階層的に処理
し、前記階層的に処理された入力パターンのデータのよ
り上位のデータから下位に向かって、順に前記分類木を
たどって前記入力パターンを認識することにより、高速
で高い認識率を実現できる。
【0194】以上説明したように、本発明によれば、前
記パターンはビットマップデータとすることにより、ス
キャナ等により入力される画像データの高認識を可能と
する。
記パターンはビットマップデータとすることにより、ス
キャナ等により入力される画像データの高認識を可能と
する。
【0195】以上説明したように、本発明によれば、前
記パターンはストロークデータとすることにより、ペン
等により入力される軌跡データの高認識を可能とする。
記パターンはストロークデータとすることにより、ペン
等により入力される軌跡データの高認識を可能とする。
【0196】以上説明したように、本発明によれば、前
記パターンは音声データとすることにより、マイクロフ
ォン等により入力される音声データの高認識を可能とす
る。
記パターンは音声データとすることにより、マイクロフ
ォン等により入力される音声データの高認識を可能とす
る。
【図1】実施の形態1の分類木作成処理を示す図であ
る。
る。
【図2】本発明に係る情報処理装置のハード構成を示す
ブロック図である。
ブロック図である。
【図3】実施の形態1の情報処理装置の処理の流れを示
すフローチャートである。
すフローチャートである。
【図4】実施の形態1におけるサブパターン取り出しを
説明する図である。
説明する図である。
【図5】実施の形態1におけるピラミッドの構造図であ
る。
る。
【図6】作成途中の分類木の様子を示す図である。
【図7】実施の形態1における分類木作成過程を示すフ
ローチャートである。
ローチャートである。
【図8】本発明に係る情報処理装置の構成図である。
【図9】選択されたニューロンから作成される下の階層
パターンの例を示す図である。
パターンの例を示す図である。
【図10】実施の形態1により作成された分類木の例を
示す図である。
示す図である。
【図11】実施の形態1の認識処理を示す図である。
【図12】実施の形態2の分類木作成処理を示す図であ
る。
る。
【図13】実施の形態2の情報処理装置の処理の流れを
示すフローチャートである。
示すフローチャートである。
【図14】ストローク生成フェーズの動きを示す図であ
る。
る。
【図15】サブベクトル取り出し手段を示す図である。
【図16】ベクトル系列の階層化処理を示す図である。
【図17】ベクトル平均化を示す図である。
【図18】作成途中の分類木の様子を示す図である。
【図19】分類木作成過程を示すフローチャートであ
る。
る。
【図20】実施の形態2により作成された分類木の例で
ある。
ある。
【図21】実施の形態2の認識処理を示す図である。
【図22】従来例を示す図である。
【図23】音声パターンをフーリエ変換した結果の包絡
線の図である。
線の図である。
【図24】強度と周波数を軸にした音声パターンの図で
ある。
ある。
【図25】周波数と時間を軸にした音声パターンの図で
ある。
ある。
Claims (27)
- 【請求項1】 学習用パターンからサブパターンを取り
出し、 前記サブパターンを予め階層的に処理し、 前記階層的に処理されたサブパターンに基づいて該サブ
パターンの分類木を作成することを特徴とする情報処理
方法。 - 【請求項2】 前記階層的処理は、前記サブパターンの
詳細なデータから順に縮退したデータを生成することを
特徴とする請求項1に記載の情報処理方法。 - 【請求項3】 前記分類木の作成は、前記階層的に処理
されたサブパターンのデータの上位から下位へと展開す
ることを特徴とする請求項1に記載の情報処理方法。 - 【請求項4】 前記サブパターンは、前記学習用パター
ンを分割した部分パターンとすることを特徴とする請求
項1に記載の情報処理方法。 - 【請求項5】 前記分類木の作成は、分類効率が最大と
なる変数を選択し、 該選択された変数について分類木を作成することを特徴
とする請求項1に記載の情報処理方法。 - 【請求項6】 パターンを入力し、 前記入力したパターンを階層的に処理し、 前記階層的に処理された入力パターンのデータのより上
位のデータから下位に向かって、順に前記分類木をたど
って前記入力パターンを認識することを特徴とする請求
項1に記載の情報処理方法。 - 【請求項7】 前記パターンはビットマップデータとす
ることを特徴とする請求項1に記載の情報処理方法。 - 【請求項8】 前記パターンはストロークデータとする
ことを特徴とする請求項1に記載の情報処理方法。 - 【請求項9】 前記パターンは音声データとすることを
特徴とする請求項1に記載の情報処理方法。 - 【請求項10】 学習用パターンからサブパターンを取
り出すサブパターン取り出し手段と、 前記サブパターンを予め階層的に処理する階層化処理手
段と、 前記階層的に処理されたサブパターンに基づいて該パタ
ーンの分類木を作成する分類木作成手段を有することを
特徴とする情報処理装置。 - 【請求項11】 前記階層化処理手段は、前記サブパタ
ーンの詳細なデータから順に縮退したデータを生成する
ことを特徴とする請求項10に記載の情報処理装置。 - 【請求項12】 前記分類木作成手段は、前記階層的に
処理されたサブパターンのデータの上位から下位へと展
開することを特徴とする請求項10に記載の情報処理装
置。 - 【請求項13】 前記サブパターン取り出し手段は、前
記学習用パターンを分割した部分パターンをサブパター
ンとして取り出すことを特徴とする請求項10に記載の
情報処理装置。 - 【請求項14】 前記分類木作成手段は、分類効率が最
大となる変数を選択し、該選択された変数について分類
木を作成することを特徴とする請求項10に記載の情報
処理装置。 - 【請求項15】 パターンを入力する入力手段と、 前記入力したパターンを階層的に処理する手段と、 前記階層的に処理された入力パターンのデータのより上
位のデータから下位に向かって、順に前記分類木をたど
って前記入力パターンを認識する認識手段とを有するこ
とを特徴とする請求項10に記載の情報処理装置。 - 【請求項16】 前記パターンはビットマップデータと
することを特徴とする請求項10に記載の情報処理装
置。 - 【請求項17】 前記パターンはストロークデータとす
ることを特徴とする請求項10に記載の情報処理装置。 - 【請求項18】 前記パターンは音声データとすること
を特徴とする請求項10に記載の情報処理装置。 - 【請求項19】 学習用パターンからサブパターンを取
り出し、 前記サブパターンを予め階層的に処理し、 前記階層的に処理されたサブパターンに基づいて該サブ
パターンの分類木を作成することを特徴とするコンピュ
ータ可読メモリ。 - 【請求項20】 前記階層的処理は、前記サブパターン
の詳細なデータから順に縮退したデータを生成すること
を特徴とする請求項19に記載のコンピュータ可読メモ
リ。 - 【請求項21】 前記分類木の作成は、前記階層的に処
理されたサブパターンのデータの上位から下位へと展開
することを特徴とする請求項19に記載のコンピュータ
可読メモリ。 - 【請求項22】 前記サブパターンは、前記学習用パタ
ーンを分割した部分パターンとすることを特徴とする請
求項19に記載のコンピュータ可読メモリ。 - 【請求項23】 前記分類木の作成は、分類効率が最大
となる変数を選択し、 該選択された変数について分類木を作成することを特徴
とする請求項19に記載のコンピュータ可読メモリ。 - 【請求項24】 パターンを入力し、 前記入力したパターンを階層的に処理し、 前記階層的に処理された入力パターンのデータのより上
位のデータから下位に向かって、順に前記分類木をたど
って前記入力パターンを認識することを特徴とする請求
項19に記載のコンピュータ可読メモリ。 - 【請求項25】 前記パターンはビットマップデータと
することを特徴とする請求項19に記載のコンピュータ
可読メモリ。 - 【請求項26】 前記パターンはストロークデータとす
ることを特徴とする請求項19に記載のコンピュータ可
読メモリ。 - 【請求項27】 前記パターンは音声データとすること
を特徴とする請求項19に記載のコンピュータ可読メモ
リ。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP09109796A JP3630837B2 (ja) | 1996-04-12 | 1996-04-12 | 情報処理方法及び装置 |
US08/777,249 US5982933A (en) | 1996-01-12 | 1996-12-31 | Information processing method, information processing apparatus, and storage medium |
EP97100342A EP0784285B1 (en) | 1996-01-12 | 1997-01-10 | Method, apparatus and computer program product for generating a classification tree |
CN97102205A CN1102270C (zh) | 1996-01-12 | 1997-01-10 | 信息处理方法和信息处理设备 |
DE69720564T DE69720564T2 (de) | 1996-01-12 | 1997-01-10 | Verfahren, Gerät und Computerprogrammprodukt zur Erzeugung von einem Klassifikationsbaum |
KR1019970000595A KR100251068B1 (ko) | 1996-01-12 | 1997-01-11 | 정보 처리 방법,정보 처리 장치 및 저장 매체 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP09109796A JP3630837B2 (ja) | 1996-04-12 | 1996-04-12 | 情報処理方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09282419A true JPH09282419A (ja) | 1997-10-31 |
JP3630837B2 JP3630837B2 (ja) | 2005-03-23 |
Family
ID=14017024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP09109796A Expired - Fee Related JP3630837B2 (ja) | 1996-01-12 | 1996-04-12 | 情報処理方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3630837B2 (ja) |
-
1996
- 1996-04-12 JP JP09109796A patent/JP3630837B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3630837B2 (ja) | 2005-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Nabil et al. | Prediction of students’ academic performance based on courses’ grades using deep neural networks | |
US11853903B2 (en) | SGCNN: structural graph convolutional neural network | |
KR102011667B1 (ko) | 딥러닝-기반 키워드에 연관된 단어를 도출하는 방법과 컴퓨터프로그램 | |
Daelemans et al. | IGTree: using trees for compression and classification in lazy learning algorithms | |
US5982933A (en) | Information processing method, information processing apparatus, and storage medium | |
US6052481A (en) | Automatic method for scoring and clustering prototypes of handwritten stroke-based data | |
KR102189688B1 (ko) | 동의어 추출 방법 | |
CN109948149B (zh) | 一种文本分类方法及装置 | |
KR102293538B1 (ko) | 음악 심볼들을 인식하기 위한 방법 및 장치 | |
US11640539B2 (en) | Techniques for visualizing the operation of neural networks using samples of training data | |
CN114258550A (zh) | 用于修改神经网络的操作的技术 | |
Shilman et al. | Recognition and grouping of handwritten text in diagrams and equations | |
US6233352B1 (en) | Information processing method and apparatus | |
JP3896868B2 (ja) | パターンの特徴選択方法及び分類方法及び判定方法及びプログラム並びに装置 | |
US5757964A (en) | System and method for automatic subcharacter unit and lexicon generation for handwriting recognition | |
Kaddoura | A Primer on Generative Adversarial Networks | |
JPH1131226A (ja) | 情報処理方法及び装置 | |
KR20200141419A (ko) | 동의어 추출 방법 | |
JPH0944518A (ja) | 画像データベースの構築方法と、画像データベースの検索方法及び検索装置 | |
JPH09282419A (ja) | 情報処理方法及び装置 | |
CN111354364B (zh) | 一种基于rnn聚合方式的声纹识别方法与系统 | |
JP3636525B2 (ja) | 文字認識方法とその装置 | |
Badii et al. | 10 applications of n-tuple sampling and genetic algorithms to speech recognition | |
JP2000076464A (ja) | 図形認識方法、図形認識装置、図形分類方法、図形分類装置、記録媒体、及び、図形特徴抽出方法 | |
Gilson et al. | An empirical comparison of neural techniques for edge linking of images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040831 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041101 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20041214 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041215 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |