(57)【要約】【課題】音声認識用文法を単独で用いる場合、又は離散単語認識用の文法と併用する場合であっても、発話の終了時点を早期に特定することができ音声認識レスポンスを早めることが可能な音声認識装置、音声認識方法、及びコンピュータプログラムを提供する。【解決手段】音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする。言語モデルに関する情報、音声認識用文法に基づいて変換される認識候補単語列、及び単語列の末尾の単語が最終単語であるか否かを示す情報を記憶しておき、言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する。抽出された認識候補単語列の末尾の単語が最終単語であると判断された場合、基準時間より短時間で音声認識結果を出力し、最終単語ではないと判断された場合、基準時間経過時に音声認識結果を出力する。【選択図】図３
2007256482.tif 000002
【特許請求の範囲】
【請求項１】
音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識装置において、
言語モデルに関する情報を記憶する言語モデル記憶手段と、
音声認識用文法に基づいて変換される認識候補単語列、及び単語列の末尾の単語が最終単語であるか否かを示す情報を記憶する記憶手段と、
前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段と、
抽出された認識候補単語列から発話末尾の単語が最終単語であるか否かを判断する最終単語判断手段と、
該最終単語判断手段で最終単語であると判断された場合、前記基準時間より短時間で音声認識結果を出力し、最終単語ではないと判断された場合、前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段と
を備えることを特徴とする音声認識装置。
【請求項２】
前記認識候補抽出手段で抽出された認識候補単語列が更新されたか否かを判断する手段と、
該手段で更新されたと判断した場合、前記認識候補単語列を外部へ出力する認識候補出力手段と、
無音区間の継続時間が前記基準時間に到達したか否かを判断する手段と、
該手段で到達したと判断した場合、到達時点での認識候補単語列を外部へ出力する手段と
を備えることを特徴とする請求項１記載の音声認識装置。
【請求項３】
音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識装置において、
言語モデルに関する情報を記憶する言語モデル記憶手段と、
前記言語モデルに含まれる認識語彙を単語群に分類して記憶する手段と、
認識候補単語列の末尾の単語を単語群と対応付けて記憶する手段と、
前記単語群ごとの最終単語になる確率を記憶する手段と、
前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段と、
抽出された認識候補単語列の末尾の単語が対応する単語群の最終単語になる確率に基づいて、前記基準時間を変更する手段と、
前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段と
を備えることを特徴とする音声認識装置。
【請求項４】
音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識装置において、
言語モデルに関する情報を記憶する言語モデル記憶手段と、
前記言語モデルに含まれる認識語彙を単語群に分類して記憶する手段と、
認識候補単語列の末尾の単語を単語群と対応付けて記憶する手段と、
前記単語群ごとに前記基準時間を記憶する手段と、
前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段と、
抽出された認識候補単語列の末尾の単語が対応する単語群の基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段と
を備えることを特徴とする音声認識装置。
【請求項５】
音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識方法において、
言語モデルに関する情報を記憶し、
音声認識用文法に基づいて変換される認識候補単語列、及び単語列の末尾の単語が最終単語であるか否かを示す情報を記憶し、
前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出し、
抽出された認識候補単語列から発話末尾の単語が最終単語であるか否かを判断し、
最終単語であると判断された場合、前記基準時間より短時間で音声認識結果を出力し、最終単語ではないと判断された場合、前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力することを特徴とする音声認識方法。
【請求項６】
音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識方法において、
言語モデルに関する情報を記憶し、
前記言語モデルに含まれる認識語彙を単語群に分類して記憶し、
認識候補単語列の末尾の単語を単語群と対応付けて記憶し、
前記単語群ごとの最終単語になる確率を記憶し、
前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出し、
抽出された認識候補単語列の末尾の単語が対応する単語群の最終単語になる確率に基づいて、前記基準時間を変更し、
前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力することを特徴とする音声認識方法。
【請求項７】
音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識方法において、
言語モデルに関する情報を記憶し、
前記言語モデルに含まれる認識語彙を単語群に分類して記憶し、
認識候補単語列の末尾の単語を単語群と対応付けて記憶し、
前記単語群ごとに前記基準時間を記憶し、
前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出し、
抽出された認識候補単語列の末尾の単語が対応する単語群の基準時間内に新たな音声データが存在しないときに音声認識結果を出力することを特徴とする音声認識方法。
【請求項８】
音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とするコンピュータで実行することが可能なコンピュータプログラムにおいて、
前記コンピュータを、
言語モデルに関する情報を記憶する言語モデル記憶手段、
音声認識用文法に基づいて変換される認識候補単語列、及び単語列の末尾の単語が最終単語であるか否かを示す情報を記憶する記憶手段、
前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段、
抽出された認識候補単語列から発話末尾の単語が最終単語であるか否かを判断する最終単語判断手段、
該最終単語判断手段で最終単語であると判断された場合、前記基準時間より短時間で音声認識結果を出力し、最終単語ではないと判断された場合、前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段
として機能させることを特徴とするコンピュータプログラム。
【請求項９】
音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とするコンピュータで実行することが可能なコンピュータプログラムにおいて、
前記コンピュータを、
言語モデルに関する情報を記憶する言語モデル記憶手段、
前記言語モデルに含まれる認識語彙を単語群に分類して記憶する手段、
認識候補単語列の末尾の単語を単語群と対応付けて記憶する手段、
前記単語群ごとの最終単語になる確率を記憶する手段、
前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段、
抽出された認識候補単語列の末尾の単語が対応する単語群の最終単語になる確率に基づいて、前記基準時間を変更する手段、
前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段
として機能させることを特徴とするコンピュータプログラム。
【請求項１０】
音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とするコンピュータで実行することが可能なコンピュータプログラムにおいて、
前記コンピュータを、
言語モデルに関する情報を記憶する言語モデル記憶手段、
前記言語モデルに含まれる認識語彙を単語群に分類して記憶する手段、
認識候補単語列の末尾の単語を単語群と対応付けて記憶する手段、
前記単語群ごとに前記基準時間を記憶する手段、
前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段、
抽出された認識候補単語列の末尾の単語が対応する単語群の基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段
として機能させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声の入力を受け付けて音声を認識し、認識結果を出力する音声認識装置、音声認識方法、及びコンピュータプログラムに関する。
【背景技術】
【０００２】
音声認識技術の進展に伴い、ボイスポータル、カーナビゲーションシステム等の音声認識システムが多々開発されている。音声認識システムでは、連続単語認識、離散単語認識等の音声認識エンジンを使用し、音声認識結果を表示する、又は音声認識結果を用いてアプリケーションを実行する。
【０００３】
例えば連続単語認識用の音声認識エンジンを使用する従来の音声認識装置の制御手段は、受け付けた音声のパワーを時々刻々計算し、計算した音声パワーを所定の閾値と比較し、閾値を超える時間が一定時間以上継続した時点で、受け付けた音声の特徴パラメータを抽出するための音響分析を時々刻々実行し、音響分析結果と、文法、Ｎグラム等の言語モデルに基づいて認識候補単語列ごとの照合スコアを算出し、照合スコアから認識結果となる単語列を一又は複数求める。
【０００４】
音声認識エンジンを使用する場合、発話区間を正確に特定することが重要となる。特に連続単語認識時には、「単語間ポーズ」及び「発話終了後の無音」を混同しないように、所定時間長の「基準時間」を設定し、設定された基準時間と検出された無音区間の時間とを比較して、無音区間が基準時間を超えた場合に発話の終了であるものと判断する。
【０００５】
例えば特許文献１では、ユーザから発話入力される連続した単語を含む音声データを取得し、取得した音声データを認識する場合に、予め時間長が設定された発話終了ポーズ時間以上の無音区間を検出した場合にユーザの発話入力の終了を検出する機能を備え、ユーザから入力される発話の終端を検出する精度に応じて発話終了ポーズ時間を決定する音声認識装置が開示されている。特許文献１では、ユーザの発話の終端を検出する精度に応じて、「発話終了の区切り」を高い精度で区別することができる。
【０００６】
特許文献２では、入力音声と単語標準パタンとの照合結果より得られる、部分文の照合スコア及び構文解析結果と、無音の標準パタンに一致すると判断される入力音声の継続時間とを用いて、発話の終了を判断する終話検出方法が開示されている。例えば、文法規則に受理される部分文の照合スコアが全ての部分文の照合スコアのうちで最大であり、無音の標準パタンと一致すると判断される入力音声の継続時間が予め定めた所定時間以上である場合に、発声の終了時点と判断する。
【特許文献１】特開２００５−０１７９３２号公報
【特許文献２】特開平８−１１５０９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上述した従来の音声認識装置では、いずれも一定時間以上の無音時間を検出した場合に発話の終了時点であると判断している。図１１は姓名文法の一例を示す図である。したがって、図１１に示すような姓と名、姓だけ、名だけの発声を許す姓名文法を用いた音声認識時には、名だけの発話を含む音声データが入力され文法上後続の単語が無いことが明らかである場合であっても、長めに設定された一定時間が経過した後でなければ発話終了であると判断することができず、音声認識レスポンスを早めることができないという問題点があった。すなわち音声認識レスポンスを早めるために発話の終了と判断するまでの時間を短縮した場合、姓と名との間の無音区間を誤って発話終了と判断するおそれがあるからである。
【０００８】
一方、コマンド文法のような離散単語認識用の音声認識エンジンのみを用いる場合、後続する単語がない（ポーズ区間が有り得ない）ことから、連続単語認識用の音声認識エンジンを用いる場合よりも短い無音区間を検出するのみで音声の終了時点を特定することができる。しかし、連続単語認識用の音声認識エンジンと併用する場合（いわゆるマルチグラマーでの利用）、上述したのと同様に、一定時間以上の無音区間を検出した場合に発話の終了時点であると判断する必要があり、一定時間経過した後でなければ発話終了と判断することができず、音声認識レスポンスを早めることができないという問題点があった。
【０００９】
本発明は斯かる事情に鑑みてなされたものであり、音声認識用文法を単独で用いる場合、又は離散単語認識用の文法と併用する場合であっても、発話の終了時点を早期に特定することができ音声認識レスポンスを早めることが可能な音声認識装置、音声認識方法、及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために第１発明に係る音声認識装置は、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識装置において、言語モデルに関する情報を記憶する言語モデル記憶手段と、音声認識用文法に基づいて変換される認識候補単語列、及び単語列の末尾の単語が最終単語であるか否かを示す情報を記憶する記憶手段と、前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段と、抽出された認識候補単語列から発話末尾の単語が最終単語であるか否かを判断する最終単語判断手段と、該最終単語判断手段で最終単語であると判断された場合、前記基準時間より短時間で音声認識結果を出力し、最終単語ではないと判断された場合、前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段とを備えることを特徴とする。なお、最終単語とは、文法を用いて受理することが可能な全ての単語列において、必ず最後（単語列末尾）になる単語を意味する。また、最終単語であるか否かを判断する場合、同音異義語は同一の単語とみなしても良い。読み及び表記が同一であっても、文法上異なる位置に存在する単語を区別しても良い。
【００１１】
第２発明に係る音声認識装置は、第１発明において、前記認識候補抽出手段で抽出された認識候補単語列が更新されたか否かを判断する手段と、該手段で更新されたと判断した場合、前記認識候補単語列を外部へ出力する認識候補出力手段と、無音区間の継続時間が前記基準時間に到達したか否かを判断する手段と、該手段で到達したと判断した場合、到達時点での認識候補単語列を外部へ出力する手段とを備えることを特徴とする。
【００１２】
第３発明に係る音声認識装置は、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識装置において、言語モデルに関する情報を記憶する言語モデル記憶手段と、前記言語モデルに含まれる認識語彙を単語群に分類して記憶する手段と、認識候補単語列の末尾の単語を単語群と対応付けて記憶する手段と、前記単語群ごとの最終単語になる確率を記憶する手段と、前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段と、抽出された認識候補単語列の末尾の単語が対応する単語群の最終単語になる確率に基づいて、前記基準時間を変更する手段と、前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段とを備えることを特徴とする。
【００１３】
第４発明に係る音声認識装置は、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識装置において、言語モデルに関する情報を記憶する言語モデル記憶手段と、前記言語モデルに含まれる認識語彙を単語群に分類して記憶する手段と、認識候補単語列の末尾の単語を単語群と対応付けて記憶する手段と、前記単語群ごとに前記基準時間を記憶する手段と、前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段と、抽出された認識候補単語列の末尾の単語が対応する単語群の基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段とを備えることを特徴とする。
【００１４】
第５発明に係る音声認識方法は、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識方法において、言語モデルに関する情報を記憶し、音声認識用文法に基づいて変換される認識候補単語列、及び単語列の末尾の単語が最終単語であるか否かを示す情報を記憶し、前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出し、抽出された認識候補単語列から発話末尾の単語が最終単語であるか否かを判断し、最終単語であると判断された場合、前記基準時間より短時間で音声認識結果を出力し、最終単語ではないと判断された場合、前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力することを特徴とする。
【００１５】
第６発明に係る音声認識方法は、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識方法において、言語モデルに関する情報を記憶し、前記言語モデルに含まれる認識語彙を単語群に分類して記憶し、認識候補単語列の末尾の単語を単語群と対応付けて記憶し、前記単語群ごとの最終単語になる確率を記憶し、前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出し、抽出された認識候補単語列の末尾の単語が対応する単語群の最終単語になる確率に基づいて、前記基準時間を変更し、前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力することを特徴とする。
【００１６】
第７発明に係る音声認識方法は、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする音声認識方法において、言語モデルに関する情報を記憶し、前記言語モデルに含まれる認識語彙を単語群に分類して記憶し、認識候補単語列の末尾の単語を単語群と対応付けて記憶し、前記単語群ごとに前記基準時間を記憶し、前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出し、抽出された認識候補単語列の末尾の単語が対応する単語群の基準時間内に新たな音声データが存在しないときに音声認識結果を出力することを特徴とする。
【００１７】
第８発明に係るコンピュータプログラムは、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とするコンピュータで実行することが可能なコンピュータプログラムにおいて、前記コンピュータを、言語モデルに関する情報を記憶する言語モデル記憶手段、音声認識用文法に基づいて変換される認識候補単語列、及び単語列の末尾の単語が最終単語であるか否かを示す情報を記憶する記憶手段、前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段、抽出された認識候補単語列から発話末尾の単語が最終単語であるか否かを判断する最終単語判断手段、該最終単語判断手段で最終単語であると判断された場合、前記基準時間より短時間で音声認識結果を出力し、最終単語ではないと判断された場合、前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段として機能させることを特徴とする。
【００１８】
第９発明に係るコンピュータプログラムは、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とするコンピュータで実行することが可能なコンピュータプログラムにおいて、前記コンピュータを、言語モデルに関する情報を記憶する言語モデル記憶手段、前記言語モデルに含まれる認識語彙を単語群に分類して記憶する手段、認識候補単語列の末尾の単語を単語群と対応付けて記憶する手段、前記単語群ごとの最終単語になる確率を記憶する手段、前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段、抽出された認識候補単語列の末尾の単語が対応する単語群の最終単語になる確率に基づいて、前記基準時間を変更する手段、前記基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段として機能させることを特徴とする。
【００１９】
第１０発明に係るコンピュータプログラムは、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とするコンピュータで実行することが可能なコンピュータプログラムにおいて、前記コンピュータを、言語モデルに関する情報を記憶する言語モデル記憶手段、前記言語モデルに含まれる認識語彙を単語群に分類して記憶する手段、認識候補単語列の末尾の単語を単語群と対応付けて記憶する手段、前記単語群ごとに前記基準時間を記憶する手段、前記言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出する認識候補抽出手段、抽出された認識候補単語列の末尾の単語が対応する単語群の基準時間内に新たな音声データが存在しないときに音声認識結果を出力する認識結果出力手段として機能させることを特徴とする。
【００２０】
第１発明、第５発明及び第８発明では、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする。言語モデルに関する情報を記憶し、音声認識用文法に基づいて変換される認識候補単語列、及び単語列の末尾の単語が最終単語であるか否かを示す情報を記憶しておく。言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出し、抽出された認識候補単語列から発話末尾の単語が最終単語であるか否かを判断する。最終単語であると判断された場合、基準時間より短時間で音声認識結果を出力し、最終単語ではないと判断された場合、基準時間内に新たな音声データが存在しないときに音声認識結果を出力する。これにより、受け付けた音声データに含まれている発話が最終単語に対応する発話、すなわち受け付ける発話の最後の単語であることを確実に検出することができ、不必要な待ち時間を設けることなく音声認識結果を表示することが可能となる。
【００２１】
第２発明では、抽出された認識候補単語列が更新される都度、認識候補単語列を外部へ出力しておき、無音区間の継続時間が前記基準時間に到達した場合、到達時点での認識候補単語列を外部へ出力する。これにより、受け付けた音声データに含まれている発話が最終単語に対応する発話、すなわち受け付ける発話の最後の単語であることを検出するか否かにかかわらず音声認識結果を早期に出力しておき、最終単語に対応する発話、すなわち受け付ける発話の最後の単語であることを検出した場合以外は、見かけ上音声認識レスポンスが向上する。また、最終単語に対応する発話、すなわち受け付ける発話の最後の単語ではない場合には、出力される音声認識結果を更新することにより、音声認識結果の正確性を担保することができる。
【００２２】
第３発明、第６発明及び第９発明では、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする。言語モデルに関する情報を記憶し、言語モデルに含まれる認識語彙を単語群に分類して記憶し、認識候補単語列の末尾の単語を単語群と対応付けて記憶し、単語群ごとの最終単語になる確率を記憶しておく。言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出し、抽出された認識候補単語列の末尾の単語が対応する単語群の最終単語になる確率に基づいて基準時間を変更し、基準時間内に新たな音声データが存在しないときに音声認識結果を出力する。これにより、最終単語に対応する発話、すなわち受け付ける発話の最後の単語である確率が高い発話を受け付けた場合にはより短い時間で音声認識結果を表示又は出力することができ、音声認識レスポンスを向上することが可能となる。
【００２３】
第４発明、第７発明及び第１０発明では、音声データを受け付け、発話部分の後の無音区間の継続時間が発話の終了を判断する基準となる基準時間に到達するまで音声認識結果の出力待ち状態とする。言語モデルに関する情報を記憶し、言語モデルに含まれる認識語彙を単語群に分類して記憶し、認識候補単語列の末尾の単語を単語群と対応付けて記憶し、単語群ごとに基準時間を記憶しておく。言語モデルに基づいて、受け付けた音声データに対応する認識候補単語列を抽出し、抽出された認識候補単語列の末尾の単語が対応する単語群の基準時間内に新たな音声データが存在しないときに音声認識結果を出力する。これにより、新たな音声データが存在せず最終単語に対応する発話、すなわち受け付ける発話の最後の単語である確率が高い発話ほど基準時間を短く設定しておくことにより、認識候補単語列の末尾の単語が対応する単語群ごとに設定されている基準時間に基づいて待ち時間を調整することができ、音声認識レスポンスを向上することが可能となる。
【発明の効果】
【００２４】
第１発明、第５発明及び第８発明によれば、受け付けた音声データに含まれている発話が最終単語に対応する発話、すなわち受け付ける発話の最後の単語であることを確実に検出することができ、不必要な待ち時間を設けることなく音声認識結果を表示することが可能となる。
【００２５】
第２発明によれば、受け付けた音声データに含まれている発話が最終単語に対応する発話、すなわち受け付ける発話の最後の単語であることを検出するか否かにかかわらず音声認識結果を早期に出力しておき、最終単語に対応する発話、すなわち受け付ける発話の最後の単語であることを検出した場合以外は、見かけ上音声認識レスポンスが向上する。また、最終単語に対応する発話、すなわち受け付ける発話の最後の単語ではない場合には、出力される音声認識結果を更新することにより、音声認識結果の正確性を担保することができる。
【００２６】
第３発明、第６発明及び第９発明によれば、最終単語に対応する発話、すなわち受け付ける発話の最後の単語である確率が高い発話を受け付けた場合にはより短い時間で音声認識結果を表示又は出力することができ、音声認識レスポンスを向上することが可能となる。
【００２７】
第４発明、第７発明及び第１０発明によれば、新たな音声データが存在せず最終単語に対応する発話、すなわち受け付ける発話の最後の単語である確率が高い発話ほど基準時間を短く設定しておくことにより、認識候補単語列の末尾の単語が対応する単語群ごとに設定されている基準時間に基づいて待ち時間を調整することができ、音声認識レスポンスを向上することが可能となる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明をその実施の形態を示す図面に基づいて詳述する。
【００２９】
（実施の形態１）
図１は、本発明の実施の形態１に係る音声認識装置１の構成を示すブロック図である。音声認識装置１は、装置全体を制御するＣＰＵ等の制御手段１１、本発明の実施の形態１に係る音声認識装置１で実行可能なコンピュータプログラム１０１及びデータ等の各種情報を記録したＣＤ−ＲＯＭ等の記録媒体１０２から各種情報を読み取るＣＤ−ＲＯＭドライブ等の補助記憶手段１２、補助記憶手段１２により読み取った各種情報を記録するハードディスク等の記録手段１３を備えている。制御手段１１が、記録手段１３から本発明に係るコンピュータプログラム１０１及びデータ等の各種情報を読み取り、情報を一時的に記憶するＲＡＭ等の記憶手段１４に記憶させてコンピュータプログラム１０１に含まれる各種手順を実行することで、コンピュータは、本発明に係る音声認識装置１として動作する。
【００３０】
記録手段１３は、音声認識用の言語モデルを記憶してある音声認識用言語モデル記憶部１３１、及び言語モデルに対応する認識語彙を記憶してある認識語彙辞書１３２を備えている。音声認識装置１は、さらに外部とデータ通信する通信手段１５、キーボード、マウス等の入力手段１６、ＣＲＴモニタ、ＬＣＤモニタ等の認識結果出力手段１７、及びマイクロホン、マイクロホンアレイ等の音声データ入力手段１８を備えている。
【００３１】
なお、言語モデル内に認識語彙を含めるか否かを定義の問題であり、含めても良いし、含めなくても良い。また、認識結果は、認識結果出力手段１７へ表示出力することに限定されるものではなく、認識結果を用いる他の装置、他のアプリケーション等へ通信手段１５を介して出力するものであっても良い。音声データ入力手段１８も、マイクロホン等に限定されるものではなく、他の装置、他のアプリケーション等から通信手段１５を介して受信するものであっても良いし、記録手段１３、記憶手段１４、補助記憶手段１２から読取るものであっても良い。
【００３２】
図２及び図３は、本発明の実施の形態１に係る音声認識装置１の制御手段１１の音声認識処理の手順を示すフローチャートである。音声認識装置１の制御手段１１は、音声データを取得したか否かを判断し（ステップＳ２０１）、制御手段１１は、音声データを取得するまで待ち状態となる（ステップＳ２０１：ＮＯ）。音声データを受け付けたか否かを判断する方法は特に限定されるものではない。例えば、サウンドデバイスドライバのバッファ残量を常時監視しておき、一定時間以上のデータがバッファに蓄積された時点で読み出し、それまでは読み出さないようにすることで、バッファ残量により音声データを受け付けたか否かを判断することができる。なお、認識処理の演算処理負荷が大きく、バッファがオーバーフローするおそれがある場合、一定時間間隔でバッファに蓄積されたデータを読み出す方法を採用することが多いが、この場合であっても一定時間経過したか否かに応じて音声データを受け付けたか否かを判断することができる。
【００３３】
制御手段１１は、取得した音声データから発話の開始を検出したか否かを判断し（ステップＳ２０２）、制御手段１１が、発話の開始を検出していないと判断した場合（ステップＳ２０２：ＮＯ）、制御手段１１は、ステップＳ２０１へ処理を戻す。制御手段１１が、発話の開始を検出したと判断した場合（ステップＳ２０２：ＹＥＳ）、制御手段１１は、継続して音声データを取得したか否かを判断し（ステップＳ２０３）、制御手段が、音声データを取得したと判断した場合（ステップＳ２０３：ＹＥＳ）、制御手段１１は、発話の終了候補を検出したか否かを判断する（ステップＳ２０４）。なお、発話の開始、及び発話の終了候補を検出する方法は特に限定されるものではない。例えば受け付けた音声データのパワーを常時計測しておき、計測した音声データのパワーが所定の閾値を一定時間以上継続して超えた場合に、発話の開始を検出したものと判断し、計測した音声データのパワーが所定の閾値を一定時間（例えば促音の継続時間長より少し長い０．２秒間）以上継続して下回った場合に、発話の終了候補を検出したものと判断する方法であっても良い。
【００３４】
制御手段１１が、発話の終了候補を検出していないと判断した場合（ステップＳ２０４：ＮＯ）、制御手段１１は、発話の終了候補の検出待ち状態となる。制御手段１１が、発話の終了候補を検出したと判断した場合（ステップＳ２０４：ＹＥＳ）、制御手段１１は、内蔵するタイマ、時計等により、発話の終了候補からの無音継続時間の計時を開始し（ステップＳ２０５）、記録手段１３に記録してある音声認識用文法、及び認識語彙辞書１３２を照会して、受け付けた音声データに対する認識候補単語列を抽出する（ステップＳ２０６）。制御手段１１は、後続する発話がないことを確認する（発話の終了を確定する）のに十分な時間である基準時間Ｔａが経過したか否かを判断する（ステップＳ２０７）。
【００３５】
制御手段１１が、基準時間Ｔａが経過したと判断した場合（ステップＳ２０７：ＹＥＳ）、制御手段１１は、受け付けた発話が最終の発話である（発話の終了が確定した）として、抽出した認識候補単語列を音声認識結果として出力する（ステップＳ２０８）。なお、認識候補単語列が抽出されていない場合、制御手段１１は、言語モデルにマッチしない（受理できない）発話と判断し、認識エラーを示す情報を出力する場合も生じ得る。すなわち、後続の発話が存在する場合、発話間に存在する無音区間の長さには相当の限界時間が存在することから、制御手段１１は、受け付けた発話の後ろに存在する無音区間がどの程度継続するかに応じて、発話が終了したか否かを判断することが可能となる。
【００３６】
特に連続単語入力時には、無音区間の存在を検出した場合であっても、該無音区間が単なる音声間のポーズ区間である可能性がある。したがって、音声認識結果の出力を少しでも早める、すなわち音声認識レスポンスを向上させるために、発話が終了したか否かを判断するための無音区間の継続時間の判断を短い基準時間で行うようにした場合、発話の途中であるにもかかわらず、発話が終了したと誤認識するおそれがあった。
【００３７】
斯かる事態を回避すべく、従来は、基準時間Ｔａを０．５乃至１．５秒程度に設定し、基準時間Ｔａ内に後続する発話を検出しなかった場合には、発話が終了したと判断していた。従って、音声認識結果は基準時間Ｔａ以内に確定しているにもかかわらず、結果として出力するまで出力待ちとなっており、音声認識レスポンスの向上を図ることが困難であった。
【００３８】
本実施の形態１では、音声認識用文法の語彙、すなわち音声の認識候補単語列に対応付けて最終の音声であるか否かを示す最終フラグを設けてある。図４は、図１１に示す姓名文法が音声認識用言語モデル記憶部１３１に記憶されている場合の認識語彙データの構成の一例を示す図である。図４に示すように、人物の姓名を音声として受け付ける場合、苗字（姓）部分である「山田」、「田中」等は後続する音声が存在する部分であるのに対して、名前（名）部分である「一郎」、「太郎」等は発話の最後の単語にしかなり得ない。したがって、苗字部分には最終フラグ‘０’を設定し、名前部分には最終フラグ‘１’を設定してある。なお、姓、名の区別は、本発明に必ずしも必要ではない。
【００３９】
制御手段１１が、基準時間Ｔａが経過していないと判断した場合（ステップＳ２０７：ＮＯ）、制御手段１１は、抽出した認識候補単語列の最終フラグが‘１’であるか否かを判断する（ステップＳ２０９）。制御手段１１が、最終フラグが‘１’であると判断した場合（ステップＳ２０９：ＹＥＳ）、制御手段１１は、後続する発話が存在しないものと判断することから、音声認識結果の出力を基準時間Ｔａだけ待つ必要が無い。したがって、制御手段１１は、基準時間Ｔａより短い時間であるＴｂ経過したか否かを判断する（ステップＳ２１０）。時間Ｔｂは基準時間Ｔａより短い時間であれば特に限定されるものではなく、例えば０．２乃至０．７秒である。
【００４０】
制御手段１１が、最終フラグが‘１’ではなく‘０’であると判断した場合（ステップＳ２０９：ＮＯ）、制御手段１１は、音声データをさらに取得し（ステップＳ２１１：ＹＥＳ）、再度発話の開始を検出したか否かを判断する（ステップＳ２１２）。制御手段１１が、再度発話の開始を検出していないと判断した場合（ステップＳ２１２：ＮＯ）、制御手段１１は、処理をステップＳ２０７へ戻し、上述した処理を繰り返す。制御手段１１が、再度発話の開始を検出したと判断した場合（ステップＳ２１２：ＹＥＳ）、制御手段１１は、計時をリセットし（ステップＳ２１３）、処理をステップＳ２０３へ戻し、上述した処理を繰り返す。
【００４１】
制御手段１１が、時間Ｔｂ経過していないと判断した場合（ステップＳ２１０：ＮＯ）、制御手段１１は、音声データをさらに取得し（ステップＳ２１１：ＹＥＳ）、再度発話の開始を検出したか否かを判断する（ステップＳ２１２）。制御手段１１が、再度発話の開始を検出していないと判断した場合（ステップＳ２１２：ＮＯ）、制御手段１１は、処理をステップＳ２０７へ戻し、上述した処理を繰り返す。制御手段１１が、再度発話の開始を検出したと判断した場合（ステップＳ２１２：ＹＥＳ）、制御手段１１は、計時をリセットし（ステップＳ２１３）、処理をステップＳ２０３へ戻し、上述した処理を繰り返す。
【００４２】
制御手段１１が、時間Ｔｂ経過したと判断した場合（ステップＳ２１０：ＹＥＳ）、制御手段１１は、抽出した認識候補単語列を音声認識結果として、例えば表示手段１７へ表示出力する（ステップＳ２０８）。
【００４３】
以上のように本実施の形態１によれば、抽出された認識候補単語列が最後の単語となるか否かを示す情報を用いることにより、受け付けた発話が最終単語に対応する発話、すなわち受け付ける音声データに含まれる発話の最後の単語であることを確実に検出することができ、不必要な待ち時間を設けることなく音声認識結果を表示することが可能となる。
【００４４】
なお、最後の単語となるか否かを示す情報は、認識候補単語列と対応付けた音声認識用文法の一項目として記憶しておくことに限定されるものではなく、例えば音声認識用文法が離散単語認識用の文法である場合には、文法に離散単語認識用である旨の情報を付与しておき、音声認識時に制御手段１１が離散単語認識用である旨の情報の存在を検出した場合、文法内の全ての認識語彙を最後の単語となるように設定しても良い。また、言語モデルとして、図１１のような単語の繋がりの有無だけを示す文法だけではなく、その遷移確率を付加した文法であっても良いし、文脈自由文法ではなく確率モデル（例えばＮグラム）を用いても良い。Ｎグラムを用いる場合、Ｎが２以上である場合にはその情報から最終単語を探索することが可能となる。Ｎが１である場合であっても、最終単語であるか否かに関する情報を単語と対応付けて記憶しておけば良い。
【００４５】
また、認識候補単語列が複数存在する場合、認識候補単語列を選択するために周知の方法、例えばＤＰマッチング法、ＨＭＭ法等を用いて算出した評価スコアが上位の所定個数の認識候補単語列、あるいは評価スコアが最大である認識候補単語列の評価スコア値の所定範囲内、あるいは上位Ｎ個の評価スコア値を有する認識候補単語列についてのみ上述の最終フラグの判断処理を実行するようにすることで、誤った認識結果候補に基づいて、ポーズ区間を誤って発話の終了であると判断する危険性を低減することも可能となる。例えば、評価スコア値が上位Ｎ番目までの認識候補単語列の全てが最終単語候補である場合のみ最終フラグが‘１’であるように設定することで、上述の危険性を低減することが可能となる。
【００４６】
また、上述の実施の形態１では、音声認識による認識候補単語列を抽出又は出力する場合について説明しているが、認識候補を識別さえできればよく、例えば認識候補ＩＤを抽出又は出力するものであっても良い。
【００４７】
さらに、上述の実施の形態１は、入力音声データを逐次読み込みつつ発話区間であると判断された部分についてのみ、発話開始、発話終了を検出しているが、特にこれに限定されるものではなく、例えば入力音声データの全区間について上述した検出処理を実行しても良い。
【００４８】
（実施の形態２）
以下、実施の形態２に係る音声認識装置１を示す図面に基づいて詳述する。本発明の実施の形態２に係る音声認識装置１の構成は、実施の形態１と同様であることから、同一の符号を付することにより詳細な説明を省略する。本実施の形態２では、抽出された認識候補単語列を、後続の音声の有無にかかわらず基準時間Ｔａよりも短い時間Ｔｂで外部へ出力し、後続する音声がなかった場合には、既に出力した認識候補単語列で確定する旨を外部へ出力するのみで、早期に出力した分だけ音声認識結果を早期に出力する点で実施の形態１とは相違する。
【００４９】
図５及び図６は、本発明の実施の形態２に係る音声認識装置１の制御手段１１の音声認識処理の手順を示すフローチャートである。音声認識装置１の制御手段１１は、音声データを取得したか否かを判断し（ステップＳ５０１）、制御手段１１は、音声データを取得するまで待ち状態となる（ステップＳ５０１：ＮＯ）。音声データを受け付けたか否かを判断する方法は特に限定されるものではない。
【００５０】
制御手段１１は、取得した音声データから発話の開始を検出したか否かを判断し（ステップＳ５０２）、制御手段１１が、発話の開始を検出していないと判断した場合（ステップＳ５０２：ＮＯ）、制御手段１１は、ステップＳ５０１へ処理を戻す。制御手段１１が、発話の開始を検出したと判断した場合（ステップＳ５０２：ＹＥＳ）、音声データを取得したか否かを判断し（ステップＳ５０３）、制御手段１１が、音声データを取得したと判断した場合（ステップＳ５０３：ＹＥＳ）。制御手段１１は、発話の終了候補を検出したか否かを判断する（ステップＳ５０４）。なお、発話の開始、及び発話の終了候補を検出する方法は特に限定されるものではない。例えば受け付けた音声データのパワーを常時計測しておき、計測した音声データのパワーが所定の閾値を一定時間以上継続して超えた場合に、発話の開始を検出したものと判断し、計測した音声データのパワーが所定の閾値を一定時間（例えば促音の継続時間長より少し長い０．２秒間）以上継続して下回った場合に、発話の終了候補を検出したものと判断する方法であっても良い。
【００５１】
制御手段１１が、発話の終了候補を検出していないと判断した場合（ステップＳ５０４：ＮＯ）、制御手段１１は、発話の終了候補の検出待ち状態となる。制御手段１１が、発話の終了候補を検出したと判断した場合（ステップＳ５０４：ＹＥＳ）、制御手段１１は、内蔵するタイマ、時計等により、発話の終了候補からの無音継続時間の計時を開始し（ステップＳ５０５）、記録手段１３に記録してある音声認識用文法、及び認識語彙辞書１３２を照会して、受け付けた音声データに対する認識候補単語列を抽出する（ステップＳ５０６）。制御手段１１は、後続する音声がないことを確認するのに十分な時間である基準時間Ｔａよりも短い時間Ｔｂが経過したか否かを判断する（ステップＳ５０７）。
【００５２】
制御手段１１が、時間Ｔｂが経過したと判断した場合（ステップＳ５０７：ＹＥＳ）、制御手段１１は、受け付けた発話が最終単語であるか否かにかかわらず、その時点での最良スコアを有する認識候補単語列を未確定音声認識結果として出力する（ステップＳ５０８）。すなわち、後続の発話が存在するか否かにかかわらず、音声認識結果を表示手段１７へ表示、外部のアプリケーションへ送信等することにより、ユーザは、未確定ではあるものの音声認識結果の候補を確認することが可能となる。なお、既に出力した認識候補単語列が存在する場合、直前に出力した認識候補単語列と比較し、相違する場合にのみ出力するようにしても良い。
【００５３】
制御手段１１が、時間Ｔｂが経過していないと判断した場合（ステップＳ５０７：ＮＯ）、制御手段１１は、音声データをさらに取得し（ステップＳ５０９：ＹＥＳ）、再度発話の開始を検出したか否かを判断する（ステップＳ５１０）。制御手段１１が、再度発話の開始を検出していないと判断した場合（ステップＳ５１０：ＮＯ）、制御手段１１は、処理をステップＳ５０７へ戻し、上述した処理を繰り返す。制御手段１１が、再度発話の開始を検出したと判断した場合（ステップＳ５１０：ＹＥＳ）、制御手段１１は、計時をリセットし（ステップＳ５１１）、処理をステップＳ５０３へ戻し、上述した処理を繰り返す。
【００５４】
制御手段１１は、基準時間Ｔａが経過したか否かを判断し（ステップＳ５１２）、制御手段１１が、基準時間Ｔａが経過していないと判断した場合（ステップＳ５１２：ＮＯ）、制御手段１１は、音声データをさらに取得し（ステップＳ５１３：ＹＥＳ）、再度発話の開始を検出したか否かを判断する（ステップＳ５１４）。制御手段１１が、再度発話の開始を検出していないと判断した場合（ステップＳ５１４：ＮＯ）、制御手段１１は、処理をステップＳ５１２へ戻し、上述した処理を繰り返す。制御手段１１が、再度発話の開始を検出したと判断した場合（ステップＳ５１４：ＹＥＳ）、制御手段１１は、計時をリセットし（ステップＳ５１５）、処理をステップＳ５０３へ戻し、上述した処理を繰り返す。
【００５５】
制御手段１１が、基準時間Ｔａが経過したと判断した場合（ステップＳ５１２：ＹＥＳ）、制御手段１１は、後続の発話が存在しないものと判断し、音声認識結果が確定した旨の信号を出力する（ステップＳ５１６）。該信号を受け付けた外部のアプリケーションは、例えば表示手段１７の画面の更新をロックし、音声認識結果を確定する等の処理を実行することにより、音声認識結果を確定する。
【００５６】
以上のように本実施の形態２によれば、受け付けた発話が最終単語に対応する発話、すなわち受け付ける発話の最後の単語であることを検出するか否かにかかわらず音声認識結果を早期に出力し、最終単語に対応する発話、すなわち受け付ける発話の最後であることを検出した場合には確定信号のみを出力することにより、ユーザは比較的早期に音声認識結果を目視することができ、ユーザにとっての音声認識レスポンスが向上する。また、最終単語に対応する発話、すなわち受け付ける発話の最後ではない場合には、出力される音声認識結果を更新することにより、実施の形態１と同様のレスポンスを維持しつつ、音声認識結果の正確性を担保することができる。
【００５７】
なお、本実施の形態２では、発話終了候補の検出時にのみ認識候補単語列を抽出しており、未確定音声認識結果を出力するタイミングがこれと一致している場合について説明しているが、特にこれに限定されるものではなく、例えば認識候補単語列の抽出をフレームに同期させて実行し、最良スコアの認識候補単語列の更新があった場合に出力するものであっても良い。
【００５８】
（実施の形態３）
以下、実施の形態３に係る音声認識装置１を示す図面に基づいて詳述する。本発明の実施の形態３に係る音声認識装置１の構成は、実施の形態１と同様であることから、同一の符号を付することにより詳細な説明を省略する。本実施の形態３では、音声として情報を受け付ける区間の単語群、例えば姓名の苗字部分、名前部分、住所の郵便番号、市町村名、地番等を識別する情報に対応付けて、最終単語となる確率Ｐｉ（ｉは自然数）を統計的に算出して記憶しておき、算出した確率Ｐｉに基づいて、後続の文字が存在するか否かを判断する基準となる基準時間Ｔを算出する点において、実施の形態１と相違する。なお、確率Ｐｉは、単語群ごとではなく、認識語彙ごとに算出しても良い。また、全ユーザに対する確率であっても良いし、ユーザごとに異なる確率、あついは両確率の中間値のように両確率から新たに算出するものであっても良い。
【００５９】
確率Ｐｉの値は、認識語彙辞書１３２の一データ項目として記憶しておくことにより、単語に対する単語群に対応付けて容易に抽出することができる。もちろん、確率Ｐｉの記憶方法、認識語彙との対応付けは、特にこれに限定されるものではない。
【００６０】
図７及び図８は、本発明の実施の形態３に係る音声認識装置１の制御手段１１の音声認識処理の手順を示すフローチャートである。音声認識装置１の制御手段１１は、音声データを取得したか否かを判断し（ステップＳ７０１）、制御手段１１は、音声データを取得するまで待ち状態となる（ステップＳ７０１：ＮＯ）。音声データを受け付けたか否かを判断する方法は特に限定されるものではない。
【００６１】
制御手段１１は、取得した音声データから発話の開始を検出したか否かを判断し（ステップＳ７０２）、制御手段１１が、発話の開始を検出していないと判断した場合（ステップＳ７０２：ＮＯ）、制御手段１１は、ステップＳ７０１へ処理を戻す。制御手段１１が、発話の開始を検出したと判断した場合（ステップＳ７０２：ＹＥＳ）、音声データを取得したか否かを判断し（ステップＳ７０３）、制御手段１１が、音声データを取得したと判断した場合（ステップＳ７０３：ＹＥＳ）。制御手段１１は、発話の終了候補を検出したか否かを判断する（ステップＳ７０４）。なお、発話の開始、及び発話の終了候補を検出する方法は特に限定されるものではない。例えば受け付けた音声データのパワーを常時計測しておき、計測した音声データのパワーが所定の閾値を一定時間以上継続して超えた場合に、発話の開始を検出したものと判断し、計測した音声データのパワーが所定の閾値を一定時間（例えば促音の継続時間長より少し長い０．２秒間）以上継続して下回った場合に、発話の終了候補を検出したものと判断する方法であっても良い。
【００６２】
制御手段１１が、発話の終了候補を検出していないと判断した場合（ステップＳ７０４：ＮＯ）、制御手段１１は、発話の終了候補の検出待ち状態となる。制御手段１１が、発話の終了候補を検出したと判断した場合（ステップＳ７０４：ＹＥＳ）、制御手段１１は、内蔵するタイマ、時計等により、発話の終了候補からの無音継続時間の計時を開始し（ステップＳ７０５）、記録手段１３に記録してある音声認識用文法、及び認識語彙辞書１３２を照会して、受け付けた音声データに対する認識候補単語列を抽出する（ステップＳ７０６）。
【００６３】
制御手段１１は、抽出された認識候補単語列に基づいて、後続の文字が存在するか否かを判断する基準となる設定時間を記憶手段１４から読み出す（ステップＳ７０７）。制御手段１１は、認識候補単語列の単語群に基づいて、最終の単語となる確率Ｐｉ（ｉは自然数）を記憶手段１４から読み出し（ステップＳ７０８）、読み出した確率Ｐｉ（ｉは自然数）及び認識候補単語列ごとの設定時間に基づいて、後続の文字が存在するか否かを判断する基準となる基準時間Ｔを算出する（ステップＳ７０９）。基準時間Ｔの算出方法は特に限定されるものではない。
【００６４】
例えば、認識文法が「姓名」であり、単語群として苗字部分（姓）だけの音声を受け付けた場合、名前部分（名）が最終の単語となる確率Ｐｉ（０≦Ｐｉ≦１）に対して、苗字部分（姓）が最終の単語となる確率は（１−Ｐｉ）となる。したがって、最終の音声であると判断した場合の基準時間をＴｂ、最終の音声ではないと判断した場合の基準時間をＴａとし（Ｔａ＞Ｔｂ）、実際に最終の音声であるか否かを判断する基準となる待ち時間である基準時間Ｔは、（数１）に基づいて算出することができる。
【００６５】
（数１）
Ｔ＝Ｐｉ・Ｔｂ＋（１−Ｐｉ）・Ｔａ  ・・・  （数１）
【００６６】
制御手段１１は、基準時間Ｔが経過したか否かを判断する（ステップＳ７１０）。制御手段１１が、基準時間Ｔが経過していないと判断した場合（ステップＳ７１０：ＮＯ）、制御手段１１は、音声データをさらに取得し（ステップＳ７１２：ＹＥＳ）、再度発話の開始を検出したか否かを判断する（ステップＳ７１３）。制御手段１１が、再度発話の開始を検出していないと判断した場合（ステップＳ７１３：ＮＯ）、制御手段１１は、処理をステップＳ７１０へ戻し、上述した処理を繰り返す。制御手段１１が、再度発話の開始を検出したと判断した場合（ステップＳ７１３：ＹＥＳ）、制御手段１１は、計時をリセットし（ステップＳ７１４）、処理をステップＳ７０３へ戻し、上述した処理を繰り返す。
【００６７】
制御手段１１が、基準時間Ｔが経過したと判断した場合（ステップＳ７１０：ＹＥＳ）、制御手段１１は、後続の音声が存在しないものと判断し、抽出した認識候補単語列を音声認識結果として、例えば表示手段１７へ出力する（ステップＳ７１１）。
【００６８】
以上のように本実施の形態３によれば、取得した音声データに含まれている発話が認識文法にて最終の単語となりうる確率に応じて、最終の単語であるか否かを判断する基準時間を変動させることにより、実情に即した待ち時間で音声認識結果を出力することが可能となる。
【００６９】
（実施の形態４）
以下、実施の形態４に係る音声認識装置１を示す図面に基づいて詳述する。本発明の実施の形態４に係る音声認識装置１の構成は、実施の形態１と同様であることから、同一の符号を付することにより詳細な説明を省略する。本実施の形態４では、音声として情報を受け付ける区間の単語群が認識候補単語列の末尾の単語である場合、実際に最終の音声であるか否かを判断する基準となる基準時間Ｔを、単語群ごとに記憶しておく点において、実施の形態１と相違する。なお、基準時間Ｔは、単語群ごとに記憶しておくことに限定されるものではなく、認識語彙ごとに記憶しておいても良い。
【００７０】
図９及び図１０は、本発明の実施の形態４に係る音声認識装置１の制御手段１１の音声認識処理の手順を示すフローチャートである。音声認識装置１の制御手段１１は、音声データを取得したか否かを判断し（ステップＳ９０１）、制御手段１１は、音声データを取得するまで待ち状態となる（ステップＳ９０１：ＮＯ）。音声データを受け付けたか否かを判断する方法は特に限定されるものではない。
【００７１】
制御手段１１は、取得した音声データから発話の開始を検出したか否かを判断し（ステップＳ９０２）、制御手段１１が、発話の開始を検出していないと判断した場合（ステップＳ９０２：ＮＯ）、制御手段１１は、ステップＳ９０１へ処理を戻す。制御手段１１が、発話の開始を検出したと判断した場合（ステップＳ９０２：ＹＥＳ）、音声データを取得したか否かを判断し（ステップＳ９０３）、制御手段１１が、音声データを取得したと判断した場合（ステップＳ９０３：ＹＥＳ）。制御手段１１は、発話の終了候補を検出したか否かを判断する（ステップＳ９０４）。なお、発話の開始、及び発話の終了候補を検出する方法は特に限定されるものではない。例えば受け付けた音声データのパワーを常時計測しておき、計測した音声データのパワーが所定の閾値を一定時間以上継続して超えた場合に、発話の開始を検出したものと判断し、計測した音声データのパワーが所定の閾値を一定時間（例えば促音の継続時間長より少し長い０．２秒間）以上継続して下回った場合に、発話の終了候補を検出したものと判断する方法であっても良い。
【００７２】
制御手段１１が、発話の終了候補を検出していないと判断した場合（ステップＳ９０４：ＮＯ）、制御手段１１は、発話の終了候補の検出待ち状態となる。制御手段１１が、発話の終了候補を検出したと判断した場合（ステップＳ９０４：ＹＥＳ）、制御手段１１は、内蔵するタイマ、時計等により、発話の終了候補からの無音継続時間の計時を開始し（ステップＳ９０５）、記録手段１３に記録してある音声認識用文法、及び認識語彙辞書１３２を照会して、受け付けた音声データに対する認識候補単語列を抽出する（ステップＳ９０６）。
【００７３】
制御手段１１は、抽出された認識候補単語列及び末尾の単語の単語群に基づいて、後続の文字が存在するか否かを判断する基準となる基準時間Ｔを記憶手段１４から読み出す（ステップＳ９０７）。制御手段１１は、基準時間Ｔが経過したか否かを判断する（ステップＳ９０８）。
【００７４】
制御手段１１が、基準時間Ｔが経過していないと判断した場合（ステップＳ９０８：ＮＯ）、制御手段１１は、音声データをさらに取得し（ステップＳ９１０：ＹＥＳ）、再度発話の開始を検出したか否かを判断する（ステップＳ９１１）。制御手段１１が、再度発話の開始を検出していないと判断した場合（ステップＳ９１１：ＮＯ）、制御手段１１は、処理をステップＳ９０８へ戻し、上述した処理を繰り返す。制御手段１１が、再度発話の開始を検出したと判断した場合（ステップＳ９１１：ＹＥＳ）、制御手段１１は、計時をリセットし（ステップＳ９１２）、処理をステップＳ９０３へ戻し、上述した処理を繰り返す。
【００７５】
制御手段１１が、基準時間Ｔが経過したと判断した場合（ステップＳ９０８：ＹＥＳ）、制御手段１１は、後続の音声が存在しないものと判断し、抽出した認識候補単語列を音声認識結果として、例えば表示手段１７へ表示出力する（ステップＳ９０９）。
【００７６】
以上のように本実施の形態４によれば、新たな音声データが存在せず最終単語に対応する発話、すなわち受け付ける発話の最後の単語である確率が高い発話ほど基準時間を短く設定しておくことにより、認識候補単語列の末尾の単語が対応する単語群ごとに設定されている基準時間に基づいて待ち時間を調整することができ、音声認識レスポンスを向上することが可能となる。
【００７７】
なお、上述した実施の形態１乃至４にて、使用する音声認識用文法は１つである必要は無く、例えば連続単語認識用文法と離散単語認識用文法とを併用するものであっても良い。この場合、離散単語認識用文法を用いる場合には、基準時間Ｔｂで十分であり、連続単語認識用文法を用いる場合に、上述した実施の形態１乃至４の方法を用いることにより、基準時間Ｔａをより短縮してＴｂに近づけることになる。したがって、従来のいわゆるマルチグラマーを用いる音声認識装置では、離散単語認識用文法を用いており、しかも離散単語の発話を入力されているにもかかわらず、連続単語認識用文法と併用されているが故に基準時間Ｔを短縮することができず不要な待ち時間が発生していたが、本実施の形態１乃至４に係る音声認識装置を用いることで、音声認識結果をより早期に出力することが可能となる。
【００７８】
なお、個別の音声認識用文法で認識する場合は最終単語であっても、マルチグラマーで認識する場合には同時に使用する音声認識用文法によっては最終単語とならない場合も生じ得る。これに起因する判定ミスを回避するために、複数の音声認識用文法を併用する場合には、使用する全ての音声認識用文法を集約して一の音声認識用文法とした場合に、各認識語彙が最終単語であるか否かを判断することが好ましい。
【図面の簡単な説明】
【００７９】
【図１】本発明の実施の形態１に係る音声認識装置の構成を示すブロック図である。
【図２】本発明の実施の形態１に係る音声認識装置の制御手段の音声認識処理の手順を示すフローチャートである。
【図３】本発明の実施の形態１に係る音声認識装置の制御手段の音声認識処理の手順を示すフローチャートである。
【図４】認識語彙データの構成の一例を示す図である。
【図５】本発明の実施の形態２に係る音声認識装置の制御手段の音声認識処理の手順を示すフローチャートである。
【図６】本発明の実施の形態２に係る音声認識装置の制御手段の音声認識処理の手順を示すフローチャートである。
【図７】本発明の実施の形態３に係る音声認識装置の制御手段の音声認識処理の手順を示すフローチャートである。
【図８】本発明の実施の形態３に係る音声認識装置の制御手段の音声認識処理の手順を示すフローチャートである。
【図９】本発明の実施の形態４に係る音声認識装置の制御手段の音声認識処理の手順を示すフローチャートである。
【図１０】本発明の実施の形態４に係る音声認識装置の制御手段の音声認識処理の手順を示すフローチャートである。
【図１１】姓名文法の一例を示す図である。
【符号の説明】
【００８０】
１  音声認識装置
１１  制御手段
１３  記録手段
１４  記憶手段
１８  音声データ入力手段
１０１  コンピュータプログラム
１０２  記録媒体
１３１  音声認識用言語モデル記憶部
１３２  認識語彙辞書
【図１】
2007256482.tif 000003
【図２】
2007256482.tif 000004
【図３】
2007256482.tif 000005
【図４】
2007256482.tif 000006
【図５】
2007256482.tif 000007
【図６】
2007256482.tif 000008
【図７】
2007256482.tif 000009
【図８】
2007256482.tif 000010
【図９】
2007256482.tif 000011
【図１０】
2007256482.tif 000012
【図１１】
2007256482.tif 000013