(57)【特許請求の範囲】
【請求項１】
記憶部に保存されている入力テキストデータを読み出して、Ｎ−ｇｒａｍ言語モデルを作成する演算処理部を備え、
前記演算処理部は、
前記入力テキストデータに含まれるそれぞれの単語または単語連鎖ごとに、当該入力テキストデータ内での出現頻度を計数する頻度計数部と、
前記単語または単語連鎖ごとに、当該単語または単語連鎖に先行し得る単語の多様性を示す多様性指標を計算するコンテキスト多様性計算部と、
前記単語または単語連鎖の多様性指標に基づいて、これら単語または単語連鎖の出現頻度をそれぞれ補正して補正出現頻度を算出する頻度補正部と、
前記単語または単語連鎖の補正出現頻度に基づいてＮ−ｇｒａｍ言語モデルを作成するＮ−ｇｒａｍ言語モデル作成部と
を含むことを特徴とする言語モデル作成装置。
【請求項２】
請求項１に記載の言語モデル作成装置において、
前記コンテキスト多様性計算部は、前記記憶部に保存されている多様性計算用テキストデータから、当該単語または単語連鎖に先行する各単語を検索し、この検索結果に基づいて、当該単語または単語連鎖に関する多様性指標を計算する
ことを特徴とする言語モデル作成装置。
【請求項３】
請求項２に記載の言語モデル作成装置において、
前記コンテキスト多様性計算部は、前記検索結果から算出した当該単語または単語連鎖に先行する各単語の出現確率に基づいて、これら出現確率のエントロピーを当該単語または単語連鎖に関する多様性指標として求めることを特徴とする言語モデル作成装置。
【請求項４】
請求項３に記載の言語モデル作成装置において、
前記頻度補正部は、前記エントロピーが大きい前記単語または単語連鎖ほど当該出現頻度が大きくなるように前記出現頻度を補正することを特徴とする言語モデル作成装置。
【請求項５】
請求項２に記載の言語モデル作成装置において、
前記コンテキスト多様性計算部は、前記検索結果に基づいて当該単語または単語連鎖に先行する各単語の異なり単語数を当該単語または単語連鎖に関する多様性指標として求めることを特徴とする言語モデル作成装置。
【請求項６】
請求項５に記載の言語モデル作成装置において、
前記頻度補正部は、前記異なり単語数が大きい前記単語または単語連鎖ほど当該出現頻度が大きくなるように前記出現頻度を補正することを特徴とする言語モデル作成装置。
【請求項７】
請求項１に記載の言語モデル作成装置において、
前記コンテキスト多様性計算部は、前記記憶部に保存されている、各品詞の種別とその多様性指標との対応関係のうちから、当該単語または単語連鎖を構成する単語の品詞の種別と対応する多様性指標を、当該単語または単語連鎖に関する多様性指標として取得することを特徴とする言語モデル作成装置。
【請求項８】
請求項７に記載の言語モデル作成装置において、
前記頻度補正部は、前記多様性指標が大きい前記単語または単語連鎖ほど前記出現頻度が大きくなるように前記出現頻度を補正することを特徴とする言語モデル作成装置。
【請求項９】
請求項７に記載の言語モデル作成装置において、
前記対応関係は、前記品詞が自立語であるか否か、あるいは前記品詞が名詞であるか否か、の区別ごとに、それぞれ異なる多様性指標が定められていることを特徴とする言語モデル作成装置。
【請求項１０】
記憶部に保存されている入力テキストデータを読み出して、Ｎ−ｇｒａｍ言語モデルを作成する演算処理部が、
前記入力テキストデータに含まれるそれぞれの単語または単語連鎖ごとに、当該入力テキストデータ内での出現頻度を計数する頻度計数ステップと、
前記単語または単語連鎖ごとに、当該単語または単語連鎖に先行し得る単語の多様性を示す多様性指標を計算するコンテキスト多様性計算ステップと、
前記単語または単語連鎖の多様性指標に基づいて、これら単語または単語連鎖の出現頻度をそれぞれ補正して補正出現頻度を算出する頻度補正ステップと、
前記単語または単語連鎖の補正出現頻度に基づいてＮ−ｇｒａｍ言語モデルを作成するＮ−ｇｒａｍ言語モデル作成ステップと
を実行することを特徴とする言語モデル作成方法。
【請求項１１】
記憶部に保存されている入力テキストデータを読み出して、Ｎ−ｇｒａｍ言語モデルを作成する演算処理部を有するコンピュータに、
前記入力テキストデータに含まれるそれぞれの単語または単語連鎖ごとに、当該入力テキストデータ内での出現頻度を計数する頻度計数ステップと、
前記単語または単語連鎖ごとに、当該単語または単語連鎖に先行し得る単語の多様性を示す多様性指標を計算するコンテキスト多様性計算ステップと、
前記単語または単語連鎖の多様性指標に基づいて、これら単語または単語連鎖の出現頻度をそれぞれ補正して補正出現頻度を算出する頻度補正ステップと、
前記単語または単語連鎖の補正出現頻度に基づいてＮ−ｇｒａｍ言語モデルを作成するＮ−ｇｒａｍ言語モデル作成ステップと
からなる各ステップを、
前記演算処理部を用いて実行させるためのプログラム。
【請求項１２】
記憶部に保存されている入力音声データを音声認識処理する演算処理部を備え、
前記演算処理部は、
前記記憶部に保存されているベース言語モデルに基づいて前記入力音声データを音声認識処理し、当該入力音声の内容を示すテキストデータからなる認識結果データを出力する認識部と、
請求項１０に記載の言語モデル作成方法に基づいて前記認識結果データからＮ−ｇｒａｍ言語モデルを作成する言語モデル作成部と、
前記Ｎ−ｇｒａｍ言語モデルに基づいて前記ベース言語モデルを前記音声データに適応化した適応化言語モデルを作成する言語モデル適応化部と、
前記適応化言語モデルに基づいて前記入力音声データを再度音声認識処理する再認識部と
を含むことを特徴とする音声認識装置。
【請求項１３】
記憶部に保存されている入力音声データを音声認識処理する演算処理部が、
前記記憶部に保存されているベース言語モデルに基づいて入力音声データを音声認識処理し、テキストデータからなる認識結果データを出力する認識ステップと、
請求項１０に記載の言語モデル作成方法に基づいて前記認識結果データからＮ−ｇｒａｍ言語モデルを作成する言語モデル作成ステップと、
前記Ｎ−ｇｒａｍ言語モデルに基づいて前記ベース言語モデルを前記音声データに適応化した適応化言語モデルを作成する言語モデル適応化ステップと、
前記適応化言語モデルに基づいて前記入力音声データを再度音声認識処理する再認識ステップと
を実行することを特徴とする音声認識方法。
【請求項１４】
記憶部に保存されている入力音声データを音声認識処理する演算処理部を有するコンピュータに、
前記記憶部に保存されているベース言語モデルに基づいて入力音声データを音声認識処理し、テキストデータからなる認識結果データを出力する認識ステップと、
請求項１０に記載の言語モデル作成方法に基づいて前記認識結果データからＮ−ｇｒａｍ言語モデルを作成する言語モデル作成ステップと、
前記Ｎ−ｇｒａｍ言語モデルに基づいて前記ベース言語モデルを前記音声データに適応化した適応化言語モデルを作成する言語モデル適応化ステップと、
前記適応化言語モデルに基づいて前記入力音声データを再度音声認識処理する再認識ステップと
からなる各ステップを、
前記演算処理部を用いて実行させるためのプログラム。
【請求項１５】
記憶部に保存されている入力テキストデータを読み出して、Ｎ−ｇｒａｍ言語モデルを作成する演算処理部を有するコンピュータに、
前記入力テキストデータに含まれるそれぞれの単語または単語連鎖ごとに、当該入力テキストデータ内での出現頻度を計数する頻度計数ステップと、
前記単語または単語連鎖ごとに、当該単語または単語連鎖に先行し得る単語の多様性を示す多様性指標を計算するコンテキスト多様性計算ステップと、
前記単語または単語連鎖の多様性指標に基づいて、これら単語または単語連鎖の出現頻度をそれぞれ補正して補正出現頻度を算出する頻度補正ステップと、
前記単語または単語連鎖の補正出現頻度に基づいてＮ−ｇｒａｍ言語モデルを作成するＮ−ｇｒａｍ言語モデル作成ステップと
からなる各ステップを、
前記演算処理部を用いて実行させるためのプログラムを記録した記録媒体。
【請求項１６】
記憶部に保存されている入力音声データを音声認識処理する演算処理部を有するコンピュータに、
前記記憶部に保存されているベース言語モデルに基づいて入力音声データを音声認識処理し、テキストデータからなる認識結果データを出力する認識ステップと、
請求項１０に記載の言語モデル作成方法に基づいて前記認識結果データからＮ−ｇｒａｍ言語モデルを作成する言語モデル作成ステップと、
前記Ｎ−ｇｒａｍ言語モデルに基づいて前記ベース言語モデルを前記音声データに適応化した適応化言語モデルを作成する言語モデル適応化ステップと、
前記適応化言語モデルに基づいて前記入力音声データを再度音声認識処理する再認識ステップと
からなる各ステップを、
前記演算処理部を用いて実行させるためのプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自然言語処理技術に関し、特に音声認識や文字認識などに用いる言語モデルの作成技術に関する。
【背景技術】
【０００２】
統計的言語モデルは、単語列や文字列の生成確率を与えるモデルであり、音声認識、文字認識、自動翻訳、情報検索、テキスト入力、文章添削などの自然言語処理において広く活用されている。最も広く用いられている統計的言語モデルとして、Ｎ−ｇｒａｍ言語モデルがある。Ｎ−ｇｒａｍ言語モデルは、ある時点での単語の生成確率は直前のＮ−１個の単語にのみ依存する、と考えるモデルである。【０００３】
Ｎ−ｇｒａｍ言語モデルにおいて、ｉ番目の単語ｗｉの生成確率は、Ｐ（ｗi｜ｗi-N+1i-1）で与えられる。ここで、条件部のｗi-N+1i-1は（ｉ−Ｎ＋１）〜（ｉ−１）番目の単語列を表す。なお、Ｎ＝２のモデルをバイグラム（bigram）モデル、Ｎ＝３のモデルをトライグラム（trigram）モデルと呼び、単語が直前の単語に影響されずに生成されるモデルをユニグラム（unigram）モデルと呼ぶ。Ｎ−ｇｒａｍ言語モデルによれば、単語列ｗ1n＝（ｗ1，ｗ2，…，ｗn）の生成確率Ｐ（ｗ1n）は、次の式（１）で表される。【０００４】
【数１】
0005459214.tif 000002
【０００５】
Ｎ−ｇｒａｍ言語モデルにおける、様々な単語の様々な条件付き確率からなるパラメータは、学習用テキストデータに対する最尤推定などにより求められる。例えば、Ｎ−ｇｒａｍ言語モデルを音声認識や文字認識などで用いるときは、大量の学習用テキストデータを用いて、予め汎用のモデルを作成しておくことが一般的である。しかし、予め作成された汎用のＮ−ｇｒａｍ言語モデルは、必ずしも実際に認識対象となるデータの特徴を適切に表しているとは限らない。したがって、汎用のＮ−ｇｒａｍ言語モデルを、認識対象となるデータにあわせて適応化することが望ましい。【０００６】
Ｎ−ｇｒａｍ言語モデルを認識対象となるデータに適応化する代表的な技術にキャッシュモデルがある（例えば、F.Jelinek, B.Merialdo, S.Roukos, M.Strauss, "A Dynamic Language Model for Speech Recognition, " Proceedings of the workshop on Speech and Natural Language, pp.293-295, 1991.など参照）。キャッシュモデルによる言語モデルの適応化では、「同じ単語や言い回しは繰り返し使われやすい」という言葉の局所的な性質を利用する。具体的には、認識対象となるデータに現れる単語や単語列をキャッシュとして覚えておき、キャッシュ内の単語や単語列の統計的性質を反映するようにＮ−ｇｒａｍ言語モデルを適応化する。【０００７】
上記技術では、ｉ番目の単語ｗiの生成確率を求める場合に、まず、直前のＭ個の単語からなる単語列ｗi-Mi-1をキャッシュとして、キャッシュ内の単語のユニグラム頻度Ｃ（ｗi）、バイグラム頻度Ｃ（ｗi-1，ｗi）、トライグラム頻度Ｃ（ｗi-2，ｗi-1，ｗi）を求める。ここで、ユニグラム頻度Ｃ（ｗi）は単語列ｗi-Mi-1に出現する単語ｗiの頻度、バイグラム頻度Ｃ（ｗi-1，ｗi）は単語列Ｗi-Mi-1に出現する２単語連鎖ｗi-1ｗiの頻度、トライグラム頻度Ｃ（ｗi-2，ｗi-1，ｗi）は単語列Ｗi-Mi-1に出現する３単語連鎖ｗi-2ｗi-1ｗiの頻度である。なお、キャッシュの長さであるＭは、例えば、２００〜１０００程度の定数を実験的に定める。【０００８】
次に、これら頻度情報を元に、単語のユニグラム確率Ｐuni（ｗi）、バイグラム確率Ｐbi（ｗi｜ｗi-1）、トライグラム確率Ｐtri（ｗi｜ｗi-2，ｗi-1）を求める。そして、これらの確率値を次の式（２）により線形補間することで、キャッシュ確率ＰC（ｗi｜ｗi-2，ｗi-1）を求める。【０００９】
【数２】
0005459214.tif 000003
【００１０】
ただし、λ1，λ2，λ3はλ1＋λ2＋λ3＝１を満たす０〜１の定数で、予め実験的に定める。キャッシュ確率ＰCは、キャッシュ内の単語や単語列の統計的性質を元にして、単語ｗiの生成確率を予測するモデルとなる。【００１１】
このようにして得られたキャッシュ確率ＰC（ｗi｜ｗi-2，ｗi-1）と、大量の学習用テキストデータを元に予め作成した汎用のＮ−ｇｒａｍ言語モデルの確率ＰB（ｗi｜ｗi-2，ｗi-1）とを次の式（３）により線形結合することで、認識対象となるデータに適応化した言語モデルＰ（ｗi｜ｗi-2，ｗi-1）が得られる。【００１２】
【数３】
0005459214.tif 000004
【００１３】
ただし、λCは０〜１の定数で、予め実験的に定める。適応化した言語モデルは、認識対象となるデータにおける単語や単語列の出現傾向を反映した言語モデルとなる。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかしながら、上記の技術は、コンテキストの多様性が異なる単語に対して、適切な生成確率を与える言語モデルを作成することができない、という課題を有する。ここで、単語のコンテキストとは、その単語の周辺に存在する単語や単語列のことを意味する。【００１５】
以下では、前述の課題が生ずる理由について、具体的に説明する。なお、ここでは、単語のコンテキストはその単語に先行する２単語のことであるとして説明する。【００１６】
まず、コンテキストの多様性が高い単語について考える。例として、桜の開花に関するニュースを解析中に、キャッシュ内に「…，気象庁(t17)，が(t16)，開花(t3)，の(t7)，予想(t18)，を(t19)，…」という単語列が現れた場合において、「開花(t3)」に対する適切なキャッシュ確率ＰC（ｗi＝開花(t3)｜ｗi-2，ｗi-1）の与え方を考える。なお、単語の後に付されている「(tn)」は、それぞれの単語を識別するための符号であり、ｎ番目のタームという意味である。以下では、同一の単語には同一の符号を付してある。【００１７】
このとき、このニュースでは、「気象庁(t17)、が(t16)」というキャッシュ内と同じ特定のコンテキストにおいてのみ「開花(t3)」が出現しやすい訳ではなく、「ソメイヨシノ(t6)、の(t7)」、「こちら(t1)、でも(t2)」、「です(t5)、けれども(t31)」、「都心(t41)、の(t7)」などの多様なコンテキストにおいて「開花(t3)」が出現しやすい、と考えられる。したがって、「開花(t3)」に対するキャッシュ確率ＰC（ｗi＝開花(t3)｜ｗi-2，ｗi-1）は、コンテキストｗi-2ｗi-1によらずに高い確率を与えるべきである。すなわち、「開花(t3)」のように、コンテキストの多様性が高い単語がキャッシュ内に現れた場合には、キャッシュ確率ＰCはコンテキストによらずに高い確率を与えるべきである。上記の技術において、コンテキストによらずにキャッシュ確率を高めるためには、前述した式（２）においてλ1を大きくし、λ3を小さくする必要がある。【００１８】
一方、コンテキストの多様性が低い単語について考える。例として、ニュースを解析中に、キャッシュ内に「…，に(t22)，より(t60)，ます(t61)，と(t10)，…」という単語列が現れた場合の、「と(t10)」に対する適切なキャッシュ確率ＰC（ｗi＝と(t10)｜ｗi-2，ｗi-1）の与え方を考える。このとき、このニュースでは、「…によりますと…」という複数の単語を組み合わせた表現が出現しやすいものと考えられる。すなわち、このニュースでは、「と(t10)」という単語は「より(t60)、ます(t61)」というキャッシュ内と同じ特定のコンテキストでは出現しやすいが、それ以外のコンテキストにおいては特に出現しやすいわけではない、と考えられる。したがって、「と(t10)」に対するキャッシュ確率ＰC（ｗi＝と(t10)｜ｗi-2，ｗi-1）は、キャッシュ内と同じ特定のコンテキスト「より(t60)、ます(t61)」に限定して高い確率を与えるべきである。すなわち、「と(t10)」のように、コンテキストの多様性が低い単語がキャッシュ内に現れた場合には、キャッシュ確率ＰCはキャッシュ内と同じ特定のコンテキストに限定して高い確率を与えるべきである。上記の技術において、キャッシュ内と同じ特定のコンテキストに限定してキャッシュ確率を高めるためには、前述の式（２）においてλ1を小さくし、λ3を大きくする必要がある。【００１９】
このように、上記の技術においては、ここで例示した「開花(t3)」と「と(t10)」のようなコンテキストの多様性が異なる単語に対して適切なパラメータが異なる。しかし、上記の技術では、ｗiがどのような単語であってもλ1，λ2，λ3は一定値である必要があるため、コンテキストの多様性が異なる単語に対して、適切な生成確率を与える言語モデルを作成することができない。【００２０】
本発明はこのような課題を解決するためのものであり、コンテキストの多様性が異なる単語に対して、適切な生成確率を与える言語モデルを作成することが可能な言語モデル作成装置、言語モデル作成方法、音声認識装置、音声認識方法、およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【００２１】
このような目的を達成するために、本発明にかかる言語モデル作成装置は、記憶部に保存されている入力テキストデータを読み出して、Ｎ−ｇｒａｍ言語モデルを作成する演算処理部を備え、演算処理部は、入力テキストデータに含まれるそれぞれの単語または単語連鎖ごとに、当該入力テキストデータ内での出現頻度を計数する頻度計数部と、単語または単語連鎖ごとに、当該単語または単語連鎖に先行し得る単語の多様性を示す多様性指標を計算するコンテキスト多様性計算部と、単語または単語連鎖の多様性指標に基づいて、これら単語または単語連鎖の出現頻度をそれぞれ補正して補正出現頻度を算出する頻度補正部と、単語または単語連鎖の補正出現頻度に基づいてＮ−ｇｒａｍ言語モデルを作成するＮ−ｇｒａｍ言語モデル作成部とを含む。【００２２】
また、本発明にかかる言語モデル作成方法は、記憶部に保存されている入力テキストデータを読み出して、Ｎ−ｇｒａｍ言語モデルを作成する演算処理部が、入力テキストデータに含まれるそれぞれの単語または単語連鎖ごとに、当該入力テキストデータ内での出現頻度を計数する頻度計数ステップと、単語または単語連鎖ごとに、当該単語または単語連鎖に先行し得る単語の多様性を示す多様性指標を計算するコンテキスト多様性計算ステップと、単語または単語連鎖の多様性指標に基づいて、これら単語または単語連鎖の出現頻度をそれぞれ補正して補正出現頻度を算出する頻度補正ステップと、単語または単語連鎖の補正出現頻度に基づいてＮ−ｇｒａｍ言語モデルを作成するＮ−ｇｒａｍ言語モデル作成ステップとを実行する。【００２３】
また、本発明にかかる音声認識装置は、記憶部に保存されている入力音声データを音声認識処理する演算処理部を備え、演算処理部は、記憶部に保存されているベース言語モデルに基づいて入力音声データを音声認識処理し、当該入力音声の内容を示すテキストデータからなる認識結果データを出力する認識部と、前述した言語モデル作成方法に基づいて認識結果データからＮ−ｇｒａｍ言語モデルを作成する言語モデル作成部と、Ｎ−ｇｒａｍ言語モデルに基づいてベース言語モデルを音声データに適応化した適応化言語モデルを作成する言語モデル適応化部と、適応化言語モデルに基づいて入力音声データを再度音声認識処理する再認識部とを含む。【００２４】
また、本発明にかかる音声認識方法は、記憶部に保存されている入力音声データを音声認識処理する演算処理部が、記憶部に保存されているベース言語モデルに基づいて入力音声データを音声認識処理し、テキストデータからなる認識結果データを出力する認識ステップと、前述した言語モデル作成方法に基づいて認識結果データからＮ−ｇｒａｍ言語モデルを作成する言語モデル作成ステップと、Ｎ−ｇｒａｍ言語モデルに基づいてベース言語モデルを音声データに適応化した適応化言語モデルを作成する言語モデル適応化ステップと、適応化言語モデルに基づいて入力音声データを再度音声認識処理する再認識ステップとを実行する。
【発明の効果】
【００２５】
本発明によれば、コンテキストの多様性が異なる単語に対して、適切な生成確率を与える言語モデルを作成することが可能となる。
【図面の簡単な説明】
【００２６】
【図１】図１は、本発明の第１の実施形態にかかる言語モデル作成装置の基本構成を示すブロック図である。
【図２】図２は、本発明の第１の実施形態にかかる言語モデル作成装置の構成例を示すブロック図である。
【図３】図３は、本発明の第１の実施形態にかかる言語モデル作成装置の言語モデル作成処理を示すフローチャートである。
【図４】図４は、入力テキストデータ例である。
【図５】図５は、単語の出現頻度を示す説明図である。
【図６】図６は、２単語連鎖の出現頻度を示す説明図である。
【図７】図７は、３単語連鎖の出現頻度を示す説明図である。
【図８】図８は、単語「開花(t3)」のコンテキストに関する多様性指標を示す説明図である。
【図９】図９は、単語「と(t10)」のコンテキストに関する多様性指標を示す説明図である。
【図１０】図１０は、２単語連鎖「の(t7)、開花(t3)」のコンテキストに関する多様性指標を示す説明図である。
【図１１】図１１は、本発明の第２の実施形態にかかる音声認識装置の基本構成を示すブロック図である。
【図１２】図１２は、本発明の第２の実施形態にかかる音声認識装置の構成例を示すブロック図である。
【図１３】図１３は、本発明の第２の実施形態にかかる音声認識装置の音声認識処理を示すフローチャートである。
【図１４】図１４は、音声認識処理を示す説明図である。
【発明を実施するための最良の形態】
【００２７】
次に、本発明の実施形態について図面を参照して説明する。
［第１の実施形態］
まず、図１を参照して、本発明の第１の実施形態にかかる言語モデル作成装置について説明する。図１は、本発明の第１の実施形態にかかる言語モデル作成装置の基本構成を示すブロック図である。【００２８】
図１の言語モデル作成装置１０は、入力されたテキストデータからＮ−ｇｒａｍ言語モデルを作成する機能を有している。Ｎ−ｇｒａｍ言語モデルとは、ある時点での単語の生成確率は直前のＮ−１（Ｎは２以上の整数）個の単語のみに依存すると仮定し、単語の生成確率を求めるモデルである。すなわち、Ｎ−ｇｒａｍ言語モデルにおいて、ｉ番目の単語ｗｉの生成確率は、Ｐ（ｗi｜ｗi-N+1i-1）で与えられる。ここで、条件部のｗi-N+1i-1は（ｉ−Ｎ＋１）〜（ｉ−１）番目の単語列を表す。
この言語モデル作成装置１０には、主な処理部として、頻度計数部１５Ａ、コンテキスト多様性計算部１５Ｂ、頻度補正部１５Ｃ、およびＮ−ｇｒａｍ言語モデル作成部１５Ｄが設けられている。【００２９】
頻度計数部１５Ａは、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖ごとに、入力テキストデータ１４Ａ内での出現頻度１４Ｂを計数する機能を有している。
コンテキスト多様性計算部１５Ｂは、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖ごとに、当該単語または単語連鎖のコンテキストの多様性を示す多様性指標１４Ｃを計算する機能を有している。【００３０】
頻度補正部１５Ｃは、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖の多様性指標１４Ｃに基づいて、当該単語または単語連鎖の出現頻度１４Ｂを補正し、補正出現頻度１４Ｄを算出する機能を有している。
Ｎ−ｇｒａｍ言語モデル作成部１５Ｄは、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖の補正出現頻度１４Ｄに基づいてＮ−ｇｒａｍ言語モデル１４Ｅを作成する機能を有している。【００３１】
図２は、本発明の第１の実施形態にかかる言語モデル作成装置の構成例を示すブロック図である。
図２の言語モデル作成装置１０は、ワークステーション、サーバ装置、パーソナルコンピュータなどの情報処理装置からなり、入力されたテキストデータから、単語の生成確率を与える言語モデルとして、Ｎ−ｇｒａｍ言語モデルを作成する装置である。【００３２】
この言語モデル作成装置１０には、主な機能部として、入出力インターフェース部（以下、入出力Ｉ／Ｆ部という）１１、操作入力部１２、画面表示部１３、記憶部１４、および演算処理部１５が設けられている。【００３３】
入出力Ｉ／Ｆ部１１は、データ通信回路やデータ入出力回路などの専用回路からなり、外部装置や記録媒体とデータ通信を行うことにより、入力テキストデータ１４Ａ、Ｎ−ｇｒａｍ言語モデル１４Ｅ、さらにはプログラム１４Ｐなどの各種データをやり取りする機能を有している。
操作入力部１２は、キーボードやマウスなどの操作入力装置からなり、オペレータの操作を検出して演算処理部１５へ出力する機能を有している。
画面表示部１３は、ＬＣＤやＰＤＰなどの画面表示装置からなり、演算処理部１５からの指示に応じて、操作メニューや各種データを画面表示する機能を有している。【００３４】
記憶部１４は、ハードディスクやメモリなどの記憶装置からなり、演算処理部１５で行われる言語モデル作成処理などの各種演算処理に用いる処理情報やプログラム１４Ｐを記憶する機能を有している。
プロクラム１４Ｐは、入出力Ｉ／Ｆ部１１を介して予め記憶部１４に保存され、演算処理部１５に読み出されて実行されることにより、演算処理部１５での各種処理機能を実現するプログラムである。【００３５】
記憶部１４で記憶される主な処理情報として、入力テキストデータ１４Ａ、出現頻度１４Ｂ、多様性指標１４Ｃ、補正出現頻度１４Ｄ、およびＮ−ｇｒａｍ言語モデル１４Ｅかある。
入力テキストデータ１４Ａは、会話や文書などの自然言語テキストデータからなり、予め単語ごとに区分されたデータである。
出現頻度１４Ｂは、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖に関する、入力テキストデータ１４Ａ内での出現頻度を示すデータである。【００３６】
多様性指標１４Ｃは、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖に関する、当該単語または単語連鎖のコンテキストの多様性を示すデータである。
補正出現頻度１４Ｄは、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖の多様性指標１４Ｃに基づいて、当該単語または単語連鎖の出現頻度１４Ｂを補正したデータである。
Ｎ−ｇｒａｍ言語モデル１４Ｅは、補正出現頻度１４Ｄに基づいて作成された、単語の生成確率を与えるデータである。【００３７】
演算処理部１５は、ＣＰＵなどのマルチプロセッサとその周辺回路を有し、記憶部１４からプログラム１４Ｐを読み込んで実行することにより、上記ハードウェアとプログラム１４Ｐとを協働させて各種処理部を実現する機能を有している。
演算処理部１５で実現される主な処理部としては、前述した頻度計数部１５Ａ、コンテキスト多様性計算部１５Ｂ、頻度補正部１５Ｃ、およびＮ−ｇｒａｍ言語モデル作成部１５Ｄがある。これら処理部の詳細についての説明は省略する。【００３８】
［第１の実施形態の動作］
次に、図３を参照して、本発明の第１の実施形態にかかる言語モデル作成装置１０の動作について説明する。図３は、本発明の第１の実施形態にかかる言語モデル作成装置の言語モデル作成処理を示すフローチャートである。
言語モデル作成装置１０の演算処理部１５は、オペレータによる言語モデル作成処理の開始操作が操作入力部１２により検出された場合、図３の言語モデル作成処理の実行を開始する。【００３９】
まず、頻度計数部１５Ａは、記憶部１４の入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖について、入力テキストデータ１４Ａ内における出現頻度１４Ｂを計数し、それぞれの単語または単語連鎖と関連付けて記憶部１４へ保存する（ステップ１００）。
図４は、入力テキストデータ例である。ここでは、桜の開花に関するニュース音声を音声認識して得られたテキストデータが示されており、それぞれ単語に区分されている。【００４０】
単語連鎖とは連続した単語の並びのことである。図５は、単語の出現頻度を示す説明図である。図６は、２単語連鎖の出現頻度を示す説明図である。図７は、３単語連鎖の出現頻度を示す説明図である。例えば、図５により、図４の入力テキストデータ１４Ａには「開花(t3)」という単語が３回現れること、「宣言(t4)」という単語が１回現れること、などが分かる。また、図６により、図４の入力テキストデータ１４Ａには「開花(t3)、宣言(t4)」という２単語の連鎖が１回現れることなどが分かる。なお、単語の後に付されている「(tn)」は、それぞれの単語を識別するための符号であり、ｎ番目のタームという意味である。同一の単語には同一の符号を付してある。【００４１】
頻度計数部１５Ａにおいて、何単語連鎖までを計数すべきかについては、後述するＮ−ｇｒａｍ言語モデル作成部１５Ｄで作成したいＮ−ｇｒａｍ言語モデルのＮの値に依存する。頻度計数部１５Ａでは、少なくともＮ単語連鎖までを計数する必要がある。その理由は、Ｎ−ｇｒａｍ言語モデル作成部１５Ｄでは、Ｎ単語連鎖の出現頻度を元に、Ｎ−ｇｒａｍの確率を計算するためである。例えば、作成したいＮ−ｇｒａｍがトライグラム（Ｎ＝３）であれば、頻度計数部１５Ａでは、図５〜図７に示したように、少なくとも、単語の出現頻度、２単語連鎖の出現頻度、３単語連鎖の出現頻度をそれぞれ計数する必要がある。【００４２】
次に、コンテキスト多様性計算部１５Ｂは、出現頻度１４Ｂが計数されたそれぞれの単語または単語連鎖に対して、コンテキストの多様性を示す多様性指標を計算し、それぞれの単語または単語連鎖と関連付けて記憶部１４へ保存する（ステップ１０１）。【００４３】
本発明において、単語または単語連鎖のコンテキストとは、その単語または単語連鎖に先行し得る単語のことを指すものと定義する。例えば、図５中の「宣言(t4)」という単語のコンテキストとしては、「宣言(t4)」に先行し得る単語である「開花(t3)」「安全(t50)」「共同(t51)」などの単語が挙げられる。また、図６中の「の、開花(t3)」という２単語連鎖のコンテキストとしては、「の(t7)、開花(t3)」に先行し得る単語である「桜(t40)」「梅(t42)」「東京(t43)」などの単語が挙げられる。また、本発明では、単語または単語連鎖のコンテキストの多様性とは、その単語または単語連鎖に先行し得る単語の種類がどれだけ多いか、あるいは、先行し得る単語の出現確率がどれだけばらついているか、を表すものとする。【００４４】
ある単語または単語連鎖が与えられたときに、その単語または単語連鎖のコンテキストの多様性を求める方法として、コンテキストの多様性を計算するための多様性計算用テキストデータを用意する方法がある。すなわち、記憶部１４に多様性計算用テキストデータを予め保存しておき、この多様性計算用テキストデータから上記単語や単語連鎖が出現する事例を検索し、この検索結果に基づいて先行する単語の多様性を調べればよい。【００４５】
図８は、単語「開花(t3)」のコンテキストに関する多様性指標を示す説明図である。例えば、「開花(t3)」という単語のコンテキストの多様性を求める場合、コンテキスト多様性計算部１５Ｂは、記憶部１４に保存されている多様性計算用テキストデータ内から「開花(t3)」が出現する事例を収集し、それぞれの事例を先行する単語と共に列挙する。図８を参照すると、当該多様性計算用テキストデータでは、「開花(t3)」に先行する単語として、「の(t7)」が８回、「でも(t30)」が４回、「が(t16)」が５回、「けれども(t31)」が２回、「ところが(t32)」が１回出現したことが分かる。【００４６】
このとき、多様性計算用テキストデータにおける先行単語の異なり単語数を、コンテキストの多様性とすることができる。すなわち、図８に示した例では、「開花(t3)」に先行する単語として「の(t7)」「でも(t30)」「が(t16)」「けれども(t31)」「ところが(t32)」の５種類の単語があるため、「開花(t3)」のコンテキストの多様性指標１４Ｃはその種類数に応じて５となる。このようにすることで、先行し得る単語が多様であるほど、多様性指標１４Ｃの値は大きくなる。【００４７】
また、多様性計算用テキストデータにおける先行単語の出現確率のエントロピーを、コンテキストの多様性指標１４Ｃとすることもできる。単語または単語連鎖Ｗiに先行する各単語ｗの出現確率をそれぞれｐ（ｗ）とした場合、単語または単語連鎖ＷiのエントロピーＨ（Ｗi）は、次の式（４）で表される。【００４８】
【数４】
0005459214.tif 000005
【００４９】
図８に示した例では、「開花(t3)」に先行する各単語の出現確率は「の(t7)」が０．４、「でも(t30)」が０．２、「が(t16)」が０．２５、「けれども(t31)」が０．１、「ところが(t32)」が０．０５である。したがって、この場合の「開花(t3)」のコンテキストの多様性指標１４Ｃは、各先行単語の出現確率のエントロピーを計算すると、Ｈ（Ｗi）＝−０．４×ｌｏｇ０．４−０．２×ｌｏｇ０．２−０．２５×ｌｏｇ０．２５−０．１×ｌｏｇ０．１−０．０５×ｌｏｇ０．０５＝２．０４、となる。このようにすることで、先行し得る単語が多様であり、さらにばらつきが大きいほど、多様性指標１４Ｃの値は大きくなる。【００５０】
一方、図９は、単語「と(t10)」のコンテキストに関する多様性指標を示す説明図である。ここでは、「と(t10)」という単語に対して同様に、多様性計算用テキストデータに出現する事例を収集し、それぞれの事例を先行単語と共に列挙している。この図９によれば、「と(t10)」のコンテキストの多様性指標１４Ｃは、先行単語の異なり単語数で求めた場合は３、先行単語の出現確率のエントロピーで求めた場合は０．８８となる。このように、コンテキストの多様性が低い単語は、コンテキストの多様性が高い単語と比べて、先行単語の異なり単語数も出現確率のエントロピーも小さな値となる。【００５１】
また、図１０は、２単語連鎖「の(t7)、開花(t3)」のコンテキストに関する多様性指標を示す説明図である。ここでは、多様性計算用テキストデータの中から「の(t7)、開花(t3)」という２単語連鎖が出現する事例を収集し、それぞれの事例を先行単語と共に列挙している。この図１０によれば、「の(t7)、開花(t3)」のコンテキストの多様性は、先行単語の異なり単語数で求めた場合は７、先行単語の出現確率のエントロピーで求めた場合は２．７２、となる。このように、コンテキストの多様性は、単語のみならず単語連鎖に対しても求めることができる。【００５２】
用意する多様性計算用テキストデータとしては、大規模なテキストデータが望ましい。多様性計算用テキストデータ大規模であるほど、コンテキストの多様性を求めたい単語や単語連鎖が出現する数が多くなることが期待でき、それだけ求まる値の信頼性が高まるからである。そのような大規模なテキストデータとしては、例えば、大量の新聞記事テキストなどが考えられる。あるいは、本実施例においては、例えば、後述する音声認識装置２０で用いるベース言語モデル２４Ｂを作成するときに用いたテキストデータを多様性計算用テキストデータとしてもよい。【００５３】
あるいは、多様性計算用テキストデータとして、入力テキストデータ１４Ａ、すなわち言語モデルの学習用テキストデータを用いてもよい。このようにすることで、学習用テキストデータにおける、単語や単語連鎖のコンテキストの多様性の特徴を捉えることができる。【００５４】
一方、コンテキスト多様性計算部１５Ｂは、多様性計算用テキストデータを用意することなく、与えられた単語や単語連鎖の品詞情報をもとに、その単語や単語連鎖のコンテキストの多様性を推定することもできる。
具体的には、与えられた単語や単語連鎖の品詞の種別ごとに、コンテキストの多様性指標を予め定めた対応関係をテーブルとして用意して、記憶部１４に保存しておけばよい。例えば、名詞はコンテキストの多様性指標を大きく、終助詞はコンテキストの多様性指標を小さくするような対応テーブルが考えられる。このとき、各品詞にどのような多様性指標を割り当てるかは、事前の評価実験により、実際に様々な値を割り当てて実験的に最適な数値を定めればよい。【００５５】
したがって、コンテキスト多様性計算部１５Ｂは、記憶部１４に保存されている、各品詞の種別とその多様性指標との対応関係のうちから、当該単語または単語連鎖を構成する単語の品詞の種別と対応する多様性指標を、当該単語または単語連鎖に関する多様性指標として取得すればよい。
ただし、全ての品詞に対して異なる最適な多様性指標を割り当てることは難しいため、品詞が自立語であるか否か、あるいは、品詞が名詞であるか否か、によってのみ異なる多様性指標を割り当てた対応テーブルを用意するようにしてもよい。【００５６】
単語や単語連鎖の品詞情報をもとに、その単語や単語連鎖のコンテキストの多様性を推定することで、コンテキスト多様性計算用の大規模なテキストデータを用意することなく、コンテキストの多様性を求めることが可能となる。【００５７】
次に、頻度補正部１５Ｃは、出現頻度１４Ｂを求めたそれぞれの単語または単語連鎖について、コンテキスト多様性計算部１５Ｂにより求められた当該コンテキストの多様性指標１４Ｃに応じて、記憶部１４が記憶するそれぞれの単語または単語連鎖の出現頻度１４Ｂを補正し、得られた補正出現頻度１４Ｄを記憶部１４に保存する（ステップ１０２）。【００５８】
このとき、コンテキスト多様性計算部１５Ｂにより求められたコンテキストの多様性指標１４Ｃの値が大きいほど、その単語または単語連鎖の出現頻度が大きくなるように補正する。具体的には、ある単語または単語連鎖Ｗの出現頻度１４ＢをＣ（Ｗ）、多様性指標１４ＣをＶ（Ｗ）とした場合、補正出現頻度１４Ｄを示すＣ‘（Ｗ）は、例えば次の式（５）により求められる。【００５９】
【数５】
0005459214.tif 000006
【００６０】
前述した例においては、図８の結果から「開花(t3)」のコンテキストの多様性指標１４Ｃをエントロピーで求めた場合、Ｖ（開花）＝２．０４、図５の結果から「開花(t3)」の出現頻度１４ＢはＣ（開花(t3)）＝３であるため、補正出現頻度１４ＤであるＣ’（開花(t3)）＝３×２．０４＝６．１２となる。
このように、コンテキスト多様性計算部１５Ｂでは、コンテキストの多様性が高い単語または単語連鎖ほど、その出現頻度が大きくなるように補正される。なお、補正の式は前述した式（５）に限るものではなく、Ｖ（Ｗ）が大きいほど出現頻度が大きくなるように補正する式であれば様々な式が考えられることはもちろんである。【００６１】
頻度補正部１５Ｃは、出現頻度１４Ｂを求めた全ての単語または単語連鎖の補正が完了していなければ（ステップ１０３：ＮＯ）、ステップ１０２へ戻って、未補正の単語または単語連鎖の出現頻度１４Ｂの補正を行う。【００６２】
なお、図３の言語モデル作成処理手順では、コンテキスト多様性計算部１５Ｂによって、出現頻度１４Ｂを求めた全ての単語または単語連鎖に対してコンテキストの多様性指標１４Ｃを求めてから（ステップ１０１）、頻度補正部１５Ｃによって、それぞれの単語または単語連鎖に対して出現頻度の補正を行う場合が、一例として示されている（ステップ１０２，１０３のループ処理）。しかし、出現頻度１４Ｂを求めたそれぞれの単語または単語連鎖に対して、コンテキストの多様性指標１４Ｃの計算と出現頻度１４Ｂの補正を同時に行ってもよいことはもちろんである。すなわち、図３のステップ１０１，１０２，１０３でループ処理を行ってもよい。【００６３】
一方、出現頻度１４Ｂを求めた全ての単語または単語連鎖の補正が完了した場合（ステップ１０３：ＹＥＳ）、Ｎ−ｇｒａｍ言語モデル作成部１５Ｄは、これら単語または単語連鎖の補正出現頻度１４Ｄを用いてＮ−ｇｒａｍ言語モデル１４Ｅを作成し、記憶部１４に保存する（ステップ１０４）。ここで、Ｎ−ｇｒａｍ言語モデル１４Ｅは、直前のＮ−１個の単語にのみ依存して単語の生成確率を与える言語モデルである。
具体的には、Ｎ−ｇｒａｍ言語モデル作成部１５Ｄは、まず、記憶部１４が記憶するＮ単語連鎖の補正出現頻度１４Ｄを用いて、Ｎ−ｇｒａｍ確率を求める。次に、求められた各Ｎ−ｇｒａｍ確率を線形補間などにより組み合わせることで、Ｎ−ｇｒａｍ言語モデル１４Ｅを作成する。【００６４】
補正出現頻度１４ＤにおけるＮ単語連鎖の出現頻度をＣＮ（ｗi-N+1，…，ｗi-1，ｗi）とした場合、単語ｗｉの生成確率を表すＮ−ｇｒａｍ確率ＰN-gram（ｗi｜ｗi-N+1，…，ｗi-1）は、次の式（６）により求められる。【００６５】
【数６】
0005459214.tif 000007
【００６６】
なお、単語ｗiの出現頻度Ｃ（ｗi）からは、ユニグラム確率Ｐｕｎｉｇｒａｍ（ｗｉ）が、次の式（７）により求まる。【００６７】
【数７】
0005459214.tif 000008
【００６８】
このようにして求められたＮ−ｇｒａｍ確率を組み合わせることで、Ｎ−ｇｒａｍ言語モデル１４Ｅを作成する。具体的には、例えば、それぞれのＮ−ｇｒａｍ確率に重みをつけて線形補間すればよい。次の式（８）は、ユニグラム確率、バイグラム確率およびトライグラム確率を線形補間完することで、トライグラム言語モデル（Ｎ＝３）を作成する場合を示している。【００６９】
【数８】
0005459214.tif 000009
【００７０】
ただし、λ1，λ2，λ3はλ1＋λ2＋λ3＝１を満たす０〜１の定数で、事前の評価実験により、実際に様々な値を割り当てて実験的に最適な定数を定めればよい。【００７１】
なお、前述したとおり、頻度計数部１５Ａにおいて長さＮの単語連鎖まで計数している場合に、Ｎ−ｇｒａｍ言語モデル作成部１５Ｄは、Ｎ−ｇｒａｍ言語モデル１４Ｅを作成できる。すなわち、頻度計数部１５Ａにて、単語の出現頻度、２単語連鎖の出現頻度、３単語連鎖の出現頻度１４Ｂまでを計数していた場合、トライグラム言語モデル（Ｎ＝３）を作成することができる。なお、トライグラム言語モデル作成には、単語の出現頻度、２単語連鎖の出現頻度の計数は必須ではないが、計数することが望ましい。【００７２】
［第１の実施形態の効果］
このように、本実施形態では、頻度計数部１５Ａで、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖ごとに、入力テキストデータ１４Ａ内での出現頻度１４Ｂを計数し、コンテキスト多様性計算部１５Ｂで、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖ごとに、当該単語または単語連鎖のコンテキストの多様性を示す多様性指標１４Ｃを計算し、頻度補正部１５Ｃで、入力テキストデータ１４Ａに含まれるそれぞれの単語または単語連鎖の多様性指標１４Ｃに基づいて、当該単語または単語連鎖の出現頻度１４Ｂを補正し、それぞれの単語または単語連鎖ごとに得られた補正出現頻度１４Ｄに基づいて、Ｎ−ｇｒａｍ言語モデル作成部１５ＤでＮ−ｇｒａｍ言語モデル１４Ｅを作成している。【００７３】
したがって、このようにして作成されたＮ−ｇｒａｍ言語モデル１４Ｅは、コンテキストの多様性が異なる単語に対しても、適切な生成確率を与える言語モデルとなる。その理由を以下で説明する。【００７４】
まず、「開花(t3)」のようにコンテキストの多様性が高い単語については、頻度補正部１５Ｃによってその出現頻度が大きくなるように補正される。前述した図８の例によれば、多様性指標１４Ｃとして先行単語の出現確率のエントロピーを用いた場合、「開花(t3)」の出現頻度Ｃ（開花(t3)）は、２．０４倍に補正される。一方で、「と(t10)」のようにコンテキストの多様性が低い単語については、コンテキストの多様性が高い単語に比べて、頻度補正部１５Ｃによってその出現頻度が小さくなるように補正される。前述した図９の例によれば、多様性指標１４Ｃとして先行単語の出現確率のエントロピーを用いた場合、「と(t10)」の出現頻度Ｃ（と(t10)）は、０．８８倍に補正される。【００７５】
したがって、「開花(t3)」のようなコンテキストの多様性が高い単語、言い換えれば、多様なコンテキストにおいて出現し得る単語は、Ｎ−ｇｒａｍ言語モデル作成部１５Ｄが、前述した式（７）によって各単語のユニグラム確率を計算するときに、大きなユニグラム確率となる。これは、前述した式（８）によって求められる言語モデルにおいて、「開花(t3)」という単語がコンテキストによらずに出現しやすい、という望ましい性質を持つことを意味する。【００７６】
一方、「と(t10)」のようなコンテキストの多様性が低い、言い換えれば、特定のコンテキストに限定して出現する単語は、Ｎ−ｇｒａｍ言語モデル作成部１５Ｄが、前述した式（７）によって各単語のユニグラム確率を計算するときに、小さなユニグラム確率となる。これは、前述した式（８）によって求められる言語モデルにおいて、「と(t10)」という単語がコンテキストと無関係には出現しない、という望ましい性質を持つことを意味する。
このように、本実施形態によれば、コンテキストの多様性が異なる単語に対しても、適切な生成確率を与える言語モデルを作成することが可能となる。【００７７】
［第２の実施形態］
次に、図１１を参照して、本発明の第２の実施形態にかかる音声認識装置について説明する。図１１は、本発明の第２の実施形態にかかる音声認識装置の基本構成を示すブロック図である。【００７８】
図１１の音声認識装置２０は、入力された音声データを音声認識処理し、認識結果としてその音声内容を示すテキストデータを出力する機能を有している。この音声認識装置２０の特徴は、ベース言語モデル２４Ｂに基づき入力音声データ２４Ａを認識した認識結果データ２４Ｃを元にして、第１の実施形態で説明した言語モデル作成装置１０の特徴構成からなる言語モデル作成部２５ＢでＮ−ｇｒａｍ言語モデル２４Ｄを作成し、このＮ−ｇｒａｍ言語モデル２４Ｄに基づきベース言語モデル２４Ｂを適応化して得られた適応化言語モデル２４Ｅを用いて、再度、入力音声データ２４Ａを音声認識処理する点にある。【００７９】
この音声認識装置２０には、主な処理部として、認識部２５Ａ、言語モデル作成部２５Ｂ、言語モデル適応化部２５Ｃ、および再認識部２５Ｄが設けられている。【００８０】
認識部２５Ａは、ベース言語モデル２４Ｂに基づいて入力音声データ２４Ａを音声認識処理し、その認識結果を示すテキストデータとして認識結果データ２４Ｃを出力する機能を有している。
言語モデル作成部２５Ｂは、第１の実施形態で説明した言語モデル作成装置１０の特徴構成を有し、認識結果データ２４Ｃからなる入力テキストデータに基づきＮ−ｇｒａｍ言語モデル２４Ｄを作成する機能を有している。【００８１】
言語モデル適応化部２５Ｃは、Ｎ−ｇｒａｍ言語モデル２４Ｄに基づいて、ベース言語モデル２４Ｂを適応化することにより、適応化言語モデル２４Ｅを作成する機能を有している。
再認識部２５Ｄは、適応化言語モデル２４Ｅに基づいて音声データ２４Ａを音声認識処理し、その認識結果を示すテキストデータとして再認識結果データ２４Ｆを出力する機能を有している。【００８２】
図１２は、本発明の第２の実施形態にかかる音声認識装置の構成例を示すブロック図である。
図１２の音声認識装置２０は、ワークステーション、サーバ装置、パーソナルコンピュータなどの情報処理装置からなり、入力された音声データを音声認識処理することにより、認識結果としてその音声内容を示すテキストデータを出力する装置である。【００８３】
この音声認識装置２０には、主な機能部として、入出力インターフェース部（以下、入出力Ｉ／Ｆ部という）２１、操作入力部２２、画面表示部２３、記憶部２４、および演算処理部２５が設けられている。【００８４】
入出力Ｉ／Ｆ部２１は、データ通信回路やデータ入出力回路などの専用回路からなり、外部装置や記録媒体とデータ通信を行うことにより、入力音声データ２４Ａ、再認識結果データ２４Ｆ、さらにはプログラム２４Ｐなどの各種データをやり取りする機能を有している。
操作入力部２２は、キーボードやマウスなどの操作入力装置からなり、オペレータの操作を検出して演算処理部２５へ出力する機能を有している。
画面表示部２３は、ＬＣＤやＰＤＰなどの画面表示装置からなり、演算処理部２５からの指示に応じて、操作メニューや各種データを画面表示する機能を有している。【００８５】
記憶部２４は、ハードディスクやメモリなどの記憶装置からなり、演算処理部２５で行われる言語モデル作成処理などの各種演算処理に用いる処理情報やプログラム２４Ｐを記憶する機能を有している。
プロクラム２４Ｐは、入出力Ｉ／Ｆ部２１を介して予め記憶部２４に保存され、演算処理部２５に読み出されて実行されることにより、演算処理部２５での各種処理機能を実現するプログラムである。【００８６】
記憶部２４で記憶される主な処理情報として、入力音声データ２４Ａ、ベース言語モデル２４Ｂ、認識結果データ２４Ｃ、Ｎ−ｇｒａｍ言語モデル２４Ｄ、適応化言語モデル２４Ｅ、および再認識結果データ２４Ｆがある。【００８７】
入力音声データ２４Ａは、会議音声、講演音声、放送音声など、自然言語からなる音声信号が符号化されて得られたデータである。入力音声データ２４Ａについては、予め用意されたアーカイブデータでも良いし、マイクなどからオンラインで入力されるデータでも良い。
ベース言語モデル２４Ｂは、大量のテキストデータを用いて予め学習した汎用のＮ−ｇｒａｍ言語モデルなどからなり、単語の生成確率を与える言語モデルである。【００８８】
認識結果データ２４Ｃは、ベース言語モデル２４Ｂに基づいて入力音声データ２４Ａを音声認識処理して得られた自然言語テキストデータからなり、予め単語ごとに区分されたデータである。
Ｎ−ｇｒａｍ言語モデル２４Ｄは、認識結果データ２４Ｃから作成した、単語の生成確率を与えるＮ−ｇｒａｍ言語モデルである。
適応化言語モデル２４Ｅは、Ｎ−ｇｒａｍ言語モデル２４Ｄに基づいて、ベース言語モデル２４Ｂを適応化して得られた言語モデルである。
再認識結果データ２４Ｆは、適応化言語モデル２４Ｅに基づいて入力音声データ２４Ａを音声認識処理して得られたテキストデータである。【００８９】
演算処理部２５は、ＣＰＵなどのマルチプロセッサとその周辺回路を有し、記憶部２４からプログラム２４Ｐを読み込んで実行することにより、上記ハードウェアとプログラム２４Ｐとを協働させて各種処理部を実現する機能を有している。
演算処理部２５で実現される主な処理部としては、前述した認識部２５Ａ、言語モデル作成部２５Ｂ、言語モデル適応化部２５Ｃ、および再認識部２５Ｄがある。これら処理部の詳細についての説明は省略する。【００９０】
［第２の実施形態の動作］
次に、図１３を参照して、本発明の第２の実施形態にかかる音声認識装置２０の動作について説明する。図１３は、本発明の第２の実施形態にかかる音声認識装置２０の音声認識処理を示すフローチャートである。
音声認識装置２０の演算処理部２５は、オペレータによる音声認識処理の開始操作が操作入力部２２により検出された場合、図１３の音声認識処理の実行を開始する。【００９１】
まず、認識部２５Ａは、記憶部２４に予め保存されている音声データ２４Ａを読み込み、公知の大語彙連続音声認識処理を適用することで、音声データ２４Ａをテキストデータに変換し、認識結果データ２４Ｃとして記憶部２４へ保存する（ステップ２００）。この際、音声認識処理のための言語モデルとしては、記憶部２４に予め保存されているベース言語モデル２４Ｂを用いる。また、音響モデルとしては、例えば、音素を単位とした公知のＨＭＭ（Hidden Markov Model：隠れマルコフモデル）による音響モデルなどを用いればよい。【００９２】
図１４は、音声認識処理を示す説明図である。一般に、大語彙連続音声認識処理の結果は単語列として得られるため、認識結果テキストは単語を単位として区分されている。なお、図１４に示したのは、桜の開花に関するニュース音声からなる入力音声データ２４Ａに対する認識処理であり、得られた認識結果データ２４Ｃのうち、４行目の「会館(t52)」は「開花(t4)」の認識誤りである。【００９３】
続いて、言語モデル作成部２５Ｂは、記憶部２４に保存されている認識結果データ２４Ｃを読み出し、この認識結果データ２４Ｃに基づいてＮ−ｇｒａｍ言語モデル２４Ｄを作成し、記憶部２４へ保存する（ステップ２０１）。この際、言語モデル作成部２５Ｂは、前述の図１で示したように、第１の実施形態にかかる言語モデル作成装置１０の特徴構成として、頻度計数部１５Ａ、コンテキスト多様性計算部１５Ｂ、頻度補正部１５Ｃ、およびＮ−ｇｒａｍ言語モデル作成部１５Ｄを含んでいる。言語モデル作成部２５Ｂは、前述した図３の言語モデル作成処理にしたがって、認識結果データ２４Ｃからなる入力テキストデータからＮ−ｇｒａｍ言語モデル２４Ｄを作成する。言語モデル作成部２５Ｂの詳細については、第１の実施形態と同様であり、ここでの詳細な説明は省略する。【００９４】
次に、言語モデル適応化部２５Ｃは、記憶部２４のＮ−ｇｒａｍ言語モデル２４Ｄに基づいて、記憶部２４のベース言語モデル２４Ｂを適応化することにより、適応化言語モデル２４Ｅを作成し、記憶部２４に保存する（ステップ２０２）。具体的には、例えばベース言語モデル２４ＢとＮ−ｇｒａｍ言語モデル２４Ｄとを線形結合により組み合わせることで適応化言語モデル２４Ｅを作成すれば良い。【００９５】
ベース言語モデル２４Ｂは、認識部２５Ａが音声認識に用いた汎用の言語モデルである。一方、Ｎ−ｇｒａｍ言語モデル２４Ｄは、記憶部２４の認識結果データ２４Ｃを学習用テキストデータとして作成された言語モデルであり、認識対象となる音声データ２４Ａに特有の特徴を反映するモデルである。したがって、両言語モデルを線形結合することで、認識対象となる音声データに適した言語モデルが得られることが期待できる。【００９６】
続いて、再認識部２５Ｄは、適応化言語モデル２４Ｅを用いて、記憶部２４が記憶する音声データ２４Ａを、再度、音声認識処理し、その認識結果を再認識結果データ２４Ｆとして記憶部２４へ保存する（ステップ２０３）。この際、認識部２５Ａは、認識結果をワードグラフとして求めて記憶部２４へ保存し、再認識部２５Ｄは、記憶部２４が記憶するワードグラフを、適応化言語モデル２４Ｅを用いてリスコアリングすることで再認識結果データ２４Ｆを出力しても良い。【００９７】
［第２の実施形態の効果］
このように、本実施形態では、ベース言語モデル２４Ｂに基づき入力音声データ２４Ａを認識した認識結果データ２４Ｃを元にして、第１の実施形態で説明した言語モデル作成装置１０の特徴構成からなる言語モデル作成部２５ＢでＮ−ｇｒａｍ言語モデル２４Ｄを作成し、このＮ−ｇｒａｍ言語モデル２４Ｄに基づきベース言語モデル２４Ｂを適応化して得られた適応化言語モデル２４Ｅを用いて、再度、入力音声データ２４Ａを音声認識処理している。【００９８】
第１の実施形態にかかる言語モデル作成装置で得られるＮ−ｇｒａｍ言語モデルが、特に有効と考えられるのは、学習用テキストデータの量が比較的少ないときである。音声のように学習用テキストデータが少ない場合、ある単語や単語連鎖のコンテキスト全てを学習テキストデータによって網羅できないと考えられる。例えば、桜の開花に関する言語モデルを構築することを考えるとき、学習用テキストデータ量が少ないと、学習用テキストデータには（桜(t40)、の(t7)、開花(t3)）という単語連鎖は登場しても、（桜(t40)、が(t16)、開花(t3)）という単語連鎖は登場しない可能性がある。このような場合、例えば前述した関連技術に基づきＮ−ｇｒａｍ言語モデルを作成すると、「桜が開花…」という文の生成確率は非常に小さくなってしまう。このため、コンテキストの多様性が低い単語の予測精度に悪影響を与え、音声認識精度が低下する原因となる。【００９９】
しかし、本発明によれば「開花(t3)」という単語のコンテキストの多様性が高いことから、学習用テキストデータ中に（桜(t40)、の(t7)、開花(t3)）が現れただけでも、コンテキストによらずに「開花(t3)」のユニグラム確率を向上する。その結果、「桜が開花…」という文の生成確率も高めることが出来る。さらに、コンテキストの多様性が低い単語についてはユニグラム確率を向上しない。このため、コンテキストの多様性が低い単語の予測精度にも悪影響を与えることはなく、音声認識精度が維持される。【０１００】
このように、本発明の言語モデル作成装置は学習用テキストデータの量が少ないときに特に有効である。このため、本実施例で示したような音声認識処理において、入力音声データの認識結果テキストデータからＮ−ｇｒａｍ言語モデルを作成することにより、極めて有効な言語モデルを作成できる。したがって、このようにして得られた言語モデルを元のベース言語モデルへ結合することにより、認識対象となる入力音声データに適した言語モデルが得られ、結果として音声認識精度を大幅に改善することが可能となる。【０１０１】
［実施形態の拡張］
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。【０１０２】
また、以上では日本語を例として、言語モデルの作成技術さらには音声認識技術について説明したが、これらは日本語に限定されるものではなく、複数の単語の連鎖により文が構成されるあらゆる言語に対して、前述と同様に適用でき、前述と同様の作用効果が得られる。【０１０３】
この出願は、２００８年８月２０日に出願された日本出願特願２００８−２１１４９３を基礎とする優先権を主張し、その開示のすべてをここに取り込む。
【産業上の利用可能性】
【０１０４】
本発明は、音声認識や文字認識などのテキスト情報を出力する様々な自動認識システムや、自動認識システムをコンピュータに実現するためのプログラムといった用途に適用できる。また、統計的言語モデルを活用した様々な自然言語処理システムといった用途にも適用可能である。
【図１】
0005459214.tif 000010
【図２】
0005459214.tif 000011
【図３】
0005459214.tif 000012
【図４】
0005459214.tif 000013
【図５】
0005459214.tif 000014
【図６】
0005459214.tif 000015
【図７】
0005459214.tif 000016
【図８】
0005459214.tif 000017
【図９】
0005459214.tif 000018
【図１０】
0005459214.tif 000019
【図１１】
0005459214.tif 000020
【図１２】
0005459214.tif 000021
【図１３】
0005459214.tif 000022
【図１４】
0005459214.tif 000023