JP2004164481A - 情報処理方法 - Google Patents
情報処理方法 Download PDFInfo
- Publication number
- JP2004164481A JP2004164481A JP2002331882A JP2002331882A JP2004164481A JP 2004164481 A JP2004164481 A JP 2004164481A JP 2002331882 A JP2002331882 A JP 2002331882A JP 2002331882 A JP2002331882 A JP 2002331882A JP 2004164481 A JP2004164481 A JP 2004164481A
- Authority
- JP
- Japan
- Prior art keywords
- perfect
- learning
- learner
- recognition
- learning sample
- 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.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
【課題】任意の多値パターンを認識する。
【解決手段】学習データおよび重みベクトルの情報が学習サンプル抽出ステップに供給され、部分集合である学習サンプルが抽出される。学習サンプルの重みは、のパーフェクト・ラーナ作成ステップで使用され、重みベクトルを参照しつつ、学習サンプルからパーフェクト・ラーナを生成する。生成されたパーフェクト・ラーナに基づいて、重み更新ステップが実行される。重み更新ステップは、重みベクトルを更新し、さらに認識フェーズで使用するパーフェクト・ラーナ加重係数を決定する。
【選択図】 図1
【解決手段】学習データおよび重みベクトルの情報が学習サンプル抽出ステップに供給され、部分集合である学習サンプルが抽出される。学習サンプルの重みは、のパーフェクト・ラーナ作成ステップで使用され、重みベクトルを参照しつつ、学習サンプルからパーフェクト・ラーナを生成する。生成されたパーフェクト・ラーナに基づいて、重み更新ステップが実行される。重み更新ステップは、重みベクトルを更新し、さらに認識フェーズで使用するパーフェクト・ラーナ加重係数を決定する。
【選択図】 図1
Description
【0001】
【発明が属する技術分野】
本発明は画像、文字、音声等のパターンを認識する際に使用するアルゴリズム及び辞書を作成する方法及び装置に関するものである。
【0002】
【従来の技術】
従来、USP5,819,247(従来例1という。)に開示されているいわゆるブースティングアルゴリズムによれば、複数のパターン認識方法及び装置を組み合わせて、より高い性能のパターン認識方法及び装置を実現できる。この方法によれば、あまり性能の高くないパターン認識方法の性能を向上できる。例えば、パターン認識対象と若干の相関を持つ程度の認識結果を生成する認識方法を寄せ集めて、パターン認識対象に対する認識率を100%まで改良し得る。
【0003】
【発明が解決しようとする課題】
しかしながら、従来例1に開示されているブースティングアルゴリズムは、2値のパターン認識対象に限定されており、多値のパターン認識問題に適用したときに途中で学習がストップすることがあった。すなわち、従来例1は多値パターン認識問題一般には適用できなかった。
【0004】
この問題を克服するために、多値パターン認識問題をより大きな2値パターン認識問題に埋め込み、新たに設定される2値パターン認識問題を解くことによって、元の多値パターン認識問題を解く方法(従来例2という。)も提案されていた。しかしながら、従来例2は、新たに設定される2値パターン認識問題が巨大になるという欠点があり、学習に非常に時間がかかってしまうという実行上の重大な欠点が存在した。
【0005】
本発明はこのような従来の問題点を解消すべく創案されたもので、任意の多値パターンを認識することを目的とする。
【0006】
【課題を解決するための手段】
本発明は、認識対象のパターンの特徴抽出結果を変数によって定義し、前記変数に対応した認識結果を多値(2値を含む)のラベルとし、前記変数と前記ラベルとの対の集合を学習データとし、前記学習データにおける前記変数から前記パターンを認識する情報処理方法であって、前記前記変数と前記ラベルとの対にそれぞれ重みの初期値を設定して、前記重みの集合を重みベクトルとする重みベクトル初期値設定ステップと、前記重みに基づいて、前記学習データから前記前記変数と前記ラベルとの対を抽出して学習サンプルを生成する学習サンプル抽出ステップと、前記学習サンプル抽出ステップによって抽出された前記学習サンプルと前記重みベクトルよりパーフェクト・ラーナ(Perfect−Learner)を作成するパーフェクト・ラーナ生成ステップと、前記パーフェクト・ラーナ生成ステップにより生成されたパーフェクト・ラーナを用いて、前記学習サンプルを認識する学習サンプル認識ステップと、前記学習サンプル認識ステップにおける誤認識率に基づいてパーフェクト・ラーナの加重係数を算出するとともに、前記重みベクトルを更新する重みベクトル更新ステップと、前記作成するパーフェクト・ラーナ生成ステップと、学習サンプル認識ステップとを繰り返し、前記各パーフェクト・ラーナによって認識されたラベルにパーフェクト・ラーナ加重係数を乗じた結果の合計を比較し、合計値が最大のラベルを認識結果とする。これによって、任意の多値パターンを認識し得る。
【発明の実施の形態】
次に本発明に係る情報処理方法の一実施形態を図面に基づいて説明する。
【0007】
図1は、本発明に係る情報処理方法の一実施形態における学習フェーズの処理の流れを示す図、図2は、本発明に係る情報処理方法の一実施形態が実施される情報処理装置の構成を示すブロック図、図3は、本発明に係る情報処理方法の一実施形態における認識フェーズの処理の流れを示す図、図4は、図1の実施形態における各ラウンドで、パーフェクト・ラーナによって全学習パターンを認識させる様子を示した図、図5は、図1の重み更新ステップの処理およびパーフェクト・ラーナ加重計数算出の処理の流れを示すフローチャート、図6は、図1の学習サンプル抽出ステップの処理の流れを示すフローチャートである。
【0008】
情報処理装置は、入力装置201、表示装置202、中央処理装置(CPU)203、およびメモリ204を有する。
【0009】
入力装置201は、例えばオンライン文字認識ならば、デジタイザとペンを有し、デジタイザの上にペンによって入力された文字や図形の座標データ、認識対象のパターンのデータをCPU203に渡す。入力装置201は、認識対象となるパターンを入力し得る任意の装置、例えばスキャナー、マイク等である。
【0010】
表示装置202は、入力装置201に入力されたパターンのデータや、CPU203が認識した結果を表示する。
【0011】
CPU203は、入力されたパターンの認識を行い、また入力装置201、表示装置202、メモリ204、その他全ての装置を制御する。
【0012】
メモリ204は、CPU203が使用する認識プログラムや辞書を保存し、さらには、入力されたパターンデータや、認識プログラムが使用する変数等を一次的に記録する。
【0013】
図1は、本発明の情報処理方法および装置、特にその学習フェーズの様子を極めて適切に表現している。学習フェーズにおける入力は「学習データ」であり、出力は複数の「パーフェクト・ラーナ」および「パーフェクト・ラーナ加重係数」である。パーフェクト・ラーナは、日本語で言えば完全認識機と呼べるものであり、与えられた学習サンプルを完全に認識、分類する方法、装置、または、プログラムのことを意味する。
【0014】
図1において、学習用に用意された全てのサンプルよりなる学習データ101が学習サンプル抽出ステップ102に渡される。学習データ101は、認識対象の入力パターンから特徴抽出した結果の変数と、認識結果としての「ラベル」とを対応させ、全てのパターンについての、変数とラベルとの対を集合としたものである。従来のブースティングアルゴリズムでは、「ラベル」が2値であったが、本発明では、2値を含む多値である。
【0015】
学習サンプル抽出ステップ102には重みベクトル104の情報が供給され、学習サンプル抽出ステップ102は、重みベクトル104の情報に基づいて学習データ101全体から、部分集合である学習サンプル103を抽出する。学習サンプル抽出ステップ102の詳細については後述する。
【0016】
重みベクトル104は、学習データ101を構成する全ての学習サンプル103に対して付加された重みの集合を示し、学習過程において、どんどん更新されていく。なお、初期値では学習データ101の重みは全て等しく設定される。また注意すべきことは、学習データ101から抽出される学習サンプル103は、それぞれにも重みが付加される。各学習サンプル103の重みは、次のパーフェクト・ラーナ作成ステップ105で使用される。
【0017】
パーフェクト・ラーナ作成ステップ105は、重みベクトル104を参照しつつ、学習サンプル103からパーフェクト・ラーナ106を生成する。パーフェクト・ラーナ106は、与えられた学習サンプルを認識、分類する。
【0018】
パーフェクト・ラーナ106を実現する学習アルゴリズムは、与えられた学習サンプルに対して100%の認識性能を示すものであれば基本的には何でも良い。例えば、線形分離関数、ニューラルネット、ベイズ学習アルゴリズム、Nearest Neighborマッチングアルゴリズム、Support Vector Machineなど、パターン認識アルゴリズムならば何でもよい。パターン認識アルゴリズムをまとめた文献としては、IEEE Transaction on Pattern Analysis and MachineIntelligenceのVol. 22 No.1 Jan. 2000”Statistical Pattern Recognition:A Review” Anil K. Jain, Robert P. W. Duin, and Jianchang Maoがある。
【0019】
なお、パターン認識アルゴリズムの中でも、本発明の手法にもっとも適した方法は、学習サンプルの重み付けが変わることによって生成されるパターン認識機が変化する、いわゆるUnstable認識アルゴリズムである。このようなアルゴリズムの1つとして分類木がある。分類木に関しては例えば文献IEEE Transaction on System, Man, and CyberneticsのVol. 21, No.3, May/June 1991“A Survey of Decision TreeClassifier Methodlogy”S. Rasoul Safavian and David Landgrebeに詳しく記述されている。
【0020】
なお、分類木にブースティングアルゴリズムの手法を取り入れてより高性能なパターン認識アルゴリズムを作成する方法そのものは、公知であり、例えば文献「ブースティング入門」人工知能学会誌Vol.14 No.5, Sept.1999 Yoav Freund and Robert Schapire、安倍 直樹訳に詳しい記述がある。ここに述べられているような従来の分類木にブースティングアルゴリズムの手法を取り入れる方法と、本発明の決定的な違いは、分類木がパーフェクト・ラーナに限定されている点である。これを実現するために、通常は分類木の学習に際して枝きりを行うところを本発明で使用する分類木アルゴリズムでは、枝きりを全く行わない。この処理によって、任意の学習サンプルに対してパーフェクト・ラーナを作成することができる。
【0021】
パーフェクト・ラーナ作成ステップ105は、本発明の学習過程において、複数回実行される。1回のパーフェクト・ラーナ作成ステップ105を「ラウンド」という単位で呼ぶことが多く、例えば「全体で100ラウンドの学習を行う」というような言い方をする。100ラウンドの学習を行うと、100個(100種類)のパーフェクト・ラーナ106が生成される。
【0022】
生成されたパーフェクト・ラーナ106に基づいて、重み更新ステップ107が実行される。重み更新ステップ107は、重みベクトル104を更新し、さらに認識フェーズで使用するパーフェクト・ラーナ加重係数を決定する。重み更新ステップ107もラウンド数の回数だけ実行される。
【0023】
図3の認識フェーズにおいて、入力は“認識データ”であり、出力は “認識結果”である。
【0024】
認識データ301は、認識対象のパターンから特徴抽出した結果を記述する変数よりなる。認識データ301は、学習データ101内の1つの変数・ラベル対においてラベルを除去したデータと同一フォーマットであり、ラベルが未知の学習データということができる。認識フェーズ301は、ラベルが未知の学習データにラベルを割り当てる。従って認識フェーズ301の認識結果305はラベルよりなる。
【0025】
認識データ301はパーフェクト・ラーナ302(パーフェクト・ラーナ105と同一のものである。)に入力され、パーフェクト・ラーナ302はラベルを認識結果集計ステップ304に入力する。
【0026】
認識結果集計ステップ304には、パーフェクト・ラーナ加重係数303(パーフェクト・ラーナ加重係数108と同一のものである。)が入力される。前述の通り、学習過程が100ラウンドならば、パーフェクト・ラーナおよびパーフェクト・ラーナ加重係数は100個ずつ存在する。
【0027】
認識結果集計ステップ304は、学習フェーズで得られた全てのパーフェクト・ラーナ302によって得られたラベルにパーフェクト・ラーナ加重係数をかけて足し合わせた合計の中で多数決を行い、もっとも得票数の多かったラベルを認識結果305とする。
【0028】
パーフェクト・ラーナ302は完全にラベルを決定するアルゴリズムなので、1つのパーフェクト・ラーナから得られる認識結果は完全に確定した1つのラベルである。よって、100ラウンドの学習を行うと、100個のラベルが得られ、これらに重み付けをした多数決で最終的なラベルが得られることとなる。
【0029】
図4において、重み更新ステップ107では、まず全学習データに対して現在のラウンドのパーフェクト・ラーナを適用し、認識処理を実行する。図4には四角形の枠内に大きな円が描かれ、この円の内部に小さな円が描かれている。四角形は認識対象となり得る全てのデータを示し、大きな円は全学習データ101、小さな円は抽出された学習サンプル103を示す。四角形は2つの領域(左側の左下りハッチングの領域と、右側の右下りハッチングの領域)に分割され、これにともなって全学習データ101も2つの領域に分割される。小さな円弧で示された学習サンプル103は、左側の左下りハッチングの領域に含まれる。左側の左下りハッチングの領域は認識に成功する学習データの領域であり、右側の右下りハッチングの領域は認識に失敗する学習データの領域である。
【0030】
図1のパーフェクト・ラーナ作成ステップ105では、抽出された学習サンプル103をパーフェクト・ラーナ106に学習させるので、その結果生成されたパーフェクト・ラーナ106によって全学習データを認識させると、現在のラウンドで抽出された学習サンプル103は認識に成功する集合に完全に含まれる。一方、全学習データ101から抽出されなかった学習サンプル103の中には、認識に失敗する学習サンプルも含まれる。
【0031】
図5において、重み更新ステップ107は以下の各ステップにより実行される。
【0032】
ステップS501: 全学習データに対するパーフェクト・ラーナの認識結果における誤認識率「e」を求める。誤認識率「e」は、「誤認識した学習サンプルの重みを足し合わせたもの」を「全学習サンプルの重みの合計」で除算した値である。
【0033】
ステップS502:重みベクトル、つまり全学習データの重みを更新する。その方法は、認識に失敗した学習サンプルの重みを{(1−e)/e}倍する。この値は、現在のラウンドのパーフェクト・ラーナの性能が高く、誤認識率が低ければ低いほど大きくなる。
【0034】
ステップS503:ステップS501、S502の更新方法だと、重みが単調に増加して、処理可能は数値の上限を超える可能性がある。そこで、計算機等に実装する場合は、ラウンド毎に重みの合計が「1」になるように正規化する等の処理を行う。このような正規化を採用する場合、最初のラウンドの重みベクトルは、「1」を全学習データのサンプル数で割った数とする。
【0035】
ステップS502に関して、認識に失敗した学習サンプルの重みに対する乗数を{(1−e)/e}としたが、実際の学習においては、厳密にこの値にする必要はなく、定性的に認識性能の高いパーフェクト・ラーナで誤認識したサンプルの重みを多くする方法であれば、本発明のアルゴリズムは十分機能する。但し、次に述べるパーフェクト・ラーナ加重係数とは異なり、全く重みを変更しないと良い結果が得られない。
【0036】
ステップS504:図1のパーフェクト・ラーナ加重係数108を算出する。パーフェクト・ラーナ加重計数は誤認識率eの関数であり、{log(1−e)−log(e)}によって算出される。パーフェクト・ラーナ加重計数は、誤認識率eが小さければ小さいほど大となり、よって、パーフェクト・ラーナの性能が高ければ高いほど、加重平均の得票貢献は高くなることとなる。実際の学習においては、パーフェクト・ラーナ加重計数も厳密にこの式に従う必要はなく、定性的にパーフェクト・ラーナの性能が高ければ高い値になる式を用いても十分アルゴリズムは機能する。極端な場合、全てのパーフェクト・ラーナに対して加重係数を同じにしても、本発明のアルゴリズムは十分機能する。
【0037】
なお、非常にまれではあるが、抽出された学習サンプルで学習させたパーフェクト・ラーナが全学習データに対して完全な認識性能を示す場合がある。この場合は、これまで述べてきた式が全てオーバーフローする。この場合は、学習フェーズは終了させることも可能であるし、誤認識率eを非常に小さい値に摩り替えて、パーフェクト・ラーナ加重係数の導出を行っても良い。なお、誤認識率eを非常に小さい値に摩り替えた場合は、誤認識をする学習データは存在しないので、重みベクトルは更新されない。
【0038】
図6において、学習サンプル抽出ステップ102では、誤認識率eを所定値以下に抑えるように配慮しつつ、学習データを選択する。
【0039】
図5の重み更新ステップで説明したとおり、誤認識率eは「誤認識したサンプルの重みの合計」を「全サンプルの重みの合計」で除算した値であるが、従来のブースティングアルゴリズムでは誤認識率eは1/2より小さいことが必須条件である。学習サンプル抽出ステップ102においても、誤認識率e<1/2の条件を満足するため、以下のステップを実行する。
【0040】
ステップS601:学習サンプル抽出個数Snを設定する。
【0041】
ステップS602:ステップS601で設定された個数の学習サンプルを学習データからランダムに抽出する。
【0042】
ステップS603:「抽出したサンプルの重みの合計」を「全サンプルの重みの合計」で割った値が(1/2)を超えるか否か判断する。「抽出したサンプルの重みの合計」を「全サンプルの重みの合計」で割った値が(1/2)を超えるときはそのまま処理を終了し、「抽出したサンプルの重みの合計」を「全サンプルの重みの合計」で割った値が(1/2)を超えないときはステップS602に戻る。
【0043】
図4からもわかるように、誤認識するサンプルの重みの合計は、必ず、認識に成功するサンプルの重みの合計より小さくなり、「誤認識したサンプルの重みの合計」を「全サンプルの重みの合計」で除算した値で計算される誤認識率eは1/2より小さい。
【0044】
また本発明の趣旨と範囲は、本発明の特定の説明と図に限定されるものではなく、本願特許請求の範囲に述べられた内容の様々な修正および変更に及ぶことは当業者にとって理解されるであろう。
【0045】
本発明の実施形態の例を以下に示す。
[実施形態1]
認識対象のパターンをカテゴリーに分類する情報処理方法において、学習データより重みベクトルを用いて学習サンプルをランダムに抽出する学習サンプル抽出ステップと、前記学習サンプル抽出ステップによって抽出された学習サンプルと重みベクトルよりパーフェクト・ラーナ(Perfect−Learner)を作成するパーフェクト・ラーナ作成ステップと、前記パーフェクト・ラーナ作成ステップにより作成されたパーフェクト・ラーナを用いて前記学習データを認識することによって重みベクトルを更新し、かつ、パーフェクト・ラーナの加重係数を決定する重み更新ステップと、を備えた情報処理方法。
[実施形態2]
実施形態1に記載の方法によって生成された複数のパーフェクト・ラーナの認識結果を前記重み更新ステップで求めたパーフェクト・ラーナ加重係数で重み付けし多数決を取ることによって最終的な認識結果を得ることを特徴とする情報処理方法。
[実施形態3]
前記パーフェクト・ラーナは分類木を用いて実現することを特徴とする実施形態1または2に記載の情報処理方法。
[実施形態4]
実施形態1に記載の学習サンプル抽出ステップにおいて、抽出する学習サンプルの確率の総和が1/2を超えることを特徴とする請求項1〜3に記載の情報処理方法。
[実施形態5]
前記重み更新ステップにおいて、最新のパーフェクト・ラーナで前記学習データを認識した結果、認識に失敗した学習パターンの重みを増すことを特徴とする実施形態1乃至4のいずれかに記載の情報処理方法。
[実施形態6]
前記重み更新ステップにおいて、最新のパーフェクト・ラーナで前記学習データを認識した結果、誤認識率がeとして、そのパーフェクト・ラーナの加重係数を{log(1−e)−log(e)}の定数倍とすることを特徴とする実施形態1乃至5のいずれかに記載の情報処理方法。
【0046】
【発明の効果】
本発明によれば、任意の多値パターンを認識し得る。
【図面の簡単な説明】
【図1】本発明に係る情報処理方法の一実施形態における学習フェーズの処理の流れを示す図である。
【図2】本発明に係る情報処理方法の一実施形態が実施される情報処理装置の構成を示すブロック図である。
【図3】本発明に係る情報処理方法の一実施形態における認識フェーズの処理の流れを示す図である。
【図4】図1の実施形態における各ラウンドで、パーフェクト・ラーナによって全学習パターンを認識させる様子を示した図である。
【図5】図1の重み更新ステップおよびパーフェクト・ラーナ加重計数算出の処理の流れを示すフローチャートである。
【図6】図1の学習サンプル抽出ステップの処理の流れを示すフローチャートである。
【符号の説明】
101 学習データ
102 学習サンプル抽出
103 学習サンプル
104 重みベクトル
105 パーフェクト・ラーナ生成
106 パーフェクト・ラーナ
107 重み更新
108 パーフェクト・ラーナ加重計数
【発明が属する技術分野】
本発明は画像、文字、音声等のパターンを認識する際に使用するアルゴリズム及び辞書を作成する方法及び装置に関するものである。
【0002】
【従来の技術】
従来、USP5,819,247(従来例1という。)に開示されているいわゆるブースティングアルゴリズムによれば、複数のパターン認識方法及び装置を組み合わせて、より高い性能のパターン認識方法及び装置を実現できる。この方法によれば、あまり性能の高くないパターン認識方法の性能を向上できる。例えば、パターン認識対象と若干の相関を持つ程度の認識結果を生成する認識方法を寄せ集めて、パターン認識対象に対する認識率を100%まで改良し得る。
【0003】
【発明が解決しようとする課題】
しかしながら、従来例1に開示されているブースティングアルゴリズムは、2値のパターン認識対象に限定されており、多値のパターン認識問題に適用したときに途中で学習がストップすることがあった。すなわち、従来例1は多値パターン認識問題一般には適用できなかった。
【0004】
この問題を克服するために、多値パターン認識問題をより大きな2値パターン認識問題に埋め込み、新たに設定される2値パターン認識問題を解くことによって、元の多値パターン認識問題を解く方法(従来例2という。)も提案されていた。しかしながら、従来例2は、新たに設定される2値パターン認識問題が巨大になるという欠点があり、学習に非常に時間がかかってしまうという実行上の重大な欠点が存在した。
【0005】
本発明はこのような従来の問題点を解消すべく創案されたもので、任意の多値パターンを認識することを目的とする。
【0006】
【課題を解決するための手段】
本発明は、認識対象のパターンの特徴抽出結果を変数によって定義し、前記変数に対応した認識結果を多値(2値を含む)のラベルとし、前記変数と前記ラベルとの対の集合を学習データとし、前記学習データにおける前記変数から前記パターンを認識する情報処理方法であって、前記前記変数と前記ラベルとの対にそれぞれ重みの初期値を設定して、前記重みの集合を重みベクトルとする重みベクトル初期値設定ステップと、前記重みに基づいて、前記学習データから前記前記変数と前記ラベルとの対を抽出して学習サンプルを生成する学習サンプル抽出ステップと、前記学習サンプル抽出ステップによって抽出された前記学習サンプルと前記重みベクトルよりパーフェクト・ラーナ(Perfect−Learner)を作成するパーフェクト・ラーナ生成ステップと、前記パーフェクト・ラーナ生成ステップにより生成されたパーフェクト・ラーナを用いて、前記学習サンプルを認識する学習サンプル認識ステップと、前記学習サンプル認識ステップにおける誤認識率に基づいてパーフェクト・ラーナの加重係数を算出するとともに、前記重みベクトルを更新する重みベクトル更新ステップと、前記作成するパーフェクト・ラーナ生成ステップと、学習サンプル認識ステップとを繰り返し、前記各パーフェクト・ラーナによって認識されたラベルにパーフェクト・ラーナ加重係数を乗じた結果の合計を比較し、合計値が最大のラベルを認識結果とする。これによって、任意の多値パターンを認識し得る。
【発明の実施の形態】
次に本発明に係る情報処理方法の一実施形態を図面に基づいて説明する。
【0007】
図1は、本発明に係る情報処理方法の一実施形態における学習フェーズの処理の流れを示す図、図2は、本発明に係る情報処理方法の一実施形態が実施される情報処理装置の構成を示すブロック図、図3は、本発明に係る情報処理方法の一実施形態における認識フェーズの処理の流れを示す図、図4は、図1の実施形態における各ラウンドで、パーフェクト・ラーナによって全学習パターンを認識させる様子を示した図、図5は、図1の重み更新ステップの処理およびパーフェクト・ラーナ加重計数算出の処理の流れを示すフローチャート、図6は、図1の学習サンプル抽出ステップの処理の流れを示すフローチャートである。
【0008】
情報処理装置は、入力装置201、表示装置202、中央処理装置(CPU)203、およびメモリ204を有する。
【0009】
入力装置201は、例えばオンライン文字認識ならば、デジタイザとペンを有し、デジタイザの上にペンによって入力された文字や図形の座標データ、認識対象のパターンのデータをCPU203に渡す。入力装置201は、認識対象となるパターンを入力し得る任意の装置、例えばスキャナー、マイク等である。
【0010】
表示装置202は、入力装置201に入力されたパターンのデータや、CPU203が認識した結果を表示する。
【0011】
CPU203は、入力されたパターンの認識を行い、また入力装置201、表示装置202、メモリ204、その他全ての装置を制御する。
【0012】
メモリ204は、CPU203が使用する認識プログラムや辞書を保存し、さらには、入力されたパターンデータや、認識プログラムが使用する変数等を一次的に記録する。
【0013】
図1は、本発明の情報処理方法および装置、特にその学習フェーズの様子を極めて適切に表現している。学習フェーズにおける入力は「学習データ」であり、出力は複数の「パーフェクト・ラーナ」および「パーフェクト・ラーナ加重係数」である。パーフェクト・ラーナは、日本語で言えば完全認識機と呼べるものであり、与えられた学習サンプルを完全に認識、分類する方法、装置、または、プログラムのことを意味する。
【0014】
図1において、学習用に用意された全てのサンプルよりなる学習データ101が学習サンプル抽出ステップ102に渡される。学習データ101は、認識対象の入力パターンから特徴抽出した結果の変数と、認識結果としての「ラベル」とを対応させ、全てのパターンについての、変数とラベルとの対を集合としたものである。従来のブースティングアルゴリズムでは、「ラベル」が2値であったが、本発明では、2値を含む多値である。
【0015】
学習サンプル抽出ステップ102には重みベクトル104の情報が供給され、学習サンプル抽出ステップ102は、重みベクトル104の情報に基づいて学習データ101全体から、部分集合である学習サンプル103を抽出する。学習サンプル抽出ステップ102の詳細については後述する。
【0016】
重みベクトル104は、学習データ101を構成する全ての学習サンプル103に対して付加された重みの集合を示し、学習過程において、どんどん更新されていく。なお、初期値では学習データ101の重みは全て等しく設定される。また注意すべきことは、学習データ101から抽出される学習サンプル103は、それぞれにも重みが付加される。各学習サンプル103の重みは、次のパーフェクト・ラーナ作成ステップ105で使用される。
【0017】
パーフェクト・ラーナ作成ステップ105は、重みベクトル104を参照しつつ、学習サンプル103からパーフェクト・ラーナ106を生成する。パーフェクト・ラーナ106は、与えられた学習サンプルを認識、分類する。
【0018】
パーフェクト・ラーナ106を実現する学習アルゴリズムは、与えられた学習サンプルに対して100%の認識性能を示すものであれば基本的には何でも良い。例えば、線形分離関数、ニューラルネット、ベイズ学習アルゴリズム、Nearest Neighborマッチングアルゴリズム、Support Vector Machineなど、パターン認識アルゴリズムならば何でもよい。パターン認識アルゴリズムをまとめた文献としては、IEEE Transaction on Pattern Analysis and MachineIntelligenceのVol. 22 No.1 Jan. 2000”Statistical Pattern Recognition:A Review” Anil K. Jain, Robert P. W. Duin, and Jianchang Maoがある。
【0019】
なお、パターン認識アルゴリズムの中でも、本発明の手法にもっとも適した方法は、学習サンプルの重み付けが変わることによって生成されるパターン認識機が変化する、いわゆるUnstable認識アルゴリズムである。このようなアルゴリズムの1つとして分類木がある。分類木に関しては例えば文献IEEE Transaction on System, Man, and CyberneticsのVol. 21, No.3, May/June 1991“A Survey of Decision TreeClassifier Methodlogy”S. Rasoul Safavian and David Landgrebeに詳しく記述されている。
【0020】
なお、分類木にブースティングアルゴリズムの手法を取り入れてより高性能なパターン認識アルゴリズムを作成する方法そのものは、公知であり、例えば文献「ブースティング入門」人工知能学会誌Vol.14 No.5, Sept.1999 Yoav Freund and Robert Schapire、安倍 直樹訳に詳しい記述がある。ここに述べられているような従来の分類木にブースティングアルゴリズムの手法を取り入れる方法と、本発明の決定的な違いは、分類木がパーフェクト・ラーナに限定されている点である。これを実現するために、通常は分類木の学習に際して枝きりを行うところを本発明で使用する分類木アルゴリズムでは、枝きりを全く行わない。この処理によって、任意の学習サンプルに対してパーフェクト・ラーナを作成することができる。
【0021】
パーフェクト・ラーナ作成ステップ105は、本発明の学習過程において、複数回実行される。1回のパーフェクト・ラーナ作成ステップ105を「ラウンド」という単位で呼ぶことが多く、例えば「全体で100ラウンドの学習を行う」というような言い方をする。100ラウンドの学習を行うと、100個(100種類)のパーフェクト・ラーナ106が生成される。
【0022】
生成されたパーフェクト・ラーナ106に基づいて、重み更新ステップ107が実行される。重み更新ステップ107は、重みベクトル104を更新し、さらに認識フェーズで使用するパーフェクト・ラーナ加重係数を決定する。重み更新ステップ107もラウンド数の回数だけ実行される。
【0023】
図3の認識フェーズにおいて、入力は“認識データ”であり、出力は “認識結果”である。
【0024】
認識データ301は、認識対象のパターンから特徴抽出した結果を記述する変数よりなる。認識データ301は、学習データ101内の1つの変数・ラベル対においてラベルを除去したデータと同一フォーマットであり、ラベルが未知の学習データということができる。認識フェーズ301は、ラベルが未知の学習データにラベルを割り当てる。従って認識フェーズ301の認識結果305はラベルよりなる。
【0025】
認識データ301はパーフェクト・ラーナ302(パーフェクト・ラーナ105と同一のものである。)に入力され、パーフェクト・ラーナ302はラベルを認識結果集計ステップ304に入力する。
【0026】
認識結果集計ステップ304には、パーフェクト・ラーナ加重係数303(パーフェクト・ラーナ加重係数108と同一のものである。)が入力される。前述の通り、学習過程が100ラウンドならば、パーフェクト・ラーナおよびパーフェクト・ラーナ加重係数は100個ずつ存在する。
【0027】
認識結果集計ステップ304は、学習フェーズで得られた全てのパーフェクト・ラーナ302によって得られたラベルにパーフェクト・ラーナ加重係数をかけて足し合わせた合計の中で多数決を行い、もっとも得票数の多かったラベルを認識結果305とする。
【0028】
パーフェクト・ラーナ302は完全にラベルを決定するアルゴリズムなので、1つのパーフェクト・ラーナから得られる認識結果は完全に確定した1つのラベルである。よって、100ラウンドの学習を行うと、100個のラベルが得られ、これらに重み付けをした多数決で最終的なラベルが得られることとなる。
【0029】
図4において、重み更新ステップ107では、まず全学習データに対して現在のラウンドのパーフェクト・ラーナを適用し、認識処理を実行する。図4には四角形の枠内に大きな円が描かれ、この円の内部に小さな円が描かれている。四角形は認識対象となり得る全てのデータを示し、大きな円は全学習データ101、小さな円は抽出された学習サンプル103を示す。四角形は2つの領域(左側の左下りハッチングの領域と、右側の右下りハッチングの領域)に分割され、これにともなって全学習データ101も2つの領域に分割される。小さな円弧で示された学習サンプル103は、左側の左下りハッチングの領域に含まれる。左側の左下りハッチングの領域は認識に成功する学習データの領域であり、右側の右下りハッチングの領域は認識に失敗する学習データの領域である。
【0030】
図1のパーフェクト・ラーナ作成ステップ105では、抽出された学習サンプル103をパーフェクト・ラーナ106に学習させるので、その結果生成されたパーフェクト・ラーナ106によって全学習データを認識させると、現在のラウンドで抽出された学習サンプル103は認識に成功する集合に完全に含まれる。一方、全学習データ101から抽出されなかった学習サンプル103の中には、認識に失敗する学習サンプルも含まれる。
【0031】
図5において、重み更新ステップ107は以下の各ステップにより実行される。
【0032】
ステップS501: 全学習データに対するパーフェクト・ラーナの認識結果における誤認識率「e」を求める。誤認識率「e」は、「誤認識した学習サンプルの重みを足し合わせたもの」を「全学習サンプルの重みの合計」で除算した値である。
【0033】
ステップS502:重みベクトル、つまり全学習データの重みを更新する。その方法は、認識に失敗した学習サンプルの重みを{(1−e)/e}倍する。この値は、現在のラウンドのパーフェクト・ラーナの性能が高く、誤認識率が低ければ低いほど大きくなる。
【0034】
ステップS503:ステップS501、S502の更新方法だと、重みが単調に増加して、処理可能は数値の上限を超える可能性がある。そこで、計算機等に実装する場合は、ラウンド毎に重みの合計が「1」になるように正規化する等の処理を行う。このような正規化を採用する場合、最初のラウンドの重みベクトルは、「1」を全学習データのサンプル数で割った数とする。
【0035】
ステップS502に関して、認識に失敗した学習サンプルの重みに対する乗数を{(1−e)/e}としたが、実際の学習においては、厳密にこの値にする必要はなく、定性的に認識性能の高いパーフェクト・ラーナで誤認識したサンプルの重みを多くする方法であれば、本発明のアルゴリズムは十分機能する。但し、次に述べるパーフェクト・ラーナ加重係数とは異なり、全く重みを変更しないと良い結果が得られない。
【0036】
ステップS504:図1のパーフェクト・ラーナ加重係数108を算出する。パーフェクト・ラーナ加重計数は誤認識率eの関数であり、{log(1−e)−log(e)}によって算出される。パーフェクト・ラーナ加重計数は、誤認識率eが小さければ小さいほど大となり、よって、パーフェクト・ラーナの性能が高ければ高いほど、加重平均の得票貢献は高くなることとなる。実際の学習においては、パーフェクト・ラーナ加重計数も厳密にこの式に従う必要はなく、定性的にパーフェクト・ラーナの性能が高ければ高い値になる式を用いても十分アルゴリズムは機能する。極端な場合、全てのパーフェクト・ラーナに対して加重係数を同じにしても、本発明のアルゴリズムは十分機能する。
【0037】
なお、非常にまれではあるが、抽出された学習サンプルで学習させたパーフェクト・ラーナが全学習データに対して完全な認識性能を示す場合がある。この場合は、これまで述べてきた式が全てオーバーフローする。この場合は、学習フェーズは終了させることも可能であるし、誤認識率eを非常に小さい値に摩り替えて、パーフェクト・ラーナ加重係数の導出を行っても良い。なお、誤認識率eを非常に小さい値に摩り替えた場合は、誤認識をする学習データは存在しないので、重みベクトルは更新されない。
【0038】
図6において、学習サンプル抽出ステップ102では、誤認識率eを所定値以下に抑えるように配慮しつつ、学習データを選択する。
【0039】
図5の重み更新ステップで説明したとおり、誤認識率eは「誤認識したサンプルの重みの合計」を「全サンプルの重みの合計」で除算した値であるが、従来のブースティングアルゴリズムでは誤認識率eは1/2より小さいことが必須条件である。学習サンプル抽出ステップ102においても、誤認識率e<1/2の条件を満足するため、以下のステップを実行する。
【0040】
ステップS601:学習サンプル抽出個数Snを設定する。
【0041】
ステップS602:ステップS601で設定された個数の学習サンプルを学習データからランダムに抽出する。
【0042】
ステップS603:「抽出したサンプルの重みの合計」を「全サンプルの重みの合計」で割った値が(1/2)を超えるか否か判断する。「抽出したサンプルの重みの合計」を「全サンプルの重みの合計」で割った値が(1/2)を超えるときはそのまま処理を終了し、「抽出したサンプルの重みの合計」を「全サンプルの重みの合計」で割った値が(1/2)を超えないときはステップS602に戻る。
【0043】
図4からもわかるように、誤認識するサンプルの重みの合計は、必ず、認識に成功するサンプルの重みの合計より小さくなり、「誤認識したサンプルの重みの合計」を「全サンプルの重みの合計」で除算した値で計算される誤認識率eは1/2より小さい。
【0044】
また本発明の趣旨と範囲は、本発明の特定の説明と図に限定されるものではなく、本願特許請求の範囲に述べられた内容の様々な修正および変更に及ぶことは当業者にとって理解されるであろう。
【0045】
本発明の実施形態の例を以下に示す。
[実施形態1]
認識対象のパターンをカテゴリーに分類する情報処理方法において、学習データより重みベクトルを用いて学習サンプルをランダムに抽出する学習サンプル抽出ステップと、前記学習サンプル抽出ステップによって抽出された学習サンプルと重みベクトルよりパーフェクト・ラーナ(Perfect−Learner)を作成するパーフェクト・ラーナ作成ステップと、前記パーフェクト・ラーナ作成ステップにより作成されたパーフェクト・ラーナを用いて前記学習データを認識することによって重みベクトルを更新し、かつ、パーフェクト・ラーナの加重係数を決定する重み更新ステップと、を備えた情報処理方法。
[実施形態2]
実施形態1に記載の方法によって生成された複数のパーフェクト・ラーナの認識結果を前記重み更新ステップで求めたパーフェクト・ラーナ加重係数で重み付けし多数決を取ることによって最終的な認識結果を得ることを特徴とする情報処理方法。
[実施形態3]
前記パーフェクト・ラーナは分類木を用いて実現することを特徴とする実施形態1または2に記載の情報処理方法。
[実施形態4]
実施形態1に記載の学習サンプル抽出ステップにおいて、抽出する学習サンプルの確率の総和が1/2を超えることを特徴とする請求項1〜3に記載の情報処理方法。
[実施形態5]
前記重み更新ステップにおいて、最新のパーフェクト・ラーナで前記学習データを認識した結果、認識に失敗した学習パターンの重みを増すことを特徴とする実施形態1乃至4のいずれかに記載の情報処理方法。
[実施形態6]
前記重み更新ステップにおいて、最新のパーフェクト・ラーナで前記学習データを認識した結果、誤認識率がeとして、そのパーフェクト・ラーナの加重係数を{log(1−e)−log(e)}の定数倍とすることを特徴とする実施形態1乃至5のいずれかに記載の情報処理方法。
【0046】
【発明の効果】
本発明によれば、任意の多値パターンを認識し得る。
【図面の簡単な説明】
【図1】本発明に係る情報処理方法の一実施形態における学習フェーズの処理の流れを示す図である。
【図2】本発明に係る情報処理方法の一実施形態が実施される情報処理装置の構成を示すブロック図である。
【図3】本発明に係る情報処理方法の一実施形態における認識フェーズの処理の流れを示す図である。
【図4】図1の実施形態における各ラウンドで、パーフェクト・ラーナによって全学習パターンを認識させる様子を示した図である。
【図5】図1の重み更新ステップおよびパーフェクト・ラーナ加重計数算出の処理の流れを示すフローチャートである。
【図6】図1の学習サンプル抽出ステップの処理の流れを示すフローチャートである。
【符号の説明】
101 学習データ
102 学習サンプル抽出
103 学習サンプル
104 重みベクトル
105 パーフェクト・ラーナ生成
106 パーフェクト・ラーナ
107 重み更新
108 パーフェクト・ラーナ加重計数
Claims (1)
- 認識対象のパターンの特徴抽出結果を変数によって定義し、前記変数に対応した認識結果を多値(2値を含む)のラベルとし、前記変数と前記ラベルとの対の集合を学習データとし、前記学習データにおける前記変数から前記パターンを認識する情報処理方法であって、
前記前記変数と前記ラベルとの対にそれぞれ重みの初期値を設定して、前記重みの集合を重みベクトルとする重みベクトル初期値設定ステップと、
前記重みに基づいて、前記学習データから前記前記変数と前記ラベルとの対を抽出して学習サンプルを生成する学習サンプル抽出ステップと、
前記学習サンプル抽出ステップによって抽出された前記学習サンプルと前記重みベクトルよりパーフェクト・ラーナ(Perfect−Learner)を作成するパーフェクト・ラーナ生成ステップと、
前記パーフェクト・ラーナ生成ステップにより生成されたパーフェクト・ラーナを用いて、前記学習サンプルを認識する学習サンプル認識ステップと、
前記学習サンプル認識ステップにおける誤認識率に基づいてパーフェクト・ラーナの加重係数を算出するとともに、前記重みベクトルを更新する重みベクトル更新ステップと、
前記作成するパーフェクト・ラーナ生成ステップと、学習サンプル認識ステップとを繰り返し、前記各パーフェクト・ラーナによって認識されたラベルにパーフェクト・ラーナ加重係数を乗じた結果の合計を比較し、合計値が最大のラベルを認識結果とする情報処理方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002331882A JP2004164481A (ja) | 2002-11-15 | 2002-11-15 | 情報処理方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002331882A JP2004164481A (ja) | 2002-11-15 | 2002-11-15 | 情報処理方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004164481A true JP2004164481A (ja) | 2004-06-10 |
Family
ID=32809123
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002331882A Pending JP2004164481A (ja) | 2002-11-15 | 2002-11-15 | 情報処理方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004164481A (ja) |
-
2002
- 2002-11-15 JP JP2002331882A patent/JP2004164481A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111079639B (zh) | 垃圾图像分类模型构建的方法、装置、设备及存储介质 | |
| EP4092555A1 (en) | Control method, information processing device, and control program | |
| JP3088171B2 (ja) | 自己組織型パタ−ン分類システム及び分類方法 | |
| US10002290B2 (en) | Learning device and learning method for object detection | |
| EP3944138A1 (en) | Method and apparatus for image recognition | |
| JPH07296117A (ja) | 減少された要素特徴部分集合を用いたパターン認識システム用の分類重みマトリックスを構成する方法 | |
| JP2011013732A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
| CN108197666A (zh) | 一种图像分类模型的处理方法、装置及存储介质 | |
| JPH06176202A (ja) | 文字認識用の管理されたトレーニング増加多項式法および装置 | |
| US12536251B2 (en) | Adaptive learning based systems and methods for optimization of unsupervised clustering | |
| CN101887526A (zh) | 信息处理设备和方法及系统、学习设备和方法、程序 | |
| JP7396479B2 (ja) | 学習装置、学習済みモデル生成方法、及び、プログラム | |
| CN112418320A (zh) | 一种企业关联关系识别方法、装置及存储介质 | |
| CN111626291A (zh) | 一种图像视觉关系检测方法、系统及终端 | |
| CN115039144A (zh) | 手写中的数学检测 | |
| JP7544254B2 (ja) | 学習装置、学習方法、及びプログラム | |
| Parvin et al. | Divide & conquer classification and optimization by genetic algorithm | |
| CN111695526B (zh) | 网络模型生成方法、行人重识别方法及装置 | |
| CN114117037A (zh) | 意图识别方法、装置、设备和存储介质 | |
| CN112801186A (zh) | 一种验证图像生成方法、装置及设备 | |
| CN111914915A (zh) | 基于支持向量机的数据分类器集成方法、装置及存储介质 | |
| Dietterich | The divide-and-conquer manifesto | |
| JP2004164481A (ja) | 情報処理方法 | |
| CN109522946A (zh) | 一种图像分类模型处理方法、装置及存储介质 | |
| Bermejo et al. | Learning with nearest neighbour classifiers |