説明

パターン識別方法、パターン識別装置、およびプログラム

【課題】識別性能を向上し、訓練処理と識別処理を高速化することができるパターン識別装置を提供する。
【解決手段】本発明のパターン識別装置20は、直交化勾配ベクトル算出部150が、基底ベクトルから、正規直交化行列を生成し、結合係数決定部200が、トレーニングサンプルと基底ベクトルから、結合係数βを求め、直交化勾配ベクトル算出部150が、トレーニングサンプルと基底ベクトルと結合係数βから、結合係数dと結合係数rを算出し、トレーニングサンプルと基底ベクトルと結合係数rと正規直交化行列から、結合係数r^を算出し、新規基底ベクトル決定部350が、トレーニングサンプルと結合係数dと結合係数r^から、新規基底ベクトルを求め、基底ベクトルに追加し、直交化勾配ベクトル算出部150が、更新された基底ベクトルを用いて、正規直交化行列を更新する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、トレーニングサンプルと学習ラベルからなるトレーニングデータを用いて、最適なスコア関数のパラメタベクトルを推定するパターン識別方法、パターン識別装置、およびプログラムに関する。
【背景技術】
【0002】
従来、カーネル法に基づくパターン識別装置は、トレーニングデータからパラメタを推定する訓練時間に、トレーニングサンプル数の二乗に比例する時間が必要であった。また、パラメタ推定が適切であっても、識別結果を算出する際に、トレーニングサンプル数に比例する時間が必要であった。近年のカーネル法の進展により、パラメタ推定を、トレーニングサンプル数に比例する、いわゆる線形時間を実現する方式として、Support Vector Machine(以下、SVM)との組み合わせにおいて線形時間を実現するCutting Plane Subspace Persuit法(以下、CPSP法)(非特許文献1)や、SVM以外でのカーネル法に基づく識別装置においても線形時間を達成するKernel Gradient Matching Pursuit法(以下、KGMP法)(非特許文献2)が考えられてきた。
【0003】
以下、非特許文献2に記載されたKGMP法に基づく従来のパターン識別装置について説明する。従来のパターン識別装置は、入力サンプルと同じ空間にある少数の任意の点を基底ベクトルとして、その特徴の線形結合を利用してパラメタベクトルを表現する。このような表現を用いることにより、パラメタを推定することを、結合係数と基底ベクトルを推定することに置き換えて考えている。
【0004】
従来のパターン識別装置は、勾配ベクトル算出部と結合係数決定部と新規基底ベクトル決定部と基底ベクトル集合記憶部と結合係数記憶部とトレーニングデータ記憶部を備える。基底ベクトル集合記憶部は、既存の基底ベクトルを記憶する。結合係数記憶部は、全ての結合係数を記憶する。トレーニングデータ記憶部は、トレーニングサンプルと学習ラベルからなるトレーニングデータを記憶する。結合係数決定部は、既存の基底ベクトルを用いて、結合係数を最適化する。勾配ベクトル算出部は、最適化された結合係数から、勾配ベクトルを算出する。新規基底ベクトル算出部は、最小二乗誤差基準を用いて、勾配ベクトルを所定の数の基底ベクトルで近似することで、所定の数の新規基底ベクトルを求め、既存の基底ベクトルに新規基底ベクトルを追加する。これらの処理を収束するまで繰り返し実行することにより、最適なパラメタを推定する。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】T. Joachims and C.-N. John Yu. Sparse kernel SVMs via cutting-plane training. Machine Learning Journal, 76(2-3):179-193, 2009.
【非特許文献2】Y. Kubo, S. Wiesler, R. Schlueter, H. Ney, S. Watanabe, A. Nakamura, and T. Kobayashi. Subspace pursuit method for kernel-log-linear models. In Proc. International Conference on Acoustics, Speech and Signal Processing, pages 4500-4503, 2011.
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来のパターン識別装置は、新規基底ベクトルを追加する際に、局所解を多く含む複雑な同時最適化問題を解いていたため、一つの勾配ベクトルから複数の新規基底ベクトルを取得する場合に、非常に近い挙動を示す基底ベクトルが複数選ばれ、冗長な基底ベクトル集合を得てしまうことがあった。
【0007】
本発明はこのような点に鑑みてなされたものであり、より少ない基底ベクトルで、より精密なパラメタを推定することで、識別性能を向上し、訓練処理と識別処理を高速化することができるパターン識別装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記の課題を解決するために、本発明のパターン識別装置は、トレーニングサンプルxと学習ラベルjからなるトレーニングデータZを用いてスコア関数のパラメタベクトル集合Λを推定する。まず、mは基底ベクトルの番号を表し、jは学習ラベルの番号を表し、tはトレーニングデータの番号を表すとする。基底ベクトル集合記憶部には、基底ベクトルyが記憶される。結合係数記憶部には、学習ラベルjに対するパラメタベクトルλの結合係数βj,mが記憶される。トレーニングデータ記憶部には、トレーニングデータZが記憶される。直交化行列記憶部には、正規直交化行列Qが記憶される。直交化勾配ベクトル算出部は、初期化手段と、r算出手段と、r^算出手段と、直交化行列更新手段と、を有する。初期化手段は、基底ベクトルyを用いて、正規直交化行列Qを生成する。r算出手段は、トレーニングサンプルxと基底ベクトルyと結合係数βj,mから、結合係数dj,tと結合係数rj,mを算出する。r^算出手段は、トレーニングサンプルxと基底ベクトルyと結合係数rj,mと正規直交化行列Qから、結合係数r^j,mを算出する。直交化行列更新手段は、基底ベクトルyを用いて、正規直交化行列Qを更新する。結合係数決定部は、トレーニングサンプルxと基底ベクトルyから、結合係数βj,mを求める。新規基底ベクトル決定部は、トレーニングサンプルxと勾配ベクトルの結合係数dj,tと直交化勾配ベクトルの結合係数r^j,mから、直交化勾配ベクトルを基底ベクトルyで近似することにより、新規基底ベクトルyを求め、当該新規基底ベクトルyを基底ベクトルyに追加することにより、基底ベクトルyを更新する。
【発明の効果】
【0009】
本発明のパターン識別装置は、より少ない基底ベクトルで、より精密なパラメタを推定することが可能になるため、識別性能が向上する。また、冗長な基底ベクトル集合を得ることがなく基底ベクトル数を少なくすることが可能になるため、訓練処理と識別処理を高速化することができる。
【図面の簡単な説明】
【0010】
【図1】従来のパターン識別装置の構成を示すブロック図。
【図2】従来のパターン識別装置の動作を示すフローチャート。
【図3】実施例1のパターン識別装置の識別処理に関する構成を示すブロック図。
【図4】実施例1のパターン識別装置の構成を示すブロック図。
【図5】実施例1のパターン識別装置の動作を示すフローチャート。
【図6】手書き数字認識(2値分類タスク)の実験結果。
【図7】手書き数字認識(マルチクラス分類タスク)の実験結果。
【図8】トレーニングサンプル数を変化させた際の訓練時間の実験結果。
【図9】連続音素認識の実験結果。
【発明を実施するための形態】
【0011】
<カーネル法に基づく識別装置の説明>
まず、カーネル法に基づく識別装置について説明する。パターン識別装置では、一般に、ある入力サンプルxに内在する概念のラベルjを、スコア関数f(x,j)を最大にするラベル変数jを用いて、以下のように推定する。
【0012】
【数1】

【0013】
パターン識別装置の訓練処理とは、トレーニングサンプルxと学習ラベルjをT個集めたトレーニングデータZ={(x,j),…,(x,j),…,(x,j)}を用いて、スコア関数fを推定することである。以降の説明では、トレーニングサンプルxがD次元実ベクトルで表されることと、J通りのラベルが1からJの自然数であらわされることを仮定する(x∈R,j∈{1,…,J})。最も単純なスコア関数fのデザインとして、式(2)のような、ラベルjに対するパラメタベクトルλでパラメトライズした線形関数に基づくものがある。
【0014】
【数2】

【0015】
このようなスコア関数fでは、スコアが入力サンプルxの線形関数で表現できることが仮定されているため、表現力が不足しており、多くの問題で十分な精度を得ることができない。
【0016】
カーネル法に基づく識別装置では、非線形のスコア関数を実現するため、入力サンプルxを、特徴抽出関数φ(x)∈RD’を用いて、非線形処理を施した超高次元に写像する。一例としては、式(3)のような多項式写像が用いられる。
【0017】
【数3】

【0018】
ここで、vecAは集合Aの全要素を列挙して作成したベクトルを表し、xはD次元ベクトルで表現されている入力サンプルxのd次元目の要素を表す。
【0019】
この写像を用いた場合、写像先の空間RD’の次元数はD’=(D+1)(D+2)/2である。カーネル法では、このようにして抽出された特徴ベクトルの空間で、式(4)のような線形のスコア関数fを構築する。
【0020】
【数4】

【0021】
このようにして得たスコア関数fは、変数xt,dに対する二次式となる。この例のように、予め入力サンプルを高次元空間に非線形写像しておくことによって、高度なスコア関数を単純に表現することができる。
【0022】
カーネル法に基づくパターン識別装置では、パラメタベクトルの表現として、リプリゼンタ定理によって導出される、トレーニングサンプルの特徴の線形結合による表現を利用する。リプリゼンタ定理は、先述したようなパラメタベクトルλを一般的なアルゴリズムで推定した場合、得られるパラメタベクトルλは必ずトレーニングサンプルxに対応する特徴ベクトルφ(x)の線形結合で表現されるということを示す(詳しくは「B. Scholkopf and A.J. Smola. Learning with kernels. The MIT Press, 2002.」参照)。
【0023】
【数5】

【0024】
ここでαj,tはラベルjとt番目のトレーニングサンプルに対応する結合係数である。
【0025】
例えば、式(4)のような線形関数に基づくスコア関数fの場合、リプリゼンタ定理に基づく表現を導入することで、式(6)のように変形することができる。
【0026】
【数6】

【0027】
さらに、特徴抽出後の空間における内積を示すカーネル関数K(x,x)=φ(x)Τφ(x)を導入すると、式(7)のように変形することができる。
【0028】
【数7】

【0029】
リプリゼンタ定理とカーネル関数を用いる利点は、カーネル関数Kさえ高速に計算可能であれば、超高次元の特徴抽出関数φを直接計算しなくても同様の処理が実行できる点にある。式(3)のような二次の多項式特徴では、明示的に特徴抽出をして内積計算を行う場合、D’(=(D+2)(D+1)/2)次元の内積計算が必要になるが、二次多項式特徴の内積関数に対して成り立つ恒等式を利用すれば、式(7’)のようにD次元の内積計算を行った後、それに1を加えて二乗するだけで計算することが可能である。
【0030】
【数8】

【0031】
同様に、従来の方法では計算が非常に困難であった三次元以上の多項式特徴を用いる場合や、計算が原理上不可能であった関数空間(無限次元ヒルベルト空間)に特徴を写像する場合も同じ計算量で扱うことが可能である。
【0032】
<カーネル法に基づく識別装置の問題点>
カーネル法に基づく識別装置では、特徴抽出関数φの直接計算を避けるため、パラメタベクトルλの全要素を推定する代わりに、式(5)の形で表現する結合係数αj,tを推定する。結合係数αj,tはトレーニングデータ数に比例する個数だけ存在するため、全てのトレーニングサンプルに対応する結合係数を求めるためには、少なくともトレーニングサンプル数の二乗に比例する計算量が必要であることが知られている。このような制限から、カーネル法を大規模なトレーニングデータを用いた問題に適用することは困難であった。
【0033】
<従来のKGMP法の説明>
次に、図1、図2を参照して、従来のKGMP法によるパターン識別装置10の動作を詳細に説明する。図1は従来のパターン識別装置10の構成を示すブロック図である。図2は従来のパターン識別装置10の動作を示すフローチャートである。
【0034】
従来のKGMP法では、パラメタベクトルの表現として、リプリゼンタ定理によって導出されるトレーニングサンプルの特徴の線形結合による表現ではなく、M個の入力サンプルと同じ空間Rにある任意の点の特徴の線形結合を利用することを考える。そのため、従来のKGMP法では、パラメタベクトルλを式(8)のように表現する。
【0035】
【数9】

【0036】
リプリゼンタ定理の場合と異なり、式(8)の表現は厳密な等式ではなく近似となっている。しかし、Mを十分に大きく取り、適切なyを選択できた場合は、厳密解と一致する。例えば、M=Tと置き、y=x(1≦m=t≦M)と設定した場合、リプリゼンタ定理でαj,tで示されるところをβj,mで置き換えることによって等価な表現を得ることができる。このような表現を用いた場合、パラメタベクトルλの推定問題は、結合重み係数βj,mと基底ベクトルyの推定問題に置き換えて考えることができる。さらに、識別処理に用いる式(4)(7)のスコア関数f(x,j)も結合重み係数βj,mと基底ベクトルyを用いて式(9)のように変形できる。
【0037】
【数10】

【0038】
最適なパラメタベクトル集合Λ={λ,…,λ,…}の推定は、一般的にトレーニングデータZを用いて目的関数g(Λ;Z)を最大化するパラメタベクトル集合Λを見つけることで行われる。
【0039】
【数11】

【0040】
目的関数gの具体例としては、式(11)のSVM型や、式(12)のlog−linear型等がある。
【0041】
【数12】

【0042】
ここでcは正則化定数と呼ばれるチューニングパラメタである。
【0043】
従来のKGMP法では、式(13)のように、目的関数の勾配ベクトル(以下、単に「勾配ベクトル」と呼ぶ)が各トレーニングサンプルの線形結合とパラメタベクトル自身の線形結合で書けるものと仮定する。
【0044】
【数13】

【0045】
ここで、トレーニングサンプル重み関数dj,t(Λ)および正則化重み関数rj,m(Λ)は実際にどの目的関数を選ぶかによって変わってくるスカラ関数である。
【0046】
上記二種類の目的関数を含めて、多くのパラメタ推定アルゴリズムにおける目的関数はこの仮定を満たす。例えば、目的関数として式(12)のlog−linear型を選んだ場合、その勾配ベクトルは、トレーニングサンプル重み関数dj,t(Λ)と正則化重み関数rj,m(Λ)を式(14)のように設定したときの式(13)に等しい。
【0047】
【数14】

【0048】
同様の推論を、パラメタベクトル集合Λを直接扱う場合ではなく、式(8)に基づく表現の上で行うことを考える。一例として式(12)のlog−linear型の目的関数を挙げると、式(8)を式(12)に代入することにより、式(15)のような結合係数βj,mに関する目的関数が得られる。
【0049】
【数15】

【0050】
ここでΒは全てのβj,mを含む集合{βj,m|∀,∀}である。
【0051】
基底ベクトルが固定された上で、最適なΒは式(16)のような最適化を解くことによって得られる。
【0052】
【数16】

【0053】
この結合係数βj,mに関する最適化は、例えば最急勾配法やその変形等のような様々なアルゴリズムで実行することができる。
【0054】
従来のKGMP法では、適切な基底ベクトルの持つべき性質として勾配ベクトルに近いという性質を取りあげる。目的関数のパラメタベクトル集合Λにおける勾配ベクトル∇λ(Λ)は、パラメタベクトルλを微小に動かした時に、最も目的関数を大きくすることのできる方向を示すベクトルであり、勾配ベクトルが基底ベクトルで表現できない場合、結合係数βj,mの最適化のみではそれ以上目的関数の値を向上させることはできない。反面、与えられた基底ベクトルで結合係数βj,mの最適化が終わってしまっても、勾配ベクトルに近いベクトルを新たな基底ベクトルとして加えることができれば、さらに目的関数の値を向上させることができる。ただし、勾配ベクトルそのものを基底ベクトルとして利用するのは、式(13)にあるように、勾配ベクトルそのものの表現に全てのトレーニングサンプルを用いる必要があるため、効率が悪い。そこで勾配ベクトルを、R個の基底ベクトルで近似することを試み、以下の二乗誤差関数を考える。
【0055】
【数17】

【0056】
勾配ベクトルの近似に用いるR個の基底ベクトルは式(18)のような二乗誤差最小化の最適化で得ることができる。
【0057】
【数18】

【0058】
この新規基底ベクトルの最適化は、結合係数βj,mの最適化と同様、線形時間で実行可能である。
【0059】
以下、実際に行われる手続きの順に説明してゆく。従来のKGMP法によるパターン識別装置10は、勾配ベクトル算出部100、結合係数決定部200、新規基底ベクトル決定部300、基底ベクトル集合記憶部900、結合係数記憶部910、トレーニングデータ記憶部920を備える。勾配ベクトル算出部100は、初期化手段110、r算出手段120を有する。
【0060】
基底ベクトル集合記憶部900は、M個の基底ベクトルyを記憶する。結合係数記憶部910は、全ての結合係数βj,mを記憶する。トレーニングデータ記憶部920は、トレーニングサンプルxと学習ラベルjをT個集めたトレーニングデータZを記憶する。
【0061】
勾配ベクトル算出部100は、初期化手段110により、基底ベクトル集合記憶部900からM個の基底ベクトルyを読み出す(S110)。
【0062】
結合係数決定部200は、トレーニングデータZとM個の基底ベクトルyを用いて、結合係数βj,mの最適化を行う(S200)。
【0063】
勾配ベクトル算出部100は、r算出手段120により、結合係数βj,mを用いて、トレーニングサンプル重み関数dj,t(Λ)および正則化重み関数rj,m(Λ)を計算し、勾配ベクトルの結合係数dj,tと結合係数rj,mの算出を行う(S120)。
【0064】
新規基底ベクトル決定部300は、最小二乗誤差基準を用いて、勾配ベクトルをR個の基底ベクトルで近似することで、R個の新規基底ベクトルyを求める(S301)。続いて、既存の基底ベクトルyに新規基底ベクトルyを追加する(S302)。
【0065】
そして、収束が得られた場合には処理を終了し、収束が得られない場合にはS200〜S302を繰り返し実行する(S991)。
【0066】
<従来のKGMP法の問題点>
従来のKGMP法は、内部で用いられているアルゴリズムが全て線形時間で実行可能であることから、全体として線形時間で実行可能である。
【0067】
ただし、新規基底ベクトルyの最適化に用いる式(18)は、複雑な最適化問題であり局所解を多く含む。経験的に、この最適化は多くの場合で、冗長な基底ベクトル集合を得てしまうことがわかっており、勾配ベクトル近似の精度の観点から効率が悪かった。
【0068】
<本発明の概要>
本発明は、従来のKGMP法をベースにして、より高度な新規基底ベクトル追加アルゴリズムを導入したものである。本発明では、従来のKGMP法で新規基底ベクトルyを最適化する際に用いる勾配ベクトルを、基底ベクトルと直交になるように修正した直交化勾配ベクトルに置き換える。これによって、チューニングパラメタを追加することなく、基底ベクトルの直交性を保つようなアルゴリズムを実現しており、一つの勾配ベクトルから複数の基底ベクトルを取得するような場合においても、相互になるべく直交した基底ベクトル集合を得ることができる。
【0069】
なお、本発明は、パターン識別装置の訓練処理の改良であるため、基底ベクトル集合が得られた後の識別処理に係る部分の構成は、従来例と差異はない。図3に本発明のパターン識別装置の内、識別処理に係る部分の構成を示す。
【実施例1】
【0070】
次に、図4、図5を参照して、本発明の実施例1に係るパターン識別装置20の動作を詳細に説明する。図4は本発明の実施例1に係るパターン識別装置20の構成を示すブロック図である。図5は本発明の実施例1に係るパターン識別装置20の動作を示すフローチャートである。
【0071】
本発明では、新規基底ベクトル探索に着目するため、既にM個の基底ベクトルyと、対応する結合係数βj,mが得られていることを前提とする。
【0072】
本発明で導入する「直交化勾配ベクトル」は、既存の基底ベクトルでは表現できない要素のみによって構成された勾配ベクトルである。直交化勾配ベクトルは、従来例で用いられてきた、式(13)で表される勾配ベクトルから既存の基底ベクトルと同じ方向に対応する要素を減算していくことによって得られる。
【0073】
【数19】

【0074】
式(19)のように、直交化勾配ベクトルを導入しても、式(13)で表される従来例の勾配ベクトルと同様の形を保っており、修正項ηj,mさえ求めることができれば、従来例のアルゴリズムで結合係数rj,mを用いていた部分をr^j,m(Λ)=rj,m(Λ)+ηj,mに置き換えるだけで、直交化勾配ベクトルを再現する基底ベクトルの追加を行うことができる。すなわち、本発明が従来例と異なる部分は、新規基底ベクトル決定部が、従来例の勾配ベクトルから直交化勾配ベクトルに変換する際に用いる修正項ηj,mを算出する手段を含んでいる点である。
【0075】
以下、実際に行われる手続きの順に説明してゆく。本実施例のパターン識別装置20は、直交化勾配ベクトル算出部150、結合係数決定部200、新規基底ベクトル決定部350、基底ベクトル集合記憶部900、結合係数記憶部910、トレーニングデータ記憶部920、直交化行列記憶部930を備える。直交化勾配ベクトル算出部150は、初期化手段160、r算出手段170、r^算出手段180、直交化行列更新手段190を備える。
【0076】
基底ベクトル集合記憶部900は、M個の基底ベクトルyを記憶する。結合係数記憶部910は、全ての結合係数βj,mを記憶する。トレーニングデータ記憶部920は、トレーニングサンプルxと学習ラベルjをT個集めたトレーニングデータZを記憶する。直交化行列記憶部930は、正規直交化行列Qを記憶する。
【0077】
直交化勾配ベクトル算出部150は、初期化手段160により、基底ベクトル集合記憶部900からM個の基底ベクトルyを読み出す(S161)。次に、基底ベクトルyから、正規直交化行列Qを生成し、当該正規直交化行列Qを直交化行列記憶部に記憶する(S162)。
【0078】
正規直交化行列Qの生成について詳細に説明する。簡単のため、φ(y)をm行目に持つ行列Φを導入する。また、各基底ベクトルy間の相関関係を除去する効果を持つ性質を持つ行列Qを正規直交化行列と呼ぶ。正規直交化行列Qは、式(20)を満たす行列として定義する。
【0079】
【数20】

【0080】
ここで、Iは単位行列である。
【0081】
式(20)は、式(21)の基底ベクトルb(i∈{1,…,M})が互いに正規直交、すなわち、i=jの時のみbΤ=1であり、i≠jの時はbΤ=0であることを意味している。
【0082】
【数21】

【0083】
ここで、qi,mは正規直交化行列Qのi行目m列目の要素である。
【0084】
正規直交化行列Qは、式(22)のように、各行毎に計算することで算出可能である。
【0085】
【数22】

【0086】
ここで、qは正規直交化行列Qのi番目の行に対応するベクトルを表しており、eは、i番目の要素だけが1で、他の要素が0のベクトルである。また、グラム行列Gは、式(23)のように算出される。
【0087】
【数23】

【0088】
グラム行列Gおよび正規直交化行列Qは、新しい基底ベクトルが追加されるたびに、追加された基底ベクトルに対応する部分だけ再計算を行うことができる。
【0089】
次に、結合係数決定部200は、トレーニングデータZとM個の基底ベクトルyを用いて、結合係数βj,mの最適化を行う(S200)。
【0090】
直交化勾配ベクトル算出部150は、r算出手段170により、結合係数βj,mを用いて、トレーニングサンプル重み関数dj,t(Λ)および正則化重み関数rj,m(Λ)を計算し、勾配ベクトルの結合係数dj,tと結合係数rj,mの算出を行う(S170)。結合係数dj,tと結合係数rj,mは、結合係数βj,mと基底ベクトルyが定まっていれば、一意に定まり計算可能である。例えば、式(12)のLog−Linear型目的関数を用いる場合は、式(14)を計算することで求めることができる。
【0091】
次に、直交化勾配ベクトル算出部150は、r^算出手段180により、基底ベクトルyと結合係数rj,mから、勾配ベクトルへの射影kj,mを算出する(S181)。既存の基底ベクトルφ(y)の射影kj,mは、式(24)のようにトレーニングデータxと基底ベクトルyとカーネル関数Kを用いて算出可能である。
【0092】
【数24】

【0093】
この値は、線形時間で計算可能である。また、多くの場合、別の計算ステップ(例えば、結合係数βj,mの最適化)の副産物として得られているため、それを利用することもできる。
【0094】
続いて、直交化勾配ベクトル算出部150は、r^算出手段180により、正規直交化行列Qと射影kj,mから、式(25)のように、修正項ηj,mを算出する(S182)。
【0095】
【数25】

【0096】
さらに、直交化勾配ベクトル算出部150は、r^算出手段180により、結合係数rj,mと修正項ηj,mから、式(26)のように、結合係数r^j,mを算出する(S183)。
【0097】
【数26】

【0098】
新規基底ベクトル決定部350は、最小二乗誤差基準を用いて、直交化勾配ベクトルを基底ベクトルで近似し、式(18)を用いて、新規基底ベクトルyを求める(S351)。続いて、既存の基底ベクトルyに新規基底ベクトルyを追加する(S352)。
【0099】
S281〜S290をR回繰り返し実行することで、R個の新規基底ベクトルyを既存の基底ベクトルyに追加する(S992−994)。
【0100】
そして、収束が得られた場合には処理を終了し、収束が得られない場合にはS200〜S290を繰り返し実行する(S995)。
【0101】
このように、本実施例のパターン識別装置20は、基底ベクトルと直交になるように修正した直交化勾配ベクトルを用いることで、従来のKGMP法では一つの勾配ベクトルから複数の新規基底ベクトルを算出する際に冗長な基底ベクトル集合が得られてしまうという問題を解決した。そのため、より少ない基底ベクトルで、より精密なパラメタを推定することが可能になり、識別性能が向上している。また、冗長な基底ベクトル集合を得ることがなく基底ベクトル数を少なくすることが可能になり、訓練処理と識別処理を高速化することができる。
【0102】
<実験結果>
本発明の有効性を確認するために、手書き数字認識実験および連続音素認識実験を行った。また、トレーニングサンプル数を変化させた際の訓練時間の推移を計測した。
【0103】
手書き数字認識実験では、MNIST手書き数字データセットを用いて、0〜4の数字と、5〜9の数字に分ける2値分類タスクと、それぞれの数字に分けるマルチクラス分類タスクを行った。どちらのタスクでもトレーニングサンプルとして規定されている60,000サンプルのうち、最初の50,000サンプルをトレーニングに用い、残りの10,000サンプルをハイパーパラメタや最適化の繰り返し回数のチューニングに用いた。トレーニングサンプルの表現としては画像の各画素の濃度値を0から1の実数であらわしたものを用いた(28×28=784次元)。
【0104】
図6は手書き数字認識実験における2値分類タスクの識別エラー率である。図7は手書き数字認識実験におけるマルチクラス分類タスクの識別エラー率である。いずれのタスクでも本発明のパターン識別装置が最も識別エラー率が低いことが示された。
【0105】
図8に、トレーニングサンプル数を変化させた際の訓練時間の平均を示す。試行回数は5回である。“Naive”は、Kernel−log−linearモデルを単純なカーネル法で認識した場合である。“Orthogonal KGMP”は、本発明である。単純なカーネル法では、トレーニングサンプル数の二乗に比例するように計算時間がかかっているが、本発明では、ほぼトレーニングサンプル数に比例する形で訓練時間が増えていっていることがわかる。この特性は従来のKGMP法でも同一であるが、図6,7と併せると、本発明では従来例と比較して同程度の訓練時間でより高精度の識別性能を発揮することが読み取れる。
【0106】
連続音素認識実験では、TIMITコーパスを用いた。TIMITコーパスのうち、コアテストセットとして規定されている192発話(57,919フレーム)を評価に、トレーニングセットとして規定されている3,606発話(1,124,823フレーム)を訓練に、バリデーションセットとして規定されている1,114発話(350,343フレーム)をハイパーパラメタと繰り返し回数の手動チューニングに利用した。
【0107】
“従来法(HMM)”は、従来一般的に用いられてきた音素認識装置である(詳細は「S. Kapadia, V. Valtchev, and S.J. Young. MMI training for continuous phoneme recognition on the TIMIT database. In Proc. International Conference on Acoustics, Speech and Signal Processing, volume 2, pages 491{494, Orlando, FL, USA, 2002.」参照)。“従来法(log−linear)”は、本発明で用いる枠組みと同じ枠組みを、本発明の手段を用いずに利用した場合である。
【0108】
表3に連続音素認識実験における音素エラー率を示す。本発明は音声認識においても有効であることが示された。
【0109】
<プログラム、記録媒体>
上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
【0110】
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
【0111】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【0112】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【0113】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
【0114】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【産業上の利用可能性】
【0115】
本発明は、手書き文字の認識装置や音声パターンの認識装置の適切なパラメタを推定するために利用することができる。
【符号の説明】
【0116】
10、20 パターン識別装置
100 勾配ベクトル算出部 150 直交化勾配ベクトル算出部
110、160 初期化手段 120、170 r算出手段
180 r^算出手段 190 直交化行列更新手段
200 結合係数決定部 300、350 新規基底ベクトル決定部
801〜80N スコア計算部
900 基底ベクトル集合記憶部 910 結合係数記憶部
920 トレーニングデータ記憶部 930 直交化行列記憶部

【特許請求の範囲】
【請求項1】
トレーニングサンプルxと学習ラベルjからなるトレーニングデータZを用いてスコア関数のパラメタベクトル集合Λを推定するパターン識別方法であって、
mは基底ベクトルの番号を表し、jは学習ラベルの番号を表し、tはトレーニングデータの番号を表すとして、
基底ベクトル集合記憶部に、基底ベクトルyが記憶されており、
結合係数記憶部に、学習ラベルjに対するパラメタベクトルλの結合係数βj,mが記憶されており、
トレーニングデータ記憶部に、トレーニングデータZが記憶されており、
直交化行列記憶部に、正規直交化行列Qが記憶されており、
直交化勾配ベクトル算出部が、前記基底ベクトルyを用いて、前記正規直交化行列Qを生成する初期化ステップと、
結合係数決定部が、前記トレーニングサンプルxと前記基底ベクトルyから、前記結合係数βj,mを求める結合係数決定ステップと、
直交化勾配ベクトル算出部が、前記トレーニングサンプルxと前記基底ベクトルyと前記結合係数βj,mから、勾配ベクトルの結合係数dj,tと勾配ベクトルの結合係数rj,mを算出するr算出ステップと、
直交化勾配ベクトル算出部が、前記トレーニングサンプルxと前記基底ベクトルyと前記結合係数rj,mと前記正規直交化行列Qから、直交化勾配ベクトルの結合係数r^j,mを算出するr^算出ステップと、
新規基底ベクトル決定部が、前記トレーニングサンプルxと前記結合係数dj,tと前記結合係数r^j,mから、直交化勾配ベクトルを前記基底ベクトルyで近似することにより、新規基底ベクトルyを求め、当該新規基底ベクトルyを前記基底ベクトルyに追加することにより、前記基底ベクトルyを更新する新規基底ベクトル決定ステップと、
直交化勾配ベクトル算出部が、前記基底ベクトルyを用いて、前記正規直交化行列Qを更新する直交化行列更新ステップと、
を有することを特徴とするパターン識別方法。
【請求項2】
請求項1に記載のパターン識別方法であって、
前記r^算出ステップと前記新規基底ベクトル決定ステップと前記直交化行列更新ステップは、所定の回数繰り返し実行され、
前記結合係数決定ステップと前記r算出ステップと前記r^算出ステップと前記新規基底ベクトル決定ステップと前記直交化行列更新ステップは、前記結合係数βj,mが収束するまで繰り返し実行される
ことを特徴とするパターン識別方法。
【請求項3】
請求項1又は2に記載のパターン識別方法であって、
φは入力サンプルに非線形処理を施した超高次元に写像する特徴抽出関数であり、Kは特徴抽出後の空間における内積を示すカーネル関数であり、Iは単位行列であり、Φはφ(y)をm行目に持つ行列であるとして、
前記勾配ベクトルは、
【数27】


であり、
前記直交化勾配ベクトルは、
【数28】


であり、
前記正規直交化行列Qは、
【数29】


を満たすような行列であり、
前記r^算出ステップは、前記トレーニングサンプルxと前記基底ベクトルyと前記結合係数rj,mから、前記勾配ベクトルへの射影kj,mを、
【数30】


のように、算出し、前記正規直交化行列Qと前記射影kj,mから、修正項ηj,mを、
【数31】


のように、算出し、前記結合係数rj,mと前記修正項ηj,mから、前記結合係数r^j,mを、
【数32】


のように、算出する
ことを特徴とするパターン識別方法。
【請求項4】
トレーニングサンプルxと学習ラベルjからなるトレーニングデータZを用いてスコア関数のパラメタベクトル集合Λを推定するパターン識別装置であって、
mは基底ベクトルの番号を表し、jは学習ラベルの番号を表し、tはトレーニングデータの番号を表すとして、
基底ベクトルyを記憶する基底ベクトル集合記憶部と、
学習ラベルjに対するパラメタベクトルλの結合係数βj,mを記憶する結合係数記憶部と、
トレーニングデータZを記憶するトレーニングデータ記憶部と、
正規直交化行列Qを記憶する直交化行列記憶部と、
直交化勾配ベクトル算出部と、
前記トレーニングサンプルxと前記基底ベクトルyから、前記結合係数βj,mを求める結合係数決定部と、
前記トレーニングサンプルxと勾配ベクトルの結合係数dj,tと直交化勾配ベクトルの結合係数r^j,mから、直交化勾配ベクトルを前記基底ベクトルyで近似することにより、新規基底ベクトルyを求め、当該新規基底ベクトルyを前記基底ベクトルyに追加することにより、前記基底ベクトルyを更新する新規基底ベクトル決定部と、
を備え、
前記直交化勾配ベクトル算出部は、
前記基底ベクトルyを用いて、前記正規直交化行列Qを生成する初期化手段と、
前記トレーニングサンプルxと前記基底ベクトルyと前記結合係数βj,mから、前記結合係数dj,tと前記結合係数rj,mを算出するr算出手段と、
前記トレーニングサンプルxと前記基底ベクトルyと前記結合係数rj,mと前記正規直交化行列Qから、前記結合係数r^j,mを算出するr^算出手段と、
前記基底ベクトルyを用いて、前記正規直交化行列Qを更新する直交化行列更新手段と、
を有することを特徴とするパターン識別装置。
【請求項5】
請求項4に記載のパターン識別装置であって、
φは入力サンプルに非線形処理を施した超高次元に写像する特徴抽出関数であり、Kは特徴抽出後の空間における内積を示すカーネル関数であり、Iは単位行列であり、Φはφ(y)をm行目に持つ行列であるとして、
前記勾配ベクトルは、
【数33】


であり、
前記直交化勾配ベクトルは、
【数34】


であり、
前記正規直交化行列Qは、
【数35】


を満たすような行列であり、
前記r^算出手段は、前記トレーニングサンプルxと前記基底ベクトルyと前記結合係数rj,mから、前記勾配ベクトルへの射影kj,mを、
【数36】


のように、算出し、前記正規直交化行列Qと前記射影kj,mから、修正項ηj,mを、
【数37】


のように、算出し、前記結合係数rj,mと前記修正項ηj,mから、前記結合係数r^j,mを、
【数38】


のように、算出する
ことを特徴とするパターン識別装置。
【請求項6】
請求項1から3のいずれかに記載されたパターン識別方法の各ステップをコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図9】
image rotate

【図8】
image rotate