パタン認識方法および装置ならびにパタン認識プログラムおよびその記録媒体
【課題】認識率を低下させることなく状態仮説を効率良く枝刈りして状態仮説数を削減できるパタン認識方法および装置ならびにパタン認識プログラムおよびその記録媒体を提供する。
【解決手段】探索部15の枝刈り部154は、状態遷移モデルの探索空間を複数の領域に分割する領域分割部154aと、同一時刻で遷移する状態仮説を前記分割された領域のいずれかに振り分ける状態仮説振り分け部154bと、前記分割された各領域の枝刈り条件を設定する枝刈り条件設定部154cと、前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する領域別枝刈り部154dとを含む。
【解決手段】探索部15の枝刈り部154は、状態遷移モデルの探索空間を複数の領域に分割する領域分割部154aと、同一時刻で遷移する状態仮説を前記分割された領域のいずれかに振り分ける状態仮説振り分け部154bと、前記分割された各領域の枝刈り条件を設定する枝刈り条件設定部154cと、前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する領域別枝刈り部154dとを含む。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パタン認識方法および装置ならびにパタン認識プログラムおよびその記録媒体に係り、特に、HMMに代表される確率的な状態遷移モデルを用いて、音声認識などのパタン認識を行うパタン認識方法および装置ならびにパタン認識プログラムおよびその記録媒体に関する。
【背景技術】
【0002】
音声認識では、入力された音声信号に最も近い単語列が、状態系列として表現される単語との類似度に基づいて判定される。HMM(Hidden Markov Model:隠れマルコフモデル)は、単語や単語を構成する音素を表現するのに適切な確率モデルの1つであり、HMMの各状態は状態遷移確率および出力確率密度関数を持つ。以下、従来の音声認識の手法を、前記HMM を利用した場合を例にして説明する。
【0003】
音声認識装置では、認識可能な文の集合が単語を単位とするネットワークとして記述された文法と、文を構成する単語の読み(音素列)が記述された単語辞書とに従って認識処理が進行する。図9は、文法の一例を示した図であり、ここでは、「伊藤です」、「糸井です」、「今井です」、「土井です」という4つの音声を識別する場合を例にして説明する。
【0004】
図9に示された文法は、丸数字1で示した状態「1」を始端(文頭)とし、状態「5」を終端(文末)とする状態遷移図であり、矢印で対応付けられた単語を出力して状態間を遷移する。文法を構成する各単語は、その読み(音素列)に従ってHMMの状態系列として表現され、単語辞書に含まれる単語の集合は、図10に示したような木構造辞書として展開される。
【0005】
木構造辞書では、各単語が音素列に分解され、単語「糸井」であれば4つの音素「i」,「t」,「o」,「i」の列に展開される。各音素は、通常3つ程度の状態(HMM状態)から構成される。木構造辞書は、HMMの状態系列として表現される単語間で、先頭から共通する部分的な状態系列をマージすることにより、右に進むにつれて分岐が広がる状態遷移図である。図10の木構造辞書では、「伊藤」、「糸井」、「今井」の3単語で、単語先頭の「い」に相当するHMMの状態系列がマージされ、さらに「伊藤」と「糸井」の間で「いと」までに相当するHMMの状態系列がマージされている。また「土井」と「です」との間で、単語先頭の「d」に相当するHMM状態系列がマージされている。図中の「sil」は無音声区間(silence)を表している。
【0006】
音声認識処理では、図9に示した文法の制約に従って、図10に示した木構造辞書中の単語先頭のHMM状態から、状態仮説と呼ばれるトークンが木構造辞書を左から右へと遷移する。状態仮説が単語終端のHMM状態に到達すると、単語仮説と呼ばれる履歴を残して、図9の文法における該当単語の遷移先状態に遷移する。遷移先状態が文末でなければ、次の時刻から同様に、文法の制約に従って木構造辞書の探索が行われる。
【0007】
木構造辞書中のHMM状態系列を状態仮説が左から右へと遷移する間に、入力音声に対して、その単語らしさのスコア(累積尤度)が計算される。木構造辞書を構成する各HMM状態は、音響特徴パラメータの入力に対して尤もらしさを出力する確率分布(出力確率密度関数)を有している。また、HMM状態間の遷移について遷移確率(状態遷移確率)が定義されている。これらの確率を時間方向に累積することで累積尤度が計算される。
【0008】
この累積尤度は、後述する認識結果の確定処理のため、状態仮説が各単語の終端の状態に到達して単語仮説と呼ばれる履歴を残すときに、先行する単語仮説のインデックスとともに単語仮説中に格納される。
【0009】
音声信号を分析して音響特徴パラメータを得る所定の一定周期ごとに、各HMM状態まで遷移した各状態仮説は、さらに自身のHMM状態への遷移(自己遷移)および右隣のHMM状態への遷移(L-R遷移)とを同時に繰り返す。このとき、t番目のフレームに状態jが存在する累積尤度をαj(t)とすれば、この累積尤度αj(t)は次式(1)で表される。ここで、αijは状態iから状態jへの遷移確率、bj(ot)は状態jが音響特徴量otを出力する確率である。自己遷移は、次式(1)においてi=jの場合として考える。
【0010】
【数1】
【0011】
T個のフレームから構成される音声信号についてN個のHMM状態からなる単語系列を探索する場合、すなわち、状態仮説がHMM状態系列を遷移していく場合の、自己遷移とL-R遷移との探索空間(トレリス)を図11に示す。トレリス空間は、横軸を観察系列としてのフレーム、縦軸を状態として可能な状態系列を示す格子グラフであって、それぞれの状態系列は、各時刻における状態を表す点(○印)を線分で結んだ折れ線で表される。
【0012】
図11に示したように、t番目のフレームのタイミングで状態jに至るパスは数多く存在するが、音声認識は最も確からしいパス(最尤パス)を求めるのが目的であるので、各フレームの各HMM状態において、次式(2)に従って累積尤度の高い状態仮説を残すViterbi探索が行われる。
【0013】
【数2】
【0014】
音声認識処理は、文法が許容する全ての単語連鎖を探索する必要があるため、同時刻に数多くの状態仮説が、自分自身のHMM状態への遷移(図11では、右隣りへの自己遷移)と隣接する他のHMM状態への遷移(図11では、右下隣りへのL-R遷移)とを行うので、その計算量は膨大になる。この計算量の増大を抑えるために、通常はViterbi探索途中で確率の小さい状態仮説を探索空間から除外する「枝刈り」が行われる。
【0015】
その後、パワーの低下等、音声の終了を判断する何らかの条件により探索処理が終了すると、終了時刻に文末に到達した単語仮説のうち、音声始端からの累積尤度が最も高いものから、先行する単語の系列(この単語仮説に至るまでの単語の履歴)が導き出され、これが最終的な認識結果の候補となる。この操作はバックトレースと呼ばれる。
【0016】
上記した枝刈りでは、発声全体の探索を終えた時点で累積尤度が最大になる状態仮説を必ず残すようにしながら、状態仮説数を効率的に削減することが要求される。従来の枝刈りは、Viterbi探索の各フレームで累積尤度の高い状態仮説を残し、累積尤度の低い状態仮説を次フレーム以降の探索対象から取り除くために、以下の2種類の方法が併用されることが多い。
【0017】
(1)ビーム幅による枝刈り
【0018】
この枝刈り方法では、処理中の時刻における最大の尤度から、尤度が一定幅以内にある状態仮説を次の時刻の探索空間として残し、尤度が一定幅以上に低い状態仮説は次の時刻の探索空間から除外される。すなわち、時刻t、状態jの尤度が同時刻の全状態仮説中で最大の尤度と比較される。そして、次式(3)が成立する場合は、状態jを次の時刻の探索空間に残し、次式(4)が成立する場合は、状態jを次の時刻の探索空間から除外する。θpruningは枝刈りの閾値であって正の実数であり、ビーム幅と呼ばれる。
【0019】
【数3】
【0020】
【数4】
【0021】
(2)ヒストグラムによる枝刈り
【0022】
上記したビーム幅による枝刈りでは、ビーム幅の範囲に多数の状態仮説が残る可能性があり、想定以上に処理時間を増大させてしまうことがある。これに対して、この枝刈り方法では、残す状態仮説が個数により制限される。ただし、厳密に個数により制限するためには状態仮説数をスコア(累積尤度)の順にソーティングする必要があるが、ソーティングのコストを回避するためにヒストグラムによる枝刈りが行われる。
【0023】
即ち、全状態仮説中最大の対数尤度との差分に対して予め適当な区分を設定しておき、全状態仮説がどの区分に該当するかを記録してヒストグラムを作成し、最後に累積尤度の高い区分から順に度数を累積する。そして、累積度数が一定個数を超える区間までの状態仮説は次フレームの探索対象として残し、それ以降の区間の状態仮説は除外する。個数の閾値は最大許容仮説数と呼ばれる。
【0024】
特許文献1〜5には、ビーム幅と最大許容仮説数とを適応的に設定する技術(従来技術A)が開示されており、特許文献6には、枝刈りで残される状態仮説の多様性が失われないようにする技術(従来技術B)が開示されている。
【0025】
特許文献1には、計算量の少ない音響モデルを用いた確率計算部により、未探索部分における順位の変動幅を推定し、推定値によりビーム幅および最大許容仮説数を動的に設定する技術が開示されている。特許文献2には、文法の選択肢の数の指標であるパープレキシティを計算することによりビーム幅および最大許容仮説数を動的に設定する技術が開示されている。
【0026】
特許文献3には、現行のビーム幅で残される仮説数をカウントし、残される仮説数の大小に応じて、それ以降のビーム幅を適応的に設定する技術が開示されている。特許文献4には、文法における現在の探索位置(深さ)をパラメータとしてニューラルネットで動的にビーム幅を決定する技術が開示されている。
【0027】
特許文献5には、DPマッチングによる音声認識における仮説数をカウントし、残される仮説数の大小に応じてそれ以降の距離に対する閾値を適応的に設定する技術が開示されている。特許文献6には、複数の音響モデル(即ち、複数の木構造辞書)を併用して探索処理を行う場合に、各々の音響モデルごとに枝刈りを行う技術が開示されている。
【特許文献1】特開2001−75596号公報
【特許文献2】特開平11−119793号公報
【特許文献3】特開平10−153999号公報
【特許文献4】特開平6−282295号公報
【特許文献5】特開平5−35292号公報
【特許文献6】特開2005−10464号公報
【発明の開示】
【発明が解決しようとする課題】
【0028】
枝刈りの目的は、最終的に最尤となるパスを見いだせるように、木構造辞書の広い探索空間を少ない状態仮説で効率的に探索することである。上記した従来の枝刈り方法では、木構造辞書の一部の領域に状態仮説が集中して残り、それ以外の広い領域に状態仮説が残らないことがあり、これでは効率的な探索が行われているといえない。
【0029】
上記した従来技術Aに属する改良手法を適用しても、上記の問題は根本的に解決されない。従来技術Bに属する技術では、複数の音響モデルを併用する場合の枝刈りが効率化されるものの、単一の木構造辞書における枝刈りを効率化できない。
【0030】
本発明の目的は、上記した従来技術の課題を解決し、単一の木構造辞書であっても、木構造辞書の構造的な特徴を生かして、認識率を低下させることなく、状態仮説を効率良く枝刈りできるパタン認識方法および装置ならびにパタン認識プログラムおよびその記録媒体を提供することにある。
【課題を解決するための手段】
【0031】
上記した目的を達成するために、本発明は、入力信号から抽出された特徴パラメータと、認識パタンが木構造で表現された確率的な状態遷移モデルとを照合し、前記特徴パラメータに対する確率モデルの各状態の尤度を計算しながら状態仮説を遷移させ、最尤な状態遷移パスを認識パタンとするパタン認識装置において、以下のような手段を講じた点に特徴がある。
【0032】
(1)入力信号の特徴パラメータに基づいて、前記状態遷移モデルの探索空間で尤度計算を実行する探索手段と、前記探索空間を仮想的に複数の領域に分割する領域分割手段と、同一時刻で遷移する状態仮説を前記いずれかの領域に振り分ける振分手段と、前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する枝刈り手段とを含むことを特徴とする。
【0033】
(2)分割された領域ごとに枝刈り条件を設定する枝刈り条件設定手段をさらに含むことを特徴とする。
【発明の効果】
【0034】
上記した特徴(1)によれば、状態遷移モデルの探索空間が複数の領域に分割され、領域ごとに独立して枝刈りが実行されるので、一の領域と他の一の領域とで独立して累積尤度が上位の状態仮説を残すことができる。したがって、一の領域に属する各状態仮説の累積尤度が他の一の領域に属する各状態仮説の累積尤度よりも相対的に高く、一の領域と他の一の領域とを分割せずに一括して枝刈りしたときには累積尤度が上位とならない他の一の領域の状態仮説も、領域ごとに枝刈りを行うことにより残すことが可能になる。
【0035】
上記した特徴(2)によれば、状態遷移モデルの探索空間を、例えば単語が確定している単語確定領域と単語が確定していない単語未確定領域とに分割し、単語確定領域の枝刈り条件を単語未確定領域の枝刈り条件よりも厳しくしたり、あるいは、状態遷移モデルの探索空間を、各状態から分岐する単語総数に基づいて複数領域に分割し、分岐する単語総数が少ない領域ほど枝刈り条件を厳しくしたりすれば、認識率を低下させることなく、状態仮説をさらに効率良く枝刈りできるようになる。
【発明を実施するための最良の形態】
【0036】
以下、図面を参照して本発明の最良の実施の形態について詳細に説明する。 ここでは初めに、図1に示した音素列「a」で始まる地名の木構造辞書を例にして本発明の概要を説明する。
【0037】
音素列「ai」で始まる地名のうち、音素列「aio」で始まる地名は「相生(aioi)」に限定されるので、状態仮説が音素列「aio」の探索空間を過ぎれば単語(パタン)が確定する。同様に、音素列「aika」で始まる地名は「秋鹿町」、「相川」および「愛環梅坪」の3つであるが、音素列「aikam」で始まる地名は「秋鹿町」に限定されるので、状態仮説が音素列「aikam」の探索空間を過ぎれば単語が確定する。
【0038】
ここで、ある時刻で自己遷移またはLR遷移した全N1個の状態仮説を対象に枝刈りを行うとき、従来技術であれば、N1個の全ての状態仮説を対象に枝刈りが行われ、ビーム幅や最大許容仮説数で決まる上位n1個の状態仮説のみが残る。このとき、状態仮説が多くの単語に到達する可能性を残すためには、探索空間の広い範囲にわたって、その状態仮説が上位n1個の中に漏れなく残るようにすることが望ましい。しかしながら、実際には単語が確定する領域の状態仮説のみが上位を占めてしまうような場合があり、このような場合には、多くの単語に到達する可能性が一度に失われてしまう。
【0039】
これに対して、探索空間を、例えば単語が確定される領域(単語確定領域)と単語が確定されない領域(単語未確定領域)とに分割し、各領域において別々に枝刈りを行い、領域ごとに上位の状態仮説を残せば上記したような技術課題を解決できる。
【0040】
すなわち、同一時刻で自己遷移またはLR遷移した全N1個の状態仮説のうち、単語確定領域にある全N2個の状態仮説のみを対象に枝刈りを行って、その上位n2個の状態仮説を残す一方、これとは別に、単語未確定領域にある全N3個の状態仮説を対象に枝刈りを行って、その上位n3個の状態仮説を残す。このようにすれば、探索空間の一部領域のみに状態仮説が偏在することが無くなるので、認識率を低下させることなく全体の状態仮説数を削減できるようになる。
【0041】
さらに、単語確定領域に関しては、一列の状態に存在する状態仮説はすべて一つの単語に至るので、枝刈り条件を厳しくして、そのうちのいくつかの状態仮説が枝刈り対象となったとしても、最尤に近い尤度をもつ単語仮説が得られる可能性が高い。
【0042】
本発明では、このような考察に基づいて、探索空間を複数の領域に分割し、領域ごとに、同一領域内で同一時刻に遷移する状態仮説間で尤度を計算し、尤度の低い状態仮説を枝刈りすることによって、認識率を低下させることなく全体の状態仮説数を削減できるようにしている。
【0043】
図2は、本発明のパタン認識方法を適用した音声認識装置の主要部の構成を示したブロック図である。
【0044】
音声信号入力部11は、入力された音声信号をデジタル信号に変換する。音響分析部12は、音声デジタル信号を音響分析して音響特徴パラメータを抽出し、これをパラメータ記憶部13に記憶する。音響特徴パラメータとは、入力音声を一定時間間隔(例えば10ms:以下、フレームと表現する)毎に分析して得られる特徴ベクトルである。したがって、音声信号は特徴ベクトルの系列X=x1,x2,…,xTに変換される。
【0045】
探索データベース14には、探索用の文法および木構造辞書(音素モデルの確率的な状態遷移モデル)が予め記憶されている。音響モデルデータベース17には、予め作成された音響モデルが登録されている。探索部15は、前記探索用の文法、木構造辞書および音響モデルに音響特徴パラメータの時系列データを照合させて音響的な尤度を算出し、この尤度を時間方向に累積して累積尤度を求める尤度計算部151と、探索過程で各状態仮説を自己遷移させる自己遷移部152およびLR遷移させるLR遷移部153と、探索過程で尤度の低い状態仮説を探索対象から除外する枝刈り部154と、単語末尾まで進んだ状態仮説の単語仮説を出力する単語仮説出力部155とを含む。
【0046】
なお、文法の制約から木構造辞書の状態系列が複数に枝分れする場合、探索部15は枝の数だけ状態仮説を複製し、枝ごとに状態仮説を進行させて尤度を計算する。認識結果判定部16は、文法上の最後のHMM状態まで到達した全ての状態仮説を累積尤度に基づいてソートし、累積尤度が最も高い状態系列にバックトレースを実行して認識結果を判定する。
【0047】
図3は、前記枝刈り部154の主要部の構成を示した機能ブロック図であり、状態遷移モデルの探索空間を複数の領域に分割する領域分割部154aと、同一時刻で遷移する状態仮説を前記分割された領域のいずれかに振り分ける状態仮説振り分け部154bと、前記分割された各領域の枝刈り条件を設定する枝刈り条件設定部154cと、前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する領域別枝刈り部154dとを含む。
【0048】
前記領域別枝刈り部154dは、実用時間内での処理が可能ならば、一つの枝刈り部で領域ごとに枝刈りを繰り返すようにしても良いし、複数の枝刈り部を設けて、これらで並列的に枝刈りを行うようにしても良い。
【0049】
図4は、本発明のパタン認識方法を適用した音声認識の手順を示したフローチャートであり、主に前記探索部15の動作を示している。
【0050】
ここでは、音声信号入力部11に入力された認識対象の音声信号が音響分析部12でフレームごとに音響分析され、各フレームの音響特徴パラメータがパラメータ記憶部13に蓄積されている状態から説明を始める。また、前記領域分割部151により、図4に示したように、探索空間が「単語確定領域」および「単語未確定領域」に分割されているものとする。
【0051】
ステップS1では、探索処理の初期化として、文法の先頭の単語の先頭の状態に遷移する仮想的な状態仮説が設定される。ステップS2では、前記パラメータ記憶部13に記憶されている音響特徴パラメータが、記音声区間の先頭フレームから正順で取り込まれる。ステップS3では、有効な状態仮説の一つが今回の計算対象として選択される。ステップS4では自己遷移が実施され、その尤度が計算・更新される。ステップS5では、今回のタイミングに対応した全ての状態仮説に関して自己遷移および尤度計算が完了したか否かが判定される。完了していなければステップS3へ戻り、今回のタイミングで遷移すべき他の状態仮説についても上記した各処理が繰り返される。
【0052】
今回のタイミングに対応した全ての状態仮説に関して自己遷移および尤度計算が完了するとステップS6へ進み、改めて今回のタイミングに対応した有効な状態仮説の一つが計算対象として選択される。ステップS7では各状態仮説がL-R遷移される。ステップS8ではVitarbi探索が実行される。ステップS9では、今回のタイミングで遷移すべき全ての状態仮説に関して、上記したL-R遷移およびViterbi探索が完了したか否かが判定される。完了していなければステップS6へ戻り、今回のタイミングで遷移すべき他の状態仮説についても上記した各処理が繰り返される。その後、今回のタイミングで遷移すべき全ての状態仮説について上記した各処理が完了するとステップS10へ進み、領域ごとに枝刈りを独立して行う領域別枝刈り処理が実行される。
【0053】
図5は、前記領域別枝刈り処理の手順を示したフローチャートであり、ステップS101では、今回のタイミングに対応した有効な状態仮説の一つが計算対象として選択される。ステップS102では、前記選択された今回の状態仮説がいずれかの領域に振り分けられる。ステップS103では、全ての状態仮説に関して前記振り分けが完了したか否かが判定され、完了していなければ、ステップS101へ戻って上記した振り分け処理が繰り返される。
【0054】
その後、全ての状態仮説がいずれかの領域に振り分けられると、ステップS104では、分割された領域の一つが、今回の枝刈り領域として選択される。ステップS105では、領域内の全ての状態仮説の累積尤度に基づいて枝刈り条件が設定される。ステップS106では、領域内の状態仮説の一つが今回の枝刈り対象として選択される。ステップS107では、累積尤度が前記枝刈り条件よりも高い状態仮説のみを残して他の状態仮説を次の探索から除外する枝刈りが行われる。
【0055】
本実施形態では、時刻t、状態jの各尤度αj(t)を、探索空間の領域ごとに全状態仮説の中で最大の尤度αmax(t)と比較し、次式(7)を満足する状態仮説を次の時刻の探索空間に残し、次式(8)を満足する状態仮説を次の時刻の探索空間から除外する。θpruningはビーム幅であり、前記枝刈り条件設定部154cは、領域ごとに同一のビーム幅を設定しても良いし、あるいは異なるビーム幅を設定しても良い。
【0056】
【数5】
【0057】
【数6】
【0058】
なお、上記のように探索空間を単語確定領域と単語未確定領域とに分割するのであれば、単語確定領域の枝刈り条件を単語未確定領域の枝刈り条件よりも厳しくすることにより、認識率を低下させることなく、状態仮説を効率良く枝刈りできるようになる。
【0059】
ステップS108では、今回の領域内の全ての状態仮説に関して上記した処理が完了したか否かが判定され、完了していなければ、ステップS106へ戻って状態仮説を変更しながら上記した各処理が繰り返される。ステップS109では、全ての領域に関して上記した処理が完了したか否かが判定され、完了していなければステップS104へ戻り、領域を変更しながら上記した各処理が繰り返される。
【0060】
図4へ戻り、ステップS11では、枝刈り後に残った状態仮説の一つが選択される。ステップS12では、選択された状態仮説が単語末尾の状態仮説であるか否かが判定され、単語末尾の状態仮説であれば、ステップS13へ進んで単語仮説が出力される。ステップS14では、文法の上の次の単語の先頭の状態に遷移する仮想的な状態仮説が設定される。ステップS15では、枝刈り後に残った全ての状態仮説に関して上記した処理が完了したか否かが判定される。完了していなければ前記ステップS11へ戻り、状態仮説を変更しながら上記した各処理が繰り返される。
【0061】
ステップS16では、次フレームの有無が判定され、次フレームが存在すればステップS2へ戻って次フレームの音響特徴パラメータを取り込んで上記した各処理が繰り返される。
【0062】
全てのフレームに関して上記した各処理が終了して探索が文末フレームまで到達すると、ステップS17では、これまでに文法上の最後のHMM状態まで到達した全ての状態仮説が、その累積尤度の昇順にソートされる。ステップS18では、累積尤度が上位の複数または唯一の状態仮説にバックトレースが実施され、認識結果が出力される。
【0063】
なお、上記した実施形態では、本発明を状態仮説がビーム幅に基づいて枝刈りされる場合を例にして説明したが、本発明はこれのみに限定されるものではなく、状態仮説の累積尤度をヒストグラム化し、最大許容仮説数に基づいて枝刈りする場合にも同様に適用できる。
【0064】
また、上記した実施形態では、本発明を音声認識を例にして説明したが、ゲノム解析におけるタンパク質配列の探索など、多のパタン認識にも同様に適用できる。
【0065】
さらに、上記した実施形態では探索空間を単語確定領域および単語未確定領域に2分割し、領域ごとに独立して枝刈りを実行するものとして説明したが、本発明はこれのみに限定されるものではなく、探索空間を、以下のような規則の一つまたは複数の組み合わせに基づいて複数領域に分割しても良い。
【0066】
(1)図6に示したように、探索空間を木構造辞書を根からの距離に応じて複数領域に分割する。このとき、領域ごとに枝刈り条件を異ならせるのであれば、木構造辞書の根から遠い領域ほどビーム幅や最大許容仮説数を狭めて枝刈り条件を厳しくすることが望ましい。図示した例では、ビーム幅や最大許容仮説数が第1領域>第2領域>第3領域となり、第3領域の枝刈り条件が最も厳しくなる。
【0067】
(2)図7に示したように、探索空間を、各HMM状態以降に分岐するパタンの総数ごとに分割する。このとき、領域ごとに枝刈り条件を異ならせるのであれば、パタン総数が少ない領域ほどビーム幅を狭めて枝刈り条件を厳しくすることが望ましい。図示した例では、第1領域から分岐するパタン総数は7個であり、第2領域から分岐するパタン総数は3個であり、第3領域から分岐するパタン総数は4個である。したがって、ビーム幅や最大許容仮説数が第1領域>第3領域>第2領域となり、第2領域の枝刈り条件が最も厳しくなる。
【0068】
(3)図8に示したように、探索空間を木構造辞書の根の種類(ここでは、単語先頭の音素)に基づいて複数の領域に分割する。このとき、領域ごとに枝刈り条件を異ならせるのであれば、各グループを同一領域としてグループごとにビーム幅を設定することが望ましい。このような分割方法は、木構造辞書の根の内容に応じて、その後に分岐するパタン総数が特異的であるような場合に有効である。
【図面の簡単な説明】
【0069】
【図1】本発明の概要を説明するための木構造辞書の一例を示した図である。
【図2】本発明を適用した音声認識装置の主要部の構成を示したブロック図である
【図3】図2に示した探索部の機能ブロック図である。
【図4】本発明を適用した音声認識の手順を示したフローチャートである。
【図5】領域別枝刈り処理の手順を示したフローチャートである。
【図6】本発明の変形例(その1)を説明するための図である。
【図7】本発明の変形例(その2)を説明するための図である。
【図8】本発明の変形例(その3)を説明するための図である。
【図9】文法の一例を示した図である。
【図10】木構造辞書の一例を示した図である。
【図11】自己遷移とL-R遷移との空間(トレリス)の一例を示した図である。
【符号の説明】
【0070】
11…音声信号入力部,12…音響分析部,13…パラメータ記憶部,14…探索データベース,15…探索部,16…認識結果判定部,151…尤度計算部,152…自己遷移部,153…LR遷移部,154…枝刈り部,154a…領域分割部,154b…状態仮説振り分け部,154c…枝刈り条件設定部,154d…領域別枝刈り部,155…単語仮説出力部
【技術分野】
【0001】
本発明は、パタン認識方法および装置ならびにパタン認識プログラムおよびその記録媒体に係り、特に、HMMに代表される確率的な状態遷移モデルを用いて、音声認識などのパタン認識を行うパタン認識方法および装置ならびにパタン認識プログラムおよびその記録媒体に関する。
【背景技術】
【0002】
音声認識では、入力された音声信号に最も近い単語列が、状態系列として表現される単語との類似度に基づいて判定される。HMM(Hidden Markov Model:隠れマルコフモデル)は、単語や単語を構成する音素を表現するのに適切な確率モデルの1つであり、HMMの各状態は状態遷移確率および出力確率密度関数を持つ。以下、従来の音声認識の手法を、前記HMM を利用した場合を例にして説明する。
【0003】
音声認識装置では、認識可能な文の集合が単語を単位とするネットワークとして記述された文法と、文を構成する単語の読み(音素列)が記述された単語辞書とに従って認識処理が進行する。図9は、文法の一例を示した図であり、ここでは、「伊藤です」、「糸井です」、「今井です」、「土井です」という4つの音声を識別する場合を例にして説明する。
【0004】
図9に示された文法は、丸数字1で示した状態「1」を始端(文頭)とし、状態「5」を終端(文末)とする状態遷移図であり、矢印で対応付けられた単語を出力して状態間を遷移する。文法を構成する各単語は、その読み(音素列)に従ってHMMの状態系列として表現され、単語辞書に含まれる単語の集合は、図10に示したような木構造辞書として展開される。
【0005】
木構造辞書では、各単語が音素列に分解され、単語「糸井」であれば4つの音素「i」,「t」,「o」,「i」の列に展開される。各音素は、通常3つ程度の状態(HMM状態)から構成される。木構造辞書は、HMMの状態系列として表現される単語間で、先頭から共通する部分的な状態系列をマージすることにより、右に進むにつれて分岐が広がる状態遷移図である。図10の木構造辞書では、「伊藤」、「糸井」、「今井」の3単語で、単語先頭の「い」に相当するHMMの状態系列がマージされ、さらに「伊藤」と「糸井」の間で「いと」までに相当するHMMの状態系列がマージされている。また「土井」と「です」との間で、単語先頭の「d」に相当するHMM状態系列がマージされている。図中の「sil」は無音声区間(silence)を表している。
【0006】
音声認識処理では、図9に示した文法の制約に従って、図10に示した木構造辞書中の単語先頭のHMM状態から、状態仮説と呼ばれるトークンが木構造辞書を左から右へと遷移する。状態仮説が単語終端のHMM状態に到達すると、単語仮説と呼ばれる履歴を残して、図9の文法における該当単語の遷移先状態に遷移する。遷移先状態が文末でなければ、次の時刻から同様に、文法の制約に従って木構造辞書の探索が行われる。
【0007】
木構造辞書中のHMM状態系列を状態仮説が左から右へと遷移する間に、入力音声に対して、その単語らしさのスコア(累積尤度)が計算される。木構造辞書を構成する各HMM状態は、音響特徴パラメータの入力に対して尤もらしさを出力する確率分布(出力確率密度関数)を有している。また、HMM状態間の遷移について遷移確率(状態遷移確率)が定義されている。これらの確率を時間方向に累積することで累積尤度が計算される。
【0008】
この累積尤度は、後述する認識結果の確定処理のため、状態仮説が各単語の終端の状態に到達して単語仮説と呼ばれる履歴を残すときに、先行する単語仮説のインデックスとともに単語仮説中に格納される。
【0009】
音声信号を分析して音響特徴パラメータを得る所定の一定周期ごとに、各HMM状態まで遷移した各状態仮説は、さらに自身のHMM状態への遷移(自己遷移)および右隣のHMM状態への遷移(L-R遷移)とを同時に繰り返す。このとき、t番目のフレームに状態jが存在する累積尤度をαj(t)とすれば、この累積尤度αj(t)は次式(1)で表される。ここで、αijは状態iから状態jへの遷移確率、bj(ot)は状態jが音響特徴量otを出力する確率である。自己遷移は、次式(1)においてi=jの場合として考える。
【0010】
【数1】
【0011】
T個のフレームから構成される音声信号についてN個のHMM状態からなる単語系列を探索する場合、すなわち、状態仮説がHMM状態系列を遷移していく場合の、自己遷移とL-R遷移との探索空間(トレリス)を図11に示す。トレリス空間は、横軸を観察系列としてのフレーム、縦軸を状態として可能な状態系列を示す格子グラフであって、それぞれの状態系列は、各時刻における状態を表す点(○印)を線分で結んだ折れ線で表される。
【0012】
図11に示したように、t番目のフレームのタイミングで状態jに至るパスは数多く存在するが、音声認識は最も確からしいパス(最尤パス)を求めるのが目的であるので、各フレームの各HMM状態において、次式(2)に従って累積尤度の高い状態仮説を残すViterbi探索が行われる。
【0013】
【数2】
【0014】
音声認識処理は、文法が許容する全ての単語連鎖を探索する必要があるため、同時刻に数多くの状態仮説が、自分自身のHMM状態への遷移(図11では、右隣りへの自己遷移)と隣接する他のHMM状態への遷移(図11では、右下隣りへのL-R遷移)とを行うので、その計算量は膨大になる。この計算量の増大を抑えるために、通常はViterbi探索途中で確率の小さい状態仮説を探索空間から除外する「枝刈り」が行われる。
【0015】
その後、パワーの低下等、音声の終了を判断する何らかの条件により探索処理が終了すると、終了時刻に文末に到達した単語仮説のうち、音声始端からの累積尤度が最も高いものから、先行する単語の系列(この単語仮説に至るまでの単語の履歴)が導き出され、これが最終的な認識結果の候補となる。この操作はバックトレースと呼ばれる。
【0016】
上記した枝刈りでは、発声全体の探索を終えた時点で累積尤度が最大になる状態仮説を必ず残すようにしながら、状態仮説数を効率的に削減することが要求される。従来の枝刈りは、Viterbi探索の各フレームで累積尤度の高い状態仮説を残し、累積尤度の低い状態仮説を次フレーム以降の探索対象から取り除くために、以下の2種類の方法が併用されることが多い。
【0017】
(1)ビーム幅による枝刈り
【0018】
この枝刈り方法では、処理中の時刻における最大の尤度から、尤度が一定幅以内にある状態仮説を次の時刻の探索空間として残し、尤度が一定幅以上に低い状態仮説は次の時刻の探索空間から除外される。すなわち、時刻t、状態jの尤度が同時刻の全状態仮説中で最大の尤度と比較される。そして、次式(3)が成立する場合は、状態jを次の時刻の探索空間に残し、次式(4)が成立する場合は、状態jを次の時刻の探索空間から除外する。θpruningは枝刈りの閾値であって正の実数であり、ビーム幅と呼ばれる。
【0019】
【数3】
【0020】
【数4】
【0021】
(2)ヒストグラムによる枝刈り
【0022】
上記したビーム幅による枝刈りでは、ビーム幅の範囲に多数の状態仮説が残る可能性があり、想定以上に処理時間を増大させてしまうことがある。これに対して、この枝刈り方法では、残す状態仮説が個数により制限される。ただし、厳密に個数により制限するためには状態仮説数をスコア(累積尤度)の順にソーティングする必要があるが、ソーティングのコストを回避するためにヒストグラムによる枝刈りが行われる。
【0023】
即ち、全状態仮説中最大の対数尤度との差分に対して予め適当な区分を設定しておき、全状態仮説がどの区分に該当するかを記録してヒストグラムを作成し、最後に累積尤度の高い区分から順に度数を累積する。そして、累積度数が一定個数を超える区間までの状態仮説は次フレームの探索対象として残し、それ以降の区間の状態仮説は除外する。個数の閾値は最大許容仮説数と呼ばれる。
【0024】
特許文献1〜5には、ビーム幅と最大許容仮説数とを適応的に設定する技術(従来技術A)が開示されており、特許文献6には、枝刈りで残される状態仮説の多様性が失われないようにする技術(従来技術B)が開示されている。
【0025】
特許文献1には、計算量の少ない音響モデルを用いた確率計算部により、未探索部分における順位の変動幅を推定し、推定値によりビーム幅および最大許容仮説数を動的に設定する技術が開示されている。特許文献2には、文法の選択肢の数の指標であるパープレキシティを計算することによりビーム幅および最大許容仮説数を動的に設定する技術が開示されている。
【0026】
特許文献3には、現行のビーム幅で残される仮説数をカウントし、残される仮説数の大小に応じて、それ以降のビーム幅を適応的に設定する技術が開示されている。特許文献4には、文法における現在の探索位置(深さ)をパラメータとしてニューラルネットで動的にビーム幅を決定する技術が開示されている。
【0027】
特許文献5には、DPマッチングによる音声認識における仮説数をカウントし、残される仮説数の大小に応じてそれ以降の距離に対する閾値を適応的に設定する技術が開示されている。特許文献6には、複数の音響モデル(即ち、複数の木構造辞書)を併用して探索処理を行う場合に、各々の音響モデルごとに枝刈りを行う技術が開示されている。
【特許文献1】特開2001−75596号公報
【特許文献2】特開平11−119793号公報
【特許文献3】特開平10−153999号公報
【特許文献4】特開平6−282295号公報
【特許文献5】特開平5−35292号公報
【特許文献6】特開2005−10464号公報
【発明の開示】
【発明が解決しようとする課題】
【0028】
枝刈りの目的は、最終的に最尤となるパスを見いだせるように、木構造辞書の広い探索空間を少ない状態仮説で効率的に探索することである。上記した従来の枝刈り方法では、木構造辞書の一部の領域に状態仮説が集中して残り、それ以外の広い領域に状態仮説が残らないことがあり、これでは効率的な探索が行われているといえない。
【0029】
上記した従来技術Aに属する改良手法を適用しても、上記の問題は根本的に解決されない。従来技術Bに属する技術では、複数の音響モデルを併用する場合の枝刈りが効率化されるものの、単一の木構造辞書における枝刈りを効率化できない。
【0030】
本発明の目的は、上記した従来技術の課題を解決し、単一の木構造辞書であっても、木構造辞書の構造的な特徴を生かして、認識率を低下させることなく、状態仮説を効率良く枝刈りできるパタン認識方法および装置ならびにパタン認識プログラムおよびその記録媒体を提供することにある。
【課題を解決するための手段】
【0031】
上記した目的を達成するために、本発明は、入力信号から抽出された特徴パラメータと、認識パタンが木構造で表現された確率的な状態遷移モデルとを照合し、前記特徴パラメータに対する確率モデルの各状態の尤度を計算しながら状態仮説を遷移させ、最尤な状態遷移パスを認識パタンとするパタン認識装置において、以下のような手段を講じた点に特徴がある。
【0032】
(1)入力信号の特徴パラメータに基づいて、前記状態遷移モデルの探索空間で尤度計算を実行する探索手段と、前記探索空間を仮想的に複数の領域に分割する領域分割手段と、同一時刻で遷移する状態仮説を前記いずれかの領域に振り分ける振分手段と、前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する枝刈り手段とを含むことを特徴とする。
【0033】
(2)分割された領域ごとに枝刈り条件を設定する枝刈り条件設定手段をさらに含むことを特徴とする。
【発明の効果】
【0034】
上記した特徴(1)によれば、状態遷移モデルの探索空間が複数の領域に分割され、領域ごとに独立して枝刈りが実行されるので、一の領域と他の一の領域とで独立して累積尤度が上位の状態仮説を残すことができる。したがって、一の領域に属する各状態仮説の累積尤度が他の一の領域に属する各状態仮説の累積尤度よりも相対的に高く、一の領域と他の一の領域とを分割せずに一括して枝刈りしたときには累積尤度が上位とならない他の一の領域の状態仮説も、領域ごとに枝刈りを行うことにより残すことが可能になる。
【0035】
上記した特徴(2)によれば、状態遷移モデルの探索空間を、例えば単語が確定している単語確定領域と単語が確定していない単語未確定領域とに分割し、単語確定領域の枝刈り条件を単語未確定領域の枝刈り条件よりも厳しくしたり、あるいは、状態遷移モデルの探索空間を、各状態から分岐する単語総数に基づいて複数領域に分割し、分岐する単語総数が少ない領域ほど枝刈り条件を厳しくしたりすれば、認識率を低下させることなく、状態仮説をさらに効率良く枝刈りできるようになる。
【発明を実施するための最良の形態】
【0036】
以下、図面を参照して本発明の最良の実施の形態について詳細に説明する。 ここでは初めに、図1に示した音素列「a」で始まる地名の木構造辞書を例にして本発明の概要を説明する。
【0037】
音素列「ai」で始まる地名のうち、音素列「aio」で始まる地名は「相生(aioi)」に限定されるので、状態仮説が音素列「aio」の探索空間を過ぎれば単語(パタン)が確定する。同様に、音素列「aika」で始まる地名は「秋鹿町」、「相川」および「愛環梅坪」の3つであるが、音素列「aikam」で始まる地名は「秋鹿町」に限定されるので、状態仮説が音素列「aikam」の探索空間を過ぎれば単語が確定する。
【0038】
ここで、ある時刻で自己遷移またはLR遷移した全N1個の状態仮説を対象に枝刈りを行うとき、従来技術であれば、N1個の全ての状態仮説を対象に枝刈りが行われ、ビーム幅や最大許容仮説数で決まる上位n1個の状態仮説のみが残る。このとき、状態仮説が多くの単語に到達する可能性を残すためには、探索空間の広い範囲にわたって、その状態仮説が上位n1個の中に漏れなく残るようにすることが望ましい。しかしながら、実際には単語が確定する領域の状態仮説のみが上位を占めてしまうような場合があり、このような場合には、多くの単語に到達する可能性が一度に失われてしまう。
【0039】
これに対して、探索空間を、例えば単語が確定される領域(単語確定領域)と単語が確定されない領域(単語未確定領域)とに分割し、各領域において別々に枝刈りを行い、領域ごとに上位の状態仮説を残せば上記したような技術課題を解決できる。
【0040】
すなわち、同一時刻で自己遷移またはLR遷移した全N1個の状態仮説のうち、単語確定領域にある全N2個の状態仮説のみを対象に枝刈りを行って、その上位n2個の状態仮説を残す一方、これとは別に、単語未確定領域にある全N3個の状態仮説を対象に枝刈りを行って、その上位n3個の状態仮説を残す。このようにすれば、探索空間の一部領域のみに状態仮説が偏在することが無くなるので、認識率を低下させることなく全体の状態仮説数を削減できるようになる。
【0041】
さらに、単語確定領域に関しては、一列の状態に存在する状態仮説はすべて一つの単語に至るので、枝刈り条件を厳しくして、そのうちのいくつかの状態仮説が枝刈り対象となったとしても、最尤に近い尤度をもつ単語仮説が得られる可能性が高い。
【0042】
本発明では、このような考察に基づいて、探索空間を複数の領域に分割し、領域ごとに、同一領域内で同一時刻に遷移する状態仮説間で尤度を計算し、尤度の低い状態仮説を枝刈りすることによって、認識率を低下させることなく全体の状態仮説数を削減できるようにしている。
【0043】
図2は、本発明のパタン認識方法を適用した音声認識装置の主要部の構成を示したブロック図である。
【0044】
音声信号入力部11は、入力された音声信号をデジタル信号に変換する。音響分析部12は、音声デジタル信号を音響分析して音響特徴パラメータを抽出し、これをパラメータ記憶部13に記憶する。音響特徴パラメータとは、入力音声を一定時間間隔(例えば10ms:以下、フレームと表現する)毎に分析して得られる特徴ベクトルである。したがって、音声信号は特徴ベクトルの系列X=x1,x2,…,xTに変換される。
【0045】
探索データベース14には、探索用の文法および木構造辞書(音素モデルの確率的な状態遷移モデル)が予め記憶されている。音響モデルデータベース17には、予め作成された音響モデルが登録されている。探索部15は、前記探索用の文法、木構造辞書および音響モデルに音響特徴パラメータの時系列データを照合させて音響的な尤度を算出し、この尤度を時間方向に累積して累積尤度を求める尤度計算部151と、探索過程で各状態仮説を自己遷移させる自己遷移部152およびLR遷移させるLR遷移部153と、探索過程で尤度の低い状態仮説を探索対象から除外する枝刈り部154と、単語末尾まで進んだ状態仮説の単語仮説を出力する単語仮説出力部155とを含む。
【0046】
なお、文法の制約から木構造辞書の状態系列が複数に枝分れする場合、探索部15は枝の数だけ状態仮説を複製し、枝ごとに状態仮説を進行させて尤度を計算する。認識結果判定部16は、文法上の最後のHMM状態まで到達した全ての状態仮説を累積尤度に基づいてソートし、累積尤度が最も高い状態系列にバックトレースを実行して認識結果を判定する。
【0047】
図3は、前記枝刈り部154の主要部の構成を示した機能ブロック図であり、状態遷移モデルの探索空間を複数の領域に分割する領域分割部154aと、同一時刻で遷移する状態仮説を前記分割された領域のいずれかに振り分ける状態仮説振り分け部154bと、前記分割された各領域の枝刈り条件を設定する枝刈り条件設定部154cと、前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する領域別枝刈り部154dとを含む。
【0048】
前記領域別枝刈り部154dは、実用時間内での処理が可能ならば、一つの枝刈り部で領域ごとに枝刈りを繰り返すようにしても良いし、複数の枝刈り部を設けて、これらで並列的に枝刈りを行うようにしても良い。
【0049】
図4は、本発明のパタン認識方法を適用した音声認識の手順を示したフローチャートであり、主に前記探索部15の動作を示している。
【0050】
ここでは、音声信号入力部11に入力された認識対象の音声信号が音響分析部12でフレームごとに音響分析され、各フレームの音響特徴パラメータがパラメータ記憶部13に蓄積されている状態から説明を始める。また、前記領域分割部151により、図4に示したように、探索空間が「単語確定領域」および「単語未確定領域」に分割されているものとする。
【0051】
ステップS1では、探索処理の初期化として、文法の先頭の単語の先頭の状態に遷移する仮想的な状態仮説が設定される。ステップS2では、前記パラメータ記憶部13に記憶されている音響特徴パラメータが、記音声区間の先頭フレームから正順で取り込まれる。ステップS3では、有効な状態仮説の一つが今回の計算対象として選択される。ステップS4では自己遷移が実施され、その尤度が計算・更新される。ステップS5では、今回のタイミングに対応した全ての状態仮説に関して自己遷移および尤度計算が完了したか否かが判定される。完了していなければステップS3へ戻り、今回のタイミングで遷移すべき他の状態仮説についても上記した各処理が繰り返される。
【0052】
今回のタイミングに対応した全ての状態仮説に関して自己遷移および尤度計算が完了するとステップS6へ進み、改めて今回のタイミングに対応した有効な状態仮説の一つが計算対象として選択される。ステップS7では各状態仮説がL-R遷移される。ステップS8ではVitarbi探索が実行される。ステップS9では、今回のタイミングで遷移すべき全ての状態仮説に関して、上記したL-R遷移およびViterbi探索が完了したか否かが判定される。完了していなければステップS6へ戻り、今回のタイミングで遷移すべき他の状態仮説についても上記した各処理が繰り返される。その後、今回のタイミングで遷移すべき全ての状態仮説について上記した各処理が完了するとステップS10へ進み、領域ごとに枝刈りを独立して行う領域別枝刈り処理が実行される。
【0053】
図5は、前記領域別枝刈り処理の手順を示したフローチャートであり、ステップS101では、今回のタイミングに対応した有効な状態仮説の一つが計算対象として選択される。ステップS102では、前記選択された今回の状態仮説がいずれかの領域に振り分けられる。ステップS103では、全ての状態仮説に関して前記振り分けが完了したか否かが判定され、完了していなければ、ステップS101へ戻って上記した振り分け処理が繰り返される。
【0054】
その後、全ての状態仮説がいずれかの領域に振り分けられると、ステップS104では、分割された領域の一つが、今回の枝刈り領域として選択される。ステップS105では、領域内の全ての状態仮説の累積尤度に基づいて枝刈り条件が設定される。ステップS106では、領域内の状態仮説の一つが今回の枝刈り対象として選択される。ステップS107では、累積尤度が前記枝刈り条件よりも高い状態仮説のみを残して他の状態仮説を次の探索から除外する枝刈りが行われる。
【0055】
本実施形態では、時刻t、状態jの各尤度αj(t)を、探索空間の領域ごとに全状態仮説の中で最大の尤度αmax(t)と比較し、次式(7)を満足する状態仮説を次の時刻の探索空間に残し、次式(8)を満足する状態仮説を次の時刻の探索空間から除外する。θpruningはビーム幅であり、前記枝刈り条件設定部154cは、領域ごとに同一のビーム幅を設定しても良いし、あるいは異なるビーム幅を設定しても良い。
【0056】
【数5】
【0057】
【数6】
【0058】
なお、上記のように探索空間を単語確定領域と単語未確定領域とに分割するのであれば、単語確定領域の枝刈り条件を単語未確定領域の枝刈り条件よりも厳しくすることにより、認識率を低下させることなく、状態仮説を効率良く枝刈りできるようになる。
【0059】
ステップS108では、今回の領域内の全ての状態仮説に関して上記した処理が完了したか否かが判定され、完了していなければ、ステップS106へ戻って状態仮説を変更しながら上記した各処理が繰り返される。ステップS109では、全ての領域に関して上記した処理が完了したか否かが判定され、完了していなければステップS104へ戻り、領域を変更しながら上記した各処理が繰り返される。
【0060】
図4へ戻り、ステップS11では、枝刈り後に残った状態仮説の一つが選択される。ステップS12では、選択された状態仮説が単語末尾の状態仮説であるか否かが判定され、単語末尾の状態仮説であれば、ステップS13へ進んで単語仮説が出力される。ステップS14では、文法の上の次の単語の先頭の状態に遷移する仮想的な状態仮説が設定される。ステップS15では、枝刈り後に残った全ての状態仮説に関して上記した処理が完了したか否かが判定される。完了していなければ前記ステップS11へ戻り、状態仮説を変更しながら上記した各処理が繰り返される。
【0061】
ステップS16では、次フレームの有無が判定され、次フレームが存在すればステップS2へ戻って次フレームの音響特徴パラメータを取り込んで上記した各処理が繰り返される。
【0062】
全てのフレームに関して上記した各処理が終了して探索が文末フレームまで到達すると、ステップS17では、これまでに文法上の最後のHMM状態まで到達した全ての状態仮説が、その累積尤度の昇順にソートされる。ステップS18では、累積尤度が上位の複数または唯一の状態仮説にバックトレースが実施され、認識結果が出力される。
【0063】
なお、上記した実施形態では、本発明を状態仮説がビーム幅に基づいて枝刈りされる場合を例にして説明したが、本発明はこれのみに限定されるものではなく、状態仮説の累積尤度をヒストグラム化し、最大許容仮説数に基づいて枝刈りする場合にも同様に適用できる。
【0064】
また、上記した実施形態では、本発明を音声認識を例にして説明したが、ゲノム解析におけるタンパク質配列の探索など、多のパタン認識にも同様に適用できる。
【0065】
さらに、上記した実施形態では探索空間を単語確定領域および単語未確定領域に2分割し、領域ごとに独立して枝刈りを実行するものとして説明したが、本発明はこれのみに限定されるものではなく、探索空間を、以下のような規則の一つまたは複数の組み合わせに基づいて複数領域に分割しても良い。
【0066】
(1)図6に示したように、探索空間を木構造辞書を根からの距離に応じて複数領域に分割する。このとき、領域ごとに枝刈り条件を異ならせるのであれば、木構造辞書の根から遠い領域ほどビーム幅や最大許容仮説数を狭めて枝刈り条件を厳しくすることが望ましい。図示した例では、ビーム幅や最大許容仮説数が第1領域>第2領域>第3領域となり、第3領域の枝刈り条件が最も厳しくなる。
【0067】
(2)図7に示したように、探索空間を、各HMM状態以降に分岐するパタンの総数ごとに分割する。このとき、領域ごとに枝刈り条件を異ならせるのであれば、パタン総数が少ない領域ほどビーム幅を狭めて枝刈り条件を厳しくすることが望ましい。図示した例では、第1領域から分岐するパタン総数は7個であり、第2領域から分岐するパタン総数は3個であり、第3領域から分岐するパタン総数は4個である。したがって、ビーム幅や最大許容仮説数が第1領域>第3領域>第2領域となり、第2領域の枝刈り条件が最も厳しくなる。
【0068】
(3)図8に示したように、探索空間を木構造辞書の根の種類(ここでは、単語先頭の音素)に基づいて複数の領域に分割する。このとき、領域ごとに枝刈り条件を異ならせるのであれば、各グループを同一領域としてグループごとにビーム幅を設定することが望ましい。このような分割方法は、木構造辞書の根の内容に応じて、その後に分岐するパタン総数が特異的であるような場合に有効である。
【図面の簡単な説明】
【0069】
【図1】本発明の概要を説明するための木構造辞書の一例を示した図である。
【図2】本発明を適用した音声認識装置の主要部の構成を示したブロック図である
【図3】図2に示した探索部の機能ブロック図である。
【図4】本発明を適用した音声認識の手順を示したフローチャートである。
【図5】領域別枝刈り処理の手順を示したフローチャートである。
【図6】本発明の変形例(その1)を説明するための図である。
【図7】本発明の変形例(その2)を説明するための図である。
【図8】本発明の変形例(その3)を説明するための図である。
【図9】文法の一例を示した図である。
【図10】木構造辞書の一例を示した図である。
【図11】自己遷移とL-R遷移との空間(トレリス)の一例を示した図である。
【符号の説明】
【0070】
11…音声信号入力部,12…音響分析部,13…パラメータ記憶部,14…探索データベース,15…探索部,16…認識結果判定部,151…尤度計算部,152…自己遷移部,153…LR遷移部,154…枝刈り部,154a…領域分割部,154b…状態仮説振り分け部,154c…枝刈り条件設定部,154d…領域別枝刈り部,155…単語仮説出力部
【特許請求の範囲】
【請求項1】
入力信号から抽出された特徴パラメータと、認識パタンが木構造で表現された確率的な状態遷移モデルとを照合し、前記特徴パラメータに対する確率モデルの各状態の尤度を計算しながら状態仮説を遷移させ、最尤な状態遷移パスを認識パタンとするパタン認識装置において、
入力信号の特徴パラメータに基づいて、前記状態遷移モデルの探索空間で尤度計算を実行する探索手段と、
前記探索空間を仮想的に複数の領域に分割する領域分割手段と、
同一時刻で遷移する状態仮説を前記分割された領域のいずれかに振り分ける状態仮説振分手段と、
前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する領域別枝刈り手段とを含むことを特徴とするパタン認識装置。
【請求項2】
前記分割された領域ごとに枝刈り条件を設定する枝刈り条件設定手段をさらに含むことを特徴とする請求項1に記載のパタン認識装置。
【請求項3】
前記領域分割手段は、探索空間を、パタンが確定するパタン確定領域とパタンが確定しないパタン未確定領域とに分割することを特徴とする請求項1または2に記載のパタン認識装置。
【請求項4】
前記枝刈り条件設定手段は、パタン確定領域の枝刈り条件をパタン未確定領域の枝刈り条件よりも厳しくすることを特徴とする請求項3に記載のパタン認識装置。
【請求項5】
前記領域分割手段は、探索空間を、木構造の根からの距離に応じて複数領域に分割することを特徴とする請求項1または2に記載のパタン認識装置。
【請求項6】
前記枝刈り条件設定手段は、木構造の根から遠い領域ほど枝刈り条件を厳しくすることを特徴とする請求項5に記載のパタン認識装置。
【請求項7】
前記領域分割手段は、探索空間を、各状態から分岐するパタン総数に基づいて複数領域に分割することを特徴とする請求項1または2に記載のパタン認識装置。
【請求項8】
前記枝刈り条件設定手段は、分岐するパタン総数が少ない領域ほど枝刈り条件を厳しくすることを特徴とする請求項7に記載のパタン認識装置。
【請求項9】
前記領域分割手段は、探索空間を、木構造の根の種類に基づいて複数領域に分割することを特徴とする請求項1または2に記載のパタン認識装置。
【請求項10】
前記枝刈り条件設定手段は、パタン総数が少ない領域ほど枝刈り条件を厳しくすることを特徴とする請求項9に記載のパタン認識装置。
【請求項11】
音声信号からフレーム単位で音響特徴パラメータを抽出する音響分析手段をさらに含み、
前記音響特徴パラメータに基づいて音声認識を行うことを特徴とする請求項1ないし10のいずれかに記載のパタン認識装置。
【請求項12】
入力信号から抽出された特徴パラメータと、認識モデルが木構造で表現された確率的な状態遷移モデルとを照合し、前記特徴パラメータに対する確率モデルの各状態の尤度を計算しながら状態仮説を遷移させ、最尤な状態遷移パスを認識パタンとするパタン認識方法において、
入力信号の特徴パラメータに基づいて、前記状態遷移モデルの探索空間で尤度計算を実行する手順と、
前記探索空間を仮想的に複数の領域に分割する手順と、
同一時刻で遷移する状態仮説を前記いずれかの領域に振り分ける手順と、
前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する領域枝刈り手順とを含むことを特徴とするパタン認識方法。
【請求項13】
前記請求項12に記載のパタン認識方法を、コンピュータに実行させるためのパタン認識プログラム。
【請求項14】
前記請求項13に記載したパタン認識プログラムをコンピュータが読み取り可能に記憶した記録媒体。
【請求項1】
入力信号から抽出された特徴パラメータと、認識パタンが木構造で表現された確率的な状態遷移モデルとを照合し、前記特徴パラメータに対する確率モデルの各状態の尤度を計算しながら状態仮説を遷移させ、最尤な状態遷移パスを認識パタンとするパタン認識装置において、
入力信号の特徴パラメータに基づいて、前記状態遷移モデルの探索空間で尤度計算を実行する探索手段と、
前記探索空間を仮想的に複数の領域に分割する領域分割手段と、
同一時刻で遷移する状態仮説を前記分割された領域のいずれかに振り分ける状態仮説振分手段と、
前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する領域別枝刈り手段とを含むことを特徴とするパタン認識装置。
【請求項2】
前記分割された領域ごとに枝刈り条件を設定する枝刈り条件設定手段をさらに含むことを特徴とする請求項1に記載のパタン認識装置。
【請求項3】
前記領域分割手段は、探索空間を、パタンが確定するパタン確定領域とパタンが確定しないパタン未確定領域とに分割することを特徴とする請求項1または2に記載のパタン認識装置。
【請求項4】
前記枝刈り条件設定手段は、パタン確定領域の枝刈り条件をパタン未確定領域の枝刈り条件よりも厳しくすることを特徴とする請求項3に記載のパタン認識装置。
【請求項5】
前記領域分割手段は、探索空間を、木構造の根からの距離に応じて複数領域に分割することを特徴とする請求項1または2に記載のパタン認識装置。
【請求項6】
前記枝刈り条件設定手段は、木構造の根から遠い領域ほど枝刈り条件を厳しくすることを特徴とする請求項5に記載のパタン認識装置。
【請求項7】
前記領域分割手段は、探索空間を、各状態から分岐するパタン総数に基づいて複数領域に分割することを特徴とする請求項1または2に記載のパタン認識装置。
【請求項8】
前記枝刈り条件設定手段は、分岐するパタン総数が少ない領域ほど枝刈り条件を厳しくすることを特徴とする請求項7に記載のパタン認識装置。
【請求項9】
前記領域分割手段は、探索空間を、木構造の根の種類に基づいて複数領域に分割することを特徴とする請求項1または2に記載のパタン認識装置。
【請求項10】
前記枝刈り条件設定手段は、パタン総数が少ない領域ほど枝刈り条件を厳しくすることを特徴とする請求項9に記載のパタン認識装置。
【請求項11】
音声信号からフレーム単位で音響特徴パラメータを抽出する音響分析手段をさらに含み、
前記音響特徴パラメータに基づいて音声認識を行うことを特徴とする請求項1ないし10のいずれかに記載のパタン認識装置。
【請求項12】
入力信号から抽出された特徴パラメータと、認識モデルが木構造で表現された確率的な状態遷移モデルとを照合し、前記特徴パラメータに対する確率モデルの各状態の尤度を計算しながら状態仮説を遷移させ、最尤な状態遷移パスを認識パタンとするパタン認識方法において、
入力信号の特徴パラメータに基づいて、前記状態遷移モデルの探索空間で尤度計算を実行する手順と、
前記探索空間を仮想的に複数の領域に分割する手順と、
同一時刻で遷移する状態仮説を前記いずれかの領域に振り分ける手順と、
前記分割された領域ごとに、同一領域内で尤度の低い状態仮説を探索対象から除外する領域枝刈り手順とを含むことを特徴とするパタン認識方法。
【請求項13】
前記請求項12に記載のパタン認識方法を、コンピュータに実行させるためのパタン認識プログラム。
【請求項14】
前記請求項13に記載したパタン認識プログラムをコンピュータが読み取り可能に記憶した記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2009−92844(P2009−92844A)
【公開日】平成21年4月30日(2009.4.30)
【国際特許分類】
【出願番号】特願2007−262250(P2007−262250)
【出願日】平成19年10月5日(2007.10.5)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
【公開日】平成21年4月30日(2009.4.30)
【国際特許分類】
【出願日】平成19年10月5日(2007.10.5)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
[ Back to top ]