【文献】
三木敬 他,"二段階照合による混合連続分布HMM単語認識の高速化",日本音響学会平成4年度春季研究発表会講演論文集,1992年 3月17日,p.33-34
【文献】
李晃伸 他,"モノフォンモデルを用いたコードブック選択による音響尤度計算の高速化",日本音響学会2000年秋季研究発表会講演論文集,2000年 9月20日,pp.25-26
(58)【調査した分野】(Int.Cl.,DB名)
前記第1の出力確率取得手段によって取得された、前記第1の音響モデルの各音素の出力確率のうちから、フレーム毎に最大の出力確率を特定し、前記第1の音響モデルの各音素の出力確率を、フレーム毎に、特定した最大の出力確率で正規化する正規化手段をさらに備え、
前記キュー格納手段は、前記正規化手段によって正規化された出力確率を、前記キューに格納する、
ことを特徴とする請求項1に記載の音声認識装置。
前記累積確率取得手段によって前記累積確率が取得された前記音声信号の区間において、前記キューに格納された前記第1の音響モデルの各音素の出力確率のうちから、フレーム毎に最大の出力確率を特定し、特定した最大の出力確率を累積することにより、第2の累積確率を取得する第2の累積確率取得手段をさらに備え、
前記第1の条件は、前記累積確率取得手段によって取得された累積確率を、前記第2の累積確率取得手段によって取得された第2の累積確率で除算した値が、第1の閾値以上である場合に、満たされる、
ことを特徴とする請求項1又は2に記載の音声認識装置。
前記判定手段によって、前記音声信号において前記クエリに対応する音声が発せられていると判定された場合、前記キューに格納された出力確率のうち、前記クエリに対応する音声が発せられていると判定された区間の出力確率を削除して、前記第1の出力確率取得手段、前記キュー格納手段、前記累積確率取得手段、前記第2の出力確率取得手段、前記尤度取得手段、及び前記判定手段の処理を繰り返す繰り返し手段をさらに備える、
ことを特徴とする請求項1から5のいずれか1項に記載の音声認識装置。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について、図面を参照して説明する。なお、図中同一又は相当する部分には同一符号を付す。
【0011】
本発明の実施形態に係る音声認識装置は、入力された音声信号(音声ストリーム信号)に対して、予め登録された1以上のクエリ(キーワード)のいずれかが発声・発話されている信号であるか否かを順次判定することにより音声を認識する、ワードスポッティング方式の音声認識装置である。
【0012】
本発明の実施形態に係る音声認識装置は、物理的には
図1に示すように構成される。音声認識装置100は、ROM(Read Only Memory)1と、RAM(Random Access Memory)2と、外部記憶装置3と、入力装置4と、出力装置5と、CPU(Central Processing Unit)6と、を備える。
【0013】
ROM1は、各種初期設定、ハードウェアの検査、プログラムのロード等を行うための初期プログラムを記憶する。RAM2は、CPU6が実行する各種ソフトウェアプログラム、これらのソフトウェアプログラムの実行に必要なデータ等を一時的に記憶する。
【0014】
外部記憶装置3は、例えば、ハードディスク等であって、各種ソフトウェアプログラム、データ等を記憶する。これらソフトウェアプログラムの中には、アプリケーションソフトウェアプログラムやOS(Operating System)のような基本ソフトウェアプログラムなどが含まれている。
【0015】
入力装置4は、例えば、マイクロフォン等の音声入力装置、及びPCM(Pulse Code Modulation)等のサンプリングを行うADC(Analog Digital Converter:アナログ−デジタル変換器)等を備える。入力装置4は、音声入力装置から入力されたアナログ音声信号を、ADCによってデジタル音声信号に変換する。また、入力装置4は、キーボード等を備え、ユーザがキーボードを用いて操作入力したテキストデータ等をCPU6に入力する。
【0016】
出力装置5は、例えば、液晶ディスプレイ等の画面、スピーカ等を備える。出力装置5は、CPU6によって出力されたテキストデータや画像を画面に表示し、音声データをスピーカから出力する。
【0017】
CPU6は、命令やデータを転送するための伝送経路であるシステムバスを介して音声認識装置100の各部と接続され、音声認識装置100全体を制御する。具体的には、CPU6は、外部記憶装置3に記憶されたソフトウェアプログラムをRAM2に読み出して、そのソフトウェアプログラムを実行制御することにより、以下に
図2に示す機能構成を参照して説明するように、音声認識装置100の各部として機能する。
【0018】
音声認識装置100は、機能的には
図2に示すように構成される。音声認識装置100は、クエリ記憶部101と、モノフォンモデル記憶部102と、トライフォンモデル記憶部103と、継続長記憶部104と、第1の変換部111と、継続長取得部112と、第2の変換部113と、音声信号受付部121と、フレーム指定部122と、第1の出力確率取得部123と、正規化部124と、キュー格納部125と、第1の累積確率取得部126と、候補決定部127と、第2の累積確率取得部128と、第2の出力確率取得部129と、第1の尤度取得部130と、第2の尤度取得部131と、判定部132と、繰り返し部133と、を備える。クエリ記憶部101、モノフォンモデル記憶部102、トライフォンモデル記憶部103、及び継続長記憶部104は、外部記憶装置3の記憶領域に構築されている。
【0019】
クエリ記憶部101は、ワードスポッティングの対象となる1以上のクエリ(キーワード)を、文字列(テキスト)情報で記憶する。この1以上のクエリは、例えば入力装置4として備えられたキーボードを介してユーザが入力することにより、クエリ記憶部101に予め登録される。或いは、音声認識装置100は、外部の機器とネットワークを介して通信する通信装置を備え、通信装置を介して外部の機器から1以上のクエリを取得して、取得した1以上のクエリをクエリ記憶部101に予め登録しておくこともできる。
【0020】
モノフォンモデル記憶部102及びトライフォンモデル記憶部103は、音響モデルを記憶する。音響モデルは、クエリとして取得可能な文字列を構成する各音素の周波数特性をモデル化したものである。具体的に、モノフォンモデル記憶部102は、モノフォン(1音素)による音響モデル(モノフォンモデル)を記憶し、トライフォンモデル記憶部103は、トライフォン(3音素)による音響モデル(トライフォンモデル)を記憶する。
【0021】
モノフォンモデルは、1音素毎に生成された音響モデルであり、隣接する音素に依存しない、すなわち前後の音素状態との状態遷移を固定化した音響モデルである。トライフォンモデルは、3音素毎に生成された音響モデルであり、隣接する音素に依存する、すなわち前後の音素状態との状態遷移を考慮した音響モデルである。音声認識装置100は、モノフォンモデル及びトライフォンモデルを一般的な方法で学習して、それぞれモノフォンモデル記憶部102及びトライフォンモデル記憶部103に予め記憶しておく。なお、トライフォンモデル記憶部103は、クエリを構成する先頭及び末尾の音素を評価するために、3音素毎に生成された音響モデルだけでなく、2音素毎に生成された音響モデルであるバイフォンモデルについても、予め学習して記憶しておく。以下、トライフォンモデルを、3音素毎に生成された音響モデルだけでなく、2音素毎に生成された音響モデルであるバイフォンモデルも含むモデルとして、説明する。
【0022】
モノフォンモデル及びトライフォンモデルとして、例えば、一般的な音声認識で利用される音響モデルであるHMM(Hidden Markov Model;隠れマルコフモデル)を利用できる。HMMは、統計的な手法により音声信号からその音声信号が出力される元となった言葉を確率的に推定するためのモデルである。HMMは、時間的な状態の揺らぎを示す遷移確率と、各状態から入力された特徴量を出力する確率(出力確率)と、をパラメータとした標準パターンを用いる。この出力確率は、所定の重み係数で重み付けされたガウス(正規)分布を加算した混合ガウス分布によって表される。
【0023】
継続長記憶部104は、音響モデルで利用される各音素の平均継続長を、各音素の状態単位で記憶する。各音素の平均継続長とは、各音素が発せられるときの平均的な時間長である。各音素の状態とは、各音素を時間方向に細分化した単位であり、音響モデルの最小単位に相当する。各音素には予め状態数が定められている。
【0024】
以下では、各音素に定められた状態数が「3」である場合を例にとって説明する。例えば、音素「a」は、この音素の発話開始時を含む第1状態「a1」と、中間状態である第2状態「a2」と、発話終了時を含む第3状態「a3」と、の3つの状態に分けられる。音響モデルで利用される全音素の数をQとした場合、(3×Q)個の状態が存在する。音声認識装置100は、(3×Q)個の状態のそれぞれについて、大量の音声信号のデータから継続長の平均値を算出し、継続長記憶部104に予め記憶しておく。
【0025】
なお、音声認識精度の向上のためには、音響モデルを学習するための音声信号、及び、音素の平均継続長を算出するための音声信号は、認識対象の音声信号が発せられたドメイン(環境)と同じドメインで発せられたものであることが好適である。例えば、認識対象が会議室で録音された音声信号である場合には、会議室で録音された音声信号を用いて音響モデルを学習し、音素の平均継続長を算出することが好適である。しかし、音響モデルを学習するための音声信号、及び、音素の平均継続長を算出するための音声信号は、認識対象の音声信号が発せられたドメインと異なるドメインで発せられたものであってもよい。
【0026】
第1の変換部111は、クエリ記憶部101に予め登録された1以上のクエリそれぞれを、隣接する音素に依存しない第1の音響モデルであるモノフォンモデルの音素を並べて、第1の音素列であるモノフォン音素列に変換する。すなわち、第1の変換部111は、予め文字列として登録された1以上のクエリのそれぞれについて、文字列を構成する文字と同順で、各文字を発声したときの音素(モノフォン)を並べることにより、各クエリをモノフォン音素列に変換する。
【0027】
例えば、予め登録された1以上のクエリの中に、日本語「ラーメン」の文字列が含まれる場合、「ラーメン」は「r」と「a:」と「m」と「e」と「N」との5つの音素(モノフォン)を含むため、第1の変換部111は、モノフォン音素列「r,a:,m,e,N」を生成する。また、予め登録された1以上のクエリの中に、英語「cake」の文字列が含まれる場合、「cake」は「k」と「e」と「i」と「k」との4つの音素(モノフォン)を含むため、第1の変換部111は、モノフォン音素列「k,e,i,k」を生成する。
【0028】
継続長取得部112は、第1の変換部111の変換により生成されたモノフォン音素列に含まれる各音素の平均継続長を、継続長記憶部104から取得する。そして、取得した平均継続長に基づいて、各クエリに対応する音声の発話時間長を導出する。
【0029】
すなわち、クエリ記憶部101には1以上のクエリが文字列情報で登録されているため、各クエリに対応する音声の発話時間長の情報を直接的には得ることができない。そのため、継続長記憶部104には、モノフォンの状態毎に発話の際の典型的な継続長が予め用意され、継続長取得部112は、継続長記憶部104に記憶された状態毎の継続長を加算して、各クエリに対応する音声の発話時間長を見積もる。
【0030】
例えばモノフォン音素列が「r,a:,m,e,N」である場合、継続長取得部112は、これら5つの音素における3状態それぞれについて継続長記憶部104に記憶された、合わせて15個の平均継続長を取得する。そして、取得した15個の平均継続長を加算して得られた時間長を、このモノフォン音素列が生成されたクエリに対応する音声の発話時間長として導出する。
【0031】
第2の変換部113は、クエリ記憶部101に予め登録された1以上のクエリのそれぞれを、隣接する音素に依存する第2の音響モデルであるトライフォンモデルの音素を並べて、第2の音素列であるトライフォン音素列に変換する。すなわち、第2の変換部113は、例えば、予め登録された1以上のクエリの中に、日本語「ラーメン」の文字列が含まれる場合、「ラーメン」は「r−a:+m」と「a:−m+e」と「m−e+N」との3つのトライフォンを含むため、第2の変換部113は、これら3つのトライフォンを、クエリの文字列を構成する文字と同順で並べることにより、トライフォン音素列を生成する。なお、第2の変換部113は、これら3つのトライフォンに加えて、「ラーメン」における先頭のバイフォン「r+a:」と末尾のバイフォン「e−N」も、トライフォン音素列に含める。
【0032】
音声信号受付部121は、ワードスポッティングの対象となる音声信号の入力を受け付ける。音声信号受付部121は、例えば入力装置4として備えられたマイクロフォン等の音声入力装置を介して入力された音声信号を受け付ける。音声信号受付部121によって受け付けられる音声信号として、例えば会話、会議、ニュース放送、映画等の音声信号が挙げられる。
【0033】
フレーム指定部122は、音声信号受付部121によって入力が受け付けられた音声信号における先頭フレームから順に、フレームを1つずつ指定する。
【0034】
フレームとは、音声信号における所定の時間長を有する時間窓である。具体的に
図3を参照して、音声信号において設定されるフレームについて説明する。
図3(a)は、先頭から末尾までの時間長Tの認識対象の音声信号の波形図である。縦軸は波形の振幅(エネルギー)の大きさを示し、横軸は時間tを示す。
図3(b)は、
図3(a)に示す音声信号において設定されるフレームを示す。第0フレームから第(N−1)フレームまで、それぞれフレーム長FのN個のフレームが、所定のシフト長Sずつシフトして設定される。
【0035】
フレーム長F及びシフト長Sは、音響モデルの作成時に設定した時間長に合わせる(例えば、フレーム長F=25msec、シフト長S=10msec等)。シフト長Sよりもフレーム長Fの方が長いため、各フレームは、隣接するフレームと時間長(F−S)だけ重複する。
【0036】
図2に示した音声認識装置100の機能構成の説明に戻る。第1の出力確率取得部123は、音声信号受付部121によって入力が受け付けられた音声信号の特徴量が、モノフォンモデルの各音素から出力される出力確率を、フレーム毎に取得する。
【0037】
具体的に説明すると、第1の出力確率取得部123は、フレーム指定部122によって順次指定されたフレーム毎に、音声信号受付部121によって入力が受け付けられた音声信号の特徴量を算出する。音声信号の特徴量は、例えばケプストラムやメルケプストラムと呼ばれる音声データを周波数軸上に変換して得られる周波数軸系特徴パラメータと、音声データのエネルギー2乗和やその対数を計算することにより得られるパワー系特徴パラメータと、を組み合わせることによって得られる。
【0038】
例えば、特徴量は、周波数軸系特徴パラメータ12成分(12次元)とパワー系特徴パラメータ1成分(1次元)、直前の時間窓の各成分との差分を取ったもの、すなわち△周波数軸系特徴パラメータ12成分(12次元)と△パワー系特徴パラメータ1成分(1次元)、及び直前の時間窓の各成分との差分の差分を取ったもの、すなわち△△周波数軸系特徴パラメータ12成分(12次元)の、合計38成分を有する38次元ベクトル量として構成される。
【0039】
特徴量を算出すると、第1の出力確率取得部123は、算出した特徴量に基づいて、この特徴量がモノフォンモデルの各音素の各状態から出力される出力確率を、フレーム指定部122によって順次指定されたフレーム毎に取得する。出力確率は、複数のガウス分布を重み付きで加算した正規混合連続分布によって表される。
【0040】
具体的には、第1の出力確率取得部123は、モノフォンモデル記憶部102から全音素のモノフォンモデルを取得して、算出した特徴量と、取得した全音素のモノフォンモデルのそれぞれとを、状態毎に比較する。そして、フレーム毎及び状態毎に、全音素のモノフォンモデルのそれぞれについて出力確率を算出する。日本語や英語におけるモノフォンは約40種類あり、1音素に3つの状態が含まれるため、1フレーム当たり、約120(=40×3)個の出力確率が算出される。
【0041】
図4(a)に、フレーム毎に取得された各音素の出力確率の例を示す。
図4(a)に示すように、第1の出力確率取得部123は、モノフォンモデルの各音素「a」、「b」、・・・の各状態「a1」、「a2」、「a3」、「b1」、「b2」、・・・について、第0フレームから順に、出力確率を取得する。
【0042】
正規化部124は、第1の出力確率取得部123によって取得された、モノフォンモデルの各音素の出力確率のうちから、フレーム毎に最大の出力確率を特定し、モノフォンモデルの各音素の出力確率を、フレーム毎に、特定した最大の出力確率で正規化する。すなわち、音声信号の中には大きい出力確率が得られ易いフレームと大きい出力確率が得られ難いフレームとが存在するため、正規化部124の正規化により、フレーム間での出力確率のばらつきを減らす。具体的に
図4(a)、(b)を参照して説明する。
【0043】
正規化部124は、フレーム毎の最大の出力確率として、例えば
図4(a)において点線で囲われた出力確率、すなわち、第0フレームでは音素「b」の第2状態「b2」の出力確率、第1フレーム及び第2フレームでは音素「a」の第1状態「a1」の出力確率、第3フレームでは音素「a」の第2状態「a2」の出力確率等を特定する。フレーム毎の最大の出力確率を特定すると、正規化部124は、各フレームにおいて、モノフォンモデルの各音素の出力確率を、特定した最大の出力確率で除算することにより正規化する。
【0044】
図4(b)に、フレーム毎に最大出力確率で正規化された出力確率の例を示す。例えば第0フレームでは、音素「b」の第2状態「b2」の出力確率が最大の出力確率であるため、正規化部124は、各音素の各状態の出力確率を、状態「b2」の出力確率で除算する。その結果、状態「b2」の出力確率は1に変換され、他の出力確率は、状態「b2」の出力確率を基準とした相対値に変換される。このように、正規化部124は、第1の出力確率取得部123によって取得された、モノフォンモデルの各音素の出力確率を正規化する。
【0045】
図2に示した音声認識装置100の機能構成の説明に戻る。キュー格納部125は、第1の出力確率取得部123によってフレーム毎に取得され、且つ、正規化部124によって正規化された、モノフォンモデルの各音素の出力確率を、順次キューに格納する。
【0046】
キュー格納部125は、キューがいっぱいになるまで、フレーム指定部122によって指定された順に、すなわち先頭の第0フレームから順に、第1の出力確率取得部123によって取得されたモノフォンモデルの各音素の状態毎の出力確率を格納する。キューの長さは、最低限、クエリ記憶部101に予め登録された1以上のクエリの発話時間長の中で、最長の時間長に相当するフレーム数分の出力確率を格納できる長さであれば十分である。
【0047】
第1の累積確率取得部126は、キューに格納されたモノフォンモデルの各音素の出力確率のうち、第1の変換部111によって変換されたモノフォン音素列に対応する音素の出力確率を累積することにより、第1の累積確率を取得する。これにより、入力を受け付けた音声信号における、出力確率がキューに格納された区間が、クエリが発話されている区間に該当するか否かの指標を得る。この第1の累積確率を、以下では「累積確率A」と呼ぶ。
【0048】
なお、クエリ記憶部101に複数のクエリが登録されている場合には、第1の累積確率取得部126は、登録された複数のクエリのそれぞれについて、それぞれから変換されたモノフォン音素列に対応する音素の出力確率を累積することにより、累積確率Aを取得する。
【0049】
具体的に
図5に示すように、キューが、第0フレームから第(M−1)フレームまでのM個のフレームに亘ってモノフォンモデルの各音素の状態毎の出力確率を格納している場合であって、クエリ記憶部101に予め2つのクエリ「ラーメン」及び「あいうえお」が登録されている場合を例にとって説明する。
【0050】
クエリ「ラーメン」のモノフォン音素列「r,a:,m,e,N」は、5音素及び15の状態を含むため、第1の累積確率取得部126は、これら各音素の各状態とキューに格納されたフレームとの対応関係を、継続長取得部112によって導出された各音素の状態毎の継続長に基づいて、定める。例えば先頭の状態「r1」の継続長が2フレームに相当する場合、この状態「r1」は、キューの先頭から2フレームである第0フレーム及び第1フレームに対応付けられる。また、次の状態「r2」の継続長が4フレームに相当する場合、この状態「r2」は、次の4フレームである第2フレームから第5フレームに対応付けられる。このように、末尾の状態「N3」まで、状態とフレームとの対応関係が順次定められる。
【0051】
状態とフレームとの対応関係が定められると、第1の累積確率取得部126は、キューに格納されたモノフォンモデルの各音素の状態毎の出力確率のうちから、各フレームにおいて、対応付けられた状態の出力確率を抽出する。例えば、第1の累積確率取得部126は、先頭の状態「r1」に対応付けられた第0フレーム及び第1フレームにおいて、キューに格納されたモノフォンモデルの各音素の状態毎の出力確率のうちから、状態「r1」の出力確率を抽出し、次の状態「r2」に対応付けられた第2フレームから第5フレームにおいて、キューに格納されたモノフォンモデルの各音素の状態毎の出力確率のうちから、状態「r2」の出力確率を抽出する。このように、第1の累積確率取得部126は、末尾の状態「N3」まで、各状態の出力確率を抽出する。
【0052】
第1の累積確率取得部126は、クエリ「あいうえお」についても同様の処理を実行する。すなわち、クエリ「あいうえお」のモノフォン音素列「a,i,u,e,o」を構成する5音素及び15の状態について、先頭の状態「a1」から末尾の状態「o3」まで順に、キューに格納されたフレームとの対応関係を定める。そして、キューに格納されたモノフォンモデルの各音素の状態毎の出力確率のうちから、各フレームにおいて、対応付けられた状態の出力確率を抽出する。
【0053】
第1の累積確率取得部126は、このように予め登録された1以上のクエリのそれぞれについて、各フレームにおいて抽出した出力確率を累積することにより、累積確率Aを取得する。より詳細に説明すると、累積確率Aを取得する際、第1の累積確率取得部126は、抽出した出力確率のそれぞれを、その出力確率を含む連続する複数のフレームにおいて抽出された複数の出力確率の中で値が最大の出力確率に置換する。この置換処理は、Lower−Bound化と呼ばれる。
【0054】
具体的に
図6を参照して、Lower−Bound化を説明する。
図6において、実線はフレーム毎に取得された出力確率を示す。縦軸は出力確率の高さを下になるほど高くなるように示し、横軸は時間tを示す。第1の累積確率取得部126は、各フレームの出力確率を、その前後nフレームの中で最大の出力確率に置き換える。nは、例えば100msecに相当するフレーム数に設定される。置換の結果、実線で示した出力確率は、破線で示したLB(Lower−Bound)化出力確率のように、時間方向において値の変化が小さくなった出力確率に変換される。
【0055】
このようなLB化により、継続長記憶部104に記憶された各音素の平均継続長と実際の継続長との誤差、及び、継続長取得部112によって導出されたクエリに対応する音声の発話時間長と実際の発話時間長との誤差を、前後nフレームの範囲内で吸収することができる。第1の累積確率取得部126は、クエリ記憶部101に予め登録された1以上のクエリのそれぞれについて、LB化によって置換された出力確率の対数をとって得られる値を加算する。これにより、予め登録された1以上のクエリのそれぞれについて、累積確率Aを取得する。
【0056】
図2に示した音声認識装置100の機能構成の説明に戻る。候補決定部127は、第1の累積確率取得部126によって取得された累積確率Aに基づいて、予め登録された1以上のクエリの中から、候補クエリを決定する。候補クエリとは、予め登録された1以上のクエリの中で、キューに出力確率が保持された区間の音声信号の中で発話されている可能性が高いと評価されるクエリである。
【0057】
具体的に説明すると、候補決定部127は、第1の累積確率取得部126によって取得された累積確率Aを比較し、予め登録された1以上のクエリの中で累積確率Aが最大のクエリを、候補クエリと決定する。予め登録されたクエリの個数が2以上である場合には、候補決定部127は、累積確率Aが最大の1つの候補クエリを決定する。一方で、予め登録されたクエリの個数が1つである場合には、この1つのクエリが必ず候補クエリとして決定されるため、候補決定部127の処理自体を省略することができる。
【0058】
第2の累積確率取得部128は、入力が受け付けられた音声信号の区間のうち、候補決定部127によって決定された候補クエリの累積確率Aが取得された区間において、キューに格納されたモノフォンモデルの各音素の出力確率のうちから、フレーム毎に最大の出力確率を特定し、特定した最大の出力確率を累積することにより、第2の累積確率を取得する。この第2の累積確率を、以下では「累積確率B」と呼ぶ。上述したように、キューに格納された出力確率は、フレーム毎に正規化部124によって正規化されているため、各フレームにおける最大の出力確率は1である。そのため、それを累積して得られた累積確率Bは、候補クエリの長さに相当する量になる。
【0059】
第2の出力確率取得部129は、候補クエリの累積確率Aを累積確率Bで除算した値A/Bが、予め定められた第1の閾値k以上であるか否かを判定する。値A/Bが予め定められた第1の閾値k未満である場合、その候補クエリは棄却される。一方、値A/Bが予め定められた第1の閾値k以上である場合(以下、累積確率Aが第1の条件を満たした場合という。)、第2の出力確率取得部129は、音声信号の特徴量が、トライフォン音素列に含まれる各音素から出力される第2の出力確率を、フレーム毎に取得する。
【0060】
すなわち、上述した累積確率A及びBを取得するまでの音声認識処理は、モノフォンモデルを用いた比較的計算量の少ない処理であった。これに対し、候補クエリの累積確率Aが第1の条件を満たした場合には、この候補クエリは、入力された音声信号において発話されている可能性が高い。そのため、音声認識装置100は、このような候補クエリに対しては、トライフォンモデル及び動的計画法(DP(Dynamic Programming)マッチング)に基づくより精度の高い音声認識処理を実行する。そして、このような精度の高い音声認識処理に移行するための判定基準として、候補クエリの累積確率Aの値をそのまま用いず、候補クエリの累積確率Aを、最大の出力確率を累積して得られた累積確率Bで除算して得られた値A/Bを用いることにより、長さの異なる複数の候補クエリに対しても、予め用意された1つの閾値kを用いて判定することが可能になる。
【0061】
累積確率Aが第1の条件を満たした場合、第2の出力確率取得部129は、キューの先頭のフレームから、候補クエリの発話時間長の2倍の長さの区間を指定する。そして、第2の出力確率取得部129は、指定した区間における音声信号の特徴量が、第2の変換部113によって候補クエリから変換されたトライフォン音素列に含まれる各音素から出力される出力確率を、第2の出力確率として、フレーム毎に取得する。
【0062】
具体的に説明すると、第2の出力確率取得部129は、トライフォンモデル記憶部103からトライフォンモデルを取得する。そして、指定した区間において、第1の出力確率取得部123によって算出された音声信号の各フレームにおける特徴量と、候補クエリから変換されたトライフォン音素列に含まれる各トライフォンのモデルとを比較する。そして、各フレームにおける特徴量が各トライフォンから出力される確率を計算する。
【0063】
第1の尤度取得部130は、第2の出力確率取得部129によって取得された第2の出力確率に基づいて、音声信号において候補クエリに対応する音声が発せられていることの尤もらしさを示す第1の尤度を取得する。尤度とは、候補クエリに対応する音声と音声信号との類似の度合を示す指標である。この第1の尤度を、以下では「尤度C」と呼ぶ。
【0064】
具体的に説明すると、第1の尤度取得部130は、尤度Cを、動的計画法(DPマッチング)により取得する。DPマッチングにおいて、第1の尤度取得部130は、候補クエリの発話時間長の2倍の長さに相当する指定された区間における各フレームと、トライフォン音素列に含まれる各音素と、の対応を探索する。すなわち、第1の尤度取得部130は、指定された区間の音声信号から、候補クエリに対応する音声が発せられていると仮定した場合に、その区間内の各フレームの音声信号がどの音素に対応するのかを探索する。
【0065】
DPマッチングについて、
図7を参照して具体的に説明する。
図7では、候補クエリが「ラーメン」であって、この候補クエリについて継続長取得部112によって導出された発話時間長が、理解を容易にするために例えば10フレームに相当すると仮定する。第2の出力確率取得部129は、入力を受け付けた音声信号のうち、キューに保持された先頭のフレームから、候補クエリの発話時間長の2倍の長さに相当する20フレームの区間を、DPマッチングのためのマッチング区間として指定する。例えばキューに保持された先頭のフレームが第0フレームである場合、第2の出力確率取得部129は、
図7に示すように、第0フレームから第19フレームまでの20フレームの区間をマッチング区間として指定する。
【0066】
第2の出力確率取得部129は、マッチング区間の各フレームにおける、「ラーメン」のトライフォン音素列を構成する3つのトライフォン「r−a:+m」、「a:−m+e」、「m−e+N」及び両端の2つのバイフォン「r+a:」、「e−N」のそれぞれの出力確率を取得する。そして、第1の尤度取得部130は、「ラーメン」のトライフォン音素列を構成する3つのトライフォン「r−a:+m」、「a:−m+e」、「m−e+N」及び両端の2つのバイフォン「r+a:」、「e−N」のそれぞれと、指定した20フレームのそれぞれと、の対応を探索する。例えば
図7は、第0から第1フレームが先頭のバイフォン「r+a:」に対応し、第2から第6フレームがトライフォン「r−a:+m」に対応し、第7から第9フレームがトライフォン「a:−m+e」に対応し、第10から第12フレームがトライフォン「m−e+N」に対応し、第13フレームが末尾のバイフォン「e−N」に対応すると仮定した場合の経路を、斜線を付した枠及び矢印で示している。第1の尤度取得部130は、トライフォン又はバイフォンと対応付けられた第0フレームから第13フレームまでの区間を、候補クエリに対応する音声が発せられている可能性が高い区間であって、尤度Cを取得すべき尤度取得区間であると決定する。
【0067】
このように、第1の尤度取得部130は、マッチング区間におけるフレームとトライフォン又はバイフォンとを対応付ける。そして、対応付けによって得られた経路に沿って出力確率を累積し、累積した値が最小となる最尤系列をDPマッチングにより探索する。最尤系列を見付けると、第1の尤度取得部130は、得られた最尤系列の経路に沿って、出力確率の対数軸上での和をとることによって、尤度Cを算出する。
【0068】
なお、第1の尤度取得部130は、DPマッチングによって最尤系列が得られた区間の時間長が、候補クエリの発話時間長の0.5倍の時間長に達していない場合には、時間長が短すぎるため、その最尤系列を棄却する。すなわち、第1の尤度取得部130は、継続長取得部112によって導出された候補クエリの発話時間長の0.5倍から2倍の長さの区間の中から、DPマッチングにより最尤系列を探索して、尤度取得区間を決定し、尤度Cを取得する。
【0069】
図2に示した音声認識装置100の機能構成の説明に戻る。第2の尤度取得部131は、第1の尤度取得部130によって尤度Cが取得された尤度取得区間において、音素認識を実行する。そして、第2の尤度取得部131は、第2の出力確率取得部129によって取得された第2の出力確率のうち、音素認識によって認識された音素の出力確率に基づいて、尤度取得区間において候補クエリが発せられていることの尤もらしさを示す第2の尤度を取得する。この第2の尤度を、以下では「尤度D」と呼ぶ。
【0070】
具体的に説明すると、第2の尤度取得部131は、尤度取得区間において、フレーム毎に、候補クエリから変換されたトライフォン音素列に含まれる各音素のうちから、出力確率が最大の音素を認識する。そして、第2の尤度取得部131は、音素認識によってフレーム毎に認識された音素の出力確率の対数軸上での和をとることによって、尤度Dを算出する。
【0071】
音声認識によってフレーム毎に認識された音素(各フレームにおいて出力確率が最大の音素)は、DPマッチングによって各フレームに対応付けられた音素とは必ずしも一致しない。そのため、尤度Dは、尤度Cとは異なる値になる。より詳細には、各フレームにおいて最大の出力確率を累積して得られた値であるため、尤度Cよりも大きな値になる。
【0072】
判定部132は、尤度Cを尤度Dで除算した値が、予め定められた第2の閾値m以上であるか否かを判定する。値C/Dが予め定められた第2の閾値m未満である場合、候補クエリは棄却される。一方、値C/Dが予め定められた第2の閾値m以上である場合(以下、尤度Cが第2の条件を満たした場合という。)、判定部132は、音声信号において候補クエリに対応する音声が発せられていると判定する。すなわち、判定部132は、尤度C及びDが取得された尤度取得区間の音声信号が、候補クエリに対応する音声が発せられている区間であると判定する。
【0073】
判定部132によって判定された結果は、出力装置5が備える画面を介して外部に表示される。例えば、判定部132は、その区間の位置情報と候補クエリとを出力装置5に表示する。これにより、現在入力されている音声信号において、予め登録された1以上のクエリのうちの候補クエリに対応する音声が発せられていることを、ユーザに報知する。
【0074】
判定部132は、判定基準として、DPマッチングにより得られた尤度Cの値をそのまま用いず、尤度Cを尤度Dで除算して得られた値C/Dを用いる。これは、尤度Cは、対象となる音声が発せられている環境によって左右される指標であるためである。すなわち、音素認識により得られた尤度Dを基準とした相対値を判定基準とすることで、環境による誤差を抑え、判定精度を上げることができる。
【0075】
繰り返し部133は、音声信号においてクエリに対応する音声が発せられていると判定されると、キューに格納された出力確率のうち、候補クエリに対応する音声が発せられていると判定された区間の出力確率を削除する。そして、繰り返し部133は、音声認識処理をフレーム指定部122の処理に戻す。
【0076】
すなわち、候補クエリに対応する音声が発せられていると判定された区間は、もはや再度の判定が不要となるため、繰り返し部133は、その区間の出力確率を全てキューから削除する。そして、入力を受け付けた音声信号における、候補クエリに対応する音声が発せられていると判定された区間の直後のフレームが、フレーム指定部122によって指定され、フレーム指定部122から判定部132までの処理が繰り返される。これにより、判定部132は、音声信号の入力を受け付ける度に、入力を受け付けた音声信号が予め登録された1以上のクエリのうちのいずれかのクエリに該当するか否かを、順次判定していく。これにより、入力を受け付けた音声信号に対するワードスポッティング方式の音声認識を実行する。
【0077】
以上のような音声認識装置100が実行する音声認識処理の流れについて、
図8から
図11に示すフローチャートを参照して説明する。
【0078】
まず、
図8に示すフローチャートを参照して、音声認識装置100が、認識対象(ワードスポッティング対象)の音声信号の入力を受け付ける前に実行する、音声認識事前処理の流れについて説明する。
図8に示すフローチャートの処理は、クエリ記憶部101に1以上のクエリが予め登録されている状態において、ユーザからキーボード等を介して開始の指示を受け付けると、開始する。
【0079】
図8に示すフローチャートの処理が開始すると、第1の変換部111及び第2の変換部113は、クエリ記憶部101から、予め登録された1以上のクエリを取得する(ステップS1)。1以上のクエリを取得すると、第1の変換部111及び第2の変換部113は、それぞれ、取得した各クエリをモノフォン音素列及びトライフォン音素列に変換する(ステップS2)。
【0080】
各クエリをモノフォン音素列及びトライフォン音素列に変換すると、継続長取得部112は、継続長記憶部104から、モノフォン音素列に含まれる各音素の継続長を取得する(ステップS3)。そして、継続長取得部112は、各クエリに対応する音声の発話時間長を導出する(ステップS4)。具体的には、継続長取得部112は、取得した1以上のクエリのそれぞれについて、継続長記憶部104において音素の状態毎に記憶された平均継続長を取得して、取得した平均継続長を加算することにより、各クエリに対応する音声の発話時間長を導出する。以上で、音声認識事前処理は終了する。
【0081】
次に、
図9から
図11に示すフローチャートを参照して、音声認識装置100が実行する音声認識処理の流れについて説明する。
【0082】
図9に示すフローチャートの処理は、音声認識装置100が音声認識可能なモードになっている状態において、音声信号受付部121が入力装置4を介して認識対象(ワードスポッティング対象)の音声信号の入力を受け付けると(ステップS11)、開始する。
【0083】
音声信号の入力を受け付けると、音声認識処理は、入力を受け付けた音声信号の先頭から末尾まで、フレームを順に指定して、クエリに該当する音声が発話されているか否かを繰り返し判定する処理に移行する。まず、フレーム指定部122は、入力を受け付けた音声信号の先頭フレームを指定する(ステップS12)。
【0084】
フレーム指定部122がフレームを指定すると、第1の出力確率取得部123は、指定したフレームにおける音声信号の特徴量を算出する(ステップS13)。そして、第1の出力確率取得部123は、算出した特徴量に基づいて、モノフォンモデルの各音素について、指定されたフレームにおける出力確率を取得する(ステップS14)。具体的には、第1の出力確率取得部123は、モノフォンモデル記憶部102に記憶されたモノフォンモデルの全音素について、指定されたフレームにおける音声信号の特徴量が出力される出力確率を、状態毎に算出する。
【0085】
モノフォンモデルの各音素の出力確率を取得すると、正規化部124は、取得したモノフォンモデルの各音素の出力確率を、最大の出力確率で正規化する(ステップS15)。キュー格納部125は、モノフォンモデルの各音素の正規化された出力確率をキューに格納する(ステップS16)。そして、キュー格納部125は、キューがいっぱいになったか否かを判定する(ステップS17)。
【0086】
キューがいっぱいになっていない場合(ステップS17;NO)、フレーム指定部122は、直前に指定したフレームの次のフレーム(直前に先頭の第0フレームを指定した場合には第1フレーム)を指定して(ステップS18)、音声認識処理はステップS13に戻る。そして、キューが満たされるまで、ステップS13〜S17の処理が繰り返される。すなわち、第1の出力確率取得部123は、新たに指定されたフレームにおいて、音声信号の特徴量を算出し、モノフォンモデルの各音素の出力確率を、状態毎に取得する。キュー格納部125は、新たに指定されたフレームにおいて取得された出力確率を正規化して、キューに格納する。このように、キュー格納部125は、キューが満たされるまで、音声信号の先頭フレームから順に、モノフォンモデルの各音素の正規化した出力確率をキューに格納していく。
【0087】
キューがいっぱいになると(ステップS17;YES)、音声認識処理は、
図10に示すフローチャートの処理に移行する。
図10に示すフローチャートにおいて、第1の累積確率取得部126は、クエリ記憶部101に予め登録された1以上のクエリのそれぞれについて、累積確率Aを取得する(ステップS21)。すなわち、第1の累積確率取得部126は、予め登録された1以上のクエリを順に指定し、キューに格納されたモノフォンモデルの各音素の出力確率のうち、指定したクエリに対応する音素の出力確率の対数軸上での和をとることにより、各クエリについて累積確率Aを取得する。このとき、第1の累積確率取得部126は、例えば
図6に示したように、LB化によって時間方向の誤差を吸収する。
【0088】
各クエリの累積確率Aを取得すると、候補決定部127は、取得された各クエリの累積確率Aを比較して、1以上のクエリのうちから候補クエリを決定する(ステップS22)。候補クエリを決定すると、第2の累積確率取得部128は、決定された候補クエリについて、累積確率Bを取得する(ステップS23)。すなわち、第2の累積確率取得部128は、候補クエリの累積確率Aを取得した区間と同じ位置及び長さの区間において、フレーム毎に特定された最大の出力確率を累積することにより、累積確率Bを取得する。
【0089】
累積確率Bを取得すると、第2の出力確率取得部129は、累積確率Aを累積確率Bで除算した値A/Bが、予め定められた第1の閾値k以上か否かを判定する(ステップS24)。すなわち、第2の出力確率取得部129は、累積確率Aが第1の条件を満たしたか否かを判定する。
【0090】
値A/Bが第1の閾値k未満である場合(ステップS24;NO)、候補決定部127は、決定した候補クエリを棄却する(ステップS25)。そして、キュー格納部125は、キューに格納された先頭フレームの出力確率を削除して(ステップS26)、音声認識処理はステップS18に戻る。すなわち、フレーム指定部122が次のフレームを指定して、新たに指定されたフレームについて、ステップS13〜S24の処理が繰り返される。このように、キューに出力確率が格納される音声信号の区間を1フレーム分だけシフトされて、改めて累積確率A及びBが取得される。
【0091】
一方、ステップS24において、値A/Bが第1の閾値k以上である場合(ステップS24;YES)、音声認識処理は、
図11に示すフローチャートにおける、トライフォンモデル及び動的計画法(DPマッチング)に基づくより精度の高い音声認識処理に移行する。
【0092】
図11に示すフローチャートにおいて、第2の出力確率取得部129は、キューの先頭のフレームから、候補クエリの発話時間長の2倍の長さの区間を指定する(ステップS31)。そして、第2の出力確率取得部129は、指定した区間において、候補クエリのトライフォン音素列に含まれる各音素の第2の出力確率を取得する(ステップS32)。
【0093】
トライフォンモデルによる第2の出力確率を取得すると、第1の尤度取得部130は、DPマッチングにより尤度Cを取得する(ステップS33)。すなわち、第1の尤度取得部130は、トライフォンモデルによる出力確率に基づいて、候補クエリの発話時間長の2倍の長さに相当する指定された区間において、DPマッチングを実行することにより最尤系列を探索し、尤度Cを取得する。
【0094】
尤度Cを取得すると、第2の尤度取得部131は、音素認識により尤度Dを取得する(ステップS34)。すなわち、第2の尤度取得部131は、第1の尤度取得部130によって尤度Cが取得された尤度取得区間において、音素認識を実行する。そして、音素認識によって認識された音素の出力確率を累積することにより、尤度Dを取得する。
【0095】
尤度Dを取得すると、判定部132は、尤度Cを尤度Dで除算した値C/Dが、予め定められた第2の閾値m以上か否かを判定する(ステップS35)。すなわち、判定部132は、尤度Cが第2の条件を満たしたか否かを判定する。
【0096】
値C/Dが第2の閾値m未満である場合(ステップS35;NO)、候補決定部127は、決定した候補クエリを棄却する(ステップS36)。そして、キュー格納部125は、キューに格納された先頭フレームの出力確率を削除して(ステップS37)、音声認識処理はステップS18に戻る。すなわち、フレーム指定部122が次のフレームを指定して、新たに指定されたフレームについて、ステップS13〜S35の処理が繰り返される。このように、キューに出力確率が格納される音声信号の区間を1フレーム分だけシフトされて、改めて累積確率A及びBが取得され、また尤度C及びDが取得される。
【0097】
一方、ステップS35において、値C/Dが第2の閾値m以上である場合(ステップS35;YES)、判定部132は、候補クエリに対応する音声が発せられたと判定する(ステップS38)。そして、判定部132は、出力装置5により、判定結果を出力する(ステップS39)。
【0098】
判定結果を出力すると、繰り返し部133は、キューに格納された出力確率のうち、候補クエリの区間の出力確率をキューから削除する(ステップS40)。そして、繰り返し部133は、音声認識処理をステップS18に戻す。すなわち、フレーム指定部122が次のフレームを指定して、新たに指定されたフレームについて、ステップS13〜S40の処理が繰り返される。
【0099】
このように、繰り返し部133は、入力を受け付けた音声信号の末尾に達するまで、1フレームずつシフトさせて、入力を受け付けた音声信号が、予め登録された1以上のクエリのいずれかに該当するか否かを順次判定(音声認識)する。最終的に、音声信号の全区間の音声認識が終了すると、音声認識装置100が実行する音声認識処理は終了する。
【0100】
以上説明したように、本発明の実施形態に係る音声認識装置100は、音声信号の入力を受け付け、入力を受け付けた音声信号において、予め文字列(テキスト)で登録された1以上のクエリのいずれかに対応する音声が発せられているか否かを判定する。特に、音声認識装置100は、まず状態遷移を固定化した高速な音響モデルであるモノフォンモデルを用いた計算量が少ない判定処理によって高速な枝刈りを行い、残った候補に対して、予め登録された1以上のクエリのいずれかに該当するか否かを詳細に評価することで、最終的な認識結果を得る。その結果、高精度且つ高速なワードスポッティングが可能となる。
【0101】
(変形例)
以上に本発明の実施形態について説明したが、上記実施形態は一例であり、本発明の適用範囲はこれに限られない。すなわち、本発明の実施形態は種々の応用が可能であり、あらゆる実施の形態が本発明の範囲に含まれる。
【0102】
例えば、上記実施形態において、候補決定部127は、予め登録された1以上のクエリの中で、第1の累積確率取得部126によって取得された累積確率Aが最大のクエリ、すなわち1つのクエリを、候補クエリと決定した。しかし、本発明においては、候補決定部127は、複数のクエリを候補クエリとして残してもよい。例えば、候補決定部127は、予め登録された複数のクエリの中で、累積確率Aが大きい順に複数のクエリを候補クエリとして決定することができる。この場合、音声認識装置100は、決定された複数の候補クエリのそれぞれについて、上述したようにDPマッチングと音素認識とを実行して、各候補クエリが発声されているか否かを判定する。
【0103】
また、候補決定部127は、候補クエリを決定する際、各クエリについて取得された累積確率Aを対応するクエリの発話時間長で除算し、除算して得られた値が最大のクエリを候補クエリと決定してもよい。或いは、候補決定部127は、除算して得られた値が大きい順に複数の候補クエリを決定してもよい。すなわち、累積確率Aは、発話時間長に相当するフレームに亘って出力確率を累積したものであるため、発話時間長が長いほど大きくなる。そのため、累積確率Aを発話時間長で除算することにより、クエリの長さの違いによる累積確率Aのばらつきを吸収することができる。
【0104】
また、本発明に係る音声認識装置は、出力確率を正規化する正規化部124、累積確率Bを取得する第2の累積確率取得部128、及び尤度Dを取得する第2の尤度取得部131等を備えなくてもよい。すなわち、本発明に係る音声認識装置は、上記実施形態に係る音声認識装置100よりも、簡略化した構成を備えたものであってもよい。音声認識装置が正規化部124を備えない場合、キュー格納部125は、第1の出力確率取得部123によって取得された出力確率を、正規化せずキューに格納する。音声認識装置が第2の累積確率取得部128を備えない場合、第1の条件が満たされたか否かは、累積確率Aの値が予め定められた閾値を超えたか否か等、累積確率Aのみによって決められる。音声認識装置が第2の尤度取得部131を備えない場合、第2の条件が満たされたか否かは、尤度Cの値が予め定められた閾値を超えたか否か等、尤度Cのみによって決められる。
【0105】
また、上記実施形態では、音声認識装置100は、CPU6を備えていた。しかし、本発明では、音声認識装置100は、CPU6の代わりに、ASIC(Application Specific Integrated Circuit)等の専用の制御回路を備え、制御回路が装置全体を制御してもよい。
【0106】
なお、本発明に係る機能を実現するための構成を予め備えた音声認識装置として提供できることはもとより、プログラムの適用により、既存のパーソナルコンピュータや情報端末機器等を、本発明に係る音声認識装置として機能させることもできる。すなわち、上記実施形態で例示した音声認識装置100による各機能構成を実現させるためのプログラムを、既存のパーソナルコンピュータや情報端末機器等を制御するCPU等が実行できるように適用することで、本発明に係る音声認識装置として機能させることができる。また、本発明に係る音声認識方法は、音声認識装置を用いて実施できる。
【0107】
また、このようなプログラムの適用方法は任意である。プログラムを、例えば、コンピュータが読取可能な記録媒体(CD−ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto Optical disc)等)に格納して適用できる他、インターネット等のネットワーク上のストレージにプログラムを格納しておき、これをダウンロードさせることにより適用することもできる。
【0108】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲とが含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0109】
(付記1)
予め登録されたクエリを、隣接する音素に依存しない第1の音響モデルの音素を並べて、第1の音素列に変換する第1の変換手段と、
前記クエリを、隣接する音素に依存する第2の音響モデルの音素を並べて、第2の音素列に変換する第2の変換手段と、
音声信号の入力を受け付ける音声信号受付手段と、
前記音声信号受付手段によって入力が受け付けられた前記音声信号の特徴量が、前記第1の音響モデルの各音素から出力される出力確率を、フレーム毎に取得する第1の出力確率取得手段と、
前記第1の出力確率取得手段によってフレーム毎に取得された、前記第1の音響モデルの各音素の出力確率を、順次キューに格納するキュー格納手段と、
前記キューに格納された前記第1の音響モデルの各音素の出力確率のうち、前記第1の音素列に対応する音素の出力確率を累積することにより、累積確率を取得する累積確率取得手段と、
前記累積確率取得手段によって取得された累積確率が第1の条件を満たした場合、前記音声信号の特徴量が、前記第2の音素列に含まれる各音素から出力される第2の出力確率を、フレーム毎に取得する第2の出力確率取得手段と、
前記第2の出力確率取得手段によって取得された第2の出力確率に基づいて、前記音声信号において前記クエリに対応する音声が発せられていることの尤もらしさを示す尤度を取得する尤度取得手段と、
前記尤度取得手段によって取得された尤度が第2の条件を満たした場合、前記音声信号において前記クエリに対応する音声が発せられていると判定する判定手段と、
を備えることを特徴とする音声認識装置。
【0110】
(付記2)
前記第1の出力確率取得手段によって取得された、前記第1の音響モデルの各音素の出力確率のうちから、フレーム毎に最大の出力確率を特定し、前記第1の音響モデルの各音素の出力確率を、フレーム毎に、特定した最大の出力確率で正規化する正規化手段をさらに備え、
前記キュー格納手段は、前記正規化手段によって正規化された出力確率を、前記キューに格納する、
ことを特徴とする付記1に記載の音声認識装置。
【0111】
(付記3)
前記累積確率取得手段によって前記累積確率が取得された前記音声信号の区間において、前記キューに格納された前記第1の音響モデルの各音素の出力確率のうちから、フレーム毎に最大の出力確率を特定し、特定した最大の出力確率を累積することにより、第2の累積確率を取得する第2の累積確率取得手段をさらに備え、
前記第1の条件は、前記累積確率取得手段によって取得された累積確率を、前記第2の累積確率取得手段によって取得された第2の累積確率で除算した値が、第1の閾値以上である場合に、満たされる、
ことを特徴とする付記1又は2に記載の音声認識装置。
【0112】
(付記4)
前記尤度取得手段は、前記第2の出力確率取得手段によって取得された第2の出力確率に基づいて、前記尤度を、動的計画法により取得し、
前記第2の出力確率取得手段によって取得された出力確率のうち、音素認識によって認識された音素の出力確率に基づいて、前記尤度取得手段によって前記尤度が取得された前記音声信号の区間において前記クエリが発せられていることの尤もらしさを示す第2の尤度を取得する第2の尤度取得手段をさらに備え、
前記第2の条件は、前記尤度取得手段によって取得された尤度を、前記第2の尤度取得手段によって取得された第2の尤度で除算した値が、第2の閾値以上である場合に、満たされる、
ことを特徴とする付記1から3のいずれか1つに記載の音声認識装置。
【0113】
(付記5)
前記第1の変換手段は、予め登録された複数のクエリを、それぞれ前記第1の音響モデルの音素を並べて、複数の第1の音素列に変換し、
前記累積確率取得手段は、前記複数の第1の音素列のそれぞれについて、前記キューに格納された前記第1の音響モデルの各音素の出力確率のうち、対応する音素の出力確率を累積することにより、前記累積確率を取得し、
前記累積確率取得手段によって、前記複数のクエリのそれぞれについて取得された累積確率に基づいて、前記複数のクエリのうちから候補クエリを決定する候補決定手段をさらに備え、
前記第2の変換手段は、前記候補クエリを前記第2の音素列に変換し、
前記第2の出力確率取得手段は、前記候補クエリについて取得された累積確率が前記第1の条件を満たした場合、前記音声信号の特徴量が、前記第2の音素列に含まれる各音素から出力される第2の出力確率を、フレーム毎に取得し、
前記尤度取得手段は、前記第2の出力確率取得手段によって取得された第2の出力確率に基づいて、前記音声信号において前記候補クエリに対応する音声が発せられていることの尤もらしさを示す尤度を取得し、
前記判定手段は、前記尤度取得手段によって取得された尤度が前記第2の条件を満たした場合、前記音声信号において前記候補クエリに対応する音声が発せられていると判定する、
ことを特徴とする付記1から4のいずれか1つに記載の音声認識装置。
【0114】
(付記6)
前記判定手段によって、前記音声信号において前記クエリに対応する音声が発せられていると判定された場合、前記キューに格納された出力確率のうち、前記クエリに対応する音声が発せられていると判定された区間の出力確率を削除して、前記第1の出力確率取得手段、前記キュー格納手段、前記累積確率取得手段、前記第2の出力確率取得手段、前記尤度取得手段、及び前記判定手段の処理を繰り返す繰り返し手段をさらに備える、
ことを特徴とする付記1から5のいずれか1つに記載の音声認識装置。
【0115】
(付記7)
予め登録されたクエリを、隣接する音素に依存しない第1の音響モデルの音素を並べて、第1の音素列に変換する第1の変換ステップと、
前記クエリを、隣接する音素に依存する第2の音響モデルの音素を並べて、第2の音素列に変換する第2の変換ステップと、
音声信号の入力を受け付ける音声信号受付ステップと、
前記音声信号受付ステップで入力が受け付けられた前記音声信号の特徴量が、前記第1の音響モデルの各音素から出力される出力確率を、フレーム毎に取得する第1の出力確率取得ステップと、
前記第1の出力確率取得ステップでフレーム毎に取得された、前記第1の音響モデルの各音素の出力確率を、順次キューに格納するキュー格納ステップと、
前記キューに格納された前記第1の音響モデルの各音素の出力確率のうち、前記第1の音素列に対応する音素の出力確率を累積することにより、累積確率を取得する累積確率取得ステップと、
前記累積確率取得ステップで取得された累積確率が第1の条件を満たした場合、前記音声信号の特徴量が、前記第2の音素列に含まれる各音素から出力される第2の出力確率を、フレーム毎に取得する第2の出力確率取得ステップと、
前記第2の出力確率取得ステップで取得された第2の出力確率に基づいて、前記音声信号において前記クエリに対応する音声が発せられていることの尤もらしさを示す尤度を取得する尤度取得ステップと、
前記尤度取得ステップで取得された尤度が第2の条件を満たした場合、前記音声信号において前記クエリに対応する音声が発せられていると判定する判定ステップと、
を含む音声認識方法。
【0116】
(付記8)
コンピュータを、
予め登録されたクエリを、隣接する音素に依存しない第1の音響モデルの音素を並べて、第1の音素列に変換する第1の変換手段、
前記クエリを、隣接する音素に依存する第2の音響モデルの音素を並べて、第2の音素列に変換する第2の変換手段、
音声信号の入力を受け付ける音声信号受付手段、
前記音声信号受付手段によって入力が受け付けられた前記音声信号の特徴量が、前記第1の音響モデルの各音素から出力される出力確率を、フレーム毎に取得する第1の出力確率取得手段、
前記第1の出力確率取得手段によってフレーム毎に取得された、前記第1の音響モデルの各音素の出力確率を、順次キューに格納するキュー格納手段、
前記キューに格納された前記第1の音響モデルの各音素の出力確率のうち、前記第1の音素列に対応する音素の出力確率を累積することにより、累積確率を取得する累積確率取得手段、
前記累積確率取得手段によって取得された累積確率が第1の条件を満たした場合、前記音声信号の特徴量が、前記第2の音素列に含まれる各音素から出力される第2の出力確率を、フレーム毎に取得する第2の出力確率取得手段、
前記第2の出力確率取得手段によって取得された第2の出力確率に基づいて、前記音声信号において前記クエリに対応する音声が発せられていることの尤もらしさを示す尤度を取得する尤度取得手段、
前記尤度取得手段によって取得された尤度が第2の条件を満たした場合、前記音声信号において前記クエリに対応する音声が発せられていると判定する判定手段、
として機能させるためのプログラム。