(57)【特許請求の範囲】
【請求項１】
発声された連続音声を認識して、前記連続音声に対応する単語列を生成するための連続音声認識装置において、簡易な第１の音響モデル、簡易な第１の言語モデル、前記第１の音響モデルよりも詳細な第２の音響モデル、および前記第１の言語モデルよりも詳細な第２の言語モデルを記憶する手段と、前記簡易な第１の音響モデルおよび前記簡易な第１の言語モデルを用いて前記連続音声に対して前向き探索を行い、前記単語列を生成するための候補として単語終端に達した各単語の情報と前記候補となる各単語が発声された始端時刻の情報とからなる単語始端リストを生成するための第１パス処理手段と、前記詳細な第２の音響モデルおよび前記詳細な第２の言語モデルを用いて、前記単語始端リストに含まれる前記候補となる各単語の範囲内で、前記候補となる各単語が発声された始端時刻の情報に基づいて、前記連続音声に対して前向き探索を行い、前記連続音声に対応する単語列を生成するための第２パス処理手段とを備えたことを特徴とする連続音声認識装置。
【請求項２】
前記第１パス処理手段は、さらに、前記第１パス処理手段での前向き探索中に単語終端近傍に達した単語の情報と、前記単語終端近傍に達した単語が発声された始端時刻の情報とを前記単語始端リストに追加登録することを特徴とする請求項１記載の連続音声認識装置。
【請求項３】
前記第１パス処理手段は、さらに、前記単語始端リストに含まれる前記各単語の単語平均スコアを前記単語始端リストに追加登録し、前記第２パス処理手段は、さらに、前記各単語の単語平均スコアが所定値以上となるものに前記候補となる単語を限定し、前記限定された単語について、前記連続音声に対応する単語列を生成することを特徴とする請求項１記載の連続音声認識装置。
【請求項４】
前記第２パス処理手段は、さらに、前記候補となる各単語が発声された始端時刻の前後一定範囲内の所定時刻を始端時刻として、前記第２パス処理手段での前向き探索を行うことを特徴とする請求項１記載の連続音声認識装置。
【請求項５】
前記第２パス処理手段は、前記第１パス処理手段によって前記単語始端リストの生成が完了する前であっても、前記第１パス処理手段での前向き探索によって前記候補となる単語の情報とその始端時刻の情報とが生成され次第、前記第２パス処理手段での前向き探索を行い、前記連続音声に対応する単語列を生成するための処理を行うことを特徴とする請求項１記載の連続音声認識装置。
【請求項６】
前記第２パス処理手段は、前記第１パス処理手段によって前記単語始端リストの生成が完了した後に、前記第２パス処理手段での前向き探索を開始し、前記連続音声に対応する単語列を生成するための処理を行うことを特徴とする請求項１記載の連続音声認識装置。
【請求項７】
コンピュータに、発声された連続音声を認識して、前記連続音声に対応する単語列を生成するための処理を実行させるプログラムにおいて、コンピュータに、簡易な第１の音響モデル、簡易な第１の言語モデル、前記第１の音響モデルよりも詳細な第２の音響モデル、および前記第１の言語モデルよりも詳細な第２の言語モデルを記憶するステップと、前記簡易な第１の音響モデルおよび前記簡易な第１の言語モデルを用いて前記連続音声に対して前向き探索を行い、前記単語列を生成するための候補となる各単語の情報と前記候補となる各単語が発声された始端時刻の情報とからなる単語始端リストを生成するための第１パス処理ステップと、前記詳細な第２の音響モデルおよび前記詳細な第２の言語モデルを用いて、前記単語始端リストに含まれる前記候補となる各単語の範囲内で、前記候補となる各単語が発声された始端時刻の情報に基づいて、前記連続音声に対して前向き探索を行い、前記連続音声に対応する単語列を生成するための第２パス処理ステップとを実行させることを特徴とする連続音声認識プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、連続して発声された音声を認識して、発声された連続音声が示す単語列を生成するための連続音声認識装置およびそのプログラムに関する。
【０００２】
【従来の技術】
従来、連続して発声された音声を認識してその音声が示す単語列を生成するための連続音声認識方法として、以下に示す２つの方法が知られていた。
第１の方法は、今井ほか著、「最ゆう単語列逐次比較による音声認識結果の早期確定」、電子情報通信学会論文誌、第Ｊ８４-Ｄ-ＩＩ巻、９号、１９４２-１９４９頁（２００１）に開示されているように、２つのパスを介して以下の処理を行うものである。
【０００３】
第１パスでは、詳細な音響モデルおよび簡易な言語モデルを用いて文頭から文末方向への探索（以下、前向き探索という。）を行い、認識候補となる複数の単語列を求める。次に、第２パスで、詳細な言語モデルを用いて第１パスで求めた複数の単語列についてスコアを更新し、最大スコアを与える単語列を認識結果として採用するものである。
【０００４】
第２の方法は、ロング  グエン等著、「高性能２パスＮ−ベストデコーダ」、ＤＡＲＰＡ音声認識ワークショップの議事録、１００−１０３頁、（１９９７）（Ｌｏｎｇ  Ｎｇｕｙｅｎ，ｅｔ  ａｌ．，“Ｅｆｆｉｃｉｅｎｔ  ２-ｐａｓｓ  Ｎ-ｂｅｓｔ  ｄｅｃｏｄｅｒ”，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅＤＡＲＰＡ  Ｓｐｅｅｃｈ  Ｒｅｃｏｇｎｉｔｉｏｎ  Ｗｏｒｋｓｈｏｐ，ｐｐ．１００-１０３（１９９７））に開示された以下の処理を行うものである。
【０００５】
初めに、第１パスでは、簡易な音響モデルおよび言語モデルを用いて前向き探索を行い、認識候補となる単語およびその終端時刻のリストを作成する。次に、この単語終端リストの制約の下、第２パスで詳細な音響モデルおよび言語モデルを用いて、文末から文頭への探索（以下、後ろ向き探索という。）を行うものである。
【０００６】
【発明が解決しようとする課題】
しかしながら、従来の第１の方法では、第１パスで詳細な音響モデルを用いるために、音響モデルを詳細にすればするほど認識候補を限定するための処理量が増大し、認識結果確定までの時間が長引くという問題や、第２パスでは第１パスで得られた単語列の範囲内でのみスコアの更新を行うため、詳細な言語モデルの能力を十分に引き出すことができず、高い認識精度が得られないという問題があった。
【０００７】
また、従来の第２の方法では、第２パスで後ろ向き探索を行うために、通常の前向き探索とは異なり、文末から文頭方向への詳細な言語モデルが必要になるという問題や、第１パスで求める単語終端は、ある程度の区間で引き続き単語終端候補となり易く、第２パスでの処理量を増大させるおそれがあるという問題や、発話終了を待たずに認識結果を逐次確定する場合には、第２パスが後ろ向き探索であるために、候補単語列の文頭からの一意性を利用する最適な早期確定手法を適用することができず、認識精度が低下し、リアルタイム処理に適さない等の問題があった。
【０００８】
本発明は、かかる問題を解決するためになされたものであり、その目的は、音声認識に詳細な音響モデルおよび言語モデルを用いる場合でも、早期に認識結果を確定するリアルタイム性に優れ、高い認識精度かつ演算処理負担の少ない連続音声認識装置およびそのプログラムを提供することにある。
【０００９】
【課題を解決するための手段】
以上の点を考慮して、請求項１に係る発明は、発声された連続音声を認識して、前記連続音声に対応する単語列を生成するための連続音声認識装置において、簡易な第１の音響モデル、簡易な第１の言語モデル、前記第１の音響モデルよりも詳細な第２の音響モデル、および前記第１の言語モデルよりも詳細な第２の言語モデルを記憶する手段と、前記簡易な第１の音響モデルおよび前記簡易な第１の言語モデルを用いて前記連続音声に対して前向き探索を行い、前記単語列を生成するための候補として単語終端に達した各単語の情報と前記候補となる各単語が発声された始端時刻の情報とからなる単語始端リストを生成するための第１パス処理手段と、前記詳細な第２の音響モデルおよび前記詳細な第２の言語モデルを用いて、前記単語始端リストに含まれる前記候補となる各単語の範囲内で、前記候補となる各単語が発声された始端時刻の情報に基づいて、前記連続音声に対して前向き探索を行い、前記連続音声に対応する単語列を生成するための第２パス処理手段とを備えた構成を有している。
【００１０】
この構成により、第２パス処理手段が探索すべき単語とその始端時刻は単語始端リストによって高精度に制限され、しかも、連続した単語終端は共通の単語始端をもつ可能性が高いため、単語始端リストは単語終端リストよりも冗長度が低く、より詳細な音響モデルや言語モデルを用いた場合でも全体の処理量を増大させることなく、単語の認識精度を向上させることが可能な連続音声認識装置を実現できる。また、第２パス処理手段は文頭から文末方向へ前向き探索を行うために、候補単語列の文頭からの一意性を利用した最適で原理的に認識精度を低下させない早期確定手法を適用可能で、リアルタイム処理に適している。
【００１１】
また、請求項２に係る発明は、請求項１において、前記第１パス処理手段は、さらに、前記第１パス処理手段での前向き探索中に単語終端近傍に達した単語の情報と、前記単語終端近傍に達した単語が発声された始端時刻の情報とを前記単語始端リストに追加登録する構成を有している。
この構成により、単語終端に達した単語のみならず単語終端近傍に達した単語についても、前記第２パス処理手段での前向き探索以降の処理がなされ、より高精度に音声認識が可能な連続音声認識装置を実現できる。
【００１２】
また、請求項３に係る発明は、請求項１において、前記第１パス処理手段は、さらに、前記単語始端リストに含まれる前記各単語の単語平均スコアを前記単語始端リストに追加登録し、前記第２パス処理手段は、さらに、前記各単語の単語平均スコアが所定値以上となるものに前記候補となる単語を限定し、前記限定された単語について、前記連続音声に対応する単語列を生成する構成を有している。
この構成により、第２パス処理手段の処理対象の単語が限定されるため、処理負担の低減が可能な連続音声認識装置を実現できる。
【００１３】
また、請求項４に係る発明は、請求項１において、前記第２パス処理手段は、さらに、前記候補となる各単語が発声された始端時刻の前後一定範囲内の所定時刻を始端時刻として、前記第２パス処理手段での前向き探索を行う構成を有している。
この構成により、候補となる各単語の始端時刻の前後一定範囲内における所定時刻を始端時刻として追加し、前記第２パス処理手段での前向き探索を行うため、より高精度に音声認識が可能な連続音声認識装置を実現できる。
【００１４】
また、請求項５に係る発明は、請求項１において、前記第２パス処理手段は、前記第１パス処理手段によって前記単語始端リストの生成が完了する前であっても、前記第１パス処理手段での前向き探索によって前記候補となる単語の情報とその始端時刻の情報とが生成され次第、前記第２パス処理手段での前向き探索を行い、前記連続音声に対応する単語列を生成するための処理を行う構成を有している。
この構成により、第２パス処理手段での前向き探索によって候補となる単語の情報とその始端時刻の情報とが生成され次第、第２パス処理手段での前向き探索の処理が行われるため、認識精度を低下させない早期確定手法を適用可能で、リアルタイム処理に適した連続音声認識装置を実現できる。
【００１５】
また、請求項６に係る発明は、請求項１において、前記第２パス処理手段は、前記第１パス処理手段によって前記単語始端リストの生成が完了した後に、前記第２パス処理手段での前向き探索を開始し、前記連続音声に対応する単語列を生成するための処理を行う構成を有している。
この構成により、リアルタイム処理が必要でない場合でも、演算処理の負担が少なく、単語の認識精度を向上させることが可能な連続音声認識装置を実現できる。
【００１６】
また、請求項７に係る発明は、請求項１において、コンピュータに、発声された連続音声を認識して、前記連続音声に対応する単語列を生成するための処理を実行させるプログラムにおいて、コンピュータに、簡易な第１の音響モデル、簡易な第１の言語モデル、前記第１の音響モデルよりも詳細な第２の音響モデル、および前記第１の言語モデルよりも詳細な第２の言語モデルを記憶するステップと、前記簡易な第１の音響モデルおよび前記簡易な第１の言語モデルを用いて前記連続音声に対して前向き探索を行い、前記単語列を生成するための候補となる各単語の情報と前記候補となる各単語が発声された始端時刻の情報とからなる単語始端リストを生成するための第１パス処理ステップと、前記詳細な第２の音響モデルおよび前記詳細な第２の言語モデルを用いて、前記単語始端リストに含まれる前記候補となる各単語の範囲内で、前記候補となる各単語が発声された始端時刻の情報に基づいて、前記連続音声に対して前向き探索を行い、前記連続音声に対応する単語列を生成するための第２パス処理ステップとを実行させる構成を有している。
【００１７】
この構成により、第２パス処理ステップで探索すべき単語とその始端時刻は単語始端リストによって高精度に制限され、しかも、連続した単語終端は共通の単語始端をもつ可能性が高いため、単語始端リストは単語終端リストよりも冗長度が低く、より詳細な音響モデルや言語モデルを用いた場合でも全体の処理量を増大させることなく、単語の認識精度を向上させることが可能な連続音声認識プログラムを実現できる。また、第２パス処理ステップでは文頭から文末方向へ前向き探索が行われるために、候補単語列の文頭からの一意性を利用した最適で原理的に認識精度を低下させない早期確定手法を適用可能で、リアルタイム処理に適している。
【００１８】
【発明の実施の形態】
以下、添付図面を参照して、本発明の第１の実施の形態に係る連続音声認識装置について説明する。
図１は、本発明の第１の実施の形態に係る連続音声認識装置１００の概略の構成を示すブロック図である。連続音声認識装置１００は、入力音声を音響分析して音響分析結果を生成する音響分析部１０、音響分析結果に応じて単語始端リストを生成する第１パス処理部２０、および音響分析結果と単語始端リストとを用いて認識単語列を生成する第２パス処理部３０によって構成される。
【００１９】
第１パス処理部２０は、さらに、発音辞書・簡易モデル記憶部２１、木構造音素ネットワーク生成部（以下、木構造音素ＮＷ生成部という。）２２、音響スコア算出部２３、言語スコア算出部２４、および第１前向き探索部２５によって構成される。
発音辞書・簡易モデル記憶部２１は、第１パスでの音声認識処理に用いる発音辞書、簡易な音響モデル（以下、簡易音響モデルという。）、および簡易な言語モデル（以下、簡易言語モデルという。）等を記憶するための構成部である。ここで、「簡易な」とは、言うまでもなく、モデルの規模が小さいことを指し、例えば、モデルに含まれる状態数の少ないものが含まれる。
【００２０】
木構造音素ＮＷ生成部２２は、音響分析部１０から出力された入力音声の音響分析結果、発音辞書・簡易モデル記憶部２１に記憶された発音辞書、および簡易音響モデル等を入力とし、入力音声の音響分析結果に応じた、木構造を有する音素ネットワーク（以下、木構造音素ネットワークという。）を生成し、生成した木構造音素ネットワークを音響スコア算出部２３、言語スコア算出部２４、および第１前向き探索部２５にそれぞれ出力するための構成部である。
【００２１】
音響スコア算出部２３は、入力音声の音響分析結果、簡易音響モデルおよび木構造音素ネットワークを入力とし、簡易音響モデルおよび木構造音素ネットワークを用いて音響分析結果に対する音響スコアを算出し、第１前向き探索部２５に出力するための構成部である。ここで、簡易音響モデルとしては、例えば状態数の少ないトライフォン隠れマルコフモデル（Ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  Ｍｏｄｅｌ、以下、ＨＭＭという。）等を用いることができる。また、音響スコアの算出方法は、公知であり、その説明を省略する。
【００２２】
言語スコア算出部２４は、簡易言語モデルおよび木構造音素ネットワークを入力とし、木構造音素ネットワーク上のアクティブなノードに対する言語スコアを、簡易言語モデルを用いて算出し、第１前向き探索部２５に出力するための構成部である。ここで、簡易言語モデルとしては、例えば単語バイグラム等を用いることができる。また、言語スコアの算出方法は、公知であり、その説明を省略する。
【００２３】
第１前向き探索部２５は、木構造音素ネットワーク、音響スコア、および言語スコアを入力とし、木構造音素ネットワーク上で音響スコアおよび言語スコアを用いて、アクティブなノードを前向きに伝搬させ、枝刈りされずに単語終端まで残った単語とその始端時刻のリストである単語始端リストを作成し、作成した単語始端リストを第２パス処理部３０に出力するための構成部である。なお、「前向き」とは、文頭から文末への方向のことを指し、以下では、前向きの探索のことを「前向き探索」ということにする。
【００２４】
ここで、木構造音素ネットワークは、１つの木構造音素ネットワークをループさせて用いる静的なものでも、木構造音素ネットワークを複数接続させて得られたものを用いる動的なものでもよい。なお、単語始端リストを精度の良いものとするために、第１前向き探索部２５は、直前の単語に依存した単語対近似探索を行うものとする。
【００２５】
一方、第２パス処理部３０は、さらに、発音辞書・詳細モデル記憶部３１、線形構造音素ネットワーク生成部（以下、線形構造音素ＮＷ生成部という。）３２、音響スコア算出部３３、言語スコア算出部３４、および第２前向き探索部３５によって構成される。
発音辞書・詳細モデル記憶部３１は、第２パスでの音声認識処理に用いる発音辞書、詳細な音響モデル（以下、詳細音響モデルという。）、および詳細な言語モデル（以下、詳細言語モデルという。）等を記憶するための構成部である。ここで、「詳細な」とは、言うまでもなく、モデルの規模がある程度以上大きいことを指し、例えば、モデルに含まれる状態数の多いものが含まれる。
【００２６】
線形構造音素ＮＷ生成部３２は、音響分析部１０から出力された入力音声の音響分析結果、発音辞書・詳細モデル記憶部３１に記憶された発音辞書、および詳細音響モデル等を入力とし、入力音声の音響分析結果に応じた、直線構造を有する音素ネットワーク（以下、線形構造音素ネットワークという。）を生成し、生成した線形構造音素ネットワークを音響スコア算出部３３、言語スコア算出部３４、および第２前向き探索部３５にそれぞれ出力するための構成部である。
【００２７】
音響スコア算出部３３は、入力音声の音響分析結果、詳細音響モデルおよび線形構造音素ネットワークを入力とし、音響分析結果に対する音響スコアを、詳細音響モデルおよび線形構造音素ネットワークを用いて算出し、第２前向き探索部３５に出力するための構成部である。ここで、詳細音響モデルとしては、例えば状態数の多いトライフォンＨＭＭ等を用いることができる。また、音響スコアの算出方法は、上記音響スコア算出部２３による算出の方法と同様に公知であり、その説明を省略する。
【００２８】
言語スコア算出部３４は、詳細言語モデルと線形構造音素ネットワークとを入力とし、線形構造音素ネットワーク上のアクティブな単語先頭ノードに対する言語スコアを、詳細言語モデルを用いて算出し、第２前向き探索部３５に出力するための構成部である。ここで、詳細言語モデルとしては、例えば単語トライグラムなどを用いることができる。また、言語スコアの算出方法は、上記言語スコア算出部３４による算出の方法と同様に公知であり、その説明を省略する。
【００２９】
第２前向き探索部３５は、線形構造音素ネットワーク、音響スコア算出部３３から出力された音響スコア（以下、第２音響スコアという。）、および言語スコア算出部３４から出力された言語スコア（以下、第２言語スコアという。）、および第１前向き探索部２５から出力された単語始端リストを入力とし、認識単語列を決定し、連続音声認識装置１００の外部に出力するための構成部である。
【００３０】
その際、第２前向き探索部３５は、単語始端リストに含まれる単語および始端時刻に限定して線形構造音素ネットワーク上のアクティブなノードを前向きに伝搬させ、上記の第２音響スコアおよび第２言語スコアを用いて、発話終了を待たずに単語列候補の文頭からの一意性を利用した早期確定を行うことができるものとする。もちろん、発話終了後に、第２前向き探索部３５での処理を行うことも可能である。
【００３１】
第２前向き探索部３５は、詳細言語モデルに単語トライグラムを用いる場合、直前単語毎に最適な１つの単語履歴を保存しつつ探索を進める１-ベスト探索を行うことができるものとする。また、線形構造音素ネットワークを用いる理由は、単語始端リストに従ってアクティブにする単語が各時刻で異なるので、１つの音素ノードを複数の単語で共有する必要がないためである。
【００３２】
なお、連続音声認識装置１００として、上記で示したものの他にも、以下に示す実施の形態のものも可能である。
（１）第１前向き探索部２５は、単語終端だけでなく単語終端付近に達した単語とその始端時刻を単語始端リストに追加登録し、第２前向き探索部３５は、追加登録された単語についても上記の処理を行うとする実施の形態。
（２）第１前向き探索部２５は、単語始端リストに単語平均スコアを追加登録し、第２前向き探索部３５は、上記の追加登録した単語平均スコアが所定閾値を越えたものに限定して枝刈りし、上記の処理を行うという実施の形態。
（３）第２前向き探索部３５は、単語始端リストに登録された始端時刻に、前後する一定幅の時間範囲の所定時刻を始端時刻として追加し、探索範囲を広げて単語の探索開始を許す実施形態。
【００３３】
また、第１パス処理部２０と第２パス処理部３０における処理の実行順序に関しては、以下に示す２通りの実施の形態が考えられる。
（１）第１パス処理部２０の処理中に、一定の遅れ時間で第２パス処理部６を並行して処理しつつ、発話終了を待たずに単語の早期確定を行うリアルタイム処理向きの実施形態。これは、第１パス処理部２０によって単語始端リストが生成され、完成する前であっても、候補となる所定の単語とその始端時刻の情報とが生成され次第、第２パス処理部３０での前向き探索を行い、連続音声に対応する単語列を生成するための処理を行うものである。
【００３４】
（２）リアルタイム処理が必要でない場合に、第１パス処理部２０における処理の終了後、すなわち発話終了後に第２パス処理部３０での処理を開始する実施形態。これは、第２パス処理部２０は、第１パス処理部によって単語始端リストが生成された後に、第２パス処理部での前向き探索を開始し、連続音声に対応する単語列を生成するための処理を行うものである。
【００３５】
以下、図面を参照して、本発明の第１の実施の形態に係る連続音声認識装置１００における処理について説明する。図２および図３は、本発明の第１の実施の形態に係る連続音声認識装置１００の第１パス処理部２０における処理の流れを示すフローチャートである。なお、第１の実施の形態に係る連続音声認識装置は、不図示の、インターフェース、制御・演算装置、記憶装置を有する一般的な構成のコンピュータ装置により構成することができる。その場合、発音辞書・簡易モデル記憶部２１および発音辞書・詳細モデル記憶部３１は、記憶装置に対応させ、その他の第１パス処理部２０と第２パス処理部３０とにおける各構成、および音響分析部１０は、制御・演算装置に対応させることができる。
【００３６】
ステップＳ２１０で、第１パス処理部２０は、対象となる入力音声の処理時刻ｔを０に、文頭単語＜ｓ＞に対応する音素ノードのみをアクティブに、およびそのトータルスコアを０にする、初期化処理を行う。
ステップＳ２２０で、第１パス処理部２０は、時刻ｔにおける入力音声についての音響分析結果３２を音響分析部１０から取り出す。
【００３７】
ステップＳ２３０で、第１パス処理部２０は、全アクティブ・ノードの中から１つのノードを選択し、それをノードｎとする。
ステップＳ２４０で、音響スコア算出部２３はノードｎ、時刻ｔにおける入力音声についての簡易音響スコアを算出し、第１前向き探索部２５はステップＳ２３０で選択したノードｎのトータルスコアに時刻ｔにおける入力音声についての簡易音響スコアを加算する。
【００３８】
ステップＳ２５０で、言語スコア算出部２４はノードｎの簡易言語スコアを算出し、第１前向き探索部２５はノードを遷移する度にノードｎのトータルスコアの簡易言語スコアを更新する。ノードを遷移する度にノードｎのトータルスコアの簡易言語スコアを更新するのは、音素ネットワークに探索効率の高い木構造音素ネットワークを用いており、一つのノードが複数の単語に共有されていることによるものである。
【００３９】
ステップＳ２６１で、第１前向き探索部２５は、ノードｎのトータルスコアが枝刈り閾値以下か否かを判断する。
ステップＳ２６１で、ノードｎのトータルスコアが枝刈り閾値以下と判断された場合、ステップＳ２６２で、第１前向き探索部２５は、ノードｎを非アクティブにしてステップＳ２７０に進む。
【００４０】
ステップＳ２６１で、ノードｎのトータルスコアが枝刈り閾値を超えると判断された場合、処理はステップＳ２６３に移る。
ステップＳ２６３で、第１前向き探索部２５は、ノードｎが単語ｗの終端か否かを判断する。
ステップＳ２６３で、ノードｎが単語ｗの終端と判断された場合、処理はステップＳ２６４に進む。
なお、ノードｎが単語ｗの終端でなくても、単語終端付近で十分高いスコアをもつ場合に、処理をステップＳ２６４に進める実施の形態もありえ、それを排除するものではない。
【００４１】
ステップＳ２６４で、第１前向き探索部２５は、ノードｎが属する単語ｗとその始端時刻、単語平均スコアを単語始端リストに追加し、同じ始端時刻に同じ単語が既に登録されていれば、大きい方の単語平均スコアへ更新する。
ステップＳ２６５で、第１前向き探索部２５は、後続単語の先頭ノードをすべてアクティブにする。
【００４２】
ステップＳ２６３で、終端でないと判断された場合、処理はステップＳ２６６に移り、ステップＳ２６６で、第１前向き探索部２５は、後続音素のノードをすべてアクティブにする。
上記のステップＳ２６２、ステップＳ２６５、またはステップＳ２６６のいずれかのステップでの処理が終了したら、処理はステップＳ２７０に進む。
【００４３】
ステップＳ２７０で、第１前向き探索部２５は、全アクティブ・ノードの処理が終了したか否かを判断し、終了したと判断された場合、処理はステップＳ２８０に進み、終了していないと判断された場合、処理はステップＳ２３０に戻り、次のアクティブ・ノードを選択し、上記の処理を繰り返す。
【００４４】
ステップＳ２８０で、第１前向き探索部２５は、全入力音声についての処理が終了したか否かを判断し、終了したと判断された場合、第１パスに関する処理は終了し、終了していないと判断された場合、処理はステップＳ２９０に移る。
ステップＳ２９０で、第１前向き探索部２５は、時刻ｔに１を加え、その後、処理はステップＳ２２０に戻り、時刻ｔ＋１における入力音声について上記の処理が繰り返される。
【００４５】
図４および図５は、本発明の第１の実施の形態に係る連続音声認識装置１００の第２パス処理部３０における処理の流れを示すフローチャートである。以下に、図面を参照して、本発明の第１の実施の形態に係る連続音声認識装置１００の第２パス処理部３０における処理について説明する。
【００４６】
ステップＳ４１０で、第２パス処理部３０は、対象となる入力音声の処理時刻ｔを０に、文頭単語＜ｓ＞に対応する音素ノードのみをアクティブに、およびそのトータルスコアを０にする、初期化処理を行う。
ステップＳ４２０で、第２パス処理部３０は、時刻ｔにおける入力音声についての音響分析結果３２を音響分析部１０から取り出す。
【００４７】
ステップＳ４３０で、第２パス処理部３０は、全アクティブ・ノードの中から１つのノードを選択し、それをノードｎとする。
ステップＳ４４０で、音響スコア算出部３３はノードｎ、時刻ｔにおける入力音声についての詳細音響スコアを算出し、第２前向き探索部３５はステップＳ４３０で選択したノードｎのトータルスコアに時刻ｔにおける入力音声についての詳細音響スコアを加算する。
【００４８】
ステップＳ４５１で、第２前向き探索部３５は、ノードｎのトータルスコアが枝刈り閾値以下か否かを判断する。
ステップＳ４５１で、ノードｎのトータルスコアが枝刈り閾値以下と判断された場合、ステップＳ４５２で、第２前向き探索部３５は、ノードｎを非アクティブにしてステップＳ４７０に進む。
【００４９】
ステップＳ４５１で、ノードｎのトータルスコアが枝刈り閾値を超えると判断された場合、処理はステップＳ４５３に移る。
なお、ステップＳ４５１で、第１パス処理部２０によって得られた単語始端リストに登録されている単語平均スコアを単語の先頭ノードの枝刈り判定において併用する実施の形態もありえ、それを排除するものではない。
【００５０】
ステップＳ４５３で、第２前向き探索部３５は、ノードｎが単語ｗの終端か否かを判断する。
ステップＳ４５３で、ノードｎが単語ｗの終端と判断された場合、処理はステップＳ４５４に進み、終端でないと判断された場合、処理はステップＳ４５６に移る。
【００５１】
ステップＳ４５４で、第２前向き探索部３５は、単語始端リストを参照し、時刻ｔ＋１で開始可能なすべての単語の先頭ノードをアクティブにする。もちろん、単語始端リストに登録された単語始端時刻に加えて、前後一定の幅で単語の探索開始を許す実施の形態も可能である。
ステップＳ４５５で、第２前向き探索部３５は、ステップＳ４５４でアクティブにしたノードのトータルスコアに、詳細言語スコアを加算する。
【００５２】
ステップＳ４５６で、第２前向き探索部３５は、後続音素のノードをすべてアクティブにする。
上記のステップＳ４５２、ステップＳ４５５、またはステップＳ４５６のいずれかのステップでの処理が終了したら、処理はステップＳ４６０に進む。
【００５３】
ステップＳ４６０で、第２前向き探索部３５は、全アクティブ・ノードの処理が終了したか否かを判断し、終了したと判断された場合、処理はステップＳ４７０に進み、終了していないと判断された場合、処理はステップＳ４３０に戻り、次のアクティブ・ノードを選択し、上記の処理を繰り返す。
ステップＳ４７０で、第２前向き探索部３５は、全アクティブ・ノードの単語履歴を参照し、文頭単語＜ｓ＞に後続する単語列が一意となる区間があれば、それを認識結果の一部として早期確定する。
【００５４】
ステップＳ４８０で、第２前向き探索部３５は、全入力音声についての処理が終了したか否かを判断し、終了したと判断された場合、第２パスに関する処理は終了し、終了していないと判断された場合、処理はステップＳ４９０に移る。
ステップＳ４９０で、第２前向き探索部３５は、時刻ｔに１を加え、その後、処理はステップＳ４２０に戻り、時刻ｔ＋１における入力音声について上記の処理が繰り返される。
【００５５】
なお、音声認識にリアルタイム性が求められない場合には、ステップＳ４７０で単語を早期確定することなく、ステップＳ４８０での処理を終了した後に、文末単語＜／ｓ＞から単語履歴をトレースバックし、発話全体の単語列を一度に出力する実施の形態も可能である。
【００５６】
図６を用いて、本発明の第１前向き探索部２５の動作について説明する。文頭単語＜ｓ＞は、時刻０を始端とし、時刻２、３、４を終端の候補としている。単語ｗ１は、文頭単語＜ｓ＞の終端を時刻３とした場合の文頭単語＜ｓ＞に後続し、時刻４を始端として時刻８、９を終端の候補としている。単語ｗ２は、文頭単語＜ｓ＞の終端を時刻２とした場合の文頭単語＜ｓ＞に後続し、時刻３を始端とするが、時刻８で枝刈りされている。
【００５７】
単語ｗ３は、文頭単語＜ｓ＞の終端を時刻４とした場合の文頭単語＜ｓ＞に後続し、時刻５を始端として時刻１２、１３を終端の候補としている。さらに、単語ｗ３は、時刻８を終端とした場合の単語ｗ１にも後続可能であり、時刻９を始端として時刻１２、１３を終端の候補としている。単語ｗ４は、時刻８を終端とした場合の単語ｗ１に後続し、時刻９を始端として時刻１３、１４、１５を終端の候補としている。
【００５８】
図７は、図６に示す第１前向き探索部２５によって作成される単語始端リストの一例を示す図である。時刻０を始端とする単語候補には、文頭単語＜ｓ＞があり、その単語平均スコアが括弧内に記載され、図７に示す場合、その単語平均スコアは−５９である。同様に、時刻４を始端とする単語候補には単語ｗ１が、時刻５を始端とする単語候補には単語ｗ３が、時刻９を始端とする単語候補には単語ｗ３とｗ４がある。単語ｗ２は単語終端に達する前に枝刈りされたため、この単語始端リストには記載されない。
【００５９】
図８は、図７に示す単語始端リストの制約下で動作する、第２前向き探索部３５の動作を説明するための図である。文頭単語＜ｓ＞は時刻０にアクティブとなり、前向き探索が開始される。なお、単語ｗ１は時刻４にアクティブとなって前向き探索が開始されるが、時刻４の前後の時刻３および時刻５から前向き探索を開始可能とする実施例もあり得る。
【００６０】
同様に、単語ｗ３は時刻５と時刻９、およびそれらの前後の時刻に、単語ｗ４は時刻９およびその前後の時刻にアクティブとなり、前向き探索が開始される。以上のように、第２パス処理部３０が探索すべき単語と探索開始時刻は単語始端リストによって高精度に制限されるため、より詳細な音響モデルや言語モデルを用いた場合でも全体の処理量を増大させることなく、単語の正解精度を向上させることが可能である。
【００６１】
以上説明したように、本発明の第１の実施の形態に係る連続音声認識装置およびそのプログラムは、簡易なモデルによって求めた候補単語とその始端時刻のリストを利用して詳細な前向き探索を行うため、より詳細な音響モデルおよび言語モデルを用いた場合でも全体の処理量を増大させることなく、単語の正解精度を向上させることができる。
また、第２パスにおいても文頭から文末方向への前向き探索を行うために、候補単語列の文頭からの一意性を利用した最適な早期確定手法を適用することが可能となり、リアルタイム処理に適している。
【００６２】
なお、本発明の第１の実施の形態では、第１の実施の形態に係る連続音声認識装置を用いて上記のステップＳ２１０〜Ｓ４９０の各ステップでの処理を行う連続音声認識の方法について説明したが、これらのステップＳ２１０〜Ｓ４９０を含む連続音声認識動作を実行させるための連続音声認識プログラムがインストールされた所定のコンピュータを用いて実施することも可能である。
【００６３】
また、本発明は、所定の記憶媒体に記憶された上記の連続音声認識プログラムをコンピュータにロードする方法のほかに、上記連続音声認識プログラムを通信インターフェースおよびネットワークからファイル形式で取得し、前記コンピュータで実施する方法によっても同様の効果が得られる。さらに、ネットワークを用いることでプログラムの更新や配布が容易となる。
【００６４】
【発明の効果】
以上説明したように、本発明は、音声認識に詳細な音響モデルおよび言語モデルを用いる場合でも、早期に認識結果を確定するリアルタイム性に優れ、高い認識精度かつ演算処理負担の少ない連続音声認識装置およびそのプログラムを実現することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る連続音声認識装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態に係る連続音声認識装置の第１パス処理部において行われる処理の流れを示すフローチャートである。
【図３】本発明の第１の実施形態に係る連続音声認識装置の第１パス処理部において行われる処理の一部の処理の流れを詳細に示すフローチャートである。
【図４】本発明の第１の実施形態に係る連続音声認識装置の第２パス処理部において行われる処理の流れを示すフローチャートである。
【図５】本発明の第１の実施形態に係る連続音声認識装置の第２パス処理部において行われる処理の一部の処理の流れを詳細に示すフローチャートである。
【図６】本発明の第１の実施形態に係る連続音声認識装置の第１前向き探索部の動作を説明するための図である。
【図７】本発明の第１の実施形態に係る連続音声認識装置の第１前向き探索部によって作成される単語始端リストの一例を示す図である。
【図８】単語始端リストの制約下で動作する、本発明の第１の実施形態に係る連続音声認識装置の第２前向き探索部の動作を説明するための図である。
【符号の説明】
１０  音響分析部
２０  第１パス処理部
２１  発音辞書・簡易モデル記憶部
２２  木構造音素ＮＷ生成部
２３  音響スコア算出部
２４  言語スコア算出部
２５  第１前向き探索部
３０  第２パス処理部
３１  発音辞書・詳細モデル記憶部
３２  線形構造音素ＮＷ生成部
３３  音響スコア算出部
３４  言語スコア算出部
３５  第２前向き探索部
１００  連続音声認識装置
【図１】
0003813491.tif 000002
【図２】
0003813491.tif 000003
【図３】
0003813491.tif 000004
【図４】
0003813491.tif 000005
【図５】
0003813491.tif 000006
【図６】
0003813491.tif 000007
【図７】
0003813491.tif 000008
【図８】
0003813491.tif 000009