(57)【特許請求の範囲】
【請求項１】
コンピュータを用いて所定の文の単語を予測する単語予測方法において、
予測すべき単語の前の単語までの予測の結果を木構造で表した履歴木が格納された履歴格納手段から、当該履歴木を取得するステップと、
単語予測用の文脈木を格納した文脈木格納手段から、当該文脈木を取得するステップと、
取得された前記履歴木と、取得された前記単語予測用の文脈木とに基づいて、前記予測すべき単語を予測するステップとを含み、
前記単語予測用の文脈木の根は、空の木をラベルとし、
前記単語予測用の文脈木の各ノードは、親ノードのラベルである木に葉を付加して当該葉の位置の単語を限定した木をラベルとし、
前記単語予測用の文脈木の各ノードには、当該ノードのラベルである木が前記履歴木の部分木である場合の前記予測すべき単語の位置における単語の出現確率が付与され、
前記予測するステップでは、前記単語予測用の文脈木をメモリ上で走査することにより、当該単語予測用の文脈木のノードのうちの前記履歴木の部分木をラベルとするノードを検索し、当該ノードに付与された出現確率に基づいて前記予測すべき単語を予測することを特徴とする単語予測方法。
【請求項２】
前記履歴木は、仮想の根の直下に部分解析木の列を持つ木構造をなし、
前記部分解析木は、文頭から前記予測すべき単語の直前の単語までの単語及び文構造の予測の結果を木構造で表した主辞を根とする解析木であることを特徴とする請求項１に記載の単語予測方法。
【請求項３】
文構造予測用の文脈木を格納した文脈木格納手段から、当該文脈木を取得するステップと、
取得された前記履歴木と、取得された前記文構造予測用の文脈木とに基づいて、前記予測された単語を含む文構造を予測し、前記履歴格納手段に格納するステップとをさらに含み、
前記文構造予測用の文脈木の根は、空の木をラベルとし、
前記文構造予測用の文脈木の各ノードは、親ノードのラベルである木に葉を付加して当該葉の位置の単語を限定した木をラベルとし、
前記文構造予測用の文脈木の各ノードには、当該ノードのラベルである木が前記履歴木の部分木である場合の前記予測すべき単語までの文構造の出現確率が付与され、
前記予測するステップでは、前記文構造予測用の文脈木をメモリ上で走査することにより、当該文構造予測用の文脈木のノードのうちの前記履歴木の部分木をラベルとするノードを検索し、当該ノードに付与された出現確率に基づいて前記予測された単語までの文構造を予測することを特徴とする請求項１に記載の単語予測方法。
【請求項４】
コンピュータを用いて音声信号を単語列として認識する音声認識方法において、
処理対象の音声信号に対して音響モデルを用いた計算を行い、計算結果である認識候補としての単語を選択するステップと、
選択された単語を対象として、予測対象である単語の直前の単語までの予測の結果を木構造で表した履歴木を取得するステップと、
単語を予測するために用いられる文脈木と、取得された前記履歴木とに基づいて、前記予測対象である単語を予測するステップとを含み、
前記文脈木の根は、空の木をラベルとし、
前記文脈木の各ノードは、親ノードのラベルである木に葉を付加して当該葉の位置の単語を限定した木をラベルとし、
前記文脈木の各ノードには、当該ノードのラベルである木が前記履歴木の部分木である場合の前記予測対象である単語の位置における単語の出現確率が付与され、
前記予測するステップでは、前記文脈木をメモリ上で走査することにより、当該文脈木のノードのうちの前記履歴木の部分木をラベルとするノードを検索し、当該ノードに付与された出現確率に基づいて前記予測対象である単語を予測することを特徴とする音声認識方法。
【請求項５】
コンピュータを用いて所定のデータ列における要素を予測するデータ処理方法において、
予測すべき要素の前の要素までの木構造で表現される処理履歴が格納された履歴格納手段から、当該処理履歴を取得するステップと、
木構造の確率モデルを格納した確率モデル格納手段から、当該確率モデルを取得するステップと、
取得された前記処理履歴と、取得された前記確率モデルとに基づいて、前記予測すべき要素を予測するステップとを含み、
前記確率モデルの根は、空の木をラベルとし、
前記確率モデルの各ノードは、親ノードのラベルである木に葉を付加して当該葉の位置の要素を限定した木をラベルとし、
前記確率モデルの各ノードには、当該ノードのラベルである木が前記処理履歴の部分木である場合の前記予測すべき要素の位置における要素の出現確率が付与され、
前記予測するステップでは、前記確率モデルをメモリ上で走査することにより、当該確率モデルのノードのうちの前記処理履歴の部分木をラベルとするノードを検索し、当該ノードに付与された出現確率に基づいて前記予測すべき要素を予測することを特徴とするデータ処理方法。
【請求項６】
アナログ音声信号をデジタル音声信号に変換する音響処理部と、
音響モデルを格納した音響モデル格納部と、
単語を予測するために用いられる文脈木を格納した文脈木格納部と、
前記音響モデル及び前記文脈木を用いて前記音響処理部にて変換されたデジタル音声信号を単語列として認識する復号処理部とを備え、
前記復号処理部は、予測すべき単語の前の単語までの予測の結果を木構造で表した履歴木を取得し、
前記文脈木の根は、空の木をラベルとし、
前記文脈木の各ノードは、親ノードのラベルである木に葉を付加して当該葉の位置の単語を限定した木をラベルとし、
前記文脈木の各ノードには、当該ノードのラベルである木が前記履歴木の部分木である場合の前記予測すべき単語の位置における単語の出現確率が付与され、
前記復号処理部は、前記文脈木をメモリ上で走査することにより、当該文脈木のノードのうちの前記履歴木の部分木をラベルとするノードを検索し、当該ノードに付与された出現確率に基づいて前記予測すべき単語を予測することを特徴とする音声認識装置。
【請求項７】
コンピュータを制御して、所定の文の単語を予測するプログラムであって、
予測すべき単語の前の単語までの予測の結果を木構造で表した履歴木が格納された履歴格納手段から、当該履歴木を取得する処理と、
単語予測用の文脈木を格納した文脈木格納手段から、当該文脈木を取得する処理と、
取得された前記履歴木と、取得された前記単語予測用の文脈木とに基づいて、前記予測すべき単語を予測する処理とを前記コンピュータに実行させ、
前記単語予測用の文脈木の根は、空の木をラベルとし、
前記単語予測用の文脈木の各ノードは、親ノードのラベルである木に葉を付加して当該葉の位置の単語を限定した木をラベルとし、
前記単語予測用の文脈木の各ノードには、当該ノードのラベルである木が前記履歴木の部分木である場合の前記予測すべき単語の位置における単語の出現確率が付与され、
前記予測する処理では、前記単語予測用の文脈木をメモリ上で走査することにより、当該単語予測用の文脈木のノードのうちの前記履歴木の部分木をラベルとするノードを検索し、当該ノードに付与された出現確率に基づいて前記予測すべき単語を予測することを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、音声認識及びそのための単語予測方法に関し、特に構造的言語モデルを用いて単語を予測し音声認識を行う方法に関する。
【０００２】
【従来の技術】
音声認識では、単語予測等の処理を行うために言語的な情報を制御するための言語モデルが用いられる。今日一般的に利用されている統計的言語モデルとして代表的なものにｎ−ｇｒａｍモデルがある。ｎ−ｇｒａｍモデルでは、文頭から文末に向かって順に単語を予測する。そして、ｎ個の単語が連なる確率を予め計算（学習）しておくことによって、実際に発声された文章のスコア（もっともらしさ）を計算する。
したがって、ｎ−ｇｒａｍモデルによれば、所定の単語を予測するために当該単語からｎ−１個前の単語まで遡って参照し、統計的に当該単語を予測するが、ｎの値すなわち参照する範囲は、参照する単語に関わらず固定的である。
【０００３】
これに対し、線形の履歴に対して、参照する範囲を可変にするモデルとして、可変記憶長マルコフモデルがある。これは、参照範囲が固定されたｎ−ｇｒａｍモデルの拡張といえる。
この可変記憶長マルコフモデルでは、予測精度の改善が期待される場合にのみ参照する履歴を選択的に長くする。例えば、所定の可変記憶長マルコフモデルは、予測対象である単語の直前の単語が「これ」である場合には、単語２−ｇｒａｍモデルのように当該「これ」の前の単語を区別せず、また直前の単語が「の」である場合には、単語３−ｇｒａｍモデルのように当該「の」の前の単語をも区別する。さらに直前の２つの単語によっては、単語４−ｇｒａｍモデルのように直前の３つの単語も区別することも可能である。
【０００４】
一般に、同じ大きさの記憶領域を要するｎ−ｇｒａｍモデルと可変記憶長マルコフモデルを比較した場合、可変記憶長マルコフモデルの方が、予測力が高い。また、同じ学習コーパスから推定したｎ−ｇｒａｍモデルと可変記憶長マルコフモデルを比較した場合、可変記憶長マルコフモデルの方が、予測力が高い。
【０００５】
ところで、音声発話とその処理（音声言語理解）の技術では、音声認識において行われる単語予測に加えて、構文構造の推定が重要である。一方、上述したｎ−ｇｒａｍモデルや可変記憶長マルコフモデルは、文を、構造を持たない単語列とみなす言語モデルである。そこで、この構文構造の推定を目的として、いくつかの構造的言語モデルが提案されている。構造的言語モデルの例は、例えば次の文献に詳細に記されている。
文献１：Ciprian Chelba and Frederick Jelinek, Exploiting Syntactic Structure for Language Modeling, In Proceedings of the 17th International Conference on Computational Linguistics, pages 225-231, 1998
文献２：Shinsuke Mori, Masafumi Nishimura, Nobuyasu Itoh, Shiho Ogino, and Hideo Watanabe, A stochastic parser based on a structural word prediction model, In Proceedings of the 18th International Conference on Computational Linguistics, pages 558-564, 2000.
【０００６】
これらの構造的言語モデルでも、ｎ−ｇｒａｍモデル等と同様に、単語は文頭から文末に向かって順に予測される。しかしながら、文は単純な単語列ではなく、葉に単語を持つ木として表現される。したがって、各単語の予測に際して参照される履歴は、単語列ではなく、文頭から予測対象である単語の直前の単語までを覆う部分解析木である。
上述した文献１には、このような木構造の履歴から単語予測を行う方法として、履歴における最右の２つの主辞から次の単語を予測する方法が提案されている（Chelba & Jelinek のモデル）。また、文献２には、予測される単語に係る単語とさらにそれらの単語に係る単語とに基づいて予測する方法が提案されている。
【０００７】
【発明が解決しようとする課題】
上述したように、音声発話とその処理（音声言語理解）の技術では、構文構造の推定が重要であるため、有効な構造的言語モデルが必要である。
上述した従来の構造的言語モデルは、いずれの場合も、各単語の予測に参照される部分解析木の形状が一定である。しかしながら、部分解析木のより大きい部分を参照することがより有効である場合もあれば、データスパースネスの問題からこれが逆効果となる場合もある。
したがって、ｎ−ｇｒａｍモデルに対する可変記憶長マルコフモデルのように、構造的言語モデルに対しても、参照する部分解析木の形状（参照する範囲）を事例の数に応じて柔軟に選択する機構が必要である。
【０００８】
以上、音声認識において用いられる言語モデルに関して論じたが、この課題は、音声認識における処理の履歴が木構造を持った配列として表現されることに起因する。したがって、言語以外のデータ列においても、一般に、木構造を持った履歴に基づいて次のデータ要素を予測するような処理に用いられる確率モデルに対して、予測に利用する履歴の範囲を柔軟に選択し得る機構が望まれることは言うまでもない。
【０００９】
そこで本発明は、木構造を持つ履歴に基づいて次のデータ要素を予測する処理において予測に利用する履歴の範囲を選択可能な確率モデルを提供することを目的とする。
また、本発明は、上記の確率モデルを構造的言語モデルとして用いることにより、単語予測と構文構造の推定を同時に高い精度で実現できるようにすることを他の目的とする。
【００１０】
【課題を解決するための手段】
上記の目的を達成する本発明は、コンピュータを用いて所定の文の単語を予測する単語予測方法において、単語予測の履歴が格納された履歴格納手段から単語の予測に用いる履歴を取得してこの履歴が持つ文構造を特定し、文が取り得る構造及びこの構造に対する単語の出現確率に関する情報をノードに持つ文脈木を格納した文脈木格納手段から単語予測用の文脈木を取得し、特定された履歴の文構造と取得された単語予測用の文脈木とに基づいて予測すべき単語を予測することを特徴とする。
【００１１】
この単語予測方法において、より詳しくは、履歴は部分解析木の列であり、文脈木のノードが持つ文が取り得る構造が木構造であり、この部分解析木の列にこの部分解析木の列を直下の部分木として持つ仮想の根を付加して得られる木と、この文脈木のノードが持つ木構造とを比較して予測すべき単語を予測する。
【００１２】
また、この単語予測方法は、文が取り得る構造及びこの構造に続く文構造の出現確率に関する情報をノードに持つ文脈木を格納した文脈木格納手段から文構造予測用の当該文脈木をさらに取得し、予測された単語とこの単語の予測に用いられた文構造と取得された文構造予測用の文脈木とに基づいて、この予測された単語を含む文構造を予測し、履歴格納手段に格納する構成とすることができる。
【００１３】
さらに、本発明は、上記のような単語予測方法において、単語予測の履歴が格納された履歴格納手段から単語の予測に用いる履歴を取得してこの履歴が持つ文構造を特定し、特定された履歴の文構造に基づき、予測すべき単語を予測するためのこの文構造における参酌範囲を決定し、決定された参酌範囲における履歴の文構造に基づいてこの予測すべき単語を予測することを特徴とする。
【００１４】
ここで、特定された履歴の文構造に基づいて、予測された単語を含む新たな文構造を予測するための文構造における参酌範囲をさらに決定し、決定された参酌範囲におけるこの履歴の文構造とこの予測された単語とに基づいてこの予測された単語を含む新たな文構造を予測し、履歴格納手段に格納する構成とすることができる。
【００１５】
さらにまた、本発明は、コンピュータを用いて音声信号を単語列として認識する音声認識方法において、処理対象の音声信号に対して音響モデルを用いた計算を行い、計算結果である認識候補としての単語を選択するステップと、選択された単語を対象として、予測対象である単語の直前の単語までの履歴が持つ文構造を特定するステップと、文が取り得る構造及びこの構造に対する単語の出現確率に関する情報をノードに持つ文脈木とこの履歴が持つ文構造とに基づいて予測対象である単語を予測するステップとを含むことを特徴とする。
【００１６】
また、本発明は、上記のような音声認識方法において、処理対象の音声信号に対して音響モデルを用いた計算を行い、計算結果である認識候補としての単語を選択するステップと、選択された単語を対象として、予測対象である単語の直前の単語までの履歴が持つ文構造を特定するステップと、特定された履歴の文構造に基づいて、予測すべき単語を予測するための文構造における参酌範囲を決定するステップと、決定された参酌範囲におけるこの履歴の文構造に基づいてこの予測すべき単語を予測するステップとを含むことを特徴とする。
【００１７】
さらに、本発明は、配列に対する処理履歴を格納した履歴格納手段から所定の要素の予測に用いる木構造の処理履歴を取得し、所定の部分木及びこの部分木に対応づけられた確率分布をノードに持つ木構造の確率モデルを格納した確率モデル格納手段からこの確率モデルを取得し、取得した確率モデルに対して処理履歴の木構造に対応するノードを検索し、このノードに対応づけられた確率分布に基づいて予測対象である所定の要素の予測を行うことを特徴とする。
【００１８】
また、本発明は、次のように構成されたことを特徴とする音声認識装置として実現することができる。すなわち、この音声認識装置は、アナログ音声信号をデジタル音声信号に変換する音響処理部と、音響モデルを格納した音響モデル格納部と、文が取り得る構造及びこの構造に対する単語の出現確率に関する情報をノードに持つ文脈木を格納した文脈木格納部と、この音響モデル及びこの文脈木を用いてデジタル音声信号を単語列として認識する復号処理部とを備え、この復号処理部は、単語予測の履歴が持つ文構造に基づいて文脈木を走査し、この履歴の文構造に対応するノードが持つ出現確率に基づいて予測すべき単語を予測する。
【００１９】
さらに、本発明は、上記のような音声認識装置において、復号処理部は、単語予測の履歴が持つ文構造に基づいて、予測すべき単語を予測するためのこの文構造における参酌範囲を決定し、この参酌範囲におけるこの履歴の文構造に基づいて予測すべき単語を予測する構成とすることができる。
【００２０】
また、本発明は、上述した単語予測方法や音声認識方法をコンピュータに実行させ、あるいは上記の音声認識装置としてコンピュータを動作させるプログラムとして実現することができる。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。
【００２１】
さらにまた、本発明は、木構造を有する確率モデルであって、当該木の根は空の木をラベルとし、当該木の各ノードは親ノードのラベルである木を所定のノードで展開した部分木をラベルとし、かつ所定の部分解析木を条件としてこの確率モデルが走査された場合に返すべき確率分布が該当する部分木のラベルを持つノードに付与されていることを特徴とする確率モデルを構成するデータを格納した記録媒体として実現することができる。
ここで、この確率モデルにおける各ノードのラベルは、親ノードのラベルである木を展開させ得る全ての態様に関して、所定の評価関数を適用することによって決定された部分木である。あるいは、親ノードのラベルである木の各ノードに対して展開する場合としない場合とにおける評価関数を比較し、当該比較の結果に基づいて展開された部分木である。
【００２２】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいて、この発明を詳細に説明する。
本発明で提案する確率モデルは、所定のデータ列に関して先頭から順にデータ要素を予測していき、かつ所定のデータ要素を予測する際に木構造で表現されるそれまでの予測履歴に基づいて予測を行うような処理に対して一般的に利用できる。本実施の形態では、そのようなデータ列として言語に着目し、本発明で提案する確率モデルを構造的言語モデルに用いて音声認識における単語予測を行う場合を例として説明する。
【００２３】
図１は、本実施の形態の音声認識システムを実現するのに好適なコンピュータ装置のハードウェア構成の例を模式的に示した図である。
図１に示すコンピュータ装置は、ＣＰＵ（中央処理装置）１０１と、システムバスを介してＣＰＵ１０１に接続されたＭ／Ｂ（マザーボード）チップセット１０２及びメインメモリ１０３と、ＰＣＩバスなどの高速なバスを介してＭ／Ｂチップセット１０２に接続されたビデオカード１０４、サウンドカード１０５、ハードディスク１０６及びネットワークインターフェイス１０７と、さらにこの高速なバスからブリッジ回路１１０及びＩＳＡバスなどの低速なバスを介してＭ／Ｂチップセット１０２に接続されたフロッピーディスクドライブ１０８及びキーボード１０９とを備える。また、サウンドカード１０５には、音声入力を行うマイクロフォン１１１が接続されている。
なお、図１は本実施の形態を実現するコンピュータ装置の構成を例示するに過ぎず、本実施の形態を適用可能であれば、他の種々のシステム構成を取ることが可能である。例えば、サウンドカード１０５を設ける代わりに、Ｍ／Ｂチップセット１０２の機能としてサウンド機構を設けることもできる。
【００２４】
図２は、図１に示したコンピュータ装置にて実現される本実施の形態による音声認識システムの構成を示す図である。
図２を参照すると、本実施の形態の音声認識システムは、音声を入力して音響的な処理を行う音響処理部１０と、音響処理部１０による処理結果を用いて入力音声を単語列（文章）として認識するための復号処理部（デコーダ）２０、復号処理部２０の処理において参照される音響モデル及び樹状文脈木（Arbori-context Tree）を格納した音響モデル格納部３０及び樹状文脈木格納部４０とを備える。
【００２５】
音響処理部１０は、図１に示したコンピュータ装置のサウンドカード１０５にて実現され、マイクロフォン１１１から入力した音声、すなわちアナログ音声信号を音響的に解析し、デジタル音声信号に変換してメインメモリ１０３に格納する。以下、このデジタル音声信号を単に音声信号と称す。
【００２６】
復号処理部２０は、図１に示したメインメモリ１０３に展開されたプログラムに制御されたＣＰＵ１０１にて実現され、音響処理部１０の解析により得られた音声信号に関して音響モデルを用いた計算を行い、計算結果である認識候補としての単語を選択する。音響モデルを用いた単語の選択については、従来から行われている一般的な手法を用いることができる。そして、復号処理部２０は、選択された単語を対象として、後述する単語予測の方法により、処理結果を履歴としてフィードバックしながら順次単語予測を行い、最終的に音声認識の結果を得る。得られた音声認識の結果は、図１に示したビデオカード１０４を介してディスプレイ装置に表示される。また、プリンタにて印字出力しても良いし、ハードディスク１０６その他の記憶媒体に記憶させても良い。
なお、ＣＰＵ１０１を制御して復号処理部２０の機能を実現させる当該プログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記憶媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。本実施の形態では、図１に示したネットワークインターフェイス１０７やフロッピーディスクドライブ１０８、図示しないＣＤ−ＲＯＭドライブなどを介して当該プログラムを入力し、ハードディスク１０６に格納する。そして、ハードディスク１０６に格納されたプログラムをメインメモリ１０３に読み込んで展開し、ＣＰＵ１０１にて実行することにより、復号処理部２０の機能を実現する。
【００２７】
音響モデル格納部３０は、図１に示したハードディスク１０６やメインメモリ１０３にて実現され、音声における音の特徴を学習した音響モデルを格納している。この音響モデルは、上記のように復号処理部２０により認識候補としての単語を選択する際に参照される。
【００２８】
樹状文脈木格納部４０は、図１に示したハードディスク１０６やメインメモリ１０３にて実現され、本発明で提案する構造的言語モデルである樹状文脈木を格納している。
本実施の形態では、構造的言語モデルとして用いる確率モデルのデータ構造として、木構造の履歴の部分解析木をラベルに持つ木を考える。そして、この木を根のみからなる状態から開始して、再帰的に成長させることによって、互いに独立な履歴の部分木を葉（ノード）のラベルに持つ文脈木（樹状文脈木）を構築する。葉には、履歴の部分解析木に加えて、その履歴を条件とする確率分布（出現確率）も付与しておく。
このようにして獲得された樹状文脈木を用いて単語や文構造の予測などを行う場合、まず履歴に対応するラベルを持った葉を求める。そして、特定された葉に付与されている確率分布に基づいて予測を行う。
【００２９】
ここで、構造的言語モデルを係り受け文法に適用した例を挙げて、樹状文脈木について説明する。
この構造的言語モデルでは、先行する単語列を覆う部分解析木に基づいて単語や文構造が予測される。したがって、文Ｗ＝ｗ1 ｗ2 … ｗnとその構文構造を示す部分解析木Ｔとは、次の数１式にて計算される。
【数１】
0004215418.tif 000002
数１式において、ｔiは、文頭からｉ番目の単語までを覆う部分解析木を表す。
【００３０】
図３は、９個以上の単語列に対する単語予測及び構造予測において、９番目の単語を予測する直前の状態を示す図である。これは、上の数１式においてｉ＝９である場合に相当する。
図３において、まず、９番目の単語ｗ9が、８番目の単語ｗ8までを覆う部分解析木ｔ8＝ｔ8,3 ｔ8,2 ｔ8,1に基づいて予測される。次に、９番目の単語ｗ9までを覆う部分解析木ｔ9が、８番目の単語ｗ8までを覆う部分解析木ｔ8と９番目の単語ｗ9とに基づいて予測される。そして、１０番目の単語を予測する直前の状態になる。かかる処理を繰り返すことにより、入力された音声を構成する単語列の単語とその構文構造とが決定されていく。
【００３１】
ここで、問題となるのは、上記数１式中の２つの条件付確率における条件部分の分類方法である。分類が粗すぎれば、少ない条件で単語や文構造の出現確率を求めることとなり、所定の条件に多くの事例が含まれることとなるため、峻別能力が低くなる。一方、分類が細かすぎれば、単語や文構造を特定するために多くの条件に合致することが必要となり、所定の条件を判断するための事例の数が減るため、確率値の推定精度が下がる（データスパースネスによる問題）。上記文献１に記載されたChelba & Jelinek のモデルでは、図３の場合に最右の２つの主辞、すなわちｗ6とｗ8とを固定的に用いる。しかしながら、文によっては、ｗ2が予測対象である単語ｗ9に係る場合があり、またｗ6が単語ｗ9に係らない場合もあるため、この２つの主辞を用いることが次の単語ｗ9を予測するために常に適切とは言えないことは明白である。
【００３２】
そこで、上述した条件付確率の条件部分を柔軟に選択可能とするため、本実施の形態では、構造的言語モデルにおける単語予測の履歴を、単語列ではなく部分解析木の列とする。当該部分解析木を直下の部分木として持つ仮想の根を付加することで１つの木とみなすことができる。この木構造の履歴を履歴木と呼ぶ。上述した数１式の条件付確率における条件部分の分類方法は、単語を予測するために履歴木をどの範囲まで参酌するかという問題に相当する。
図４は、図３の状態で９番目の単語ｗ9を予測するときに用いられる履歴木である。
【００３３】
この履歴木の柔軟な分類方法は、樹状文脈木と呼ぶデータ構造で表現される。樹状文脈木の各ノード（葉）のラベルは、履歴木の根を含む部分木である。根のラベルは空の木である。また、所定のノードに子ノードがある場合、当該子ノードのラベルは、親ノードのラベルである木を所定のノードで展開した木である。
図５は、樹状文脈木の例を示す図である。
図５に示す樹状文脈木において、根５０１の子ノード５１１〜５１３のラベルは、根のラベルである部分木（空の木）に対する子ノードのうち、最右の子ノードを付加、すなわち特殊化することで得られる木となっている。
【００３４】
次に、復号処理部２０による上記樹状文脈木を用いた単語予測の手法を説明する。
図５に示した樹状文脈木の各ノードには、確率分布Ｐ（ｘ｜ｔ）が付与されている。ここで、ｘはアルファベット（一定の順序で並べられた記号列の総体。本実施の形態では配列される単語を特定する記号の列であるが、図５の例では簡単のため、英語のアルファベットを用いている）の記号であり、ｔはノードのラベルである。例えば、ラベルがａ0の根とラベルがａk，…，ａ2，ａ1のｋ個の子ノードとからなる木を＜ａk …ａ2 ａ1 ＞ａ0と表記すると、図５に示した樹状文脈木のノード５３３には、履歴が部分木＜＜ｚ？＞ａ＞＜ｂ＞にマッチする場合のアルファベットｘの確率分布が付与されることとなる。換言すると、このノード５３３から単語を予測する場合において、部分木の最右の主辞がｂであり、次に最右の主辞がａであり、当該主辞ａに係る右から２番目の部分木の根がｚである場合における単語の確率分布が付与されている。
具体例を挙げると、図３おいてａ＝ｗ6かつｂ＝ｗ8かつｚ＝ｗ4の場合には、図４に示される履歴木におけるｗ4とｗ6とｗ8からなる部分解析木が、９番目の単語ｗ9の予測に用いられる。
【００３５】
復号処理部２０は、認識対象である文の所定の単語を予測する場合、まず、当該単語の前の単語までを覆う単語予測の履歴木を取得する。この履歴木は、当該前の単語までの予測の結果であり、復号処理部２０によって図１に示したＣＰＵ１０１のキャッシュメモリやメインメモリ１０３に保持されている。
次に、復号処理部２０は、樹状文脈木格納部４０から樹状文脈木を取得し、履歴木に基づいて当該樹状文脈木を走査し、当該履歴木にマッチする部分木をラベルに持つノードを検索する。そして、検出されたノードに付与されている確率分布に基づいて予測対象である当該単語を予測し、さらに後述のように当該単語を含む履歴木を予測して、新たな処理履歴としてＣＰＵ１０１のキャッシュメモリやメインメモリ１０３に格納する。
上述した具体例に則して説明すると、復号処理部２０は、樹状文脈木格納部４０に格納されている樹状文脈木を走査し、当該ｗ4とｗ6とｗ8に相当するノードを持つ部分木をラベルに持つ樹状文脈木のノードを検出し、当該ノードに付与されている確率分布に基づいて９番目の単語ｗ9を予測する。なお、この例は、最右の２つの主辞（ｗ6とｗ8）からの予測の特殊化の事例になっている。より一般的には、樹状文脈木に基づくモデルは、最右の２つの主辞に基づくモデルをその特殊な事例として包含している。
【００３６】
復号処理部２０は、以上の処理を文頭の単語から文末の単語まで順次行い、文末に達した後、予測された単語の列を音声認識の結果として出力する。これにより、履歴木の構造に基づく確率分布によって出現確率が最も高い単語の列が音声認識の結果として得られることとなる。
【００３７】
このように、樹状文脈木は、単語予測の履歴木に対応する部分木をノードのラベルに持つため、この樹状文脈木を走査することにより、当該樹状文脈木が生成されている範囲において、履歴木に対応する木構造をたどることができる。そして、該当する木構造をラベルに持つノードに付与された確率分布によって、当該木構造を履歴木として持つ次の単語の出現確率を得ることができる。
後述するように、樹状文脈木をどのように成長させるか、すなわちノードのラベルである部分木をどのように展開させたものについて確率分布を与えるかは、展開させ得る全ての態様について評価関数を適用することによって定めることができる。例えば、出現頻度が高く、評価関数による値が一定の閾値を越える場合、そのようなノードの展開について樹状文脈木を成長させて確率分布を与えることができる。
したがって、樹状文脈木によれば、単語予測における構造的言語モデルとして用いられる場合、履歴木の構造自体に基づいて、次の単語を予測するために当該履歴木をどれだけ深く（広い範囲で）参酌すれば良いかを特定することが可能となる。すなわち、樹状文脈木の構造に基づいて、単語を予測するために参酌すべき履歴木の範囲を柔軟に選択することが可能となる。
【００３８】
ところで、上述したように、構造的言語モデルを用いた単語予測では、単語予測の履歴を部分解析木の列としている。そして、当該部分解析木にて構成される履歴木と樹状文脈木とを用いてｉ番目の単語を予測した後、ｉ−１番目の単語までの履歴木と当該ｉ番目の単語とを用いてｉ番目の単語までを含む履歴木を作成し、ｉ＋１番目の単語の予測に用いる。そこで、このｉ番目の単語までを含む履歴木を作成するために、この樹状文脈木を用いた予測を行うことができる。
すなわち、上述した単語予測用の（構造的言語モデルとしての）樹状文脈木とは別に、履歴木の構造に基づいて、次の単語を含む文構造である部分解析木の出現確率の確率分布をノードに与えられた樹状文脈木を用意する。そして、復号処理部２０は、この構文予測用の樹状文脈木を用い、上記ｉ番目の単語に基づいて、当該ｉ番目の単語を含む履歴木を予測し、次のｉ＋１番目の単語を予測するための履歴木として用いる。
これにより、履歴木を予測する際にも、当該予測のために参酌すべき履歴木の範囲を柔軟に選択することが可能となるため、従来よりも良好な予測結果を期待することができる。
【００３９】
次に、本実施の形態で用いた構造的言語モデルである樹状文脈木の生成方法について説明する。
図６は、樹状文脈木を生成する手順を説明するフローチャートである。また、図７は、図６の手順を再起的に繰り返すことにより樹状文脈木が成長する様子を示す図である。
なお、樹状文脈木は、図２の音声認識システムを実現するコンピュータ装置（図１）において音声認識の前処理として生成しても良いし、他のコンピュータ装置を用いて生成し、音声認識システムを実現するコンピュータ装置に渡すようにしても良い。以下では、図１に示したコンピュータ装置にて樹状文脈木を生成するものとして説明する。
【００４０】
初期状態では、樹状文脈木は、仮想のノードのみからなる履歴木をラベルとする根のみからなる。そこで、まず図７（Ａ）に示すような根のみからなる樹状文脈木を用意し、図１に示したＣＰＵ１０１のキャッシュメモリなどにて実現されるスタック（stack）に入れる（ステップ６０１：stack=[root]）。
【００４１】
次に、図７に示されるように、この樹状文脈木に対して再帰的にノードを追加していく。
まず、スタックに格納されている最後の要素を取り出し、樹状文脈木のノードに代入する（ステップ６０２：node=pop(stack)）。初期的にステップ６０１でスタックに入れた根のみからなる樹状文脈木を対象とする場合、図７（Ｃ）に示すように、当該根の子ノードが追加される。どのノードを追加するか、あるいはノードを追加するか否かの判断基準は、ヘルドアウトコーパスのパープレキシティを基にした評価関数である。
【００４２】
次に、ノード（葉ｌｅａｆ）の最良の展開を選択し、これによって生成される子ノードをnode[0], node[1], ・・・, node[k]とする（ステップ６０３：select(leaf)）。このノードの展開の選択は、与えられたノードを展開することによる評価関数の差を、全ての可能な展開に対して計算することによって行われる。例えば、引数が図７（Ｄ）に示す木における葉７０１の場合の可能な展開は、以下の５つである。
１）２番目の部分解析木の根の特殊化
２）３番目の部分解析木の根の特殊化
３）１番目の部分解析木の１番目の子ノードの特殊化
４）１番目の部分解析木の２番目の子ノードの特殊化
５）１番目の部分解析木の３番目の子ノードの特殊化
ここで、１つの単語に係る単語数の最大値は３であるとしている。図７（Ｅ）に示す例では、「１）２番目の部分解析木の根の特殊化」が選択されている。
なお、ノードの展開方法を選択するためにどのような評価関数を用いるかについては、予測対象（この場合は単語、あるいは音声から認識すべき自然言語）に応じて任意に定めることができる。
【００４３】
次に、ｉ＝０とおいて（ステップ６０４）、node[i]を展開するかどうかを判断する（ステップ６０５）。この際、各アルファベット（配列対象である単語を特定する記号）に対して展開する場合としない場合の評価関数の差を計算し、展開することが有効かどうかを判断する。そして、展開することが有効と判断したアルファベットに対してのみノードを展開し、スタックにnode[i]を積む（ステップ６０６：push(stack, node[i])）。
このノードを展開する処理（expand(leaf, select(leaf))）は、ｉ＝０からｉ＝ｋまで順次行われる（ステップ６０７、６０８）。
【００４４】
以上の後、スタックが空でないならば、すなわちノードの展開により新たに生成されたノードがある場合は、ステップ６０２に戻って上記の処理を繰り返す。一方、スタックが空であれば、すなわちノードの展開により新たに生成された葉がない場合は、処理を終了する（ステップ６０９）。
以上のようにして生成された樹状文脈木は、ハードディスク１０６等で実現される樹状文脈木格納部４０に格納され、上述した復号処理部２０による音声認識処理に用いられる。
【００４５】
以上、構造的言語モデルとして樹状文脈木を用いた場合を例として、当該モデルの構成及びこれを用いた単語予測の手法について説明したが、この樹状文脈木として表現される確率モデルの用途は、上述した構造的言語モデルとして単語予測に限られない。すなわち、所定のデータ列に関して先頭から順にデータ要素を予測していき、かつ所定のデータ要素を予測する際に木構造で表現されるそれまでの予測履歴をフィードバックして用いるような予測処理に対して、確率モデルとして汎用的に用いることができる。この場合、確率モデルである樹状文脈木の各ノードは、上記の予測処理における予測履歴が取り得る木構造をラベルとする。また、各ノードには、当該ノードのラベルである木構造に対応づけられた確率分布が付与される。そして、所定の木構造を条件としてこの確率モデルを走査することにより、当該木構造に該当するラベルを持ったノードに付与されている確率分布を得ることができる。
【００４６】
＜実行例＞
係り受けが付与された日本語コーパスを用いて、上述した樹状文脈木に基づく構造的言語モデルを用いた単語予測と固定された履歴を参照する構造的言語モデルを用いた単語予測との精度を比較した。
実験に用いた日本語コーパスは、日本経済新聞の記事に含まれる文である。各文は、単語に分割され、係り受け構造が付与されている。日本語コーパスは１０個に分割され、そのうちの９個から言語モデルのパラメータを推定し、残りの１個に対してテストする。言語モデルのパラメータにおいて、補間係数の推定のようにテストコーパスを模擬する必要がある場合には、９個の学習コーパスを使って削除補間に準じた方法でこれを行う。また、日本語コーパスの大きさは、図８に示す図表の通りである。
【００４７】
樹状文脈木に基づく構造的言語モデルの予測力を最右の２つの主辞に基づく構造的言語モデルとの比較において評価するために、これらの言語モデルを同一の学習コーパスから作成し、同一のテストコーパスに対するパープレキシティを計算した。この計算において、テストコーパスに付与された構造を用いた。したがって、テストコーパスの各文の生成確率は、全ての可能な生成方法に渡る生成確率の和ではない。各言語モデルにおける構造予測の部分は共通なので、この部分のパープレキシティに対する寄与は一定である。また、未知語は品詞を表す記号に置き換えられており、未知語の文字列生成に起因するパープレキシティは除外されている。
【００４８】
図９は、上記各言語モデルによるテストセットパープレキシティを示す図表である。パープレキシティは、一様分布を仮定したときの分岐数であり、これが低いことは、単語や構造の予測力がより正確であることを意味する。
樹状文脈木に基づく構造的言語モデルのテストセットパープレキシティは、最右の２つの主辞に基づく構造的言語モデルのテストセットパープレキシティよりもかなり低く、２１.２５％減となっている。
なお、文の構造予測にも樹状文脈木を利用することができるが、比較のため、いずれの構造的言語モデルにおいても固定の履歴からの予測としている。したがって、構造予測の部分は共通なので、全体のパープレキシティも２１.２５％減となる。この結果は、樹状文脈木を用いることにより、既存の技術である最右の２つの主辞に基づく構造的言語モデルを改善することに成功したことを意味する。
【００４９】
また、樹状文脈木に基づく構造的言語モデルを用いた音声認識によれば、図９に示したように、従来の単語３−ｇｒａｍモデルに対しても、より優れた単語予測能力を発揮している。したがって、音声認識システムの言語モデルを、従来の単語列に基づくモデル（例えば単語３−ｇｒａｍモデル）から樹状文脈木に基づく構造的言語モデルに置き換えることで、認識精度を改善することが可能である。
【００５０】
さらに、樹状文脈木に基づく構造的言語モデルを用いた音声認識では、単語を予測すると共に単語を予測する際に用いる文の構文構造も予測している。したがって、この構文構造が付与された認識結果を出力させることが可能になる。認識結果にその構文構造を付与しておけば、当該認識結果を用いた後処理（例えば文の検索）を行う場合に、当該構文構造を参酌して精度の高い処理を行うことが可能となる。
よって、樹状文脈木に基く構造的言語モデルは、音声言語理解という観点から、非常に有効な言語モデルとなり得ることがわかる。
【００５１】
【発明の効果】
以上説明したように、本発明によれば、木構造を持つ履歴に基づいて次のデータ要素を予測する処理において予測に利用する履歴の範囲を選択して用い、予測能力を向上させることができる。
また、本発明によれば、上記の確率モデルを構造的言語モデルとして用いることにより、単語予測と構文構造の推定を同時に高い精度で実現できる。
【図面の簡単な説明】
【図１】  本実施の形態の音声認識システムを実現するのに好適なコンピュータ装置のハードウェア構成の例を模式的に示した図である。
【図２】  図１に示したコンピュータ装置にて実現される本実施の形態による音声認識システムの構成を示す図である。
【図３】  ９個以上の単語列に対する単語予測において、９番目の単語を予測する直前の状態を示す図である。
【図４】  図３の状態で９番目の単語ｗ9を予測するときに用いられる履歴木である。
【図５】  本実施の形態による樹状文脈木の例を示す図である。
【図６】  樹状文脈木を生成する手順を説明するフローチャートである。
【図７】  図６の手順を再起的に繰り返すことにより樹状文脈木が成長する様子を示す図である。
【図８】  単語予測の実行例に用いられた日本語コーパスの大きさを示す図表である。
【図９】  単語予測の実行例における各言語モデルによるテストセットパープレキシティを示す図表である。
【符号の説明】
１０…音響処理部、２０…復号処理部（デコーダ）、３０…音響モデル格納部、４０…樹状文脈木格納部、１０１…ＣＰＵ（中央処理装置）、１０２…Ｍ／Ｂ（マザーボード）チップセット、１０３…メインメモリ、１０４…ビデオカード、１０５…サウンドカード、１０６…ハードディスク、１１１…マイクロフォン
【図１】
0004215418.tif 000003
【図２】
0004215418.tif 000004
【図３】
0004215418.tif 000005
【図４】
0004215418.tif 000006
【図５】
0004215418.tif 000007
【図６】
0004215418.tif 000008
【図７】
0004215418.tif 000009
【図８】
0004215418.tif 000010
【図９】
0004215418.tif 000011