(57)【要約】  音声認識システム（１）は、特徴量算出部（２）と、各フレームの入力音レベルを算出する音レベル算出部（６）と、各フレームの特徴量を音響モデルおよび言語モデルと照合し、認識単語列を出力する照合部（７）と、音声区間の始点フレームを、基準値を基に決定する始点判定部（３１）と、音声区間の終点フレームを、基準値を基に決定する終点判定部（３２）と、入力音レベルの変動に応じて基準値を更新する基準値更新部（４）とを備える。始点判定部（３１）は、基準値が更新される度に、始点フレームを更新し、照合部（７）は、終点フレームの前に、照合を開始し、始点フレームの通知を受ける度に、照合結果を修正する。音声認識システム（１）は、適切な音声区間に基づいた音声認識を行いつつも、レスポンスタイムの遅延を抑えることができる。
2008114448.tif 000002
【特許請求の範囲】
【請求項１】
入力された音信号を、フレームごとの特徴量に変換する特徴量算出部と、
各フレームにおける前記音信号のパワーまたはその対数値、あるいは、振幅またはその対数値、により表される入力音レベルを算出する音レベル算出部と、
特徴量算出部が算出した各フレームの特徴量を受け取って、予め記録された、音声がどのような特徴量になりやすいかをモデル化したデータである音響モデルおよび、認識単語に関するデータである言語モデルと照合し、当該照合結果に基づいて出力する認識単語列を決定する照合部と、
前記音レベル算出部によって算出された前記入力音レベルを基準値と比較することにより、音声区間の始点となる始点フレームを決定して前記照合部へ通知する始点判定部と、
前記音レベル算出部によって算出された前記入力音レベルを基準値と比較することにより、音声区間の終点となる終点フレームを決定して前記照合部へ通知する終点判定部と、
前記始点フレーム以降の入力音レベルの変動に応じて前記基準値を更新する基準値更新部とを備え、
前記始点判定部は、前記基準値更新部が基準値を更新すると、当該更新後の基準値を用いて始点フレームを更新して前記照合部へ通知し、
前記照合部は、特徴量算出部が算出した各フレームの特徴量を受け取って照合を開始した後、前記終了判定部から終点フレームの通知を受ける前に、前記始点判定部から、始点フレームの通知を受った場合、通知された始点フレームに応じて前記照合結果を修正する、音声認識システム。
【請求項２】
前記照合部は、前記始点判定部により通知された前記始点フレームから、前記終点判定部により通知された前記終点フレームまでの音声区間に含まれるフレームの特徴量の照合結果のみに基づいて、前記認識単語列を決定する、請求項１に記載の音声認識システム。
【請求項３】
前記照合部は、各フレームの特徴量の照合結果に対して重み付けを行うことにより、前記照合結果を修正するものであって、
前記始点判定部により通知された前記始点フレームから前記終点判定部により通知された前記終点フレームまでの音声区間に含まれないフレームの特徴量の照合結果の重みを、前記始点フレームから前記終点フレームまでの音声区間内のフレームの特徴量の照合結果の重みよりも軽くして、重み付けを行う、請求項１に記載の音声認識システム。
【請求項４】
前記照合部は、前記始点判定部により通知された前記始点フレームから前記終点判定部により通知された前記終点フレームまでの区間にないフレームを含む単語を除外して、前記出力する認識単語列を決定する、請求項１に記載の音声認識システム。
【請求項５】
前記基準値更新部は、前記始点フレーム以降のフレームにおける最大入力音レベルを計算し、当該最大入力音レベルに応じて前記基準値を更新する、請求項１に記載の音声認識システム。
【請求項６】
前記基準値更新部は、時間経過と共に前記基準値を段階的に下げていくことを特徴とする、請求項１に記載の音声認識システム。
【請求項７】
前記基準値更新部は、時間経過と共に、計算された前記最大入力音レベルを段階的に下げていくことを特徴とする、請求項５に記載の音声認識システム。
【請求項８】
入力された音信号を、フレームごとの特徴量に変換する特徴量算出処理と、
各フレームにおける前記音信号のパワーまたは振幅により表される入力音レベルを算出する音レベル算出処理と、
特徴量算出処理で算出された各フレームの特徴量を受け取って、予め記録された、音声がどのような特徴量になりやすいかをモデル化したデータである音響モデルおよび、認識単語に関するデータである言語モデルと照合し、当該照合結果に基づいて認識単語列を出力する照合処理と、
前記音レベル算出処理によって算出された前記入力音レベルを基準値と比較することにより、音声区間の始点となる始点フレームを決定する始点判定処理と、
前記音レベル算出処理によって算出された前記入力音レベルを基準値と比較することにより、音声区間の終点となる終点フレームを決定する終点判定処理と、
前記始点フレーム以降の入力音レベルの変動に応じて前記基準値を更新する基準値更新処理とをコンピュータに実行させる音声認識プログラムであって、
前記始点判定処理においては、前記基準値更新処理で基準値が更新されると、当該更新後の基準値を用いて始点フレームが更新され、
前記照合処理においては、特徴量算出処理で算出された各フレームの特徴量を受け取って照合が開始された後であって前記終了判定処理で終点フレームが決定される前に、前記始点判定処理で始点フレームが更新された場合、更新された始点フレームに応じて前記照合結果が修正されることを特徴とする、音声認識プログラム。
【請求項９】
入力された音信号を、フレームごとの特徴量に変換する特徴量算出ステップと、
各フレームにおける前記音信号のパワーまたは振幅により表される入力音レベルを算出する音レベル算出ステップと、
特徴量算出ステップで算出された各フレームの特徴量を受け取って、予め記録された、音声がどのような特徴量になりやすいかをモデル化したデータである音響モデルおよび、認識単語に関するデータである言語モデルと照合し、当該照合結果に基づいて認識単語列を出力する照合ステップと、
前記音レベル算出ステップで算出された前記入力音レベルを基準値と比較することにより、音声区間の始点となる始点フレームを決定する始点判定ステップと、
前記音レベル算出ステップで算出された前記入力音レベルを基準値と比較することにより、音声区間の終点となる終点フレームを決定する終点判定ステップと、
前記始点フレーム以降の入力音レベルの変動に応じて前記基準値を更新する基準値更新ステップとを含む音声認識方法であって、
前記始点判定ステップにおいては、前記基準値更新ステップで基準値が更新されると、当該更新後の基準値を用いて始点フレームが更新され、
前記照合ステップにおいては、特徴量算出ステップで算出された各フレームの特徴量を受け取って照合が開始された後であって前記終了判定ステップで終点フレームが決定される前に、前記始点判定ステップで始点フレームが更新された場合、更新された始点フレームに応じて前記照合結果が修正されることを特徴とする、音声認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの発話を含む音信号を入力して、音声認識処理を行い、発話に含まれるに認識単語列を出力する音声認識処理、音声認識プログラムおよび音声認識方法に関する。
【背景技術】
【０００２】
従来、音声認識システムは、入力された音声データから、音声区間（発話区間）が時間軸上で何処に存在するのか判定する機能を持つことが多い。そのような音声認識システムは、音声区間と判定された区間のフレームについて特徴量を算出し、この特徴量を、音響モデルおよび言語モデルと照合して認識結果を出力する。何処に音声区間が存在するのかを判定するために、例えば、音声認識システムは、入力音声のパワーが基準値（＝背景雑音レベル＋α（しきい値））を一定時間（一定フレーム数）連続して上回ったら、音声区間が開始されたと判断することができる。また、音声認識システムは、入力音声のパワーが，基準値を一定時間連続して下回ったら，音声区間が終了したと判断することができる。【０００３】
上記の音声区間判定方法では，背景雑音レベルがしきい値αを超えて変動すると、雑音区間が誤って音声区間と判断されてしまって誤認識を招く場合がある。そこで、音声区間の始端の判定を、入力音声の最大エネルギーに応じて動的に行う音声区間の始端検出装置が提案されている（例えば、特許文献１参照）。この始端検出装置は、音声区間の始端を検出してから終端を検出するまで、入力された音声データをメモリバッファに記録しておき、入力されてきた音声データの中で、音声エネルギーの最大値かつ極大値を検出した時点で新たに閾値を設定し直し、この閾値によって新たな始端判定を行い直す。その後、終端が検出されると、始端と終端の間の音声データが出力される。【０００４】
しかしながら、上記の始端判定装置では、音声区間の終端が決まってからしか、照合処理等を開始できない構成となるので、レスポンスタイムが延びるという課題があった。
【特許文献１】特許第２６２５６８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
そこで、本発明は、適切な音声区間に基づいた音声認識を行いつつも、レスポンスタイムの遅延を抑えることができる音声認識システム、音声認識プログラムおよび音声認識方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明にかかる音声認識システムは、入力された音信号を、フレームごとの特徴量に変換する特徴量算出部と、各フレームにおける前記音信号のパワーまたは振幅により表される入力音レベルを算出する音レベル算出部と、特徴量算出部が算出した各フレームの特徴量を受け取って、予め記録された、音声がどのような特徴量になりやすいかをモデル化したデータである音響モデルおよび、認識単語に関するデータである言語モデルと照合し、当該照合結果に基づいて出力する認識単語列を決定する照合部と、前記音レベル算出部によって算出された前記入力音レベルを基準値と比較することにより、音声区間の始点となる始点フレームを決定して前記照合部へ通知する始点判定部と、前記音レベル算出部によって算出された前記入力音レベルを基準値と比較することにより、音声区間の終点となる終点フレームを決定して前記照合部へ通知する終点判定部と、前記始点フレーム以降の入力音レベルの変動に応じて前記基準値を更新する基準値更新部とを備え、前記始点判定部は、前記基準値更新部が基準値を更新すると、当該更新後の基準値を用いて始点フレームを更新して前記照合部へ通知し、前記照合部は、特徴量算出部が算出した各フレームの特徴量を受け取って照合を開始した後、前記終了判定部から終点フレームの通知を受ける前に、前記始点判定部から、始点フレームの通知を受った場合、通知された始点フレームに応じて前記照合結果を修正する。【０００７】
上記構成により、基準値更新部は、始点フレーム以降の入力音レベルの変動に応じて基準値を更新し、始点判定部は更新された基準値を基に始点フレームを更新する。これにより、入力された音信号に含まれる音声の入力音レベルに応じて始点フレームが更新される。そのため、例えば、非定常な雑音や、入力音レベルのばらつき等による、音声区間の始点の判定誤りが自動的に是正される。また、終点判定部も、入力音レベルに応じて終点フレームを決定する。このように始点判定部で更新された始点フレームおよび終点判定部が決定した終点フレームは、照合部に通知される。照合部は、照合処理開始後、終点フレームの通知を受ける前に始点フレームが更新されると、その始点フレームに応じて照合結果を修正する。すなわち、照合部は、終点フレームを待たずに照合処理を進めることができるの構成になっている。そのため、レスポンスタイムの遅延が抑えられる。これに加えて、照合部は、更新された始点フレームに応じて照合結果を修正するので、始点判定の誤りが是正された適切な音声区間に基づいた認識結果を出力することができる。また、照合部は、始点フレームが更新されても、始から照合処理をやり直すのではなく、照合結果を修正するので、すでに行った照合処理の照合結果を無駄なく利用することができる。その結果、レスポンスタイムが改善される。ひいては、適切な音声区間に基づいた音声認識を行いつつも、レスポンスタイムの遅延を抑えることが可能になる。【０００８】
なお、入力音レベルは、各フレームにおける音信号のパワーまたはその対数値、あるいは、振幅またはその対数値で表されてもよい。【０００９】
本発明にかかる音声認識システムにおいて、前記照合部は、前記始点判定部により通知された前記始点フレームから、前記終点判定部により通知された前記終点フレームまでの音声区間に含まれるフレームの特徴量の照合結果のみに基づいて、前記認識単語列を決定する態様とすることができる。【００１０】
これにより、照合部は、始点判定部および終点判定部により音声区間ではないと判定された区間の照合結果を除外した結果に基づいて、認識単語列を決定することができる。その結果、雑音である可能性の高いフレームの照合結果が、認識結果へ影響を及ぼすことが軽減される。【００１１】
本発明にかかる音声認識システムにおいて、前記照合部は、各フレームの特徴量の照合結果に対して重み付けを行うことにより、前記照合結果を修正するものであって、前記始点判定部により通知された前記始点フレームから前記終点判定部により通知された前記終点フレームまでの音声区間に含まれないフレームの特徴量の照合結果の重みを、前記始点フレームから前記終点フレームまでの音声区間内のフレームの特徴量の照合結果の重みよりも軽くして、重み付けを行う態様とすることができる。【００１２】
これにより、照合部は、音声区間外と判定されたフレームの特徴量の照合結果の重みを、音声区間内の照合結果の重みより軽く見積もって、認識単語列を決定する。そのため、照合部は、始点判定部および終点判定部により音声区間ではないと判定された区間の照合結果の影響度を軽くして、認識単語列を決定することができる。その結果、雑音である可能性の高いフレームの照合結果が、認識結果へ影響を及ぼすことが軽減される。すなわち、音声区間判定結果の僅かな誤りが、大きく認識結果に影響を及ぼすことが軽減され、ひいては認識結果が安定することになる。【００１３】
本発明にかかる音声認識システムにおいて、前記照合部は、前記始点判定部により通知された前記始点フレームから前記終点判定部により通知された前記終点フレームまでの区間にないフレームに含まれる単語から、前記出力する認識単語列を決定する態様とすることができる。【００１４】
これにより、照合部は、音声区間外と判定されたフレームにかかる単語を、出力する認識単語列から除外することができる。その結果、雑音である可能性の高いフレームの照合結果が、認識結果へ影響を及ぼすことが軽減される。【００１５】
本発明にかかる音声認識システムにおいて、前記基準値更新部は、前記始点フレーム以降のフレームにおける最大入力音レベルを計算し、当該最大入力音レベルに応じて前記基準値を更新する態様とすることができる。【００１６】
基準値更新部は、始点フレーム以降のフレームにおける最大入力音レベルを基に基準値を更新することで、音声区間の入力音レベルを基準値に反映させることができる。【００１７】
本発明にかかる音声認識システムにおいて、前記基準値更新部は、時間経過と共に前記基準値を段階的に下げていく態様とすることができる。【００１８】
一般的に、人の発話において、発話末尾では発話音量は小さくなる傾向がある。基準値更新部は、時間経過と共に基準値を段階的に下げていくことにより、この発話末尾での発話音量が小さくなる傾向に対応して、基準値を更新することができる。終了判定部は、このように更新された基準値に基づいて終了フレームを判定することにより、人の発話の傾向に応じて適切な終了フレームを判定することができる。【００１９】
本発明にかかる音声認識システムにおいて、前記基準値更新部は、時間経過と共に、計算された前記最大入力音レベルを段階的に下げていく態様とすることができる。【００２０】
基準値は、最大入力音レベルに応じて更新されるので、発話末尾での発話音量が小さくなる傾向に対応して基準値が更新される。また、例えば、話者が急に感情的になって一時的に入力音レベルが急上昇したり、突発的な大音量雑音が入ったりした場合等の不規則な要因により最大音レベルが上がってしまい、その後適切な基準値が設定できなくなるという事態を防ぐこともできる。【００２１】
本発明にかかる音声認識プログラムは、入力された音信号を、フレームごとの特徴量に変換する特徴量算出処理と、各フレームにおける前記音信号のパワーまたは振幅により表される入力音レベルを算出する音レベル算出処理と、特徴量算出処理で算出された各フレームの特徴量を受け取って、予め記録された、音声がどのような特徴量になりやすいかをモデル化したデータである音響モデルおよび、認識単語に関するデータである言語モデルと照合し、当該照合結果に基づいて認識単語列を出力する照合処理と、前記音レベル算出処理によって算出された前記入力音レベルを基準値と比較することにより、音声区間の始点となる始点フレームを決定する始点判定処理と、前記音レベル算出処理によって算出された前記入力音レベルを基準値と比較することにより、音声区間の終点となる終点フレームを決定する終点判定処理と、前記始点フレーム以降の入力音レベルの変動に応じて前記基準値を更新する基準値更新処理とをコンピュータに実行させる音声認識プログラムであって、前記始点判定処理においては、前記基準値更新処理で基準値が更新されると、当該更新後の基準値を用いて始点フレームが更新され、前記照合処理においては、特徴量算出処理で算出された各フレームの特徴量を受け取って照合が開始された後であって前記終了判定処理で終点フレームが決定される前に、前記始点判定処理で始点フレームが更新された場合、更新された始点フレームに応じて前記照合結果が修正されることを特徴とする。【００２２】
本発明にかかる音声認識方法は、入力された音信号を、フレームごとの特徴量に変換する特徴量算出ステップと、各フレームにおける前記音信号のパワーまたは振幅により表される入力音レベルを算出する音レベル算出ステップと、特徴量算出ステップで算出された各フレームの特徴量を受け取って、予め記録された、音声がどのような特徴量になりやすいかをモデル化したデータである音響モデルおよび、認識単語に関するデータである言語モデルと照合し、当該照合結果に基づいて認識単語列を出力する照合ステップと、前記音レベル算出ステップで算出された前記入力音レベルを基準値と比較することにより、音声区間の始点となる始点フレームを決定する始点判定ステップと、前記音レベル算出ステップで算出された前記入力音レベルを基準値と比較することにより、音声区間の終点となる終点フレームを決定する終点判定ステップと、前記始点フレーム以降の入力音レベルの変動に応じて前記基準値を更新する基準値更新ステップとを含む音声認識方法であって、前記始点判定ステップにおいては、前記基準値更新ステップで基準値が更新されると、当該更新後の基準値を用いて始点フレームが更新され、前記照合ステップにおいては、特徴量算出ステップで算出された各フレームの特徴量を受け取って照合が開始された後であって前記終了判定ステップで終点フレームが決定される前に、前記始点判定ステップで始点フレームが更新された場合、更新された始点フレームに応じて前記照合結果が修正されることを特徴とする。【００２３】
また、本発明にかかる記録媒体は、本発明にかかる音声認識プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００２４】
本発明によれば、適切な音声区間に基づいた音声認識を行いつつも、レスポンスタイムの遅延を抑えることができる音声認識システム、音声認識プログラムおよび音声認識方法を提供することができる。
【図面の簡単な説明】
【００２５】
【図１】図１は、音声認識システムの構成を表す機能ブロック図である。
【図２】図２は、入力音信号の入力音レベル、基準値等の時間遷移を表わすグラフである。
【図３】図３は、音声区間判定部の処理の流れを示すフローチャートである。
【図４】図４は、照合部の処理の流れを示すフローチャートである。
【発明を実施するための最良の形態】
【００２６】
（音声認識システムの構成）
図１は、本実施形態にかかる音声認識システムの構成を表す機能ブロック図である。図１に示す音声認識システム１は、ユーザの音声を含む入力音信号から、単語列を認識する音声認識処理を行い、認識した単語列を認識結果として出力するものである。音声認識システム１は、例えば、音声対話アプリケーション等の上位プログラムからユーザの音声を渡され、認識結果を上位プログラムへ返す音声認識エンジンとして使用される。【００２７】
音声認識システム１は、特徴量算出部２、音声区間判定部３、基準値更新部４、音レベルバッファ５、音レベル算出部６、照合部７、音響モデル記録部８および言語モデル記録部９を備える。【００２８】
音声認識システムは、例えば、パーソナルコンピュータまたは電子機器に組み込まれたコンピュータ等の任意のコンピュータにプログラムをインストールすることによって実現される。すなわち、特徴量算出部２、音声区間判定部３、基準値更新部４、音レベル算出部６、照合部７は、コンピュータのＣＰＵがこれらの機能を実現するプログラムに従って動作することによって具現化される。従って、特徴量算出部２、音声区間判定部３、基準値更新部４、音レベル算出部６、照合部７の機能をコンピュータで実現するためのプログラムまたはそれを記録した記録媒体も、本発明の一実施態様である。また、音レベルバッファ５、音響モデル記録部８、言語モデル記録部９は、コンピュータの内蔵記憶装置またはこのコンピュータからアクセス可能な記憶装置によって具現化される。【００２９】
特徴量算出部２は、入力音信号をフレームごとの特徴量に変換する。特徴量には、ＭＦＣＣ、ＬＰＣケプストラムやパワー、それらの一次や二次の回帰係数の他、それらの値を主成分分析や判別分析により次元圧縮したものなどの多次元ベクトルが使用されることが多いが、ここでは特に限定しない。算出された特徴量は、各フレームに固有の情報（フレーム固有情報）と共に、内部のメモリ（図示せず）に格納される。なお、フレーム固有情報は、例えば、各フレームが先頭から何番目のフレームであるかを示すフレーム番号や、各フレームの開始時点、終了時点などを表すデータである。【００３０】
照合部７は、特徴量算出部２が算出した各フレームの特徴量を受け取って、音響モデル記録部８の音響モデルおよび言語モデル記録部９の言語モデルと照合し、当該照合結果に基づいて認識単語列を決定し、認識結果として出力する。音響モデルは、音声がどのような特徴量になりやすいかをモデル化したデータであり、言語モデルは、認識単語に関するデータである。例えば、言語モデルには、文法、認識語彙情報等が含まれる。【００３１】
具体的には、照合部７は、例えば、以下のとおり照合処理を行う。まず、照合部７は、各フレームの特徴量と音響モデルとを比較することにより、音声区間に含まれるフレーム毎に音素スコアを算出する。なお、この場合、音響モデルは、例えば、どの音素がどういう特徴量になりやすいかという情報をモデル化したものであり、現在の主流は音素ＨＭＭ（Ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  Ｍｏｄｅｌ）である。音響モデルは、音響モデル記録部８に予め格納されている。【００３２】
さらに、照合部７は、算出した音素スコアを基に、言語モデル記録部９に記憶されている文法と、認識語彙情報とに従って複数の単語列（文）候補を仮定し、各単語列候補のスコア（尤度）を算出する。照合部７は、算出したスコアが一番良い単語列候補を、認識結果として出力する。【００３３】
ここで、言語モデル記録部９に記録される文法の例として、文脈自由文法（ＣＦＧ：Ｃｏｎｔｅｘｔ  Ｆｒｅｅ  Ｇｒａｍｍａｒ）や有限状態文法（ＦＳＧ：Ｆｉｎｉｔｅ  Ｓｔａｔｅ  Ｇｒａｍｍａｒ）、単語連鎖の確率モデル（Ｎ−ｇｒａｍ)等が挙げられる。本発明では用いられる文法を特に限定するものではないが、以下の例では、ＦＳＧを使用するものとする。また、認識語彙情報としては、例えば、単語を識別するＩＤと、読み（どのように発声するのか）もしくは読みと等価の音素列とを含むが、他に任意の情報を含み得る。【００３４】
このように、照合部７が、各フレームの特徴量の音響モデルおよび言語モデルとの照合結果の例として、音響モデルと特徴量との一致度を表わす音素スコアと、音素スコアと言語モデルとを基にして計算される各単語列候補のスコア等が挙げられるが、照合結果は上記例に限られない。例えば、事後確率化により補正された音素スコアや単語スコアが照合結果であってもよいし、継続時間長、単語挿入ペナルティ、単語の共起確率、単語事後確率に基づく信頼度といった任意の要素が照合結果に含まれてもよい。なお、音素スコアが尤度と呼ばれる場合もある。【００３５】
音レベル算出部６は、入力音信号から、フレームごとの音声のパワー（フレームパワー）を、入力音レベルとして順次算出する。音レベル算出部６は、例えば、各フレームにおける音信号の自乗和または自乗和平均値を算出して、これを対数化した値を、各フレームのフレームパワーとすることができる。なお、音レベル算出部６は、上記フレームパワーの代わりに各フレームの振幅または振幅の平均値を、入力音レベルとして算出してもよい。また、入力音レベルは、時間領域で計算された値でもよいし、ＦＦＴ等によりスペクトル領域で計算された値でもよい。すなわち、入力音レベルは、音の大きさのレベルを表わす値であればよく、その算出方法は上記例に限られない。【００３６】
音レベル算出部６で算出された各レフ−ムのフレームパワーは、各フレーム固有情報と共に、音レベルバッファ５に記録される。なお、本実施形態では、フレームパワーと特徴量がそれぞれ別個に記録される態様であるが、フレームパワーおよび特徴量は、まとめて記録される態様であってもよい。【００３７】
音声区間判定部３は、始点判定部３１と、終点判定部３２を含む。始点判定部３１は、音レベル算出部６によって算出され、音レベルバッファ５に記録された各フレームの入力音レベルを基準値と比較することにより、音声区間の始点となる始点フレームを決定して前記照合部へ通知する。終点判定部３２は、音レベルバッファ５に記録された各フレームの入力音レベルを基準値と比較することにより、音声区間の始点となる始点フレームを決定して照合部７へ通知する。【００３８】
始点判定部３１は、例えば、音レベルバッファ５に記録された各フレームの入力音レベル（ここでは、一例としてフレームパワー）を時系列に沿って順次読み出して、基準値と比較する。始点判定部３１は、例えば、フレームパワーが基準値を越えるフレームが所定時間連続する場合に、フレームパワーが基準値を越えた時点のフレームを始点フレームと判定することができる。同様に、終点判定部３２は、フレームパワーが基準値を下回るフレームが所定時間連続する場合に、フレームパワーが基準値を下回った時点のフレームを終点フレームと判定することができる。このようにして判定された始点フレームと終点フレームとの間の区間が音声区間であると判定することができる。【００３９】
基準値更新部４は、始点フレーム以降のフレームにおける入力音レベルの変動に基づいて基準値を更新する。例えば、基準値更新部４は、入力音レベルの変動から、雑音ではなく音声であると推定できる音レベル（推定発話レベル）を算出し、この推定発話レベルに基づいて基準値を更新することができる。具体的には、基準値更新部４は、始点フレーム以降のフレームにおいて、フレームパワーが最大になるフレームを検出し、この最大フレームパワーを推定発話レベルとする。そして、基準値更新部４は、この検出した最大フレームパワー（推定発話レベル）から一定の値βを引いた値を新たな基準値候補とし、基準値候補が現在の基準値を上回る場合に、基準値を更新してもよい。【００４０】
基準値更新部４は、基準値を更新すると、更新後の基準値を始点判定部３１および終点判定部３２に通知する。始点判定部３１は、更新後の基準値を用いて、始点フレームを更新する。始点判定部３１は、例えば、入力音信号の入力開始時の先頭フレームから、フレームごとに順次、入力音レベルと更新後の基準値とを比較することにより、始点フレームを再設定してもよい。あるいは、始点判定部３１は、基準値が更新された時点のフレームから順次過去に遡り、入力音レベルが基準値を下回らない範囲を音声区間とするように、始点フレームを決定してもよい。なお、終点判定部３２も、更新後の基準値を用いて終点フレームを決定する。【００４１】
始点判定部３１は、決定または更新した始点フレームを照合部７へ通知する。終点判定部３２も、決定した終点フレームを照合部７へ通知する。【００４２】
照合部７は、終点判定部３２から終点フレームの通知を受ける前に、例えば、初めに始点フレームが通知されたときに、特徴量算出部２から特徴量を受け取って照合処理を開始しておく。そして、その後さらに始点判定部３１から始点フレームの通知を受けると、通知された始点フレームに応じて照合結果を修正する。そして、終点判定部３２からの終点フレームの通知に基づいて照合を終了する。すでに、終点フレーム以降のフレームの特徴量についても照合処理をしていた場合は、例えば、終点フレーム以降の前記照合結果を破棄する等して照合結果を修正する。【００４３】
照合部７が更新された始点フレームに応じて照合結果を修正する例を以下に挙げる。第１の例として、照合部７は、更新によって始点フレームが時間的に後になった場合、更新後の始点フレーム以前のフレーム（すなわち、音声区間外のフレーム）については、照合処理を行わなかったものとして処理を進めることができる。すなわち、照合部７は、始点フレーム以前の照合結果を照合結果から除外して、認識単語列を決定することができる。また、第２の例として、照合部７は、認識単語列の候補となる単語のうち、始点フレーム以前のフレームに係っている単語は、認識候補から除外することができる。第３の例として、照合部７は、始点フレーム以前のフレームにかかる音素スコア、単語または単語列のスコアの重みを他と比べて軽くすることができる。【００４４】
なお、照合部７は、例えば、以下のような処理を追加して認識結果の向上を試みることができる。一般的に、人間の発話開始時および終了時の発声は、それ以外の時の発声と比べて不明瞭でパワーも低くなりやすい。これに対応するため、照合部７は、始点フレームと終点フレームとの間の区間（音声区間）の前後に数フレーム追加した区間について照合処理を行うことにより、パワーが低い発話開始時、終了時の発声を、音声区間外として誤って切り落とすことを回避することも可能である。【００４５】
また、照合部７は、始点フレームと終点フレームとの間の区間（音声区間）の前後一定数のフレームも音声区間に追加し、追加したフレームのうち一部についても照合処理を行うようにしてもよい。具体的には、照合部７は、音声区間前後の一定数のフレームを、音声区間に追加し、追加したフレームのうち一部に間引きフラグを設定する。このとき、照合部７は、例えば、元の音声区間から遠ざかるにつれて、間引きフラグを設定するフレームの割合を高くすることができる。照合部７は、間引きフラグが設定されているフレームについては、照合処理を行わない。これにより、発話らしさ／雑音らしさを反映した照合が行われる。すなわち、雑音らしさが高いフレームによる悪影響を軽減できる。なお、このような音声区間両端のフレーム追加および間引きフラグの設定は、音声区間判定部３が行ってもよい。【００４６】
以上、音声認識システム１の構成について説明したが、本発明は、上記構成に限られない。例えば、音声区間判定部３は、照合部７に加えて特徴量算出部２へも、音声区間の始点と終点を通知し、特徴量算出部２は、通知された音声区間のみについて特徴量を算出して照合部７へ渡す構成にしてもよい。これにより、特徴量算出部２の負荷を軽減することができる。また、図１に示す例では、音響モデル記録部８および言語モデル記録部９は、音声認識システム１内に設けられているが、音声認識システム１の外に設けられていてもよい。【００４７】
（音声認識システムの動作例）
次に、音声認識システム１の動作例について、図２も参照しながら説明する。図２は、入力音信号の入力音レベル、基準値等の時間遷移を表わすグラフである。図２に示すグラフでは、縦軸が音レベル、横軸が時刻ｔを示している。太線で描かれた関数Ｓ（ｔ）は入力音レベルの時間遷移、太い点線で描かれた関数Ａ（ｔ）は基準値の時間遷移、一点鎖線で描かれた関数Ｂ（ｔ）は推定発話レベルの時間遷移、細い点線で描かれた関数Ｃ（ｔ）は推定背景雑音レベルの時間遷移をそれぞれ表わしている。【００４８】
ここでは、一例として、関数Ｓ（ｔ）で示される入力音レベルの時間遷移は、音レベル算出部６によって算出された各フレームのフレームパワーで表わされるものとする。そのため、図２でＳ（ｔ）は連続関数で描かれているが、実際はフレームごとの離散値の集合である。すなわち、図２において時刻ｔは連続値ではなく各フレームに対応する離散値であるとする。また、Ｂ（ｔ）で示される推定発話レベルは、時刻Ｔ０から時刻ｔまでの間のフレームパワーの最大値とする。このＢ（ｔ）は、基準値更新部４が、音レベルバッファ５に記録された各フレームのフレームパワーを参照して計算することができる。【００４９】
図２に示す例では、時刻Ｔ０において、入力音信号の入力が開始される。時刻Ｔ０〜時刻Ｔ１までは、入力音レベルＳ（ｔ）＜基準値Ａ（ｔ）である。時刻Ｔ１において、入力音レベルＳ（ｔ）は基準値Ａ（ｔ）を越える。その後しばらくは、Ｓ（ｔ）＞Ａ（ｔ）である。始点判定部３１は、Ｓ（ｔ）＞Ａ（ｔ）が所定時間（ここでは、γとする）続いた場合、Ｓ（ｔ）＞Ａ（ｔ）となった時刻Ｔ１を音声区間の始点と判定する。すなわち、始点判定部３１は、時刻Ｔ１のフレームを始点フレームとする。ここで、γは、短時間の雑音に誤反応しないための待ち時間であり、その値は例えば、最短単語長から決定されてもよい。【００５０】
時刻Ｔ１〜時刻Ｔ２では、基準値Ａ（ｔ）は、推定背景雑音レベルＣ（ｔ）に一定値αを加算した値である[すなわち、Ａ（ｔ）＝Ｃ（ｔ）＋α]。ここで、推定背景雑音レベルＣ（ｔ）は、例えば、基準値更新部４が入力音レベルＳ（ｔ）を基に算出してもよいし、予め記録された値であってもよい。【００５１】
本実施形態では、一例として、推定背景雑音レベルは，非音声区間における入力音レベルから算出する。その算出例としては、最新Ｎ個分のフレームの平均値（移動平均）を用いてもよいし、次式のようにＩＩＲフィルタを用いて算出してもよい。【００５２】
Ｃ（ｔ） = ｐ＊Ｓ（ｔ）＋（１−ｐ）＊Ｓ（ｔ−１） （０＜ｐ＜１）
時刻Ｔ２の少し前から、入力音レベルがＳ（ｔ）急激に上昇開始し、それに伴ってＢ（ｔ）も増加し始める。そして時刻Ｔ２で、推定発話レベルＢ（ｔ）から一定値βを引いた値[Ｂ（ｔ）―β]が、Ｃ（ｔ）＋αより大きくなっている。この場合、基準値更新部４は、基準値Ａ（ｔ）＝Ｂ（ｔ）−βとして更新する処理を行う。すなわち、基準値更新部４は、推定発話レベルＢ（ｔ）が増加し、かつ、[Ｂ（ｔ）−β]＞[Ｃ（ｔ）＋α] となる場合には、Ａ（ｔ）＝Ｂ（ｔ）−βとして更新する処理を行う。これにより、基準値更新部４は、基準値Ａ（ｔ）を発話レベルに応じた適切な値に更新することが可能になる。なお、時刻Ｔ２〜時刻Ｔ４のような場合に、基準値更新部４は、推定発話レベルＢ（ｔ）の増加の度に毎回基準値Ａ（ｔ）を更新する必要はなく、例えば、一定時間ごとに、基準値Ａ（ｔ）を更新してもよい。【００５３】
基準値更新部４が基準値Ａ（ｔ）を更新するのに伴って、始点判定部３１が音声区間の始点フレームを更新する処理を行う。例えば、時刻Ｔ４において、始点判定部３１は以下のように始点を更新する。始点判定部３１は、時刻Ｔ０から時系列に沿って、フレームごとに入力音レベルＳ（ｔ）と基準値Ａ（Ｔ４）とを比較していく。Ｓ（ｔ）＞Ａ（Ｔ４）となるフレームが所定時間（γ）続いた場合に、Ｓ（ｔ）がＡ（Ｔ４）を越える時点（すなわち、時刻Ｔ３）のフレームを始点フレームとすることができる。また、始点判定部３１は、時刻Ｔ４から時系列を遡って、フレームごとにＳ（ｔ）とＡ（Ｔ４）とを比較していき始点フレームを決定してもよい。このようにして、音声区間の始点フレームは時刻Ｔ１のフレームから時刻Ｔ３のフレームに更新される。時刻Ｔ４以降は推定発話レベルＢ（ｔ）は更新されないので、時刻Ｔ５までは、基準値Ａ（ｔ）も一定である。【００５４】
例えば、図２の時刻Ｔ１〜時刻Ｔ３の区間において、エコーのような音声雑音によって入力音レベルが一時的に上昇していた場合、時刻Ｔ１〜時刻Ｔ３の区間は、本当は雑音区間である。この場合、初め、始点判定部３１は、時刻Ｔ１を誤って音声区間の始点と判定してしまが、その後、時刻Ｔ４における基準値Ａ（ｔ）更新に伴って、誤って判定された始点時刻（時刻Ｔ１）を正しい始点時刻（時刻Ｔ３）に修正することができる。【００５５】
時刻Ｔ５では、入力音レベルＳ（Ｔ５）は、基準値Ａ（Ｔ５）を下回り、その後Ｓ（ｔ）＜Ａ（ｔ）となる。このように、Ｓ（ｔ）＜Ａ（ｔ）となってその状態が所定時間（例えば、γ´続いた場合（＝時刻Ｔ６）、終点判定部３２は、時刻Ｔ５を音声区間の終点とする。すなわち、時刻Ｔ５のフレームが終点フレームと判定される。ここで、γ´は、促音や単語間ポーズなどの発話途中の一時的な無音によって，発話終端を誤検出しないための待ち時間である。このように、終点判定部３２は、時刻ｔにおける入力音レベルＳ（ｔ）とその時刻ｔにおける基準値Ａ（ｔ）とを比較して終点を判定するので、推定発話レベルＢ（ｔ）に応じて適切に更新された基準値Ａ（ｔ）を基に終点を判定することができる。その結果、例えば、発話終了後の雑音区間を誤って音声区間と判定してしまうことが回避される。【００５６】
なお、基準値更新部４は、音声区間終点の時刻Ｔ６以降の基準値Ａ（ｔ）を、推定背景雑音レベルＣ（ｔ）に基づいた値[すなわち、Ａ（ｔ）＝Ｃ（ｔ）＋α]とする。これにより、次の発話検出に対する基準値の初期値は推定背景雑音レベルに基づくものとなる。なお、基準値更新部４は、音声区間終了後にそれまでの基準値をクリアせず、最大して推定背景雑音レベルに合わせる代わりに、最大入力音レベルＡ（ｔ）＝Ｂ（ｔ）−βのまま、次の音声区間の始点が検出されるようにしてもよい。また、図２に示す例では、最大入力音レベルＢ（ｔ）は、音声区間が終了後もそのままで、次の音声区間の始点が検出されるようになっているが、例えば、音声区間が終了するたびに初期値に戻されてもよい。【００５７】
（照合部７の動作例）
次に、図２に示すような入力音レベルの変動のあった場合の照合部７の動作例を説明する。図２に示した例では、時刻Ｔ１からγ経過後に、始点判定部３１から照合部７へ始点フレームとして時刻Ｔ１のフレームが通知される。そして、時刻Ｔ４後の始点更新処理の後には、始点フレームとして時刻Ｔ３のフレームが照合部７へ通知される。その後、時刻Ｔ６の後に、終点フレームとして時刻Ｔ６のフレームが照合部７へ通知される。【００５８】
照合部７は、時刻Ｔ１のフレームが始点フレームとして通知されると、照合処理を開始する。上述したように、照合部７は、例えば、時刻Ｔ１以降の各フレームの特徴量と音響モデルとを比較して、フレームごとに音素スコアを算出する。この音素スコアを基に、言語モデルを参照して、複数の単語列候補を作成し、それぞれの単語列候補のスコアを計算する。【００５９】
そして、時刻Ｔ３のフレームが始点フレームとして通知された時、照合処理が時刻Ｔ１以降のフレームにまで進んでいた場合（Ｔ４とＴ３の間が開いているほど起こり易い）には、照合部７は、時刻Ｔ３以降のフレームの照合結果を時刻Ｔ３より前のフレームの照合結果より優先させるように、照合結果を修正する。【００６０】
ここで、照合結果を修正する処理の具体例をいくつか説明する。まず、第１の例は、照合部７が時刻Ｔ３より前のフレームの照合結果を破棄する処理である。例えば、照合部７は、時刻Ｔ３より前のフレームの音素スコアを規定の最悪値（最低値）に置き換え、その音素スコアを利用して求めた単語スコアを再計算する。その際、照合部７は、認識候補の枝狩りが行うことで、最悪値の音素スコアを単語スコアに反映させなくすることができる。これにより、時刻Ｔ３より前のフレームの照合処理はなかったものとして、時刻Ｔ３以降のフレームについて照合処理を進めることができる。【００６１】
第２の例は、照合部７が、各単語列候補に含まれる単語のうち、時刻Ｔ３より前のフレームに係っている単語は、単語列候補から除外する処理である。照合部７は、例えば、ある単語が時刻Ｔ３より前のフレームのみで構成されている場合に、その単語を単語列候補から除外してもよいし、単語を構成するフレームの一定割合以上が時刻Ｔ３より前のフレームである場合に、その単語を除外してもよい。なお、言語モデルとしてＮ−ｇｒａｍを用いている場合、単語候補を除外すると単語並びが変わるので、その場合照合部は、言語スコアも再計算する。【００６２】
第３の例は、照合部７が、フレームごとの音素スコアに重み係数を掛けて、時刻Ｔ３以降のフレームと時刻Ｔ３より前のフレームとで、重み係数を異ならせる処理である。一例として、ｔ０フレームからｔｎフレームまでのフレームで構成される単語列候補ＷのスコアＳｃ（Ｗ、ｔ０、ｔｎ）が下記数１のように示される場合について説明する。なお、下記数１においてＳｃ（Ｗ［ｉ］）は、単語列候補Ｗにおけるｉ番目のフレームに対応する音素スコアを表わす。【００６３】
【数１】
2008114448.tif 000003
【００６４】
ここで、発話らしさ／雑音らしさを表わす重み係数ｗｅｉｇｈｔ［ｉ］（０≦ｗｅｉｇｈｔ［ｉ］≦１）を用いて、単語列候補ＷのスコアＳｃ（Ｗ、ｔ０、ｔｎ）を下記数２により計算することができる。【００６５】
【数２】
2008114448.tif 000004
【００６６】
照合部７は、全ての単語列候補について上記数２を用いてスコアを計算することによって、各単語列候補について、フレームごとの発話らしさ／雑音らしさを反映させたスコアが得られる。すなわち、ｗｅｉｇｈｔ［ｉ］によってフレームごとのスコアが調整される。例えば、照合部７は、時刻Ｔ３以降のフレームより前のフレームについては、ｗｅｉｇｈｔ［ｉ］を時刻Ｔ３のフレームよりも低く設定して計算する。これにより、音声区間外であり、雑音の可能性が高いと判定されたフレームのスコアへの影響度を下げることが可能となる。【００６７】
一例として、時刻Ｔ３のフレームがｉ＝ｔT3番目のフレームであった場合、照合部７は、ｔ０≦ｉ＜ｔT3−１０においてはｗｅｉｇｈｔ［ｉ］＝０、ｔT3−１０≦ｉ≦ｔT3においては、ｗｅｉｇｈｔ［ｉ］＝０．７、ｔT3＜ｉ≦ｔｎにおいてはｗｅｉｇｈｔ［ｉ］＝１とすることができる。【００６８】
また、照合部７は、例えば、時刻Ｔ３の前後一定数のフレームについて、ｗｅｉｇｈｔ［ｉ］が雑音区間側から音声区間側に行くに従って段階的に増加するように設定してもよい。これにより、雑音区間なのか音声区間なのかの区別がつきにくい曖昧な区間について、曖昧な発話らしさ／雑音らしさを反映させたスコアが得られる。また、時刻Ｔ３の前後一定数のフレームのうち、すくなくとも一部のフレームのｗｅｉｇｈｔ［ｉ］を０にすることにより、そのフレームを間引くことができる。【００６９】
第４の例は、照合部７が、フレームごとの音素スコアにペナルティを付加するもので、単語列候補ＷのスコアＳｃ（Ｗ、ｔ０、ｔｎ）を下記数３により計算することができる。【００７０】
【数３】
2008114448.tif 000005
【００７１】
ここで、ｐｅｎａｌｔｙ［ｉ］の正負は、スコアの取り方に依存する。例えば、音素スコアとして対数尤度を使っている場合、通常スコアは負値であり、負の方向に大きいほど悪い値となるので、時刻Ｔ３のフレームがｉ＝ｔT3番目のフレームであった場合、照合部７は、ｔ０≦ｉ＜ｔT3−１０においてはｐｅｎａｌｔｙ［ｉ］＝−∞（あるいは規定の最低値）、ｔT3−１０≦ｉ≦ｔT3においては、ｐｅｎａｌｔｙ［ｉ］＝−３、ｔT3＜ｉ≦ｔｎにおいてはｐｅｎａｌｔｙ［ｉ］＝０とすることができる。逆に、スコアにユークリッド距離のような０以上の値をとるものを使用する場合は、ペナルティをかける区間ではｐｅｎａｌｔｙ［ｉ］＞０とすればよい。【００７２】
以上、照合部７が照合結果を修正する処理の例を説明したが、これに限られない。なお、時刻Ｔ３のフレームが始点フレームとして通知された時に、照合処理がまだ時刻Ｔ３のフレームまで進んでいなければ、照合部７は、それまでの照合結果は放棄して、時刻Ｔ３のフレームから新たに照合処理を開始することができる。【００７３】
照合部７は、終点フレームとして時刻Ｔ５のフレームを通知された時に、照合処理が時刻Ｔ５のフレーム以降に進んでいれば、照合処理を終了して、照合結果を修正する。照合処理が時刻Ｔ５のフレーム以降に進んでいなければ、照合部７は、時刻Ｔ５のフレームまで照合処理を行ってから終了する。この際、照合部７は、時刻Ｔ５以降の一定数のフレームについても照合処理を行ってもよい。そして、例えば、照合部７は上記のようなｗｅｉｇｈｔ［ｉ］による重み付けを、音声区間の終点付近のフレームについても同様に行ってもよい。【００７４】
このように、照合部７は、音声区間の終点フレームの通知に応じて照合処理を終了した後、各単語列候補のスコアのうち、最も高いスコアの単語列候補を認識結果として出力する。これにより、入力音レベルに応じて適切に修正された音声区間について認識結果が得られる。また、上記動作例においては、照合部７は、終点フレームが決定する前に照合処理を開始して、始点フレーム更新、および終点フレーム決定のタイミングで照合結果を修正する。そのため、終点フレーム判定を待ってから照合処理を開始する場合に比べて、待ち時間を短縮できる。【００７５】
（推定発話レベルＢ（ｔ）の変形例）
図２に示した例では、Ｂ（ｔ）で示される推定発話レベルは、基準値更新部４がフレームパワーの最大値を計算することにより決定されていた。この他に、基準値更新部４が計算しうる推定発話レベルの例を以下に挙げる。
（ア）入力音信号に、ＨＰＦ、ＢＰＦ、ＬＰＦ、ノイズキャンセラ、スペクトルサブトラクションおよびエコーキャンセラの少なくとも１つの処理を施した後に求めた各フレームパワーの最大値
（イ）各フレームパワーの包絡線の最大値
（ウ）入力音信号に、ＨＰＦ、ＢＰＦ、ＬＰＦ、ノイズキャンセラ、スペクトルサブトラクションおよびエコーキャンセラの少なくとも１つの処理を施した後に求めた各フレームパワーの包絡線の最大値
基準値更新部４は、上記（ア）を推定発話レベルとして計算するにより、ノイズ等の不要な成分が除去された信号に対してフレームパワーを求めることができる。また、上記（イ）を推定発話レベルとすることで、発話に重畳した非定常雑音の影響による推定発話レベルの急激な変化を抑えることができる。【００７６】
なお、上記（イ）の包絡線は、例えば、ＩＩＲフィルタを用いて求めることができる。以下に、基準値更新部４が、ＩＩＲフィルタを用いて各フレームパワーの包絡線の最大値を推定発話レベルとして計算する例を説明する。ここで、ｉ番目のフレームにおける推定発話レベルをＡ［ｉ］とし、ｉ番目のフレームの入力音レベル（フレームパワー）をＳ［ｉ］とする。基準値更新部４は、ｉ番目のフレームにおいて、
Ｓ［ｉ］≧Ａ［ｉ−１］の場合、
Ａ［ｉ］＝Ｓ［ｉ］
とする。すなわち、入力音レベルが前フレームまでの推定発話レベル以上、すなわち最大値であれば、推定発話レベルをその最大値で更新する。一方、基準値更新部４は、
Ｓ［ｉ］＜Ａ［ｉ−１］の場合、
Ａ［ｉ］＝ｋ×Ｓ［ｉ］＋（１−ｋ）×Ａ［ｉ−１］
とする。ここで、係数ｋは、０＜ｋ＜１である。上記式は、一次のＩＩＲフィルタの式の一例である。係数ｋの値を０に近づけると突発的ノイズへの誤反応が減る。【００７７】
なお、Ｓ［ｉ］≧Ａ［ｉ−１］の場合も、
Ａ［ｉ］＝ｋ´×Ｓ［ｉ］＋（１−ｋ´）×Ａ［ｉ−１］
としても良い。突発性ノイズがあるとき、入力音レベルは急激に上昇するので、ｋ´による平滑化処理を加えることにより、誤反応を抑制することができる。  （推定発話レベルＢ（ｔ）および基準値Ａ（ｔ）の他の変形例）
また、基準値更新部４は、始点判定部３１が判定した始点フレームから所定時間経過後において、時間経過と共に推定発話レベルを段階的に下げていくことができる。基準値更新部４は、これに伴って基準値も段階的に下げていく。これにより、基準値は、発話末尾で音声のパワーが下がることに対応して下がっていくことになる。具体的には、基準値更新部４は、ｉ番目のフレームにおいて、
Ｓ［ｉ］≧Ａ［ｉ―１］の場合（すなわち、入力音レベルが最大値である場合）、
Ａ［ｉ］＝Ｓ［ｉ］
として、最大値で更新する。一方、基準値更新部４は、
Ｓ［ｉ］＜Ａ［ｉ―１］の場合
Ａ［ｉ］＝ｍ×Ｓ［ｉ−１］
とする。ｍは所定の係数である。Ｓ［ｉ］の値は、フレームパワーの測定方法（原点の取り方）によって、Ｓ［ｉ］≧０（０が最小値）となる場合と、Ｓ［ｉ］≦０（０が最大値）になる場合とがある。Ｓ［ｉ］≧０の場合ｍ＜１、Ｓ［i］≦０の場合ｍ＞１とすることで、推定発話レベルＡ［ｉ］は時間と共に減衰することになる。【００７８】
なお、推定発話レベルを段階的に下げていく方法は、上記方法に限られない。例えば、基準値更新部４は、始点フレームから所定フレーム分後に、推定発話レベルを段階的に下げる処理を開始してもよい。また、基準値更新部４は、推定発話レベルを段階的に下げる代わりに基準値を段階的に下げてもよい。【００７９】
また、推定発話レベルから決まる基準値が、推定背景雑音レベルから決まる基準値を下回る場合、すなわち、Ｂ（ｔ）−β＜Ｃ（ｔ）＋αとなれば、この推定発話レベルを下げる処理は停止してもよい。【００８０】
以上、推定発話レベル、基準値の求め方の変形例について述べたが、変形例は上記例に限られるものではない。例えば、基準値更新部４は、フレームパワーの代わりに振幅を用いても同様に計算することができる。  （音声区間判定部３の処理）
図３は、上記図２を参照して示した動作を実現するための、音声区間判定部３の処理の流れを示すフローチャートである。図３において、まず、音声区間判定部３は、フレーム番号ｉを“０”に初期化する（Ｏｐ１０）。本実施形態において、フレーム番号は、各フレームが先頭から何番目のフレームであるかを示す番号である。【００８１】
初期化後、音声区間判定部３は、ｉに１加算し（Ｏｐ１１）、始点判定部３１は、ｉ番目のフレームについて、音声区間の始点が現れているか否かを判定する（Ｏｐ１２）。始点判定部３１は、例えば、（ｉ−Ｌ）番目からｉ番目のフレーム全てにおいて入力音レベルが基準値を越えているか否かにより上記判定をすることができる。ここでＬは予め決められた定数である。なお、（ｉ−Ｌ）番目からｉ番目のフレームにおける入力音レベルは、音レベルバッファ５に記録されている。【００８２】
音声区間の始点が現れていると判定されなければ（Ｏｐ１２でＮｏ）、ｉに１加算され（Ｏｐ１１）、判定処理（Ｏｐ１２）が繰り返される。音声区間の始点が現れていると判定されると（Ｏｐ１２でＹｅｓ）、始点判定部３１は、（ｉ−Ｌ）番目からｉ番目のフレームのうち何れかを始点フレームとして照合部７へ通知する（Ｏｐ１３）。例えば、始点判定部３１は、入力音レベルが基準値を越えた最初のフレーム（ｉ―Ｌ）を始点フレームとして、フレーム番号（ｉ−Ｌ）を照合部７へ通知してもよい。【００８３】
始点フレームが通知されると、音声区間判定部３は、フレーム番号ｉに１を加算し（Ｏｐ１４）、基準値が更新されているかを判断する（Ｏｐ１５）。基準値更新部４は、上述のように、フレームごとに入力音レベルに基づいて基準値を計算するので、音声区間判定部３は、フレーム番号ｉが１増える度に基準値更新部４に基準値を問い合わせて基準値更新の有無を確認する。【００８４】
基準値が更新されている場合（Ｏｐ１５でＹｅｓ）、始点判定部３１は、更新後の基準値を基に始点判定を再度行い（Ｏｐ１６）、その結果、始点が更新されれば、更新後の始点フレームを照合部７へ通知する（Ｏｐ１７）。【００８５】
Ｏｐ１５で基準値の更新がない（Ｎｏ）と判断された場合は、終点判定部３２が、音声区間の終点が現れているか否かを判定する（Ｏｐ１８）。終点判定部３２は、例えば、（ｉ−Ｍ）番目からｉ番目のフレーム全てにおいて入力音レベルが基準値を下回っているか否かにより上記判定が可能である。ここで、Ｍは予め決められた定数である。【００８６】
Ｏｐ１８で終点が現れていない（Ｎｏ）と判定された場合は、Ｏｐ１４〜Ｏｐ１７の処理が繰り返される。これにより、終点が検出されるまでの間、基準値の変化に応じて始点が更新されることになる。【００８７】
終点が現れていると判定されると（Ｏｐ１８でＹｅｓ）、終点フレームが照合部７へ通知される。終点判定部３２は、（ｉ−Ｍ）番目からｉ番目のフレームのうち何れかを終点フレームとして照合部７へ通知する（Ｏｐ１９）。例えば、終点判定部３２は、入力音レベルが基準値を下回った最初のフレーム（ｉ―Ｍ）を終点フレームとして、フレーム番号（ｉ−Ｍ）を照合部７へ通知してもよい。これにより、始点フレームと終点フレームが照合部７へ通知されることなる。すなわち、音声区間判定部３は、始点と終点を検出し、この始点と終点との間の区間を音声区間として、照合部７へ通知したことになる。【００８８】
以上のＯｐ１１〜Ｏｐ１９の処理を、音声認識システム１が処理終了（Ｏｐ２０でＹｅｓ）と判断するまで繰り返される。例えば、入力音信号の入力がなくなった場合等は、処理終了と判断される。【００８９】
（照合部７の処理）
図４は、上記図２を参照して示した動作を実現するための、照合部７の処理の流れを示すフローチャートである。図４において、照合部７は、始点判定部３１から始点フレームの通知（Ｏｐ２１）があるまで待機する。始点フレームの通知があると、照合部７は、フレーム番号ｉを始点フレーム番号とする（Ｏｐ２２）。その後、照合部７は、フレーム番号ｉのフレームを加味した照合処理を行い（Ｏｐ２３）、フレーム番号ｉに１を加算する（Ｏｐ２４）。照合処理は、上述した通り、各フレームの特徴量を音響モデルおよび言語モデルと照合する処理である。【００９０】
照合処理開始後に、始点判定部３１から始点フレームの通知がある場合（Ｏｐ２５でＹｅｓ）、照合部７は、それまでの照合結果を修正する（Ｏｐ２６）。この修正処理の詳細は、上述した通りである。照合部７は、終点フレームの通知がある（Ｏｐ２７でＹｅｓ）まで、Ｏｐ２３の照合処理と、Ｏｐ２４〜Ｏｐ２６の処理を繰り返す。【００９１】
終点判定部３２から終点フレームｊの通知がある場合（Ｏｐ２７でＹｅｓ）、ｊ番目のフレーム以降の照合処理は行わず、それまでの照合結果を用いて認識結果を生成し出力する（Ｏｐ２８）。これにより、始点フレームから終点フレームまでのフレームについて照合処理が行われる。また、照合処理の途中で始点フレームが更新された場合には、更新された始点フレームに応じて照合処理の結果が修正される。【００９２】
以上のＯｐ２１〜Ｏｐ２８の処理を、音声認識システム１が処理終了（Ｏｐ２９でＹｅｓ）と判断するまで繰り返される。例えば、入力音信号の入力がなくなった場合等は、処理終了と判断される。【００９３】
なお、図４に示した照合部７の処理は一例であってこれに限られない。例えば、照合部７は、Ｏｐ２２において、ｉ＝始点フレーム番号としているが、ここで、ｉ＝始点フレーム番号−定数Ｎ、としてもよい。これにより、始点フレームからＮ個分前のフレームから照合処理が開始される。その際、照合部７は、始点フレーム前のＮフレームの処理結果（例えば、スコア）に重み付け係数を掛けて重みを軽くしてもよい。同様に、照合部７は、終点フレームの通知を受けた後、終点フレームから所定数Ｍ個分後のフレームまで照合処理を行うようにしてもよい。【００９４】
また、図４に示す処理では、照合部７は、始点フレームから終点フレームまでのフレームのみについて照合処理を行っているが、始点フレームおよび終点フレームに関係なく、全てのフレームについて照合処理を行い、通知された始点フレームおよび終点フレームに応じてその照合結果を修正してもよい。例えば、照合部７は、ワードスポッティング技術等により、音声区間を判定せずに入力音信号に含まれる単語列候補およびそのスコアを算出することができる。照合部７は、このようにして算出された単語列候補およびそのスコアを、通知された始点フレームおよび終点フレームに基づいて修正することができる。この場合の修正も、上述の照合結果修正と同様に行うことができる。【００９５】
なお、上記実施形態では、音声認識システム１を、コンピュータにより実施する例を示したが、音声認識システム１の機能をコンピュータで実現させるためのプログラムまたはこれを記録した記録媒体も、本発明の実施の一形態である。また、音声認識システム１は音声認識装置ということもできる。
【産業上の利用可能性】
【００９６】
本発明は、適切な音声区間に基づいた音声認識を行いつつも、レスポンスタイムの遅延を抑えることができる音声認識システムとして有用である。
【図１】
2008114448.tif 000006
【図２】
2008114448.tif 000007
【図３】
2008114448.tif 000008
【図４】
2008114448.tif 000009
【国際調査報告】
2008114448.tif 000010
2008114448.tif 000011
2008114448.tif 000012
2008114448.tif 000013