(58)【調査した分野】(Int.Cl.,DB名)
前記認識辞書に含まれる前記モデルのうち少なくとも1つは、該モデルに対応するクラスに分類されるべき信号に含まれる要素のいずれにも対応しない状態であるノイズ状態をさらに有することを特徴とする請求項1〜3のいずれか一項に記載のパターン認識装置。
前記サブモデルが有する状態は、学習データとなる信号を前記パターン認識装置に入力したときに該状態への入力となる前記特徴ベクトルの集合および入力される確率によって、該状態が保持する関数が決定されることを特徴とする請求項1〜4のいずれか一項に記載のパターン認識装置。
【発明を実施するための形態】
【0008】
以下、実施形態のパターン認識装置、パターン認識方法およびプログラムを、図面を参照しながら説明する。
【0009】
本実施形態のパターン認識装置は、従来の解析的方法と全体的方法とを組み合わせた新規な方法により、認識単位の区切りが明らかでない入力信号に対するパターン認識を行う。すなわち、入力された信号を複数の要素に分割して要素の特徴ベクトルの集合を求め、確率モデルを用いて、特徴ベクトルの集合に適合するクラスまたはその集合を表す認識結果を出力することを基本概念とする。
【0010】
ここで、入力された信号を複数の要素に分割する際の分割の仕方(分割パターン)は、一般に、それぞれのクラスについて1通りではない。例えば、入力された信号が手書き文字の画像であれば、書き手の癖などによって異なる形態となり得るため、同じクラスに分類されるべき信号であっても、異なる分割パターンで分割される場合がある。そして、同じクラスに分類されるべき信号が異なる分割パターンで分割されると、分割されたそれぞれの要素から抽出される特徴ベクトルの分布および個数が大きく異なるため、隠れマルコフモデルにおけるleft−to−rightモデル(非特許文献2を参照)などの標準的なモデルでは、入力された信号を正しく認識することができない。
【0011】
そこで、本実施形態では、それぞれのクラスについて、そのクラスに分類されるべき信号が取り得る分割パターンのそれぞれをサブモデルとし、これらサブモデルすべてを結合したものを、当該クラスに対応するモデルとして用いる。
【0012】
図1は、本実施形態のパターン認識装置の機能的な構成を示すブロック図である。
図1に示すように、本実施形態のパターン認識装置は、信号入力部1、分割部2、特徴抽出部3、および認識部4を備える。
【0013】
信号入力部1は、認識対象となる信号の入力を受け付ける。認識対象となる信号は、例えば、画像として表される文字や文字列、その他の画像、波形として表される音声信号や各種のセンサ信号などであり、これらのディジタル情報、または必要に応じて二値化などの前処理を施したディジタル情報が、信号入力部1に入力される。
【0014】
分割部2は、信号入力部1に入力された信号を、複数の要素に分割する。具体的には、信号入力部1に入力された信号が文字列画像である場合、分割部2の処理は、例えば、下記の参考文献1に記載されている射影および連結成分分析、あるいは非特許文献1に記載されている「基本セグメントへの分割」の方法などを適用することで実現できる。
<参考文献1>A.Rosenfeld ほか、「ディジタル画像処理」(長尾真監訳)、近代科学社、1978年
【0015】
図2は、入力された信号を複数の要素に分割する処理の概念図であり、「水の」という文字列画像が分割部2によって5つの要素に分割された様子を示している。この
図2に示す例では文字列画像を分割する方向が一方向であるが、これに限らず、二次元の分割パターンで信号を複数の要素に分割してもよい。
【0016】
また、信号入力部1に入力された信号が音声信号や各種のセンサ信号などのように時系列の波形で表される信号である場合、分割部2の処理は、例えば、信号のパワーが閾値以下になっている状態が一定時間以上継続している箇所を分割箇所とする方法などを適用することで実現できる。
【0017】
分割した各要素には、それぞれ順序が与えられる。各要素の順序は、元の信号が画像であれば画像中の水平方向の座標、元の信号が音声信号やセンサ信号などの時系列の波形であれば時刻などを基準に、分割した各要素の順序を定めることができる。このとき、分割した各要素に系列などの構造を持たせ、構造内における位置情報を付与してもよい。具体的な例として、
図2に示した文字列画像から分割された各要素に対し、左から順に番号を位置情報として付与する方法や、音声信号や各種のセンサ信号などの時系列の波形から分割された各要素に対し、時刻が早い順に番号を位置情報として付与する方法が考えられる。また、分割の方向が一方向でない画像を扱う場合は、後述するように、分割パターンごとにその分割パターンで分割される各要素の記号を予め定めておき(
図8参照)、その記号を位置情報として付与する方法などが考えられる。
【0018】
特徴抽出部3は、分割部2によって分割された各要素のそれぞれを同一次元数の特徴ベクトルに変換して、特徴ベクトルの集合を生成する。具体的には、特徴抽出部3は、まず分割されたそれぞれの要素をなす信号に、長さや量子化レベルを正規化するなどの前処理を施す。そして、特徴抽出部3は、その前処理後の値や、前処理後の信号にさらにガウシアンフィルタなどのフィルタ処理やフーリエ変換などの変換処理を施した後の値を成分とする特徴ベクトルを、その要素の特徴ベクトルとして出力する。このとき、各要素の特徴ベクトルを、すべてノルムが1となるように正規化してもよい。特徴抽出部3は、このようにしてそれぞれの要素から特徴ベクトルを1つずつ抽出し、特徴ベクトル集合を生成する。
【0019】
要素を特徴ベクトルに変換する処理の具体例としては、例えば、音声信号の要素それぞれの時間を正規化した後、下記の参考文献2に記載されているメル周波数ケプストラム係数特徴を抽出して、それらの値をそのまま並べて特徴ベクトルとする方法がある。また、画像の要素それぞれから、下記の参考文献3に記載されている加重方向指数ヒストグラム特徴を抽出する方法がある。
<参考文献2>古井貞熙、「新音響音声工学」、近代科学社、2006年
<参考文献3>鶴岡信治 ほか、“加重方向指数ヒストグラム法による手書き漢字・ひらがな認識” 信学論(D)、J70-D(7)、pp.1390-1397、1987
【0020】
認識部4は、認識辞書10を用いて、特徴抽出部3により生成された特徴ベクトルの集合を評価し、信号入力部1に入力された信号が属するクラスまたはクラスの集合を表す認識結果を出力する。
【0021】
認識辞書10は、本実施形態のパターン認識装置が信号の分類先として扱うそれぞれのクラスに対応するモデルを含むデータベースであり、本実施形態のパターン認識装置の内部または外部に保持される。認識辞書10が保持する各クラスのモデルは確率モデルであり、隠れマルコフモデルを含む任意のグラフィカルモデル(下記の参考文献4を参照)を用いることができる。
<参考文献4>C.M.ビショップ ほか、「パターン認識と機械学習」(村田昇監訳)、シュプリンガー・ジャパン、2007年
【0022】
認識部4は、この認識辞書10に含まれるモデルを単独あるいは後述するように組み合わせて、特徴抽出部3により生成された特徴ベクトルの集合との最適な対応を探索する。そして、認識部4は、特徴ベクトルの集合に適合するモデルを表現するラベル、または特徴ベクトルの集合に適合するモデルの集合を表現するラベルの集合を、認識結果として出力する。
【0023】
図3および
図4は、認識辞書10に含まれるモデルMの概念図である。
図3は、「水」という文字画像が分類されるべきクラスに対応するモデルMの例であり、
図4は、「トウキョウト」の音声信号が分類されるべきクラスに対応するモデルMの例である。
【0024】
本実施形態で扱うモデルMは、
図3および
図4に示すように、そのモデルMに対応するクラスに分類されるべき信号が分割部2によって複数の要素に分割される際に取り得る分割パターンのそれぞれをサブモデルmとし、これらサブモデルmのすべてを結合したものである。それぞれのサブモデルmが選択される確率は、予め用意した学習データにおいて、対応する分割パターンそれぞれの出現率と一致させる。あるいは、モデルMおよびサブモデルmが選択される確率について一様分布などの事前分布を与え、これに基づいてモデルMおよびサブモデルmが選択される確率をMAP推定(参考文献4を参照)することもできる。
【0025】
各モデルMのサブモデルmは、例えば、該サブモデルmに対応する分割パターンによって分割された各要素のそれぞれに対応する状態sをノードに持つ有向グラフとして構成される。この場合、サブモデルmは、隠れマルコフモデルにおけるleft−to−rightモデルのように、状態sが一方向にしか遷移できないものとしてもよい。つまり、サブモデルmは、各状態sが線形に順序づけられ、上位の状態sから下位の状態sへの遷移が禁じられた構成であってもよい。
図3および
図4に示した例は、状態sが一方向にしか遷移できないサブモデルmを結合したモデルMを例示している。サブモデルmをこのように構成することで、分類されるクラスまたはクラスの集合が予め分かっている学習データを分割部2に渡したときに、サブモデルmの各状態sに対する、分割された各要素の割り当てを決定的に与えることができる。
【0026】
サブモデルmのそれぞれの状態sは、特徴ベクトルと該状態sを表すラベルの関数によって表現され、例えばこの関数をガウス分布の確率密度関数として、特徴ベクトルの対数尤度を関数の出力とすることができる。このとき、分布のパラメータは、上述したように、分類されるクラスまたはクラスの集合が予め分かっている学習データを用い、例えば参考文献4に記載されているEMアルゴリズム、変分ベイズ法、勾配法などの方法で推定することができる。
【0027】
ここで、以上のようなモデルMを用いた認識部4の処理の具体例を説明する。なお、以下の説明は、入力信号が複数のクラスの系列として分類される例を想定しているが、入力信号が1つのクラスに分類される場合も同様の説明が当てはまる。
【0028】
入力信号から得られた特徴ベクトル列(特徴ベクトルの集合)x
1,・・・,x
nの長さn以下の個数、重複を許して、モデルMを順序付きで選択しM
1,・・・,M
pとおく。さらに、それぞれのモデルMからサブモデルmを1つずつ選択してm
1,・・・,m
pとおき、合計の長さが特徴ベクトル列と等しくなるようにする。そして、このようにして得られたサブモデルmの状態をs
1,・・・,s
nとおき、特徴ベクトルの評価関数を下記式(1)の形で与える。
【数1】
ただし、f
1はNグラム(下記の参考文献5を参照)の確率など、モデルMの列自体によって決まる評価関数、f
2(i)はサブモデルmの選択確率など、モデルM
iにおいてサブモデルm
iを選択することに伴う評価関数、f
3(j)は状態s
jの確率密度関数など、状態s
jに特徴ベクトルx
jを割り当てることに伴う評価関数である。
<参考文献5>北研二、「確率的言語モデル」(言語と計算5)、東京大学出版会、1999年
【0029】
このとき、サブモデルmを、上述したように状態sが一方向にしか遷移できないものとして構成した場合、これを最大化するM
1,・・・,M
pおよびm
1,・・・,m
pは、非特許文献2に示されるように、Viterbiのアルゴリズムによって効率的に計算することができる。そして、これを最大化するM
1,・・・,M
pを認識結果として出力する。
【0030】
次に、本実施形態のパターン認識装置による処理の概要について、
図5に沿って説明する。
図5は、本実施形態のパターン認識装置による処理手順の一例を示すフローチャートである。
【0031】
まず、信号入力部1が、認識対象となる信号の入力を受け付ける(ステップS101)。信号入力部1に入力された信号は、分割部2に渡される。
【0032】
次に、分割部2が、ステップS101で入力された信号を信号入力部1から受け取り、この信号を複数の要素に分割する(ステップS102)。分割部2により分割された各要素のそれぞれは、特徴抽出部3に渡される。
【0033】
次に、特徴抽出部3が、ステップS102で分割された各要素を分割部2から受け取り、これらの各要素について、上述した方法によって特徴ベクトルを求めて、特徴ベクトルの集合を生成する(ステップS103)。特徴抽出部3により生成された特徴ベクトルの集合は、認識部4に渡される。
【0034】
次に、認識部4が、ステップS103で生成された特徴ベクトルの集合を特徴抽出部3から受け取り、認識辞書10を用いて特徴ベクトルの集合を評価して、ステップS101で入力された信号が属するクラスまたはクラスの集合を表す認識結果を出力する(ステップS104)。
【0035】
以上、具体的な例を挙げながら説明したように、本実施形態では、信号の分類先となるそれぞれのクラスに対応するモデルMとして、そのモデルMに分類されるべき信号の様々な分割パターンに対応するサブモデルmを結合した確率モデルを定義する。そして、このようなクラスごとのモデルMを含む認識辞書10を用いて、入力された信号から得られる特徴ベクトルの集合を評価し、入力された信号が属するクラスまたはクラスの集合を表す認識結果を出力する。したがって、本実施形態のパターン認識装置によれば、従来の解析的方法と全体的方法のそれぞれの欠点を解消し、認識単位の区切りが明らかでない入力信号に対し、少ない計算量で高精度な認識を行うことができる。
【0036】
従来の解析的方法では、
図6に示すように、入力された信号を複数の要素に分割した後に、認識対象となる単位(
図6の例では文字)に結合してパターンマッチングなどによる認識を行うが、要素の結合は、例えば文字の平均的な大きさを想定して区切りを決めるなど、ヒューリスティックな方法で行っている。このため、
図6の例では、例えばAの要素とBの要素、Cの要素とDの要素をそれぞれ1つの認識対象として処理を行ってしまう場合があり、この場合は認識の精度が十分に確保できない。これに対して本実施形態のパターン認識装置では、信号の分類先として扱うそれぞれのクラスに対応した確率モデルであるモデルMを用い、入力された信号から得られる特徴ベクトルの集合に適合するモデルMあるいはその集合を探索して、入力された信号が属するクラスまたはクラスの集合を表す認識結果を出力するので、認識単位の区切りが明らかでない入力信号に対して、精度のよい認識を行うことができる。
【0037】
また、従来の全体的方法では、隠れマルコフモデルなどの確率モデルを用いて入力信号のパターン認識を行うが、様々な分割箇所の可能性を考えながら処理を行うため計算量が大きく、高いスペックのハードウェア資源が要求される。これに対して本実施形態のパターン認識装置では、クラスごとに予め想定される分割パターンに対応するサブモデルmを結合したモデルMを用いて、入力された信号から得られる特徴ベクトルの集合に適合するモデルMあるいはその集合を探索し、入力された信号が属するクラスまたはクラスの集合を表す認識結果を出力するので、少ない計算量で認識を行うことができる。
【0038】
以上のように、本実施形態のパターン認識装置によれば、従来の解析的方法と全体的方法のそれぞれの欠点を解消し、認識単位の区切りが明らかでない入力信号に対し、少ない計算量で高精度な認識を行うことができる。
【0039】
なお、本実施形態で用いる認識辞書10は、信号の分類先となるいずれのクラスにも対応しないリジェクトモデルを含んでいてもよい。このリジェクトモデルとしては、例えば、他のモデルMの一部のサブモデルmのみを抽出して1つのモデルとしたものや、ランダムにパラメータ値を定めたものを連結したモデルを用いることができる。この場合、認識部4は、例えば上記の式(1)中のM
1,・・・M
pの中にリジェクトモデルが含まれた場合、これをリジェクトとして扱い、認識結果が得られないことを示す情報を出力する。これにより、誤った記載の手書き文字の画像が入力された場合など、入力された信号自体が正しくない場合に、その旨をユーザに伝えることができる。
【0040】
また、入力信号に含まれるノイズが誤って1つの要素として扱われることを想定し、以上のようなリジェクトモデルの1つとして、ただ1つの状態からなるただ1つのサブモデルを有するモデル(ノイズモデル)を設け、このノイズモデル中のただ1つの状態に対応する評価関数は値0を返すか、ランダムにパラメータ値を定めたものとしてもよい。
【0041】
また、認識辞書10に含まれるモデルMのうちの少なくとも1つは、
図7に示すように、このモデルMに対応するクラスに分類されるべき信号に含まれる要素のいずれにも対応しない状態であるノイズ状態s’を有するように構成してもよい。モデルMをこのように構成することで、入力信号に含まれるノイズが誤って1つの要素として扱われても、その要素をノイズとして正しく認識して、ノイズの混入による認識精度の低下を有効に抑制することができる。
【0042】
また、以上の説明は、主に、入力された信号を要素に分割する際の分割の方向が一方向である場合を想定したが、分割の方向が一方向でない場合であっても、その分割パターンを予め定めておけば同様の処理が可能である。例えば、韓国語文字などは、二次元の分割パターンで要素に分割することが望ましく、本実施形態のパターン認識装置は、このような韓国語文字の認識にも有効に適用できる。
【0043】
図8は、韓国語文字を要素に分割する処理の概念図である。認識対象となる信号として韓国語の文字列の画像が入力された場合は、例えば、
図8(a)に示すように、まず縦方向の射影により文字列の画像を文字単位に分割する。そして、各文字について連結成分分析を行い、連結成分のうち隣接するものの組を一つ選んでそれらを縦方向に統合する操作を、
図8(b)のように予め定められた分割パターンのいずれかに一致するまで繰り返す。そして、以上の操作により得られた要素のそれぞれについて、分割パターンごとに予め定められた各要素の記号を位置情報として与える。
【0044】
図8(a)に示す韓国語文字列のうち最も左の文字は、
図9に示すように、
図8(b)の分割パターンのうちの0、2、4で示される分割パターンで分割される可能性がある。そこで、この文字が分類されるべきクラスに対応するモデルMは、この
図9に示した分割パターンのそれぞれに対応するサブモデルmを結合したものとする。これにより、上述した方法と同様の方法によって、高精度のパターン認識を行うことができる。
【0045】
本実施形態のパターン認識装置は、例えば
図10に示すように、CPU(Central Processing Unit)101などのプロセッサ、ROM(Read Only Memory)102やRAM(Random Access Memory)103などの記憶装置、HDD(Hard Disk Drive)104などの補助記憶装置、ネットワークに接続して通信を行う通信I/F105、各部を接続するバス106などを備えた、通常のコンピュータを利用したハードウェア構成を採用することができる。この場合、上述した各機能的な構成要素は、コンピュータ上で所定のパターン認識プログラムを実行することによって実現することができる。
【0046】
このパターン認識プログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録されてコンピュータプログラムプロダクトとして提供される。
【0047】
また、このパターン認識プログラムを、インターネットなどのネットワークに接続された他のコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、このパターン認識プログラムをインターネットなどのネットワーク経由で提供または配布するように構成してもよい。
【0048】
また、このパターン認識プログラムを、ROM102等に予め組み込んで提供するように構成してもよい。
【0049】
このパターン認識プログラムは、本実施形態のパターン認識装置の各処理部(信号入力部1、分割部2、特徴抽出部3、および認識部4)を含むモジュール構成となっており、実際のハードウェアとしては、例えば、CPU101(プロセッサ)が上記記録媒体からプログラムを読み出して実行することにより、上述した各処理部がRAM103(主記憶)上にロードされ、上述した各処理部がRAM103(主記憶)上に生成されるようになっている。なお、本実施形態のパターン認識装置は、上述した各処理部の一部または全部を、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアを用いて実現することも可能である。
【0050】
以上、本発明の実施形態を説明したが、ここで説明した実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。ここで説明した新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。ここで説明した実施形態やその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。