(57)【特許請求の範囲】
【請求項１】
単語を記憶した認識辞書と、上記認識辞書に記憶された単語をあらかじめ学習した言語モデルと、認識対象言語においてありうる音韻連鎖の規則を記憶した音韻連鎖モデルとを有する音声認識装置において、
上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析を行う認識部と、
上記音韻連鎖モデルを用いた分析結果に重みをかける値を記憶する音韻連鎖モデル重み記憶部と、
上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果を利用して上記音韻連鎖モデル重み記憶部に記憶された値を変更する音韻連鎖モデル重み変更部と、を備えたことを特徴とする音声認識装置。
【請求項２】
上記言語モデルの重みを記憶する言語モデル重み記憶部と、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析との結果から上記言語モデル重み記憶部に記憶された重みを変更する言語モデル重み変更部と、を備えたことを特徴とする請求項１に記載の音声認識装置。
【請求項３】
上記言語モデル重み変更部は、上記言語モデルの重みを上記認識部における上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析で得られる尤度の差の値あるいは上記言語モデル重み記憶部に記憶されている値の関数によって得られる値に変更することを特徴とする請求項１または請求項２に記載の音声認識装置。
【請求項４】
上記音韻連鎖モデル重み記憶部は、上記音韻連鎖モデル重みを上記認識部における上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析で得られる尤度の差の値あるいは上記音韻連鎖モデル重み記憶部に記憶された値の関数によって得られる値に変更することを特徴とする請求項１または請求項２に記載の音声認識装置。
【請求項５】
上記認識部は、尤度計算時の探索において複数パスの探索を行い、二つ目以降のパスでは、上記言語モデル重み変更部は上記言語モデルの重み記憶部に記憶されている値を維持することを特徴とする請求項１または請求項２に記載の音声認識装置。
【請求項６】
上記認識部は、尤度計算時の探索において複数パスの探索を行い、二つ目以降のパスでは、上記音韻連鎖モデル重み変更部は上記音韻連鎖モデル重み記憶部に記憶されている値を維持することを特徴とする請求項１または請求項２に記載の音声認識装置。
【請求項７】
上記言語モデル重み記憶部は、発声前の値を別に記憶し、上記言語モデル重み変更部は、発声が終了したと判断されたときに、上記言語モデル重み記憶部に記憶された値を発声前の値に変更することを特徴とする請求項１または請求項２に記載の音声認識装置。
【請求項８】
上記音韻連鎖モデル重み記憶部は、発声前の値を別に記憶し、上記音韻連鎖モデル重み変更部は、発声が終了したと判断されたときに、上記音韻連鎖モデル重み記憶部に記憶された値を発声前の値に変更することを特徴とする請求項１または請求項２に記載の音声認識装置。
【請求項９】
上記言語モデル重み変更部は、無音部分と判断される処理単位においては、上記言語モデル重み記憶部に記憶された値を維持することを特徴とする請求項１または請求項２に記載の音声認識装置。
【請求項１０】
上記音韻連鎖モデル重み変更部は、無音部分と判断される処理単位においては、上記音韻連鎖モデル重み記憶部に記憶された値を維持することを特徴とする請求項１または請求項２に記載の音声認識装置。
【請求項１１】
単語を記憶した認識辞書と、上記認識辞書に記憶された各単語をあらかじめ学習した言語モデルと、認識対象言語においてありうる音韻連鎖の規則を記憶した音韻連鎖モデルとを用いる音声認識方法において、
時間で分割された処理単位ごとに、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析を行い、それぞれの分析における最大尤度の値を出力する認識手段と、
上記音韻連鎖モデルを用いた分析に重みをかける値を記憶する音韻連鎖モデル重み記憶手段と、
上記処理単位ごとに、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析のそれぞれの最大尤度の値を用いて上記音韻連鎖モデル重み記憶手段で記憶した値を変更する音韻連鎖モデル重み変更手段と、を備えたことを特徴とする音声認識方法。
【請求項１２】
上記言語モデルの重みを記憶する言語モデル重み記憶手段と、
上記処理単位ごとに、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析のそれぞれの最大尤度の値を用いて上記言語モデル重み記憶手段で記憶した重みを変更する言語モデル重み変更手段と、を備えたことを特徴とする請求項１１に記載の音声認識方法。
【請求項１３】
単語を記憶した認識辞書と、上記認識辞書に記憶された各単語をあらかじめ学習した言語モデルと、認識対象言語においてありうる音韻連鎖の規則を記憶した音韻連鎖モデルとを有する音声認識方法において、
上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析を行う認識手段と、
上記音韻連鎖モデルを用いた分析結果に重みをかける値を記憶する音韻連鎖モデル重み記憶手段と、
上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果を利用して上記音韻連鎖モデル重み記憶手段によって記憶された値を変更する音韻連鎖モデル重み変更手段と、を備えたことを特徴とする音声認識方法。
【請求項１４】
上記言語モデルの重みを記憶する言語モデル重み記憶手段と、
上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果から上記言語モデル重み記憶手段によって記憶された重みを変更する言語モデル重み変更手段と、を備えたことを特徴とする請求項１３に記載の音声認識方法。
【請求項１５】
単語の情報を記憶した認識辞書と、上記認識辞書に記憶された各単語をあらかじめ学習した言語モデルと、認識対象言語においてありうる音韻連鎖の規則を記憶した音韻連鎖モデルとを用いる音声認識プログラムであって、
コンピュータを、
上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析を行う認識手段と、
上記音韻連鎖モデルを用いた分析結果に重みをかける値を記憶する音韻連鎖モデル重み記憶手段と、
上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果を利用して上記音韻連鎖モデル重み記憶手段によって記憶された値を変更する音韻連鎖モデル重み変更手段として機能させるための音声認識プログラム。
【請求項１６】
コンピュータを、
上記言語モデルの重みを記憶する言語モデル重み記憶手段と、
上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果から上記言語モデル重み記憶手段によって記憶された重みを変更する言語モデル重み変更手段として機能させるための、請求項１５に記載の音声認識プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、発声された音声を認識する音声認識装置に関するものである。
【０００２】
【従来の技術】
音声認識技術はここ数年で広く利用されるようになってきている。近年の計算機技術の発展に伴い、単語音声認識だけでなく連続音声認識もＰＣ上のソフトウェアなどで利用可能になっている。
【０００３】
音声認識においては、認識辞書に記憶されていない単語（未知語）をユーザが発声する可能性がある。連続音声認識における未知語への対応手法としては、“連続音声認識における未知語の扱い”（信学技報、ＳＰ９１−９６、Ｄｅｃ。１９９１）で述べられているように音韻タイプライタを利用するものがある。音韻タイプライタは、日本語としてありうる発声すべてを認識できるように声の特徴をサブワードでモデル化したものであり、そのサブワードには音素がよく用いられる。
【０００４】
以下、従来の、音韻タイプライタを用いた未知語処理について説明する。図３は従来の、音韻タイプライタを用いた未知語処理の一例を表したブロック図である。
【０００５】
音声認識装置３００に入力された話者の音声は、入力部３０１に入力され、ディジタル信号化される。ディジタル信号化された音声波形は、音響分析部３０２に入力され、分析される。分析方法としては、２０〜４０ｍｓｅｃの区間ごとに、比較的短時間の時間窓をかけて、８〜１６ｍｓｅｃごとに窓をシフトしていく短時間スペクトル分析の手法が使われることが多い。時間窓によって切り出された音声波形は、切り出された時間長を持つフレームと呼ばれる単位ごとの特徴ベクトルの時系列に変換される。特徴ベクトルは、その時刻における音声スペクトルの特徴量を抽出したもので、通常１０〜５０次元であり、メル周波数ケプストラム係数などが広く用いられている。変換した特徴ベクトルを認識部３０３へ出力する。
【０００６】
音響モデル３０７には、認識単位ごとに用意されたＨＭＭ（隠れマルコフモデル）が広く用いられており、認識単位としては音素片が用いられることが多い。ＨＭＭとは複数個の状態を持つ非決定性確率有限オートマトンであり、非定常信号源を定常信号源の連結で表す統計的信号源モデルとして用いられている。ＨＭＭは、遷移する状態の集まりとして表され、状態の遷移の確率を表す遷移確率と、状態が遷移するときに観測ベクトルの確率を出力する出力確率とからなる。音声認識に用いられる、ＨＭＭで表現された音響モデルは、音韻の性質をモデル化している。このＨＭＭでは、状態は、おおよそ音韻のイベント（閉鎖、破裂、摩擦、定常母音など、安定な区間）に対応する。出力確率は、遷移に伴って出力される信号の揺らぎの確率である。認識辞書の語彙に含まれる各単語について、認識単位（音素片等）それぞれに対応する状態の出力によって構成される系列（以下ＨＭＭの出力系列と表記する）が、入力信号の系列（それぞれ特徴ベクトルの時系列であることが多い）と一致する確率を出力確率と遷移確率から求め、その値が最大となる単語を認識結果とすることで、音声認識が実現される。この場合、入力信号の系列は、すでに起きた事象の観測データとして得られており、そのデータと比較して、ＨＭＭの出力系列がどれだけもっともらしいか、ということを求めている。すでに起きている事象（入力信号の系列）を説明する仮説（ＨＭＭの出力系列）の正しさを求めるために、確率ではなく尤度という概念を用いて分析が行われる。ＨＭＭの状態系列の尤度を計算するときは、尤度の積の代わりに対数尤度の和を求めることが多い。こういった状態系列を求めるアルゴリズムとしてＶｉｔｅｒｂｉアルゴリズムが広く用いられている。連続音声認識の場合は、言語モデルによって文章中の各単語のならびに文法的な制限が設けられている。
【０００７】
出力確率、遷移確率などのパラメータは、対応する学習音声を与えてバウム−ウェルチアルゴリズムと呼ばれるアルゴリズムなどであらかじめ学習されている。以下は、認識単位が音素であるＨＭＭが音響モデル３０７に記憶されているとする。
【０００８】
認識辞書３０４には、認識可能な語彙の情報が記憶されている。単語の表記、音素記号列が記憶されている。
【０００９】
言語モデル３０５には、認識辞書３０４に含まれる語彙に基づいたｎ−ｇｒａｍモデルが広く用いられている。ｎ−ｇｒａｍモデルとは、サンプルデータから統計的な手法によって確率推定を行う統計的言語モデルの一種であり、ｎ−ｇｒａｍモデルを用いた言語モデルの実装について、「音声認識システム」（オーム社出版局）に詳しく記載されている。
【００１０】
音韻連鎖モデル３０６には、日本語としてありうる音韻連鎖の規則が記憶されている。音韻タイプライタを利用した未知語処理においては、通常の連続音声認識とともに、未知語検出用の音韻認識が並列に行われる。音韻連鎖モデル３０６の実装としては、認識部３０３の実装を共通化するために、上記言語モデル３０５と同じデータ構造で記憶される事が多い。
【００１１】
認識部３０３では、音響分析部３０２の出力、音響モデル３０７、言語モデル３０５、音韻連鎖モデル３０６のそれぞれの情報を用いて音声認識処理を行う。通常の連続認識処理については、上記「音声認識システム」（オーム社出版局）にその実現方法が書かれている。ただし、ここでは認識処理において、探索は１パスフレーム同期ビームサーチで行われるとする。このとき、各フレームで音韻タイプライタを用いた音韻認識も並列に行われる。図４は認識部３０３における各フレームでの処理をフローチャートで表したものである。以下、図４にしたがってｉ番目のフレームでの認識処理について説明する。
【００１２】
まず、ステップ４０１で、対応するフレームにおいて、通常の認識処理をおこなう。具体的には、音響分析部３０２の出力した特徴ベクトルから、音響モデル３０７と言語モデル３０５を用いて各仮説の尤度を計算し、尤度の低い仮説を評価の対象からはずす（枝刈り）処理を行う。尤度の計算方法、枝刈りについても上記「音声認識システム」（オーム社出版局）に記載されている。さらに、各仮説の累積尤度を記憶しておく。例えば、フレームｉに対応する累積尤度を配列Ｐ１［ｉ］として、Ｐ１を仮説ごと別々に記憶する。
【００１３】
次に、ステップ４０２で、言語モデル３０５の代わりに音韻連鎖モデル３０６を用いてステップ４０１と同様の処理を行う。ただし、ステップ４０１での各仮説中の最大尤度を枝刈りするスコアの閾値とする。なぜなら、言語モデル３０５を用いた認識の場合は言語的制約があるため、日本語としてありうる音韻連鎖の可能性がある音韻連鎖モデル３０６を用いた認識における尤度のほうが最大値は高くなり、さらに未知語検出のためには音韻連鎖モデルを用いた認識の仮説はひとつ残っていればよいためである。このとき、対応するフレームにおける音韻連鎖モデルを用いた場合の最大の累積尤度を配列Ｐ２［ｉ］に記憶しておく。
【００１４】
すべてのフレームについて上記の処理が終了したら、もっともスコアの高い仮説に対応する文の各単語について、それぞれの単語における最後のフレーム（ここではｊ番目とする）の、音韻連鎖モデルを用いた分析での最大累積尤度に上記音韻連鎖モデル重み記憶部に記憶された値と言語モデル３０５を用いた分析での累積尤度の差を求め、それをＳとして、各単語で記憶する。つまり、上記音韻連鎖モデル重み記憶部に記憶された値をαとすると、α×Ｐ２［ｊ］―Ｐ１［ｊ］＝Ｓである。この値を各単語について求める。最後に、最もスコアの高い仮説に対応する文の各単語の表記と、Ｓの値を未知語区間検出部３０９に出力する。
【００１５】
未知語区間検出部３０９は、認識部３０３の出力を入力とする。入力された各単語におけるＳが０より大きい単語を未知語として、その単語の表記を「未知語」と変換した文字列を出力部３１０に出力する。ここで、音韻連鎖モデル重み記憶部３０８にはあらかじめ騒音などの発話環境を考慮して適当に決定された音韻連鎖モデル重みが記憶されている。
【００１６】
出力部３１０は、ディスプレイなど、文字列を出力できる装置であり、未知語区間検出部から出力された文字列を出力する。
【００１７】
上記の音韻連鎖モデル重みは、話者や発声環境によって大きく変化するため、精度よく未知語の検出を行うためには、それらの環境によって音韻連鎖モデル重みを変化させる必要がある。環境の違いによらない未知語の検出としては、特開平４−２５５９００号報に見られる手法を用いることで、音韻タイプライタによる分析と言語制約をもった分析での尤度から適切な音韻連鎖モデル重みを求めるというものがある。
【００１８】
【発明が解決しようとする課題】
しかしながら、上記従来の技術で述べた方法では、適切な音韻連鎖モデル重みが環境によって異なるという問題がある。それを解決するための特開平４−２５５９００号公報で見られる手法においては、発声最後まで分析しなければ適切な音韻連鎖モデル重みがわからないという欠点があり、フレーム同期探索時などに未知語であるかどうかの情報がまったくわからない。ｎ−ｇｒａｍなどの統計的言語モデルを用いた音声認識では、未知語が発声された後の認識結果はあまり信用できず、音韻タイプライタとの差が大きい部分だけを未知語と認識しても、その後の部分に正しい単語が結果として選ばれていない場合が多いので、未知語以外の部分の認識に問題がある。
【００１９】
そこで本発明の目的は、精度よく未知語の検出を行い、未知語以外の部分の認識にも頑健な未知語処理を実現できる音声認識装置を提供することにある。
【００２０】
【課題を解決するための手段】
本発明は、単語を記憶した認識辞書と、上記認識辞書に記憶された単語をあらかじめ学習した言語モデルと、認識対象言語においてありうる音韻連鎖の規則を記憶した音韻連鎖モデルとを有する音声認識装置において、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析を行う認識部と、上記音韻連鎖モデルを用いた分析結果に重みをかける値を記憶する音韻連鎖モデル重み記憶部と、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果を利用して上記音韻連鎖モデル重み記憶部に記憶された値を変更する音韻連鎖モデル重み変更部と、を備えたことを特徴とする。
【００２１】
また、本発明は、上記言語モデルの重みを記憶する言語モデル重み記憶部と、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析との結果から上記言語モデル重み記憶部に記憶された重みを変更する言語モデル重み変更部と、を備えたことを特徴とする。
【００２２】
また、本発明は、上記言語モデル重み変更部は、上記言語モデルの重みを上記認識部における上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析で得られる尤度の差の値あるいは上記言語モデル重み記憶部に記憶されている値の関数によって得られる値に変更することを特徴とする。
【００２３】
また、本発明は、上記音韻連鎖モデル重み記憶部は、上記音韻連鎖モデル重みを上記認識部における上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析で得られる尤度の差の値あるいは上記音韻連鎖モデル重み記憶部に記憶された値の関数によって得られる値に変更することを特徴とする。
【００２４】
また、本発明は、上記認識部は、尤度計算時の探索において複数パスの探索を行い、二つ目以降のパスでは、上記言語モデル重み変更部は上記言語モデルの重み記憶部に記憶されている値を維持することを特徴とする。
【００２５】
また、本発明は、上記認識部は、尤度計算時の探索において複数パスの探索を行い、二つ目以降のパスでは、上記音韻連鎖モデル重み変更部は上記音韻連鎖モデル重み記憶部に記憶されている値を維持することを特徴とする。
【００２６】
また、本発明は、上記言語モデル重み記憶部は、発声前の値を別に記憶し、上記言語モデル重み変更部は、発声が終了したと判断されたときに、上記言語モデル重み記憶部に記憶された値を発声前の値に変更することを特徴とする。
【００２７】
また、本発明は、上記音韻連鎖モデル重み記憶部は、発声前の値を別に記憶し、上記音韻連鎖モデル重み変更部は、発声が終了したと判断されたときに、上記音韻連鎖モデル重み記憶部に記憶された値を発声前の値に変更することを特徴とする。
【００２８】
また、本発明は、上記言語モデル重み変更部は、無音部分と判断される処理単位においては、上記言語モデル重み記憶部に記憶された値を維持することを特徴とする。
【００２９】
また、本発明は、上記音韻連鎖モデル重み変更部は、無音部分と判断される処理単位においては、上記音韻連鎖モデル重み記憶部に記憶された値を維持することを特徴とする。
【００３０】
また、本発明は、単語を記憶した認識辞書と、上記認識辞書に記憶された各単語をあらかじめ学習した言語モデルと、認識対象言語においてありうる音韻連鎖の規則を記憶した音韻連鎖モデルとを用いる音声認識方法において、時間で分割された処理単位ごとに、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析を行い、それぞれの分析における最大尤度の値を出力する認識手段と、上記音韻連鎖モデルを用いた分析に重みをかける値を記憶する音韻連鎖モデル重み記憶手段と、上記処理単位ごとに、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析のそれぞれの最大尤度の値を用いて上記音韻連鎖モデル重み記憶手段で記憶した値を変更する音韻連鎖モデル重み変更手段と、を備えたことを特徴とする。
【００３１】
また、本発明は、上記言語モデルの重みを記憶する言語モデル重み記憶手段と、上記処理単位ごとに、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析のそれぞれの最大尤度の値を用いて上記言語モデル重み記憶手段で記憶した重みを変更する言語モデル重み変更手段と、を備えたことを特徴とする。
【００３２】
また、本発明は、単語を記憶した認識辞書と、上記認識辞書に記憶された各単語をあらかじめ学習した言語モデルと、認識対象言語においてありうる音韻連鎖の規則を記憶した音韻連鎖モデルとを有する音声認識方法において、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析を行う認識手段と、上記音韻連鎖モデルを用いた分析結果に重みをかける値を記憶する音韻連鎖モデル重み記憶手段と、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果を利用して上記音韻連鎖モデル重み記憶手段によって記憶された値を変更する音韻連鎖モデル重み変更手段と、を備えたことを特徴とする。
【００３３】
また、本発明は、上記言語モデルの重みを記憶する言語モデル重み記憶手段と、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果から上記言語モデル重み記憶手段によって記憶された重みを変更する言語モデル重み変更手段と、を備えたことを特徴とする。
【００３４】
また、本発明は、単語の情報を記憶した認識辞書と、上記認識辞書に記憶された各単語をあらかじめ学習した言語モデルと、認識対象言語においてありうる音韻連鎖の規則を記憶した音韻連鎖モデルとを用いる音声認識プログラムであって、コンピュータを、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析を行う認識手段と、上記音韻連鎖モデルを用いた分析結果に重みをかける値を記憶する音韻連鎖モデル重み記憶手段と、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果を利用して上記音韻連鎖モデル重み記憶手段によって記憶された値を変更する音韻連鎖モデル重み変更手段として機能させるための音声認識プログラムを提供する。
【００３５】
また、本発明は、上記音声認識プログラムにおいて、コンピュータを、上記言語モデルの重みを記憶する言語モデル重み記憶手段と、上記言語モデルを用いた分析と上記音韻連鎖モデルを用いた分析の結果から上記言語モデル重み記憶手段によって記憶された重みを変更する言語モデル重み変更手段として機能させるための音声認識プログラムを提供する。
【００３６】
【発明の実施の形態】
以下、本発明を実施例に基づき詳細に説明する。
【００３７】
図１は本発明による音声認識装置の一例を表すブロック図である。この音声認識装置１００は、入力部１０１、音響分析部１０２、認識部１０３、音響モデル１０７、認識辞書１０４、言語モデル１０５、音韻連鎖モデル１０６、音韻連鎖モデル重み変更部１１０、音韻連鎖モデル重み記憶部１１１、言語モデル重み変更部１０８、言語モデル重み記憶部１０９、未知語区間検出部１１２、出力部１１３で構成される。
【００３８】
入力部１０１は、入力された音声をディジタル信号化する。
【００３９】
音響分析部１０２は、入力されたディジタル信号を特徴ベクトルの時系列に変換する。
【００４０】
音響モデル１０７は、音素片ごとに用意されたＨＭＭを用いて発声の音韻的特徴が記憶されている。認識部１０３での２パス探索に対応するために、精度が低いがより高速な認識を行うことのできるモデルと、精度がより高いが低速で認識するモデルとの２つのモデルをそれぞれ記憶している。
【００４１】
認識辞書１０４には、認識可能な語彙の情報として、単語の表記を表す文字列と音素記号列を表す文字列が記憶されている。
【００４２】
言語モデル１０５には、ｎ−ｇｒａｍモデルによる統計的な言語情報が記憶されている。
【００４３】
音韻連鎖モデル１０６には、日本語としてありうる音韻連鎖の規則が、言語モデルと同様のデータ構造で記憶されている。
【００４４】
音韻連鎖モデル重み記憶部１１１には、認識部における認識で使用する音韻連鎖モデル重みを記憶しており、初期値としては１が記憶されている。音韻連鎖モデル重みの使い方については後述する。
【００４５】
言語モデル重み記憶部１０９には、認識部における認識処理で使用する言語モデルの重みを記憶しており、初期値としては１が記憶されている。
【００４６】
認識部１０３では、音響分析部１０２の出力、音響モデル１０７、言語モデル１０５、音韻連鎖モデル１０６のそれぞれの情報を用いて音声認識処理を行う。ここでは、認識部１０３は２パスで認識処理を行うとし、どちらのパスでもフレーム同期ビームサーチを行うとするが、１パス目では単純な音響モデルで高速化を図りつつ候補を絞り、２パス目で高精度な音響モデルを用いて精度の高い認識を行う。図２は認識部における１パス目でのｉ番目のフレームの処理を表したフローチャートである。以下、図２にしたがってｉ番目のフレームでの認識処理について説明する。
【００４７】
ステップ２０１において、対応するフレームにおいて、音響モデル１０７と言語モデル１０５を用いて従来の技術で述べた方法と同じように通常の認識処理を行う。ここでも、フレームｉに対応する累積尤度を配列Ｐ１［ｉ］として、尤度Ｐ１を仮説ごとに記憶する。
【００４８】
次に、ステップ２０２で、言語モデル１０５の代わりに音韻連鎖モデル１０６を用いてステップ２０１と同様の処理を行う。このときステップ２０１の各仮説の最大尤度を枝刈りするスコアの閾値とする。同様に、対応するフレームにおける音韻連鎖モデルを用いた場合の最大の累積尤度を配列Ｐ２［ｉ］として記憶しておく。
【００４９】
ステップ２０３において、無音部分かどうかの判定を行う。音響モデル１０７において、無音に対応するＨＭＭの状態が最も尤度が高いときに無音であると判断する。無音だった場合はそのまま次へ進み、無音でなかった場合はステップ２０４に進む。無音部分においては、言語モデルを用いた認識において尤度の差は出ないため、言語モデル重みの値や音韻連鎖モデル重みを変更しても期待した効果は得られないためである。音韻連鎖モデル重み変更部に変更の通知と、配列Ｐ２［ｉ］の値と配列Ｐ１［ｉ］の値を出力する。
【００５０】
ステップ２０５において、言語モデル重み変更部に値を変更する通知を送るかどうかの判定を行う。ここで、音韻連鎖モデル重み記憶部に記憶されている値をαとすると、α×Ｐ２［ｉ］―Ｐ１［ｉ］が正の値であるときは、ステップ２０６において、配列Ｐ２［ｉ］の値と配列Ｐ１［ｉ］の値を、変更の通知とともに言語モデル重み変更部および音韻連鎖モデル重み記憶部に出力する。そうでなければ次のフレームに移る。
【００５１】
２パス目では高精度な音響モデルを用いる以外はほぼ同様の処理を行うのであるが、２パス目では言語モデル重み変更部、音韻連鎖モデル重み変更部への変更通知を行わず、言語モデル重み変更部、音韻連鎖モデル重み変更部は前回の値を維持する。１パス目ですべての入力フレームでの音韻連鎖モデルを用いた分析が終わっているので、その発声すべての情報を用いることができるからである。
【００５２】
また、今回の発声によって変更された言語モデル重みの値および音韻連鎖モデル重みは、必ずしも発声前の値に戻さなくてよい。携帯電話など、発声時の騒音などの環境が特定されない機器へ応用する場合は、発声前の値に戻すことで次回の発生で環境が大きく変わっている場合にも、今回の値を記憶したことによる悪影響を防ぐことができる。逆に、家庭用コンピュータなど、発声時の環境がほぼ一定である機器へ応用する場合は、発声前の状態に戻さず今回の発声によって変更された値を記憶しつづけることで、次回の発声においても適切な値で認識処理を行うことが可能となる。
【００５３】
すべてのフレームにおいて上記の処理を終え、２パス目の処理も終えたら、未知語区間検出部１１２に、尤度が最大の仮説と仮説の各単語の累積尤度の差Ｓを出力する。
【００５４】
音韻連鎖モデル重み変更部１１０では、認識部１０３からの通知を受け取り、音韻連鎖モデル重み記憶部に記憶されている値を変更する。ここで、音韻連鎖モデルを用いた分析においては、認識辞書や言語モデルによる言語的な制約を受けないため、得られる尤度が大きくなる。音韻連鎖モデルを用いた分析と言語モデルを用いた分析の尤度を比較する際に、発声が未知語でない部分でも、音韻連鎖モデルを用いた分析で得られた尤度が大きくなってしまうことが多いため、重みを示す係数（ペナルティ）は必ず１より小さい値に設定される。
【００５５】
変更は、音韻連鎖モデル重み記憶部に記憶されている値をαとすると、α＝（Ｐ２［ｉ］―Ｐ１［ｉ］）／ｉとする。これは、環境の違いによる配列Ｐ２［ｉ］と配列Ｐ１［ｉ］の尤度の差は、音響モデル１０７と発声された音声の特徴の違いもあって大きくなることが多いからである。
【００５６】
言語モデル重み変更部１０８は、認識部１０３からの通知にしたがって言語モデル重み記憶部に記憶されている値を変更する。変更は、言語モデル重み記憶部に記憶されている値をβとすると、β＝β×（（Ｐ２［ｉ］―Ｐ１［ｉ］）／Ｐ２［ｉ］）とする。これは、配列Ｐ２［ｉ］と配列Ｐ１［ｉ］の値の差が大きいほどそのあとの言語モデルの数値が信用できなくなるためである。
【００５７】
未知語区間検出部１１２では、認識部１０３の出力を入力とし、入力された各単語における累積尤度の差Ｓが０より大きい単語を未知語として、その単語の表記を「未知語」と変換した文字列を出力部１１３に出力する。
【００５８】
出力部１１３は、ディスプレイなどの文字列を出力できる装置が使用され、認識部１０３から出力された文字列を出力する。
（実施例１）
以下、「自由が丘に行く」という文章が発声された場合の具体的な処理動作を示す。このとき、「自由が丘」という単語は認識辞書１０４に含まれていないものとする。
【００５９】
まず、入力された音声は入力部１０１によってディジタル信号化される。ディジタル信号化された音声は短時間スペクトル分析の手法でフレーム単位に分割され、各フレームでの音声は音響分析部１０２によって特徴ベクトルの時系列に変換され、認識部１０３に出力される。
【００６０】
認識部１０３では、各フレームにおいて図２のフローチャートに従って処理が行われる。
【００６１】
まずステップ２０１で、 言語モデル１０５と音響モデル１０７を用いて尤度Ｐ１の計算を行う。
【００６２】
つぎにステップ２０２で、音韻連鎖モデル１０６と音響モデル１０７を用いて尤度Ｐ２の計算を行う。
ここでは、「自由が丘」という単語は認識辞書１０４に含まれていないため、尤度Ｐ１が最大となるのは認識辞書１０４に含まれる別の単語、例えば「自営業」などとなる。「自由が丘」と「自営業」では音素の並びが異なるために、「自営業」の尤度Ｐ１の値は認識辞書１０４に含まれる単語の中では高いものの、認識語彙による音素の並びの制約をうけない音韻連鎖モデル１０６を用いて計算した尤度Ｐ２よりは低くなると考えられる。
【００６３】
次に、ステップ２０３において無音部分かどうかの判定を行い、無音だった場合には、そのまま次のフレームの処理へ進み、無音でなかった場合はステップ２０４へ進む。
【００６４】
ステップ２０４においては、音韻連鎖モデル重み変更部に重みの変更通知と、尤度Ｐ１および尤度Ｐ２の値を出力する。適切な音韻連鎖モデル重みは、騒音や残響などの周囲の環境によって大きく変わるため、それまでの分析で得られた値をもとに適切な音韻連鎖モデル重みを設定するためである。
【００６５】
次に、ステップ２０５で、言語モデルの重みを変更するかどうかの判定を行う。α×Ｐ２［ｉ］―Ｐ１［ｉ］が正の値であればステップ２０５で言語モデルの重みを変更し、そうでなければなにもせずに次のフレームの処理に移る。２パス目でも高精度な音響モデルを用いる以外はほぼ同様の処理を行うのであるが、２パス目では言語モデル重み変更部、音韻連鎖モデル重み変更部への変更通知を行わず、言語モデル重み変更部、音韻連鎖モデル重み変更部は前回の値を維持する。また、すべてのフレームでの処理が終了したら、言語モデル重みの値と音韻連鎖モデル重みを発声前の値に戻す。
【００６６】
言語モデル１０５にはｎ−ｇｒａｍモデルによる統計的な言語情報が記憶されているため、「自営業に行く」という日本語としてありえない単語の並びは、音響モデル１０７を用いて得られる尤度は高いものの、言語モデル１０５を用いて得られる尤度が低くなってしまい、例えば「自営業である」、「自営業を営む」などといった単語の並びの尤度のほうが高くなり、発声における「に行く」の部分で認識誤りが生じてしまう。しかしながら、ステップ２０５において言語モデルの重みを変更することで言語的な制約を緩くして、「自営業」のあとに、音響尤度の高い「に行く」といった単語の並びが続くことを可能にすることができる。すべてのフレームにおいて上記の処理を終え、２パス目の処理も終えたら、未知語区間検出部１１２に、尤度が最大の仮説（この例では「自営業に行く」）と仮説の各単語の累積尤度の差Ｓをそれぞれ出力する。言語モデルの重みを変更しなかった場合は、尤度が最大の仮説は「自営業である」などといった、日本語として正しい単語列になることが多い。
【００６７】
未知語区間検出部１１２では、認識部１０３の出力である、「自営業に行く」という仮説と、「自営業」、「に」、「行く」の各単語についての尤度の差Ｓのそれぞれを入力とする。ここでは、各単語での累積尤度の差Ｓが０より大きい単語を未知語と判定する。「自由が丘」と「自営業」の音素の並びの違いから、「自営業」では尤度Ｐ１と尤度Ｐ２の差が大きいので、「自営業」が未知語と判定できる。音韻連鎖モデル重みを変更しなかった場合は、発声環境により適切な音韻連鎖モデル重みの設定が困難なため、「自営業」を未知語と判定できなかったり、「に」や「行く」を未知語と判定してしまうことがある。未知語区間検出部１１２では、「自営業」の部分を「未知語」と変換して出力部１１３に出力し、出力部１１３はその結果をディスプレイなどの表示装置に出力する。
（実施例２）
以下さらに、本発明の音声認識方法を用いた音声認識装置を単語音声認識装置として使用した場合の例として、「自由が丘」という単語が発声された場合の動作を示す。図５は本発明の音声認識方法を用いて、単語認識を行う音声認識装置の例である。単語のみを対象とした認識処理の場合は、ｎ−ｇｒａｍによる統計的な言語情報は用いない点が異なっている。また、単語認識では先ほどの文章の認識でよく用いられている複数パスの認識は行わないことも多い。ここでは１パスで処理を行うとする。さらに、「自由が丘」という単語は認識辞書５０４に含まれないものとする。
【００６８】
まず、入力された音声は入力部５０１によってディジタル信号化される。ディジタル信号化された音声は短時間スペクトル分析の手法でフレーム単位に分割され、各フレームでの音声は音響分析部５０２によって特徴ベクトルの時系列に変換され、認識部５０３に出力される。
【００６９】
認識部５０３では、各フレームにおいて図６のフローチャートに従って処理が行われる。
【００７０】
まずステップ６０１で、音響モデル５０７を用いて尤度Ｐ１の計算を行う。
つぎにステップ６０２で、音韻連鎖モデル５０６と音響モデル５０７を用いて尤度Ｐ２の計算を行う。
ここでは、「自由が丘」という単語は認識辞書５０４に含まれないため、尤度Ｐ１が最大となるのは認識辞書５０４に含まれる別の単語、例えば「自営業」などとなる。「自由が丘」と「自営業」では音素の並びが異なるために、「自営業」の尤度Ｐ１の値は認識辞書５０４に含まれる単語の中では高いものの，認識語彙による音素の並びの制約をうけない音韻連鎖モデル５０６を用いて計算した尤度Ｐ２よりは低くなることが多い。
【００７１】
次に、ステップ６０３において無音部分かどうかの判定を行い、無音だった場合、そのまま次のフレームの処理へ進み、無音でなかった場合はステップ６０４に進む。
【００７２】
次に、ステップ６０４において音韻連鎖モデル重み変更部に重みの変更通知と、尤度Ｐ１および尤度Ｐ２の値を出力する。これは、適切な音韻連鎖モデル重みは、騒音や残響などの周囲の環境によって大きく変わるため、それまでの分析で得られた値をもとに適切な音韻連鎖モデル重みを設定するためである。すべてのフレームでの処理が終了したら、音韻連鎖モデル重みを発声前の値に戻す。
【００７３】
未知語区間検出部５１２では、認識部５０３の出力である「自営業」という候補と、「自営業」の累積尤度の差Ｓのそれぞれを入力とする。ここでは、Ｓが０より大きい単語を未知語と判定する。「自由が丘」と「自営業」の音素の並びの違いから、「自営業」では尤度Ｐ１と尤度Ｐ２の差が大きいので、「自営業」が未知語と判定できる。音韻連鎖モデル重みを変更しなかった場合は、発声環境により適切な音韻連鎖モデル重みの設定が困難なため「自営業」を未知語と判定できないことがある。未知語区間検出部５１２では、「自営業」の部分を「未知語」と変換して出力部５１３に出力し、出力部５１３はその結果をディスプレイなどの表示装置に出力する。
【００７４】
【発明の効果】
以上のように、本発明によれば、音声認識を行う際に、精度よく未知語の検出を行うことができる。また、未知語以外の部分の認識にも頑健な未知語処理を実現することができる。
【図面の簡単な説明】
【図１】  本発明による音声認識装置の一例を示すブロック図である。
【図２】  本発明による認識部の動作を示すフローチャートである。
【図３】  従来の音声認識装置の一例を示すブロック図である。
【図４】  従来の音声認識装置における認識部の動作を表すフローチャートである。
【図５】  本発明による音声認識方法を用いて単語認識を行う音声認識装置の一例を示すブロック図である。
【図６】  本発明による認識部の単語認識の際の動作を示すフローチャートである。
【符号の説明】
１００、３００，５００  音声認識装置
１０１、３０１、５０１  入力部
１０２、３０２、５０２  音響分析部
１０３、３０３、５０３  認識部
１０４、３０４、５０４  認識辞書
１０５、３０５  言語モデル
１０６、３０６、５０６  音韻連鎖モデル
１０７、３０７、５０７  音響モデル
１０８  言語モデル重み変更部
１０９  言語モデル重み記憶部
１１０、５１０  音韻連鎖モデル重み変更部
１１１、３０８、５１１  音韻連鎖モデル重み記憶部
１１２、３０９、５１２  未知語区間検出部
１１３、３１０、５１３  出力部
【図１】
0003917880.tif 000002
【図２】
0003917880.tif 000003
【図３】
0003917880.tif 000004
【図４】
0003917880.tif 000005
【図５】
0003917880.tif 000006
【図６】
0003917880.tif 000007