(57)【要約】【課題】入力音声の性質に合せた適切な認識結果を得ることができる音声認識装置、音声認識方法及び音声認識プログラムを提供する。【解決手段】言語モデルに基づいて入力音声を認識する音声認識装置１であって、第１ＤＢに基づいて作成された第１言語モデルを保持する第１ＬＭ保持部１３０と、第１ＤＢのデータの長さを保持する第１ＤＢ長さ保持部１１０と、第２ＤＢに基づいて作成された第２言語モデルを保持する第２ＬＭ保持部１４０と、第２ＤＢのデータの長さを保持する第２ＤＢ長さ保持部１２０と、入力音声のデータの長さに関する情報、第１ＤＢのデータの長さ、及び第２ＤＢのデータの長さの関係に基づく重みを計算する重み決定部１７０と、重みで第１言語モデルと第２言語モデルとを混合するＬＭ混合部１８０と、混合された言語モデルに基づいて入力音声のデータを文字にする認識処理部１９０と、を備えて構成する。【選択図】図１
2011215494.tif 000002
【特許請求の範囲】
【請求項１】
言語モデルに基づいて入力音声を認識する音声認識装置であって、
第１データベースに基づいて作成された第１言語モデルを保持する第１言語モデル保持手段と、
前記第１データベースに格納されたデータの長さを保持する第１長さ保持手段と、
第２データベースに基づいて作成された第２言語モデルを保持する第２言語モデル保持手段と、
前記第２データベースに格納されたデータの長さを保持する第２長さ保持手段と、
前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づく重みを計算する重み計算手段と、
前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合手段と、
前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識手段と、
を備えることを特徴とする音声認識装置。
【請求項２】
前記入力音声の音声区間を検出する音声区間検出手段と、
前記音声区間から前記入力音声のデータの長さを計算する音声データ長計算手段と、
を備え、
前記重み計算手段は、前記入力音声のデータの長さを用いて前記重みを計算すること、
を特徴とする請求項１に記載の音声認識装置。
【請求項３】
前記重み計算手段は、前記入力音声のデータの長さと前記第１データベースに格納されたデータの長さとの差分、及び、前記入力音声のデータの長さと前記第２データベースに格納されたデータの長さとの差分を算出し、差分の小さいほうのデータベースに対応する言語モデルに大きい重みを付与することを特徴とする請求項２に記載の音声認識装置。
【請求項４】
音声により文字入力する入力ボックスの長さを取得する入力ボックス長さ取得手段を備え、
前記重み計算手段は、前記入力ボックスの長さを用いて前記重みを計算すること、
を特徴とする請求項１に記載の音声認識装置。
【請求項５】
前記重み計算手段は、前記入力ボックスの長さと前記第１データベースに格納されたデータの長さとの差分、及び、前記入力ボックスの長さと前記第２データベースに格納されたデータの長さとの差分を算出し、差分の小さいほうのデータベースに対応する言語モデルに大きい重みを付与することを特徴とする請求項４に記載の音声認識装置。
【請求項６】
言語モデルに基づいて入力音声を認識する音声認識装置であって、
第１データベースに基づいて作成された第１言語モデルを保持する第１言語モデル保持手段と、
前記第１データベースに格納されたデータの長さを保持する第１長さ保持手段と、
第２データベースに基づいて作成された第２言語モデルを保持する第２言語モデル保持手段と、
前記第２データベースに格納されたデータの長さを保持する第２長さ保持手段と、
前記入力音声の音声区間を検出する音声区間検出手段と、
前記音声区間に含まれるポーズ区間を検出するポーズ区間検出手段と、
前記ポーズ区間、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さに基づいて、重みを計算する重み計算手段と、
前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合手段と、
前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識手段と、
を備えることを特徴とする音声認識装置。
【請求項７】
第１データベースに基づいて作成された第１言語モデル、及び第２データベースに基づいて作成された第２言語モデルに基づいて入力音声を認識する音声認識装置であって、
前記第１言語モデル及び前記第２言語モデルを第１の重みで混合する第１混合言語モデル作成手段と、
前記第１混合言語モデル作成手段により混合された言語モデルを用いて入力音声の認識を行う第１認識手段と、
前記第１言語モデル及び前記第２言語モデルを前記第１の重みとは異なる第２の重みで混合する第２混合言語モデル作成手段と、
前記第２混合言語モデル作成手段により混合された言語モデルを用いて入力音声の認識を行う第２認識手段と、
前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づいて、前記第１認識手段の認識結果及び前記第２認識手段の認識結果から最終的な認識結果を選択する結果処理手段と、
を備えることを特徴とする音声認識装置。
【請求項８】
言語データが格納された第１データベースに基づいて作成された第１言語モデル、及び言語データが格納された第２データベースに基づいて作成された第２言語モデルを有する音声認識装置により実行される音声認識方法であって、
入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づく重みを計算する重み計算ステップと、
前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合ステップと、
前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識ステップと、
を備えることを特徴とする音声認識方法。
【請求項９】
言語データが格納された第１データベースに基づいて作成された第１言語モデル、及び言語データが格納された第２データベースに基づいて作成された第２言語モデルを有する音声認識装置により実行される音声認識方法であって、
入力音声の音声区間を検出する音声区間検出ステップと、
前記音声区間に含まれるポーズ区間を検出するポーズ区間検出ステップと、
前記ポーズ区間、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さに基づいて、重みを計算する重み計算ステップと、
前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合ステップと、
前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識ステップと、
を備えることを特徴とする音声認識方法。
【請求項１０】
第１データベースに基づいて作成された第１言語モデル、及び第２データベースに基づいて作成された第２言語モデルに基づいて音声認識を行う音声認識装置により実行される音声認識方法であって、
前記第１言語モデル及び前記第２言語モデルを第１の重みで混合する第１混合言語モデル作成ステップと、
前記第１混合言語モデル作成ステップにより混合された言語モデルを用いて入力音声の認識を行う第１認識ステップと、
前記第１言語モデル及び前記第２言語モデルを前記第１の重みとは異なる第２の重みで混合する第２混合言語モデル作成ステップと、
前記第２混合言語モデル作成ステップにより混合された言語モデルを用いて入力音声の認識を行う第２認識ステップと、
前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づいて、前記第１認識ステップの認識結果及び前記第２認識ステップの認識結果から最終的な認識結果を選択する結果処理ステップと、
を備えることを特徴とする音声認識方法。
【請求項１１】
コンピュータを、
第１データベースに基づいて作成された第１言語モデルを保持する第１言語モデル保持手段と、
前記第１データベースに格納されたデータの長さを保持する第１長さ保持手段と、
第２データベースに基づいて作成された第２言語モデルを保持する第２言語モデル保持手段と、
前記第２データベースに格納されたデータの長さを保持する第２長さ保持手段と、
前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づく重みを計算する重み計算手段と、
前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合手段と、
前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識手段と、
として動作させることを特徴とする音声認識プログラム。
【請求項１２】
コンピュータを、
第１データベースに基づいて作成された第１言語モデルを保持する第１言語モデル保持手段と、
前記第１データベースに格納されたデータの長さを保持する第１長さ保持手段と、
第２データベースに基づいて作成された第２言語モデルを保持する第２言語モデル保持手段と、
前記第２データベースに格納されたデータの長さを保持する第２長さ保持手段と、
前記入力音声の音声区間を検出する音声区間検出手段と、
前記音声区間に含まれるポーズ区間を検出するポーズ区間検出手段と、
前記ポーズ区間、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さに基づいて、重みを計算する重み計算手段と、
前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合手段と、
前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識手段と、
として動作させることを特徴とする音声認識プログラム。
【請求項１３】
第１データベースに基づいて作成された第１言語モデル、及び第２データベースに基づいて作成された第２言語モデルに基づいて音声認識を行うコンピュータを、
前記第１言語モデル及び前記第２言語モデルを第１の重みで混合する第１混合言語モデル作成手段と、
前記第１混合言語モデル作成手段により混合された言語モデルを用いて入力音声の認識を行う第１認識手段と、
前記第１言語モデル及び前記第２言語モデルを前記第１の重みとは異なる第２の重みで混合する第２混合言語モデル作成手段と、
前記第２混合言語モデル作成手段により混合された言語モデルを用いて入力音声の認識を行う第２認識手段と、
前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づいて、前記第１認識手段の認識結果及び前記第２認識手段の認識結果から最終的な認識結果を選択する結果処理手段と、
として動作させることを特徴とする音声認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識装置、音声認識方法及び音声認識プログラムに関するものである。
【背景技術】
【０００２】
従来、複数のデータベースから学習した複数の言語モデルを利用して、音声認識を行う手法が知られている（例えば、特許文献１，非特許文献１参照。）。音声認識を行う際に複数の言語モデルを利用する場合には、複数の言語モデルを混合・統合する必要がある。例えば、特許文献１記載の音声認識装置は、入力音声の発話速度に基づいて、複数の言語モデルを混合するための重み係数を計算し、計算された重み係数を用いて複数の言語モデルを混合する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２６７２１号公報
【非特許文献】
【０００４】
【非特許文献１】横山忠介等，「言語モデルの教師なしバッチ型話題適応」，日本音響学会２００３年春季講演論文集，３−４−１，ｐｐ．１２９−１３０（２００３−３）．
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１記載の音声認識装置にあっては、発話速度に基づいて一義的に重みが決定されるため、例えば発話速度が一定のデータベース同士や発話速度情報を持たないデータベース同士の混合を最適に行うことができない。このため認識精度が低下するおそれがある。
【０００６】
そこで、本発明は上記に鑑みてなされたものであって、複数のデータベースから作成された複数の言語モデルを混合・統合して音声認識する場合に、入力音声の性質に合せた適切な認識結果を得ることができる音声認識装置、音声認識方法及び音声認識プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
すなわち、本発明に係る音声認識装置は、言語モデルに基づいて入力音声を認識する音声認識装置であって、第１データベースに基づいて作成された第１言語モデルを保持する第１言語モデル保持手段と、前記第１データベースに格納されたデータの長さを保持する第１長さ保持手段と、第２データベースに基づいて作成された第２言語モデルを保持する第２言語モデル保持手段と、前記第２データベースに格納されたデータの長さを保持する第２長さ保持手段と、前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づく重みを計算する重み計算手段と、前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合手段と、前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識手段と、を備えて構成される。
【０００８】
本発明に係る音声認識装置では、第１言語モデル保持手段により、第１データベースに基づいて作成された第１言語モデルが保持され、第１長さ保持手段により、第１データベースに格納されたデータの長さが保持され、第２言語モデル保持手段により、第２データベースに基づいて作成された第２言語モデルが保持され、第２長さ保持手段により、第２データベースに格納されたデータの長さが保持される。そして、重み計算手段により、入力音声のデータの長さに関する情報、第１データベースに格納されたデータの長さ、及び第２データベースに格納されたデータの長さの関係に基づく重みが計算され、混合手段により、算出された重みで第１言語モデルと第２言語モデルとが混合され、認識手段により、混合された言語モデルに基づいて入力音声のデータが文字にされる。このように、入力音声の基本的な性質であるデータ長に着目し、第１言語モデルと第２言語モデルとを混合する際に、入力音声のデータの長さに関する情報、及び各言語モデルに対応するデータベースに格納されたデータの長さに基づいて各言語モデルの重みを設定することができるので、混合された言語モデルを、入力音声のデータに近い長さのデータに基づく言語モデルとすることが可能となる。このため、複数ＤＢから作成された複数の言語モデルを混合・統合する場合に、入力音声の性質に合せて言語モデルそれぞれの重みを適切に決めることができる。よって、入力音声の性質に合せた適切な認識結果を得ることが可能となる。
【０００９】
ここで、前記入力音声の音声区間を検出する音声区間検出手段と、前記音声区間から前記入力音声のデータの長さを計算する音声データ長計算手段と、を備え、前記重み計算手段は、前記入力音声のデータの長さを用いて前記重みを計算してもよい。このように構成することで、音声区間検出手段により入力音声の音声区間が検出され、音声データ長計算手段により音声区間から入力音声のデータの長さが計算されて重みの計算に用いられる。このため、入力音声のデータの長さを適切に取得することができる。
【００１０】
また、前記重み計算手段は、前記入力音声のデータの長さと前記第１データベースに格納されたデータの長さとの差分、及び、前記入力音声のデータの長さと前記第２データベースに格納されたデータの長さとの差分を算出し、差分の小さいほうのデータベースに対応する言語モデルに大きい重みを付与してもよい。このように構成することで、入力音声のデータの長さに合せて言語モデルそれぞれの重みを適切に決めることができる。
【００１１】
また、音声により文字入力する入力ボックスの長さを取得する入力ボックス長さ取得手段を備え、前記重み計算手段は、前記入力ボックスの長さを用いて前記重みを計算してもよい。このように構成することで、入力ボックス長さ取得手段により入力ボックスの長さが取得されて重みの計算に用いられる。このため、入力ボックスの長さを重みに反映させることができるので、言語モデルを適切に混合することができる。
【００１２】
また、前記重み計算手段は、前記入力ボックスの長さと前記第１データベースに格納されたデータの長さとの差分、及び、前記入力ボックスの長さと前記第２データベースに格納されたデータの長さとの差分を算出し、差分の小さいほうのデータベースに対応する言語モデルに大きい重みを付与してもよい。このように構成することで、入力ボックスの長さに合せて言語モデルそれぞれの重みを適切に決めることができる。
【００１３】
また、本発明に係る音声認識装置は、言語モデルに基づいて入力音声を認識する音声認識装置であって、第１データベースに基づいて作成された第１言語モデルを保持する第１言語モデル保持手段と、前記第１データベースに格納されたデータの長さを保持する第１長さ保持手段と、第２データベースに基づいて作成された第２言語モデルを保持する第２言語モデル保持手段と、前記第２データベースに格納されたデータの長さを保持する第２長さ保持手段と、前記入力音声の音声区間を検出する音声区間検出手段と、前記音声区間に含まれるポーズ区間を検出するポーズ区間検出手段と、前記ポーズ区間、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さに基づいて、重みを計算する重み計算手段と、前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合手段と、前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識手段と、を備えて構成される。
【００１４】
本発明に係る音声認識装置では、第１言語モデル保持手段により、第１データベースに基づいて作成された第１言語モデルが保持され、第１長さ保持手段により、第１データベースに格納されたデータの長さが保持され、第２言語モデル保持手段により、第２データベースに基づいて作成された第２言語モデルが保持され、第２長さ保持手段により、第２データベースに格納されたデータの長さが保持される。そして、音声区間検出手段により、入力音声の音声区間が検出され、ポーズ区間検出手段により、音声区間に含まれるポーズ区間が検出され、重み計算手段により、ポーズ区間、第１データベースに格納されたデータの長さ、及び第２データベースに格納されたデータの長さに基づいて重みが計算され、混合手段により、算出された重みで第１言語モデルと第２言語モデルとが混合され、認識手段により、混合された言語モデルに基づいて入力音声のデータが文字にされる。このように、入力音声の基本的な性質であるデータ長に影響するポーズ区間に着目し、第１言語モデルと第２言語モデルとを混合する際に、入力音声のポーズ区間、及び各言語モデルに対応するデータベースに格納されたデータの長さに基づいて各言語モデルの重みを設定することができるので、混合された言語モデルを、入力音声のデータに近い長さのデータに基づく言語モデルとすることが可能となる。このため、複数ＤＢから作成された複数の言語モデルを混合・統合する場合に、入力音声の性質に合せて言語モデルそれぞれの重みを適切に決めることができる。よって、入力音声の性質に合せた適切な認識結果を得ることが可能となる。
【００１５】
また、本発明に係る音声認識装置は、第１データベースに基づいて作成された第１言語モデル、及び第２データベースに基づいて作成された第２言語モデルに基づいて入力音声を認識する音声認識装置であって、前記第１言語モデル及び前記第２言語モデルを第１の重みで混合する第１混合言語モデル作成手段と、前記第１混合言語モデル作成手段により混合された言語モデルを用いて入力音声の認識を行う第１認識手段と、前記第１言語モデル及び前記第２言語モデルを前記第１の重みとは異なる第２の重みで混合する第２混合言語モデル作成手段と、前記第２混合言語モデル作成手段により混合された言語モデルを用いて入力音声の認識を行う第２認識手段と、前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づいて、前記第１認識手段の認識結果及び前記第２認識手段の認識結果から最終的な認識結果を選択する結果処理手段と、を備えて構成される。
【００１６】
本発明に係る音声認識装置では、第１混合言語モデル作成手段により、第１言語モデル及び第２言語モデルが第１の重みで混合され、第１認識手段により、第１混合言語モデル作成手段によって混合された言語モデルを用いて入力音声が認識され、第２混合言語モデル作成手段により、第１言語モデル及び第２言語モデルが第１の重みとは異なる第２の重みで混合され、第２認識手段により、第２混合言語モデル作成手段によって混合された言語モデルを用いて入力音声が認識され、結果処理手段により、入力音声のデータの長さに関する情報、第１データベースに格納されたデータの長さ、及び第２データベースに格納されたデータの長さの関係に基づいて、第１認識手段の認識結果及び第２認識手段の認識結果から最終的な認識結果が選択される。このように、異なる言語モデルを異なる重みで混合し、混合した言語モデルそれぞれを用いて並列的に音声認識を行い、得られた複数の認識結果から、入力音声のデータの長さに関する情報、第１データベースに格納されたデータの長さ及び第２データベースに格納されたデータの長さに基づいて１の結果を選択することができるので、入力音声のデータの長さに合わせた最適な認識結果を選択することが可能となる。よって、入力音声の性質に合せた適切な認識結果を得ることが可能となる。
【００１７】
また、本発明に係る音声認識方法は、言語データが格納された第１データベースに基づいて作成された第１言語モデル、及び言語データが格納された第２データベースに基づいて作成された第２言語モデルを有する音声認識装置により実行される音声認識方法であって、入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づく重みを計算する重み計算ステップと、前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合ステップと、前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識ステップと、を備えて構成される。
【００１８】
また、本発明に係る音声認識方法は、言語データが格納された第１データベースに基づいて作成された第１言語モデル、及び言語データが格納された第２データベースに基づいて作成された第２言語モデルを有する音声認識装置により実行される音声認識方法であって、入力音声の音声区間を検出する音声区間検出ステップと、前記音声区間に含まれるポーズ区間を検出するポーズ区間検出ステップと、前記ポーズ区間、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さに基づいて、重みを計算する重み計算ステップと、前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合ステップと、前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識ステップと、を備えて構成される。
【００１９】
また、本発明に係る音声認識方法は、第１データベースに基づいて作成された第１言語モデル、及び第２データベースに基づいて作成された第２言語モデルに基づいて音声認識を行う音声認識装置により実行される音声認識方法であって、前記第１言語モデル及び前記第２言語モデルを第１の重みで混合する第１混合言語モデル作成ステップと、前記第１混合言語モデル作成ステップにより混合された言語モデルを用いて入力音声の認識を行う第１認識ステップと、前記第１言語モデル及び前記第２言語モデルを前記第１の重みとは異なる第２の重みで混合する第２混合言語モデル作成ステップと、前記第２混合言語モデル作成ステップにより混合された言語モデルを用いて入力音声の認識を行う第２認識ステップと、前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づいて、前記第１認識ステップの認識結果及び前記第２認識ステップの認識結果から最終的な認識結果を選択する結果処理ステップと、を備えて構成される。
【００２０】
また、本発明に係る音声認識プログラムは、コンピュータを、第１データベースに基づいて作成された第１言語モデルを保持する第１言語モデル保持手段と、前記第１データベースに格納されたデータの長さを保持する第１長さ保持手段と、第２データベースに基づいて作成された第２言語モデルを保持する第２言語モデル保持手段と、前記第２データベースに格納されたデータの長さを保持する第２長さ保持手段と、前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づく重みを計算する重み計算手段と、前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合手段と、前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識手段と、として動作させるように構成される。
【００２１】
また、本発明に係る音声認識プログラムは、コンピュータを、第１データベースに基づいて作成された第１言語モデルを保持する第１言語モデル保持手段と、前記第１データベースに格納されたデータの長さを保持する第１長さ保持手段と、第２データベースに基づいて作成された第２言語モデルを保持する第２言語モデル保持手段と、前記第２データベースに格納されたデータの長さを保持する第２長さ保持手段と、前記入力音声の音声区間を検出する音声区間検出手段と、前記音声区間に含まれるポーズ区間を検出するポーズ区間検出手段と、前記ポーズ区間、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さに基づいて、重みを計算する重み計算手段と、前記重みで前記第１言語モデルと前記第２言語モデルとを混合する混合手段と、前記混合手段により混合された言語モデルに基づいて、前記入力音声のデータを文字にする認識手段と、として動作させるように構成される。
【００２２】
また、本発明に係る音声認識プログラムは、第１データベースに基づいて作成された第１言語モデル、及び第２データベースに基づいて作成された第２言語モデルに基づいて音声認識を行うコンピュータを、前記第１言語モデル及び前記第２言語モデルを第１の重みで混合する第１混合言語モデル作成手段と、前記第１混合言語モデル作成手段により混合された言語モデルを用いて入力音声の認識を行う第１認識手段と、前記第１言語モデル及び前記第２言語モデルを前記第１の重みとは異なる第２の重みで混合する第２混合言語モデル作成手段と、前記第２混合言語モデル作成手段により混合された言語モデルを用いて入力音声の認識を行う第２認識手段と、前記入力音声のデータの長さに関する情報、前記第１データベースに格納されたデータの長さ、及び前記第２データベースに格納されたデータの長さの関係に基づいて、前記第１認識手段の認識結果及び前記第２認識手段の認識結果から最終的な認識結果を選択する結果処理手段と、として動作させるように構成される。
【００２３】
本発明に係る音声認識方法及び音声認識プログラムによれば、上述した音声認識装置と同様の効果を奏する。
【発明の効果】
【００２４】
本発明によれば、複数のデータベースから作成された複数の言語モデルを混合・統合して音声認識する場合に、入力音声の性質に合せた適切な認識結果を得ることができる。
【図面の簡単な説明】
【００２５】
【図１】第１実施形態に係る音声認識装置の機能を示す機能ブロック図である。
【図２】第１実施形態に係る音声認識装置の重み決定部の機能を示す機能ブロック図である。
【図３】第１実施形態に係る音声認識装置を備える携帯端末の構成を示す概要図である。
【図４】第１実施形態に係る音声認識装置を備える携帯端末の構成を示す概要図である。
【図５】第１実施形態に係る音声認識装置の動作を示すフローチャートである。
【図６】第２実施形態に係る音声認識装置の重み決定部の機能を示す機能ブロック図である。
【図７】第３実施形態に係る音声認識装置の機能を示す機能ブロック図である。
【図８】第３実施形態に係る音声認識装置の動作を示すフローチャートである。
【図９】第４実施形態に係る音声認識装置の動作を示すフローチャートである。
【図１０】ポーズ区間検出処理を説明するための音声信号である。
【発明を実施するための形態】
【００２６】
以下、添付図面を参照して本発明に係る音声認識装置、音声認識方法及び音声認識プログラムの実施形態を詳細に説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
【００２７】
（第１実施形態）
本実施形態に係る音声認識装置、音声認識方法及び音声認識プログラムは、例えば、音声により文字入力を行う携帯端末等に好適に採用されるものである。本実施形態に係る音声認識装置の概要について、図１〜４を参照して説明する。図１は、本実施形態に係る音声認識装置の機能を示す機能ブロック図、図２は、本実施形態に係る音声認識装置の重み決定部の機能を示す機能ブロック図、図３，４は、第１実施形態に係る音声認識装置を備える携帯端末の構成を示す概要図である。
【００２８】
最初に、第１実施形態に係る音声認識装置を備える携帯端末のハードウェア構成から説明する。図３に示すように、携帯端末１０は、ユーザにより携帯される移動端末であって、画面やユーザ操作キー等のユーザインタフェースを備えている。携帯端末１０は、音声認識の開始タイミングを決定する開始ボタン３２０、音声認識の終了タイミングを決定する終了ボタン３３０、及び、ユーザの音声を入力するマイク３１０を備えている。また、図４に示すように、携帯端末１０は、物理的には、ＣＰＵ１１、ＲＯＭ１２及びＲＡＭ１３等の主記憶装置、入力デバイス１４、ディスプレイ等の出力デバイス１５、データの送受信を行うための通信モジュール１６、ハードディスク等の補助記憶装置１７などを含む通常のコンピュータシステムとして構成される。後述する音声認識装置１の各機能は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３等のハードウェア上に所定のコンピュータソフトウェアを読み込ませることにより、ＣＰＵ１１の制御の元で入力デバイス１４、出力デバイス１５、通信モジュール１６を動作させるとともに、ＲＯＭ１２、ＲＡＭ１３や補助記憶装置１７におけるデータの読み出し及び書き込みを行うことで実現される。
【００２９】
次に、音声認識装置１の機能について詳細を説明する。図１に示すように、本実施形態に係る音声認識装置１は、機能的には、第１ＤＢ長さ保持部（第１長さ保持手段）１１０、第２ＤＢ長さ保持部（第２長さ保持手段）１２０、第１ＬＭ保持部（第１言語モデル保持手段）１３０、第２ＬＭ保持部（第２言語モデル保持手段）１４０、音声区間検出部（音声区間検出手段）１５０、長さ計算部（音声データ長計算手段、入力ボックス長さ取得手段）１６０、文字単位長さ保持部１６５、重み決定部（重み計算手段）１７０、ＬＭ混合部（混合手段）１８０及び認識処理部（認識手段）１９０を備えている。
【００３０】
第１ＬＭ保持部１３０は、言語に関するデータベース（第１データベース）に格納されるデータに基づいて作成された言語モデル（第１言語モデル）を保持（記録）する機能を有している。言語モデルは、言語的な特徴をモデル化したものであり、例えば音素の並び方に関する制約を表したものである。なお、この第１言語モデルは、例えば非特許文献１に記載の従来の方法を用いて第１データベースに基づいて作成される。
【００３１】
第２ＬＭ保持部１４０は、言語に関するデータベース（第２データベース）に格納されるデータに基づいて作成された言語モデル（第２言語モデル）を保持する機能を有している。なお、この第２言語モデルは、例えば非特許文献１に記載の従来の方法を用いて第２データベースに基づいて作成されたものである。
【００３２】
第１言語モデル及び第２言語モデルの元となる第１データベース及び第２データベースは、例えば互いに異なる性質の言語データが格納される。テキストデータを例に説明すると、第１データベースには、単単語（１つの単語）のみで構成されるデータが格納され、第２データベースには、文章（複数の単語）として構成されるデータが格納される。このため、第１言語モデル及び第２言語モデルのデータ長は異なるものとなる。
【００３３】
第１ＤＢ長さ保持部１１０及び第２ＤＢ長さ保持部１２０は、言語に関するデータベースに格納されたデータの統計情報を保持する機能を有している。第１ＤＢ長さ保持部１１０は、第１データベースに基づいて得られた統計情報を保持し、第２ＤＢ長さ保持部１２０は、第２データベースに基づいて得られた統計情報を保持する。統計された値としては、例えば平均値が用いられる。
【００３４】
音声区間検出部１５０は、例えばマイク３１０を介してユーザにより入力された音声の音声区間を検出する機能を有している。例えば、音声区間検出部１５０は、開始ボタン３２０及び終了ボタン３３０のユーザの操作情報に基づいて、音声区間を検出する機能を有している。音声区間検出部１５０は、検出した音声区間を長さ計算部１６０へ出力する機能を有している。
【００３５】
文字単位長さ保持部１６５は、例えば単位秒数当たりの文字数の範囲を保持している。なお、単位秒数当たりの文字数の範囲は、人の発話能力等により予め定めることができる。
【００３６】
長さ計算部１６０は、音声区間検出部１５０により出力された音声区間に基づいて音声の長さを計算する機能を有している。例えば、長さ計算部１６０は、文字単位長さ保持部１６５に保持（記録）されている単位秒数当たりの文字数を参照し、音声区間及び単位秒数当たりの文字数に基づいて音声区間に含まれる文字の長さ（データの長さ）を計算する機能を有している。あるいは、長さ計算部１６０は、例えば音声により文字入力する入力ボックスの長さを取得し、音声区間に含まれる文字の長さを計算する機能を有していてもよい。入力ボックスの長さとしては、例えばＧＵＩアプリケーションにおけるテキストボックスの長さ、またはウェブページにおけるテキストフォームの長さ等が用いられる。長さ計算部１６０は、計算したデータの長さを重み決定部１７０へ出力する機能を有している。
【００３７】
重み決定部１７０は、複数の言語モデルを混合するための混合係数（重み）を決定する機能を有している。重み決定部１７０は、入力音声の特徴的な性質の一つであるデータの長さに基づいて混合係数を決定する機能を有している。例えば、重み決定部１７０は、長さ計算部１６０により出力された入力音声のデータの長さに関する情報（データ又は入力ボックスの長さ）、第１ＤＢ長さ保持部１１０により保持されたデータの長さ、及び、第２ＤＢ長さ保持部１２０により保持されたデータの長さに基づいて、混合係数を決定する機能を有している。図２に示すように、例えば、重み決定部１７０は、第１距離計算部４１０、第２距離計算部４２０及び距離比較部４３０を備えている。第１距離計算部４１０は、長さ計算部１６０により出力された入力音声のデータの長さＬｉｎを入力するとともに、第１ＤＢ長さ保持部１１０を参照して第１データベースのデータの平均長さＬ１を入力し、両者の差分（距離）を算出する機能を有している。第２距離計算部４２０は、長さ計算部１６０により出力された入力音声のデータの長さＬｉｎを入力するとともに、第２ＤＢ長さ保持部１２０を参照して第２データベースのデータの平均長さＬ２を入力し、両者の差分を算出する機能を有している。距離比較部４３０は、第１距離計算部４１０により出力された差分と、第２距離計算部４２０により出力された差分とを比較する機能を有している。そして、比較結果に基づいて、混合係数を設定する機能を有している。例えば、距離比較部４３０は、入力音声のデータの長さとの差分が小さいデータベースに対応する言語モデルの重みを大きく設定し、入力音声のデータの長さとの差分が大きいデータベースに対応する言語モデルの重みを小さく設定する。また、例えば、距離比較部４３０は、入力音声のデータの長さとの差分に応じて言語モデルの重みを大きく設定する。また、重み決定部１７０は、決定した重みをＬＭ混合部１８０へ出力する機能を有している。なお、重み決定部１７０は、入力音声のデータの長さＬｉｎに替えて入力ボックスの長さを用いて重みを決定してもよい。この場合、入力音声のデータの長さを用いた場合と同様に、入力ボックスの長さとの差分が小さいデータベースに対応する言語モデルの重みを大きく設定し、入力ボックスの長さとの差分が大きいデータベースに対応する言語モデルの重みを小さく設定する。
【００３８】
ＬＭ混合部１８０は、重み決定部１７０により決定された重みを用いて、複数の言語モデルを混合する機能を有している。例えば、ＬＭ混合部１８０は、重み決定部１７０により決定された重みを用いて、第１ＬＭ保持部１３０により保持された第１言語モデル、及び第２ＬＭ保持部１４０により保持された第２言語モデルを混合する機能を有している。
【００３９】
認識処理部１９０は、入力音声及びＬＭ混合部１８０により混合された言語モデルに基づいて、音声識別をする機能を有している。例えば、認識処理部１９０は、入力音声を言語モデルで認識し入力音声のデータを文字にする機能を有している。なお、音声認識の際には音響モデルが用いられるが、説明理解の容易性を考慮して説明を省略する。
【００４０】
次に、本実施形態に係る音声認識装置１の動作を説明する。図５は、本実施形態に係る音声認識装置１の動作を示すフローチャートである。図５に示す制御処理は、例えば携帯端末１０の電源がＯＮされたタイミングから所定の間隔で繰り返し実行される。なお、以下では説明理解の容易性を考慮し、第１データベースには検索ログ等の単単語のみが格納されており、第２データベースにはＷｅｂ等に記載された文章が格納されているものとする。そして、第１ＤＢ長さ保持部１１０により第１データベースに格納されたデータの平均長さが５文字と保持され、第２ＤＢ長さ保持部１２０により第２データベースに格納されたデータの平均長さが４０文字と保持されているものとする。そして、第１ＬＭ保持部１３０が第１データベースから作成された第１言語モデルを保持し、第２ＬＭ保持部１４０が第２データベースから作成された第２言語モデルを保持しているものとする。
【００４１】
最初に、図５に示すように、音声区間検出部１５０が音声の始点を検出する（音声区間検出ステップ，ステップＳ１０）。音声区間検出部１５０は、例えば、図３に示す携帯端末１０の開始ボタン３２０がユーザにより押下されたことを検出し、音声の始点とする。その後、マイク３１０により音声が入力・録音される。そして、音声区間検出部１５０が音声の終点を検出する（ステップＳ１２）。例えば、音声区間検出部１５０は、図３に示す携帯端末１０の終了ボタン３３０がユーザにより押下されたことを検出し、音声の終点とする。
【００４２】
次に、長さ計算部１６０が入力音声の長さを計算する（ステップＳ１４）。ここで、音声区間の長さをＧ１、１秒あたりの文字数をＸＡとすると、長さ計算部１６０は以下の式１を用いて入力音声の長さ（文字数）Ｘを算出する。
Ｘ＝Ｇ１・ＸＡ      …（１）
例えば、ステップＳ１０，Ｓ１２の処理により得られた音声区間の長さが４秒であり、平均単位長さ保持部１６５に保持されている一秒あたりの文字数が２文字であるとする。この場合、長さ計算部１６０は、式１を用いて入力音声の長さＸを８文字と算出する。
【００４３】
次に、重み決定部１７０が、言語モデルを混合するための重みを算出する（重み計算ステップ，ステップＳ１６）。重み決定部１７０は、ステップＳ１４の処理で算出された入力音声の長さＸと、第１ＤＢ長さ保持部１１０に格納されたデータの平均長さ及び第２ＤＢ長さ保持部１２０に格納されたデータの平均長さとそれぞれ比較する。例えば、入力音声の長さを８文字とすると、第１距離計算部４１０は、第１ＤＢ長さ保持部１１０に格納されたデータの平均長さ（５文字）と入力音声の長さ（８文字）との差分を３文字と計算する。同様に、第２距離計算部４２０は、第２ＤＢ長さ保持部１１０に格納されたデータの平均長さ（４０文字）と、入力音声の長さ（８文字）との差分を３２文字と計算する。そして、距離比較部４３０が、両者の差分を比較し、第１データベースに係る差分の方が小さいと判定する。そして、距離比較部４３０が、差分の小さい第１データベースに対応する第１言語モデルの重みを大きく設定する。例えば、距離比較部４３０は、第１言語モデルの重みを１．０とし、第２言語モデルの重みを０．０とする。又は、距離比較部４３０は、例えば、第１言語モデルの重みを０．８とし、第２言語モデルの重みを０．２とする。
【００４４】
次に、ＬＭ混合部１８０が、言語モデルを混合する（混合ステップ，ステップＳ１８）。ＬＭ混合部１８０は、ステップＳ１６の処理で算出された重みを用いて第１言語モデルと第２言語モデルとを混合する。
【００４５】
次に、認識処理部１９０が、入力音声を認識する（認識ステップ，ステップＳ２０）。認識処理部１９０は、入力音声及びステップＳ１８の処理により混合された言語モデルを用いて入力音声を認識し、文字にして出力する。ステップＳ２０の処理が終了すると、図５に示す制御処理を終了する。
【００４６】
以上で図５に示す制御処理を終了する。図５に示す制御処理を実行することにより、入力音声の長さに応じて第１言語モデル及び第２言語モデルが混合される。このように、入力音声の性質に合わせた言語モデルの混合係数を最適に決定することができるので、音声に対する認識精度を向上させることが可能となる。なお、図５に示す制御処理では、入力音声のデータの長さに関する情報（データ又は入力ボックスの長さ）として、データの長さを用いたが、入力ボックスの長さを用いてもよい。
【００４７】
次に、携帯端末（コンピュータ）１０を上記音声認識装置１として機能させるための音声認識プログラムを説明する。
【００４８】
音声認識プログラムは、メインモジュール、入力モジュール及び演算処理モジュールを備えている。メインモジュールは、音声認識処理を統括的に制御する部分である。入力モジュールは、入力音声を取得するように携帯端末１０を動作させる。演算処理モジュールは、第１ＤＢ長さ保持モジュール（第１長さ保持手段）１１０、第２ＤＢ長さ保持モジュール（第２長さ保持手段）１２０、第１ＬＭ保持モジュール（第１言語モデル保持手段）、第２ＬＭ保持モジュール（第２言語モデル保持手段）、音声区間検出モジュール（音声区間検出手段）、長さ計算モジュール（音声データ長計算手段、入力ボックス長さ取得手段）、文字単位長さ保持モジュール、重み決定モジュール（重み計算手段）、ＬＭ混合モジュール（混合手段）及び認識処理モジュールを備えている。メインモジュール、入力モジュール及び演算処理モジュールを実行させることにより実現される機能は、上述した音声認識装置１の第１ＤＢ長さ保持部１１０、第２ＤＢ長さ保持部１２０、第１ＬＭ保持部１３０、第２ＬＭ保持部１４０、音声区間検出部１５０、長さ計算部１６０、文字単位長さ保持部１６５、重み決定部１７０、ＬＭ混合部１８０及び認識処理部１９０の機能とそれぞれ同様である。
【００４９】
音声認識プログラムは、例えば、ＲＯＭ等の記憶媒体または半導体メモリによって提供される。また、音声認識プログラムは、データ信号としてネットワークを介して提供されてもよい。
【００５０】
上述したように、第１実施形態に係る音声認識装置１、音声認識方法又は音声認識プログラムによれば、第１ＬＭ保持部１３０（第１ＬＭ保持モジュール）により、第１データベースに基づいて作成された第１言語モデルが保持され、第１ＤＢ長さ保持部１１０（第１ＤＢ長さ保持モジュール）により、第１データベースに格納されたデータの長さが保持され、第２ＬＭ保持部１４０（第２ＬＭ作成モジュール）により、第２データベースに基づいて作成された第２言語モデルが保持され、第２ＤＢ長さ保持部１２０（第２ＤＢ長さ保持モジュール）により、第２データベースに格納されたデータの長さが保持される。そして、重み決定部１７０（重み決定モジュール）により、入力音声のデータの長さに関する情報、第１データベースに格納されたデータの長さ、及び第２データベースに格納されたデータの長さの関係に基づく重みが計算され、ＬＭ混合部１８０（ＬＭ混合モジュール）により、算出された重みで第１言語モデルと第２言語モデルとが混合され、認識処理部１９０（認識処理モジュール）により、混合された言語モデルに基づいて入力音声のデータが文字にされる。このように、入力音声の基本的な性質であるデータ長に着目し、第１言語モデルと第２言語モデルとを混合する際に、入力音声のデータの長さ、及び各言語モデルに対応するデータベースに格納されたデータの長さに基づいて各言語モデルの重みを設定することができるので、混合された言語モデルを、入力音声のデータに近い長さのデータに基づく言語モデルとすることが可能となる。このため、複数ＤＢから作成された複数の言語モデルを混合・統合する場合に、入力音声の性質に合せて言語モデルそれぞれの重みを適切に決めることができる。よって、入力音声の性質に合せた適切な認識結果を得ることが可能となる。
【００５１】
また、第１実施形態に係る音声認識装置１、音声認識方法又は音声認識プログラムによれば、音声区間検出部１５０（音声区間検出モジュール）により、入力音声の音声区間が検出され、長さ計算部１６０（長さ計算モジュール）により、音声区間から入力音声のデータの長さが計算され、長さ計算部１６０（長さ計算モジュール）により計算された入力音声のデータの長さを用いて、重み決定部１７０（重み決定モジュール）により重みが計算される。このため、入力音声のデータの長さを適切に取得することができる。
【００５２】
さらに、第１実施形態に係る音声認識装置１、音声認識方法又は音声認識プログラムによれば、長さ計算部１６０（長さ計算モジュール）により、音声を用いて文字入力する入力ボックスの長さが取得され、重み決定部１７０（重み決定モジュール）により、入力ボックスの長さを用いて重みが計算される。このため、入力ボックスの長さを重みに反映させることができるので、言語モデルを適切に混合することができる。
【００５３】
（第２実施形態）
次に、本発明の第２実施形態に係る音声認識装置１、音声認識方法及び音声認識プログラムについて説明する。
【００５４】
第２実施形態に係る音声認識装置１は、図１に示す第１実施形態に係る音声認識装置１とほぼ同様に構成されるものであり、第１実施形態に係る音声認識装置１に比べて、重み決定部１７０の構成のみが相違する。よって、第１実施形態と同様の構成要素は第１実施形態と同様の符号を付して説明を省略し、相違点を中心に説明する。
【００５５】
図６は、第２実施形態に係る音声認識装置１の重み決定部１７０の機能を示す機能ブロック図である。図６に示すように、本実施形態に係る音声認識装置１の重み決定部１７０は、図２に示す第１実施形態に係る音声認識装置１の重み決定部１７０と比べて、第１確率計算部５１０，第２確率計算部５２０，重み計算部５３０を備える点が相違する。
【００５６】
第１確率計算部５１０は、長さ計算部１６０により出力された入力音声のデータの長さＬｉｎを入力するとともに、第１データベースのデータの平均長さＬ１を入力し、第１データベースにおける入力音声の出現確率を算出する機能を有している。第２確率計算部５２０は、長さ計算部１６０により出力された入力音声のデータの長さＬｉｎを入力するとともに、第２データベースのデータの平均長さＬ２を入力し、第２データベースにおける入力音声の出現確率を算出する機能を有している。重み計算部５３０は、第１確率計算部５１０により出力された出現確率と、第２確率計算部５２０により出力された出現確率に基づいて、混合係数を設定する機能を有している。例えば、重み計算部５３０は、両者の出現確率の比を用いて混合係数を設定する。例えば、第１データベースでの出現確率が０．８、第２データベースでの出現確率が０．４であるとする。この場合、重み計算部５３０は、第１モデルの重みを（０．８／（０．８＋０．４））と計算し、第２モデルの重みを（０．４／（０．８＋０．４））と計算する。なお、長さ計算部１６０により出力された入力音声のデータの長さＬｉｎを出現確率の計算に用いたが、入力ボックスの長さを用いて出現確率を算出してもよい。音声認識装置１及び音声認識プログラムのその他の機能については第１実施形態に係る音声認識装置１及び音声認識プログラムと同様である。また、音声認識装置１の動作は第１実施形態とほぼ同様であり、図５のＳ１６の処理において、上述した出現確率を用いて重みを計算する以外は同一であるので説明を省略する。
【００５７】
以上、第２実施形態に係る音声認識装置１、音声認識方法及び音声認識プログラムによれば、第１実施形態に係る音声認識装置１、音声認識方法及び音声認識プログラムと同様の効果を奏するとともに、データの長さに基づく出現確率を用いて混合係数を変化させることができるので、より適切に言語モデルを混合させることが可能となる。
【００５８】
（第３実施形態）
次に、本発明の第３実施形態に係る音声認識装置１、音声認識方法及び音声認識プログラムについて説明する。
【００５９】
第３実施形態に係る音声認識装置１は、図１に示す第１実施形態に係る音声認識装置１とほぼ同様に構成されるものであり、第１実施形態に係る音声認識装置１のように、最適な言語モデルを混合して生成し、入力音声に適用して音声認識を行うものではなく、予め混合された言語モデルを用いて並列に音声認識を行い、得られた音声認識の結果から最適なものを選択する点が相違する。なお、第１実施形態と同様の構成要素は第１実施形態と同様の符号を付して説明を省略し、相違点を中心に説明する。
【００６０】
図７は、第３実施形態に係る音声認識装置１の機能を示す機能ブロック図である。音声認識装置１は、第１実施形態で説明した第１言語モデル及び第２言語モデルを参照可能に構成され、又は、第１実施形態で説明した第１言語モデル及び第２言語モデルを備えて構成される。
【００６１】
また、音声認識装置１は、機能的には、第１混合ＬＭ作成部（第１混合言語モデル作成手段）６１０、第１認識部（第１認識手段）６２０、第２混合ＬＭ作成部（第２混合言語モデル作成手段）６３０、第２認識部（第２認識手段）６４０、音声区間検出部１５０、長さ計算部１６０及び結果処理部（結果処理手段）６７０を備えている。
【００６２】
第１混合ＬＭ作成部６１０は、第１言語モデル及び第２言語モデルを第１混合重み（第１の重み）で混合する機能を有している。第１混合ＬＭ作成部６１０は、混合した言語モデルを第１認識部６２０へ出力するとともに、第１混合重みを結果処理部６７０へ出力する機能を有している。
【００６３】
第１認識部６２０は、入力音声を取得するとともに、第１混合ＬＭ作成部６１０により出力された言語モデルを参照して入力音声を認識する機能を有している。第１認識部６２０は、認識した結果（第１認識結果）を結果処理部６７０へ出力する機能を有している。
【００６４】
第２混合ＬＭ作成部６３０は、第１言語モデル及び第２言語モデルを第１混合重みとは異なる第２混合重み（第２の重み）で混合する機能を有している。第２混合ＬＭ作成部６３０は、混合した言語モデルを第２認識部６４０へ出力するとともに、第２混合重みを結果処理部６７０へ出力する機能を有している。
【００６５】
第２認識部６４０は、入力音声を取得するとともに、第２混合ＬＭ作成部６３０により出力された言語モデルを参照して入力音声を認識する機能を有している。第２認識部６４０は、認識した結果（第２認識結果）を結果処理部６７０へ出力する機能を有している。
【００６６】
結果処理部６７０は、複数の言語モデルによる認識結果を選択する機能を有している。重み決定部１７０は、入力音声の特徴的な性質の一つであるデータの長さに基づいて認識結果を選択する機能を有している。例えば、結果処理部６７０は、長さ計算部１６０により出力された入力音声のデータの長さもしくは入力ボックスの長さ、第１データベースに格納されたデータの平均長さ、及び、第２データベースに格納されたデータの平均長さに基づいて、認識結果を選択する機能を有している。
【００６７】
その他の構成は、第１実施形態に係る音声認識装置１と同様である。また、本実施形態に係る音声認識装置１を備える携帯端末１０は、第１実施形態に係る携帯端末１０と同様である。
【００６８】
次に、本実施形態に係る音声認識装置１の動作を説明する。図８は、本実施形態に係る音声認識装置１の動作を示すフローチャートである。図８に示す制御処理は、例えば携帯端末１０の電源がＯＮされたタイミングから所定の間隔で繰り返し実行される。なお、以下では説明理解の容易性を考慮し、第１実施形態と同様に、第１データベースには検索ログ等の単単語のみが格納されており、第２データベースにはＷｅｂ等に記載された文章が格納されているものとする。そして、第１データベースに格納されたデータの平均長さが５文字、第２データベースに格納されたデータの平均長さが４０文字であるとする。そして、第１データベースから第１言語モデルが作成され、第２データベースから第２言語モデルが作成されているものとする。そして、第１混合ＬＭ作成部６１０が、第１言語モデル及び第２言語モデルを０．８：０．２の割合で混合した第１混合言語モデルを作成し、第２混合ＬＭ作成部６３０が、第１言語モデル及び第２言語モデルを０．３：０．７の割合で混合した第２混合言語モデルを作成しているものとする（第１混合言語モデル作成ステップ，第２混合言語モデル作成ステップ）。なお、上記各ステップは図８に示す制御前に実行されていればよく、その実行順序は何でもよい。
【００６９】
最初に、図８に示すように、音声区間検出部１５０が音声の始点を検出する（ステップＳ３０）。そして、音声区間検出部１５０が音声の終点を検出する（ステップＳ３２）。上記処理は、図５のステップＳ１０，Ｓ１２の処理と同様である。
【００７０】
次に、第１認識部６２０及び第２認識部６４０が、入力音声を取得するとともに、言語モデルを用いて入力音声を認識する（ステップＳ３４）。第１認識部６２０は、第１混合言語モデルを用いて音声認識を行う（第１認識ステップ）。また、第２認識部６４０は、第２混合言語モデルを用いて音声認識を行う（第２認識ステップ）。
【００７１】
次に、長さ計算部１６０が入力音声の長さを計算する（ステップＳ３６）。この処理は、図５のステップＳ１４の処理と同様である。
【００７２】
次に、結果処理部６７０が、認識結果の選択を行う（結果処理ステップ、ステップＳ３８）。例えば、結果処理部６７０は、ステップＳ３６の処理で算出された入力音声の長さと、第１データベースに格納されたデータの平均長さ及び第２データベースに格納されたデータの平均長さとそれぞれ比較する。例えば、入力音声の長さを８文字とすると、第１データベースに格納されたデータの平均長さが５文字、第２データベースに格納されたデータの平均長さが４０文字であるので、第１データベースに格納されたデータの平均長さの方が入力音声の長さに近いと判定される。そして、結果処理部６７０は、第１混合言語モデルの第１混合重み、及び第２混合言語モデルの第２混合重みに基づいて、認識結果を選択する。例えば、第１データベースの重みが大きい第１混合言語モデルの認識結果を優先的に選択し、最終の結果とする。ステップＳ３８の処理が終了すると、図８に示す制御処理を終了する。
【００７３】
以上で図８に示す制御処理を終了する。図８に示す制御処理を実行することにより、入力音声の長さに応じて、第１言語モデル及び第２言語モデルを適切な重みで混合された混合モデルを用いて識別された結果が選択される。このように、入力音声の性質に合わせた混合言語モデルを最適に決定することができるので、音声に対する認識精度を向上させることが可能となる。なお、図８に示す制御処理では、入力音声のデータの長さに関する情報（データ又は入力ボックスの長さ）として、データの長さを用いたが、入力ボックスの長さを用いてもよい。
【００７４】
次に、携帯端末（コンピュータ）１０を上記音声認識装置１として機能させるための音声認識プログラムを説明する。
【００７５】
音声認識プログラムは、メインモジュール、入力モジュール及び演算処理モジュールを備えている。メインモジュールは、音声認識処理を統括的に制御する部分である。入力モジュールは、入力音声を取得するように携帯端末１０を動作させる。演算処理モジュールは、第１混合ＬＭ作成モジュール（第１混合言語モデル作成手段）、第１認識モジュール（第１認識手段）、第２混合ＬＭ作成モジュール（第２混合言語モデル作成手段）、第２認識モジュール（第２認識手段）、音声区間検出モジュール、長さ計算モジュール及び結果処理モジュール（結果処理手段）を備えている。メインモジュール、入力モジュール及び演算処理モジュールを実行させることにより実現される機能は、上述した音声認識装置１の第１混合ＬＭ作成部６１０、第１認識部６２０、第２混合ＬＭ作成部６３０、第２認識部６４０、音声区間検出部１５０、長さ計算部１６０及び結果処理部６７０の機能とそれぞれ同様である。
【００７６】
音声認識プログラムは、例えば、ＲＯＭ等の記憶媒体または半導体メモリによって提供される。また、音声認識プログラムは、データ信号としてネットワークを介して提供されてもよい。
【００７７】
上述したように、第３実施形態に係る音声認識装置１、音声認識方法又は音声認識プログラムによれば、第１混合ＬＭ作成部６１０（第１混合ＬＭ作成モジュール）により、第１言語モデル及び第２言語モデルが第１混合重みで混合され、第１認識部６２０（第１認識部モジュール）により、第１混合ＬＭ作成部６１０（第１混合ＬＭ作成モジュール）によって混合された言語モデルを用いて入力音声が認識され、第２混合ＬＭ作成部６３０（第２混合ＬＭ作成モジュール）により、第１言語モデル及び第２言語モデルが第１混合重みとは異なる第２混合重みで混合され、第２認識部６４０（第２認識部モジュール）により、第２混合ＬＭ作成部６３０（第２混合ＬＭ作成モジュール）によって混合された言語モデルを用いて入力音声が認識され、結果処理部６７０（結果処理モジュール）により、入力音声のデータの長さ、第１データベースに格納されたデータの長さ、及び第２データベースに格納されたデータの長さの関係に基づいて、第１認識部６２０（第１認識部モジュール）の認識結果及び第２認識部６４０（第２認識部モジュール）の認識結果から最終的な認識結果が選択される。このように、異なる言語モデルを異なる重みで混合し、混合した言語モデルそれぞれを用いて並列的に音声認識を行い、得られた複数の認識結果から、入力音声のデータの長さ、第１データベースに格納されたデータの長さ及び第２データベースに格納されたデータの長さに基づいて１の結果を選択することができるので、入力音声のデータの長さに合わせた最適な認識結果を選択することが可能となる。よって、入力音声の性質に合せた適切な認識結果を得ることが可能となる。
【００７８】
（第４実施形態）
次に、本発明の第４実施形態に係る音声認識装置１、音声認識方法及び音声認識プログラムについて説明する。
【００７９】
第４実施形態に係る音声認識装置１は、図１に示す第１実施形態に係る音声認識装置１とほぼ同様に構成されるものであり、音声区間検出部１５０及び重み決定部１７０の機能が一部相違する。なお、第１実施形態と同様の構成要素は第１実施形態と同様の符号を付して説明を省略し、相違点を中心に説明する。
【００８０】
第４実施形態に係る音声認識装置１、携帯端末１０及び音声認識プログラムの構成は、第１実施形態に係る音声認識装置１、携帯端末１０及び音声認識プログラムの構成と同様である。
【００８１】
音声区間検出部（ポーズ区間検出手段）１５０は、音声信号のパワーに基づいて音声区間及び音声区間に含まれるポーズ区間を検出する機能を有している。ポーズ区間とは、音声信号が所定値以下の音声区間である。
【００８２】
重み決定部１７０は、音声区間検出部１５０により検出されたポーズ区間、第１データベースに格納されたデータの長さ、及び第２データベースに格納されたデータの長さに基づいて、重みを計算する機能を有している。例えば、第１実施形態と同様に、第１データベースには検索ログ等の単単語のみが格納されており、第２データベースにはＷｅｂ等に記載された文章が格納されているものとする。そして、第１データベースから第１言語モデルが作成され、第２データベースから第２言語モデルが作成されているものとする。この場合、重み決定部１７０は、入力音声にポーズ区間が存在しなければ、第１言語モデルの重みを大きくして音声認識を行う。他方、重み決定部１７０は、入力音声にポーズ区間が存在すれば、第２言語モデルの重みを大きくして音声認識を行う。あるいは、ポーズ区間の数に応じて混合重みの設定をしてもよい。
【００８３】
次に、音声区間検出部１５０の動作について詳細を説明する。図９は、音声区間検出部１５０の動作を示すフローチャート、図１０は、ポーズ区間検出処理を説明するための音声信号である。図９に示す制御処理は、音声区間検出部１５０により実行される。例えば、携帯端末１０の電源がＯＮされたタイミングから所定の間隔で繰り返し実行される。
【００８４】
図９に示すように、音声信号の入力を行う（ステップＳ４０）。次に、フレームごとに音声信号のパワーを計算する（ステップＳ４２）。次に、入力ごとにステップＳ４２で算出されたパワーと事前に定めた閾値（図１０参照）とを比較する（ステップＳ４４）。
【００８５】
ステップＳ４４の処理において、パワーが閾値より大きくないと判定した場合には、ステップＳ４０の処理へ再度移行し、ステップＳ４０〜Ｓ４４の処理を繰り返し行う。一方、ステップＳ４４の処理において、パワーが閾値より大きいと判定した場合には、このフレームを始点と設定する（ステップＳ４６）。これにより、図１０に示すように始点が設定される。
【００８６】
次に、継続する音声入力に対してパワーを計算する（ステップＳ４８）。そして、ステップＳ４８の処理で計算したパワーを閾値と比較してポーズ区間を検出する（ポーズ区間検出ステップ、ステップＳ５０）。例えば、パワーが一度閾値を下回った後に再度閾値を上回った場合には、当該区間をポーズ区間とする。これにより、図１０に示すようにポーズ区間１が設定される。
【００８７】
次に、ステップＳ５０の処理で検出されたポーズ区間の継続時間（ポーズ区間の長さ）を算出し、所定の閾値と比較する（ステップＳ５２）。継続時間が所定の閾値よりも大きくない場合には、ステップＳ４８の処理へ再度移行し、ステップＳ４８〜Ｓ５２の処理を繰り返し行う。一方、ステップＳ５２の処理において、継続時間が閾値より大きいと判定した場合には、このフレームを終点と設定する（ステップＳ５４）。これにより、図１０に示すように終点が設定される。ステップＳ５４の処理が終了すると、図９に示す制御処理を終了する。
【００８８】
以上で図９に示す制御処理を終了する。図９に示す制御処理を実行することにより、自動的に音声の始点及び終点が検出される。このため、音声認識のためのユーザ操作を不要とすることができる。
【００８９】
上述したように、第４実施形態に係る音声認識装置１、音声認識方法又は音声認識プログラムによれば、第１実施形態に係る音声認識装置１、音声認識方法又は音声認識プログラムと同様の効果を奏するとともに、自動的に音声の始点及び終点を検出することができるので、音声認識のためのユーザ操作を不要とすることが可能となる。
【００９０】
また、第４実施形態に係る音声認識装置１、音声認識方法又は音声認識プログラムによれば、音声区間検出部１５０により、入力音声の音声区間が検出されるとともに音声区間に含まれるポーズ区間が検出され、重み決定部１７０により、ポーズ区間、第１データベースに格納されたデータの長さ、及び第２データベースに格納されたデータの長さに基づいて重みが計算される。このように、入力音声の基本的な性質であるデータ長に影響するポーズ区間に着目し、第１言語モデルと第２言語モデルとを混合する際に、入力音声のポーズ区間、及び各言語モデルに対応するデータベースに格納されたデータの長さに基づいて各言語モデルの重みを設定することができるので、混合された言語モデルを、入力音声のデータに近い長さのデータに基づく言語モデルとすることが可能となる。このため、複数ＤＢから作成された複数の言語モデルを混合・統合する場合に、入力音声の性質に合せて言語モデルそれぞれの重みを適切に決めることができる。よって、入力音声の性質に合せた適切な認識結果を得ることが可能となる。
【００９１】
なお、上述した各実施形態は本発明に係る音声認識装置、音声認識方法及び音声認識プログラムの一例を示すものである。本発明に係る音声認識装置、音声認識方法及び音声認識プログラムは、各実施形態に係る音声認識装置１、音声認識方法及び音声認識プログラムに限られるものではなく、各請求項に記載した要旨を変更しない範囲で、各実施形態に係る音声認識装置１、音声認識方法及び音声認識プログラムを変形し、又は他のものに適用したものであってもよい。
【００９２】
例えば、上述した各実施形態では、言語モデルを２つ用いる例を説明したが、３以上の言語モデルを混合する場合であってもよい。
【００９３】
また、上述した各実施形態では、データベースから特に制約を設けずに言語モデルを作成する例を説明したが、例えば、データベースの単語にクラスタリングを行い、クラスタリングの単語クラスに基づくクラス言語モデルを利用して音声認識をしてもよい。
【００９４】
また、上述した各実施形態において、音声認識装置１が第１データベース及び第２データベースを備えてもよい。また、音声認識装置１が第１データベース及び第２データベースに基づいて第１言語モデル及び第２言語モデルを作成してもよい。
【００９５】
また、上述した各実施形態では、携帯端末１０に音声認識装置１を備え端末側で音声認識処理を行う例を説明したが、携帯端末１０及びサーバにそれぞれ一部の処理を分担し、携帯端末１０及びサーバ間でお互いに通信を行う協調型の音声認識処理をしてもよい。例えば、音声から特徴量を計算までの処理は端末側で行い、特徴量をサーバ側に送信する。サーバは、音声認識処理を行い、認識結果を端末に返信する。この場合、入力音声の長さの算出は、端末又はサーバのどちらで行ってもよい。
【００９６】
また、上述した１，２実施形態では、音声を入力しながら動的に認識処理を行ってもよい。この場合、音声の長さの判定処理が認識処理よりも遅れる場合がある。よって、動的に音声認識を行う場合には、音声認識を二段階に分けて行うことが好適である。例えば、第１段階では、音声を入力しながら途中の認識結果の文字列が出力される。第１段階の途中の認識結果は複数の候補がある中間形式である。そして、音声入力が終了すると、発音終了が検出され、発音の長さが判明する。次に、第２段階において、第１，第２実施形態で説明した音声認識装置１又は音声認識プログラムを動作させ、あるいは第１，第２実施形態で説明した音声認識方法を実行する。すなわち第２段階では、第１段階の出力の複数の認識候補に対して処理を行えばよい。
【００９７】
また、上述した第３実施形態では、図８を用いて音声認識装置１の動作を説明したが、例えば、ステップＳ３２の処理とステップＳ３４の処理は順番が逆であってもよい。すなわち、入力信号に対して第１認識部６２０、第２認識部６４０、音声区間検出部１５０を同時に動作させて動的に音声認識を行ってもよい。
【００９８】
さらに、上述した第４実施形態では、第１実施形態に係る音声認識装置１の構成で説明したが、ポーズ区間の検出処理は第３実施形態に係る音声認識装置１の構成で行ってもよい。このとき、重み決定部１７０は、ポーズ区間の有無又は数に応じて識別結果を選択してもよい。
【符号の説明】
【００９９】
１…音声認識装置、１０…携帯端末、１１０…第１ＤＢ長さ保持部（第１長さ保持手段）、１２０…第２ＤＢ長さ保持部（第２長さ保持手段）、１３０…第１ＬＭ保持部（第１言語モデル保持手段）、１４０…第２ＬＭ保持部（第２言語モデル保持手段）、１５０…音声区間検出部（音声区間検出手段）、１６０…長さ計算部（音声データ長計算手段、入力ボックス長さ取得手段）、１６５…文字単位長さ保持部、１７０…重み決定部（重み計算手段）、１８０…ＬＭ混合部（混合手段）、１９０…認識処理部（認識手段）、６１０…第１混合ＬＭ作成部（第１混合言語モデル作成手段）、６２０…第１認識部（第１認識手段）、６３０…第２混合ＬＭ作成部（第２混合言語モデル作成手段）、６４０…第２認識部（第２認識手段）、６７０…結果処理部（結果処理手段）。
【図１】
2011215494.tif 000003
【図２】
2011215494.tif 000004
【図３】
2011215494.tif 000005
【図４】
2011215494.tif 000006
【図５】
2011215494.tif 000007
【図６】
2011215494.tif 000008
【図７】
2011215494.tif 000009
【図８】
2011215494.tif 000010
【図９】
2011215494.tif 000011
【図１０】
2011215494.tif 000012